Socket
Socket
Sign inDemoInstall

angular-onscreen-material-keyboard

Package Overview
Dependencies
11
Maintainers
2
Versions
15
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.3.1 to 0.4.0

0

angular-onscreen-material-keyboard.d.ts

@@ -0,0 +0,0 @@ /**

@@ -0,0 +0,0 @@ import { OverlayRef } from '@angular/cdk/overlay';

@@ -0,0 +0,0 @@ import { AnimationEvent } from '@angular/animations';

29

components/keyboard-key/keyboard-key.component.d.ts

@@ -20,4 +20,6 @@ import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';

icon: IMatIcon;
active: boolean;
pressed: boolean;
set active(active: boolean);
get active(): boolean;
set pressed(pressed: boolean);
get pressed(): boolean;
input?: ElementRef;

@@ -34,13 +36,14 @@ control?: FormControl;

keyClick: EventEmitter<MouseEvent>;
readonly lowerKey: string;
readonly charCode: number;
readonly isClassKey: boolean;
readonly isDeadKey: boolean;
readonly hasIcon: boolean;
readonly iconName: string;
readonly fontSet: string;
readonly fontIcon: string;
readonly svgIcon: string;
readonly cssClass: string;
inputValue: string;
get lowerKey(): string;
get charCode(): number;
get isClassKey(): boolean;
get isDeadKey(): boolean;
get hasIcon(): boolean;
get iconName(): string;
get fontSet(): string;
get fontIcon(): string;
get svgIcon(): string;
get cssClass(): string;
get inputValue(): string;
set inputValue(inputValue: string);
constructor(_deadkeys: IKeyboardDeadkeys);

@@ -47,0 +50,0 @@ ngOnInit(): void;

@@ -32,8 +32,8 @@ import { ElementRef, EventEmitter, OnInit } from '@angular/core';

shiftClick: EventEmitter<void>;
readonly inputInstance: Observable<ElementRef | null>;
icons: IKeyboardIcons;
darkTheme: boolean;
isDebug: boolean;
readonly darkTheme$: Observable<boolean>;
readonly isDebug$: Observable<boolean>;
get inputInstance(): Observable<ElementRef | null>;
set icons(icons: IKeyboardIcons);
set darkTheme(darkTheme: boolean);
set isDebug(isDebug: boolean);
get darkTheme$(): Observable<boolean>;
get isDebug$(): Observable<boolean>;
constructor(_locale: string, _keyboardService: MatKeyboardService);

@@ -40,0 +40,0 @@ setInputInstance(inputInstance: ElementRef): void;

@@ -0,0 +0,0 @@ import { InjectionToken } from '@angular/core';

import { IKeyboardIcons } from '../interfaces/keyboard-icons.interface';
export declare const KEYBOARD_ICONS: IKeyboardIcons;

@@ -0,0 +0,0 @@ import { InjectionToken } from '@angular/core';

@@ -0,0 +0,0 @@ import { AriaLivePoliteness } from '@angular/cdk/a11y';

@@ -0,0 +0,0 @@ import { ElementRef, EventEmitter, OnDestroy } from '@angular/core';

@@ -0,0 +0,0 @@ export declare enum KeyboardAnimationState {

@@ -0,0 +0,0 @@ export declare enum KeyboardAnimationTransition {

@@ -0,0 +0,0 @@ export declare enum KeyboardClassKey {

@@ -0,0 +0,0 @@ export declare enum KeyboardModifier {

@@ -46,2 +46,2 @@ import { Subject } from 'rxjs';

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtcmVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFNM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQWN6QixZQUFZLFFBQThCLEVBQ3hDLGlCQUFnRCxFQUN4QyxXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQWRqQyxtRUFBbUU7UUFDM0QsaUJBQVksR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVuRCxnRkFBZ0Y7UUFDeEUsaUJBQVksR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQVdqRCxnRUFBZ0U7UUFDaEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBRTNDLDZCQUE2QjtRQUM3QixpQkFBaUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELGlGQUFpRjtJQUNqRixjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxxRkFBcUY7SUFDckYsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztJQUN4QyxDQUFDO0lBRUQsdUNBQXVDO0lBQy9CLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcclxuXHJcblxyXG5cclxuLyoqXHJcbiAqIFJlZmVyZW5jZSB0byBhIGtleWJvYXJkIGRpc3BhdGNoZWQgZnJvbSB0aGUga2V5Ym9hcmQgc2VydmljZS5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZFJlZjxUPiB7XHJcblxyXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhlIHVzZXIgdGhhdCB0aGUga2V5Ym9hcmQgaGFzIGNsb3NlZC4gKi9cclxuICBwcml2YXRlIF9hZnRlckNsb3NlZDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBrZXlib2FyZCBoYXMgb3BlbmVkIGFuZCBhcHBlYXJlZC4gKi9cclxuICBwcml2YXRlIF9hZnRlck9wZW5lZDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgLyoqIFRoZSBpbnN0YW5jZSBvZiB0aGUgY29tcG9uZW50IG1ha2luZyB1cCB0aGUgY29udGVudCBvZiB0aGUga2V5Ym9hcmQuICovXHJcbiAgaW5zdGFuY2U6IE1hdEtleWJvYXJkQ29tcG9uZW50O1xyXG5cclxuICAvKiogVGhlIGluc3RhbmNlIG9mIHRoZSBjb21wb25lbnQgbWFraW5nIHVwIHRoZSBjb250ZW50IG9mIHRoZSBrZXlib2FyZC4gKi9cclxuICBjb250YWluZXJJbnN0YW5jZTogTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGluc3RhbmNlOiBNYXRLZXlib2FyZENvbXBvbmVudCxcclxuICAgIGNvbnRhaW5lckluc3RhbmNlOiBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIHByaXZhdGUgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWYpIHtcclxuICAgIC8vIFNldHMgdGhlIHJlYWRvbmx5IGluc3RhbmNlIG9mIHRoZSBrZXlib2FyZCBjb250ZW50IGNvbXBvbmVudC5cclxuICAgIHRoaXMuaW5zdGFuY2UgPSBpbnN0YW5jZTtcclxuICAgIHRoaXMuY29udGFpbmVySW5zdGFuY2UgPSBjb250YWluZXJJbnN0YW5jZTtcclxuXHJcbiAgICAvLyBGaW5pc2ggZGlzbWlzcyBvbiBleGl0dGluZ1xyXG4gICAgY29udGFpbmVySW5zdGFuY2Uub25FeGl0LnN1YnNjcmliZSgoKSA9PiB0aGlzLl9maW5pc2hEaXNtaXNzKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqIERpc21pc3NlcyB0aGUga2V5Ym9hcmQuICovXHJcbiAgZGlzbWlzcygpIHtcclxuICAgIGlmICghdGhpcy5fYWZ0ZXJDbG9zZWQuY2xvc2VkKSB7XHJcbiAgICAgIHRoaXMuY29udGFpbmVySW5zdGFuY2UuZXhpdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIE1hcmtzIHRoZSBrZXlib2FyZCBhcyBvcGVuZWQgKi9cclxuICBfb3BlbigpIHtcclxuICAgIGlmICghdGhpcy5fYWZ0ZXJPcGVuZWQuY2xvc2VkKSB7XHJcbiAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLm5leHQoKTtcclxuICAgICAgdGhpcy5fYWZ0ZXJPcGVuZWQuY29tcGxldGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBrZXlib2FyZCBpcyBmaW5pc2hlZCBjbG9zaW5nLiAqL1xyXG4gIGFmdGVyRGlzbWlzc2VkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2FmdGVyQ2xvc2VkLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGlzIG5vdGlmaWVkIHdoZW4gdGhlIGtleWJvYXJkIGhhcyBvcGVuZWQgYW5kIGFwcGVhcmVkLiAqL1xyXG4gIGFmdGVyT3BlbmVkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGFpbmVySW5zdGFuY2Uub25FbnRlcjtcclxuICB9XHJcblxyXG4gIC8qKiBDbGVhbnMgdXAgdGhlIERPTSBhZnRlciBjbG9zaW5nLiAqL1xyXG4gIHByaXZhdGUgX2ZpbmlzaERpc21pc3MoKSB7XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmLmRpc3Bvc2UoKTtcclxuXHJcbiAgICB0aGlzLl9hZnRlckNsb3NlZC5uZXh0KCk7XHJcbiAgICB0aGlzLl9hZnRlckNsb3NlZC5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtcmVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQWN6QixZQUFZLFFBQThCLEVBQ3hDLGlCQUFnRCxFQUN4QyxXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQWRqQyxtRUFBbUU7UUFDM0QsaUJBQVksR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVuRCxnRkFBZ0Y7UUFDeEUsaUJBQVksR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQVdqRCxnRUFBZ0U7UUFDaEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBRTNDLDZCQUE2QjtRQUM3QixpQkFBaUIsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELGlGQUFpRjtJQUNqRixjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxxRkFBcUY7SUFDckYsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztJQUN4QyxDQUFDO0lBRUQsdUNBQXVDO0lBQy9CLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9rZXlib2FyZC1jb250YWluZXIva2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcblxuLyoqXG4gKiBSZWZlcmVuY2UgdG8gYSBrZXlib2FyZCBkaXNwYXRjaGVkIGZyb20gdGhlIGtleWJvYXJkIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZFJlZjxUPiB7XG5cbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBrZXlib2FyZCBoYXMgY2xvc2VkLiAqL1xuICBwcml2YXRlIF9hZnRlckNsb3NlZDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoZSB1c2VyIHRoYXQgdGhlIGtleWJvYXJkIGhhcyBvcGVuZWQgYW5kIGFwcGVhcmVkLiAqL1xuICBwcml2YXRlIF9hZnRlck9wZW5lZDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICAvKiogVGhlIGluc3RhbmNlIG9mIHRoZSBjb21wb25lbnQgbWFraW5nIHVwIHRoZSBjb250ZW50IG9mIHRoZSBrZXlib2FyZC4gKi9cbiAgaW5zdGFuY2U6IE1hdEtleWJvYXJkQ29tcG9uZW50O1xuXG4gIC8qKiBUaGUgaW5zdGFuY2Ugb2YgdGhlIGNvbXBvbmVudCBtYWtpbmcgdXAgdGhlIGNvbnRlbnQgb2YgdGhlIGtleWJvYXJkLiAqL1xuICBjb250YWluZXJJbnN0YW5jZTogTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQ7XG5cbiAgY29uc3RydWN0b3IoaW5zdGFuY2U6IE1hdEtleWJvYXJkQ29tcG9uZW50LFxuICAgIGNvbnRhaW5lckluc3RhbmNlOiBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmKSB7XG4gICAgLy8gU2V0cyB0aGUgcmVhZG9ubHkgaW5zdGFuY2Ugb2YgdGhlIGtleWJvYXJkIGNvbnRlbnQgY29tcG9uZW50LlxuICAgIHRoaXMuaW5zdGFuY2UgPSBpbnN0YW5jZTtcbiAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlID0gY29udGFpbmVySW5zdGFuY2U7XG5cbiAgICAvLyBGaW5pc2ggZGlzbWlzcyBvbiBleGl0dGluZ1xuICAgIGNvbnRhaW5lckluc3RhbmNlLm9uRXhpdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZmluaXNoRGlzbWlzcygpKTtcbiAgfVxuXG4gIC8qKiBEaXNtaXNzZXMgdGhlIGtleWJvYXJkLiAqL1xuICBkaXNtaXNzKCkge1xuICAgIGlmICghdGhpcy5fYWZ0ZXJDbG9zZWQuY2xvc2VkKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlLmV4aXQoKTtcbiAgICB9XG4gIH1cblxuICAvKiogTWFya3MgdGhlIGtleWJvYXJkIGFzIG9wZW5lZCAqL1xuICBfb3BlbigpIHtcbiAgICBpZiAoIXRoaXMuX2FmdGVyT3BlbmVkLmNsb3NlZCkge1xuICAgICAgdGhpcy5fYWZ0ZXJPcGVuZWQubmV4dCgpO1xuICAgICAgdGhpcy5fYWZ0ZXJPcGVuZWQuY29tcGxldGUoKTtcbiAgICB9XG4gIH1cblxuICAvKiogR2V0cyBhbiBvYnNlcnZhYmxlIHRoYXQgaXMgbm90aWZpZWQgd2hlbiB0aGUga2V5Ym9hcmQgaXMgZmluaXNoZWQgY2xvc2luZy4gKi9cbiAgYWZ0ZXJEaXNtaXNzZWQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FmdGVyQ2xvc2VkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGlzIG5vdGlmaWVkIHdoZW4gdGhlIGtleWJvYXJkIGhhcyBvcGVuZWQgYW5kIGFwcGVhcmVkLiAqL1xuICBhZnRlck9wZW5lZCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb250YWluZXJJbnN0YW5jZS5vbkVudGVyO1xuICB9XG5cbiAgLyoqIENsZWFucyB1cCB0aGUgRE9NIGFmdGVyIGNsb3NpbmcuICovXG4gIHByaXZhdGUgX2ZpbmlzaERpc21pc3MoKSB7XG4gICAgdGhpcy5fb3ZlcmxheVJlZi5kaXNwb3NlKCk7XG5cbiAgICB0aGlzLl9hZnRlckNsb3NlZC5uZXh0KCk7XG4gICAgdGhpcy5fYWZ0ZXJDbG9zZWQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate } from "tslib";
import { animate, state, style, transition, trigger } from '@angular/animations';

@@ -100,21 +100,21 @@ import { BasePortalOutlet, CdkPortalOutlet } from '@angular/cdk/portal';

];
tslib_1.__decorate([
__decorate([
ViewChild(CdkPortalOutlet, { static: true })
], MatKeyboardContainerComponent.prototype, "_portalOutlet", void 0);
tslib_1.__decorate([
__decorate([
HostBinding('@state')
], MatKeyboardContainerComponent.prototype, "_animationState", void 0);
tslib_1.__decorate([
__decorate([
HostBinding('attr.role')
], MatKeyboardContainerComponent.prototype, "attrRole", void 0);
tslib_1.__decorate([
__decorate([
HostListener('mousedown', ['$event'])
], MatKeyboardContainerComponent.prototype, "onMousedown", null);
tslib_1.__decorate([
__decorate([
HostListener('@state.done', ['$event'])
], MatKeyboardContainerComponent.prototype, "onAnimationEnd", null);
MatKeyboardContainerComponent = tslib_1.__decorate([
MatKeyboardContainerComponent = __decorate([
Component({
selector: 'mat-keyboard-container',
template: "<ng-template cdkPortalHost></ng-template>\r\n",
template: "<ng-template cdkPortalHost></ng-template>\n",
changeDetection: ChangeDetectionStrategy.OnPush,

@@ -136,6 +136,6 @@ preserveWhitespaces: false,

],
styles: [":host{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);border-radius:2px;box-sizing:border-box;display:block;margin:0 auto;max-width:960px;min-width:568px;-webkit-transform:translateY(100%);transform:translateY(100%)}@media (-ms-high-contrast:active){:host{border:1px solid}}"]
styles: [":host{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);border-radius:2px;box-sizing:border-box;display:block;margin:0 auto;max-width:960px;min-width:568px;-webkit-transform:translateY(100%);transform:translateY(100%)}.cdk-high-contrast-active :host{border:1px solid}.cdk-high-contrast-active :host :host{border:1px solid}"]
})
], MatKeyboardContainerComponent);
export { MatKeyboardContainerComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFrQixLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlLLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU3Riw0RUFBNEU7QUFDNUUsMkZBQTJGO0FBQzNGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFHLGtCQUFrQixDQUFDLFFBQVEsSUFBSSxlQUFlLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztBQUNyRyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLElBQUksZUFBZSxDQUFDLGtCQUFrQixFQUFFLENBQUM7QUFFcEc7OztHQUdHO0FBc0JILElBQWEsNkJBQTZCLEdBQTFDLE1BQWEsNkJBQThCLFNBQVEsZ0JBQWdCO0lBeUJqRSxZQUFvQixPQUFlLEVBQ2Ysa0JBQXFDO1FBQ3ZELEtBQUssRUFBRSxDQUFDO1FBRlUsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUF4QnpELGdEQUFnRDtRQUN4QyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBTTNCLDRDQUE0QztRQUU1QyxvQkFBZSxHQUEyQixzQkFBc0IsQ0FBQyxJQUFJLENBQUM7UUFFdEUsb0VBQW9FO1FBQ3BFLFdBQU0sR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVyQyw4RUFBOEU7UUFDOUUsWUFBTyxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBR3RDLGFBQVEsR0FBRyxPQUFPLENBQUM7SUFRbkIsQ0FBQztJQUdELFdBQVcsQ0FBQyxLQUFpQjtRQUMzQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELHVFQUF1RTtJQUN2RSxxQkFBcUIsQ0FBSSxNQUEwQjtRQUNqRCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxLQUFLLENBQUMseUVBQXlFLENBQUMsQ0FBQztTQUN4RjtRQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsaUVBQWlFO0lBQ2pFLG9CQUFvQjtRQUNsQixNQUFNLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxvRUFBb0U7SUFFcEUsY0FBYyxDQUFDLEtBQXFCO1FBQ2xDLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRXJDLElBQUksQ0FBQyxPQUFPLEtBQUssc0JBQXNCLENBQUMsSUFBSSxJQUFJLFNBQVMsS0FBSyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzFILElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtRQUVELElBQUksT0FBTyxLQUFLLHNCQUFzQixDQUFDLE9BQU8sRUFBRTtZQUM5QywwREFBMEQ7WUFDMUQsc0NBQXNDO1lBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7WUFFN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNwQixPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsc0RBQXNEO0lBQ3RELEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixJQUFJLENBQUMsZUFBZSxHQUFHLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztZQUN0RCxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDekM7SUFDSCxDQUFDO0lBRUQsMERBQTBEO0lBQzFELElBQUk7UUFDRixJQUFJLENBQUMsZUFBZSxHQUFHLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztRQUNyRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssYUFBYTtRQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQjthQUMxQixZQUFZLEVBQUU7YUFDZCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDYixTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGLENBQUE7O1lBaEY4QixNQUFNO1lBQ0ssaUJBQWlCOztBQW5CekQ7SUFEQyxTQUFTLENBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDO29FQUNOO0FBSXZDO0lBREMsV0FBVyxDQUFDLFFBQVEsQ0FBQztzRUFDZ0Q7QUFTdEU7SUFEQyxXQUFXLENBQUMsV0FBVyxDQUFDOytEQUNOO0FBV25CO0lBREMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dFQUdyQztBQWtCRDtJQURDLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzttRUFrQnZDO0FBcEVVLDZCQUE2QjtJQXJCekMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLHdCQUF3QjtRQUNsQyx5REFBa0Q7UUFFbEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07UUFDL0MsbUJBQW1CLEVBQUUsS0FBSztRQUMxQixnQkFBZ0I7UUFDaEIsdUJBQXVCO1FBQ3ZCLDhEQUE4RDtRQUM5RCxnRUFBZ0U7UUFDaEUsOERBQThEO1FBQzlELE9BQU87UUFDUCxJQUFJO1FBQ0osVUFBVSxFQUFFO1lBQ1YsT0FBTyxDQUFDLE9BQU8sRUFBRTtnQkFDZixLQUFLLENBQUMsR0FBRyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRixVQUFVLENBQUMsR0FBRywyQkFBMkIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQzFFLFVBQVUsQ0FBQyxHQUFHLDJCQUEyQixDQUFDLElBQUksRUFBRSxFQUFFLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUMzRSxDQUFDO1NBQ0g7O0tBQ0YsQ0FBQztHQUNXLDZCQUE2QixDQXlHekM7U0F6R1ksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBCYXNlUG9ydGFsT3V0bGV0LCBDZGtQb3J0YWxPdXRsZXQsIENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ29tcG9uZW50UmVmLCBFbWJlZGRlZFZpZXdSZWYsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIE5nWm9uZSwgT25EZXN0cm95LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XHJcbmltcG9ydCB7IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9lbnVtcy9rZXlib2FyZC1hbmltYXRpb24tc3RhdGUuZW51bSc7XHJcbmltcG9ydCB7IEtleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbiB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLWFuaW1hdGlvbi10cmFuc2l0aW9uLmVudW0nO1xyXG5cclxuLy8gVE9ETzogd2UgY2FuJ3QgdXNlIGNvbnN0YW50cyBmcm9tIGFuaW1hdGlvbi50cyBoZXJlIGJlY2F1c2UgeW91IGNhbid0IHVzZVxyXG4vLyBhIHRleHQgaW50ZXJwb2xhdGlvbiBpbiBhbnl0aGluZyB0aGF0IGlzIGFuYWx5emVkIHN0YXRpY2FsbHkgd2l0aCBuZ2MgKGZvciBBb1QgY29tcGlsZSkuXHJcbmV4cG9ydCBjb25zdCBTSE9XX0FOSU1BVElPTiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FTlRFUklOR30gJHtBbmltYXRpb25DdXJ2ZXMuREVDRUxFUkFUSU9OX0NVUlZFfWA7XHJcbmV4cG9ydCBjb25zdCBISURFX0FOSU1BVElPTiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FWElUSU5HfSAke0FuaW1hdGlvbkN1cnZlcy5BQ0NFTEVSQVRJT05fQ1VSVkV9YDtcclxuXHJcbi8qKlxyXG4gKiBJbnRlcm5hbCBjb21wb25lbnQgdGhhdCB3cmFwcyB1c2VyLXByb3ZpZGVkIGtleWJvYXJkIGNvbnRlbnQuXHJcbiAqIEBkb2NzLXByaXZhdGVcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWtleWJvYXJkLWNvbnRhaW5lcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXHJcbiAgLy8gYW5pbWF0aW9uczogW1xyXG4gIC8vICAgdHJpZ2dlcignc3RhdGUnLCBbXHJcbiAgLy8gICAgIHN0YXRlKCd2aXNpYmxlJywgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCUpJ30pKSxcclxuICAvLyAgICAgdHJhbnNpdGlvbigndmlzaWJsZSA9PiBoaWRkZW4nLCBhbmltYXRlKEhJREVfQU5JTUFUSU9OKSksXHJcbiAgLy8gICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gdmlzaWJsZScsIGFuaW1hdGUoU0hPV19BTklNQVRJT04pKSxcclxuICAvLyAgIF0pXHJcbiAgLy8gXVxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ3N0YXRlJywgW1xyXG4gICAgICBzdGF0ZShgJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZpc2libGV9YCwgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDAlKScgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKGAke0tleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbi5IaWRlfWAsIGFuaW1hdGUoSElERV9BTklNQVRJT04pKSxcclxuICAgICAgdHJhbnNpdGlvbihgJHtLZXlib2FyZEFuaW1hdGlvblRyYW5zaXRpb24uU2hvd31gLCBhbmltYXRlKFNIT1dfQU5JTUFUSU9OKSlcclxuICAgIF0pXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlUG9ydGFsT3V0bGV0IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBoYXMgYmVlbiBkZXN0cm95ZWQuICovXHJcbiAgcHJpdmF0ZSBfZGVzdHJveWVkID0gZmFsc2U7XHJcblxyXG4gIC8qKiBUaGUgcG9ydGFsIG91dGxldCBpbnNpZGUgb2YgdGhpcyBjb250YWluZXIgaW50byB3aGljaCB0aGUga2V5Ym9hcmQgY29udGVudCB3aWxsIGJlIGxvYWRlZC4gKi9cclxuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSlcclxuICBwcml2YXRlIF9wb3J0YWxPdXRsZXQ6IENka1BvcnRhbE91dGxldDtcclxuXHJcbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUga2V5Ym9hcmQgYW5pbWF0aW9ucy4gKi9cclxuICBASG9zdEJpbmRpbmcoJ0BzdGF0ZScpXHJcbiAgX2FuaW1hdGlvblN0YXRlOiBLZXlib2FyZEFuaW1hdGlvblN0YXRlID0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkO1xyXG5cclxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoYXQgdGhlIGtleWJvYXJkIGhhcyBleGl0ZWQgZnJvbSB2aWV3LiAqL1xyXG4gIG9uRXhpdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGF0IHRoZSBrZXlib2FyZCBoYXMgZmluaXNoZWQgZW50ZXJpbmcgdGhlIHZpZXcuICovXHJcbiAgb25FbnRlcjogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxyXG4gIGF0dHJSb2xlID0gJ2FsZXJ0JztcclxuXHJcbiAgLy8gdGhlIGtleWJvYXJkIGNvbmZpZ3VyYXRpb25cclxuICBrZXlib2FyZENvbmZpZzogTWF0S2V5Ym9hcmRDb25maWc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX25nWm9uZTogTmdab25lLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25Nb3VzZWRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG5cclxuICAvKiogQXR0YWNoIGEgY29tcG9uZW50IHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyLiAqL1xyXG4gIGF0dGFjaENvbXBvbmVudFBvcnRhbDxUPihwb3J0YWw6IENvbXBvbmVudFBvcnRhbDxUPik6IENvbXBvbmVudFJlZjxUPiB7XHJcbiAgICBpZiAodGhpcy5fcG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ0F0dGVtcHRpbmcgdG8gYXR0YWNoIGtleWJvYXJkIGNvbnRlbnQgYWZ0ZXIgY29udGVudCBpcyBhbHJlYWR5IGF0dGFjaGVkJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcclxuICB9XHJcblxyXG4gIC8vIEF0dGFjaCBhIHRlbXBsYXRlIHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyXHJcbiAgYXR0YWNoVGVtcGxhdGVQb3J0YWwoKTogRW1iZWRkZWRWaWV3UmVmPGFueT4ge1xyXG4gICAgdGhyb3cgRXJyb3IoJ05vdCB5ZXQgaW1wbGVtZW50ZWQnKTtcclxuICB9XHJcblxyXG4gIC8qKiBIYW5kbGUgZW5kIG9mIGFuaW1hdGlvbnMsIHVwZGF0aW5nIHRoZSBzdGF0ZSBvZiB0aGUga2V5Ym9hcmQuICovXHJcbiAgQEhvc3RMaXN0ZW5lcignQHN0YXRlLmRvbmUnLCBbJyRldmVudCddKVxyXG4gIG9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xyXG4gICAgY29uc3QgeyBmcm9tU3RhdGUsIHRvU3RhdGUgfSA9IGV2ZW50O1xyXG5cclxuICAgIGlmICgodG9TdGF0ZSA9PT0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkICYmIGZyb21TdGF0ZSAhPT0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkKSB8fCB0b1N0YXRlLnN0YXJ0c1dpdGgoJ2hpZGRlbicpKSB7XHJcbiAgICAgIHRoaXMuX2NvbXBsZXRlRXhpdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0b1N0YXRlID09PSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZpc2libGUpIHtcclxuICAgICAgLy8gTm90ZTogd2Ugc2hvdWxkbid0IHVzZSBgdGhpc2AgaW5zaWRlIHRoZSB6b25lIGNhbGxiYWNrLFxyXG4gICAgICAvLyBiZWNhdXNlIGl0IGNhbiBjYXVzZSBhIG1lbW9yeSBsZWFrLlxyXG4gICAgICBjb25zdCBvbkVudGVyID0gdGhpcy5vbkVudGVyO1xyXG5cclxuICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB7XHJcbiAgICAgICAgb25FbnRlci5uZXh0KCk7XHJcbiAgICAgICAgb25FbnRlci5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBCZWdpbiBhbmltYXRpb24gb2Yga2V5Ym9hcmQgZW50cmFuY2UgaW50byB2aWV3LiAqL1xyXG4gIGVudGVyKCkge1xyXG4gICAgaWYgKCF0aGlzLl9kZXN0cm95ZWQpIHtcclxuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGUgPSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZpc2libGU7XHJcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBCZWdpbiBhbmltYXRpb24gb2YgdGhlIHNuYWNrIGJhciBleGl0aW5nIGZyb20gdmlldy4gKi9cclxuICBleGl0KCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgdGhpcy5fYW5pbWF0aW9uU3RhdGUgPSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbjtcclxuICAgIHJldHVybiB0aGlzLm9uRXhpdDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ha2VzIHN1cmUgdGhlIGV4aXQgY2FsbGJhY2tzIGhhdmUgYmVlbiBpbnZva2VkIHdoZW4gdGhlIGVsZW1lbnQgaXMgZGVzdHJveWVkLlxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fZGVzdHJveWVkID0gdHJ1ZTtcclxuICAgIHRoaXMuX2NvbXBsZXRlRXhpdCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2FpdHMgZm9yIHRoZSB6b25lIHRvIHNldHRsZSBiZWZvcmUgcmVtb3ZpbmcgdGhlIGVsZW1lbnQuIEhlbHBzIHByZXZlbnRcclxuICAgKiBlcnJvcnMgd2hlcmUgd2UgZW5kIHVwIHJlbW92aW5nIGFuIGVsZW1lbnQgd2hpY2ggaXMgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbmltYXRpb24uXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY29tcGxldGVFeGl0KCkge1xyXG4gICAgdGhpcy5fbmdab25lLm9uTWljcm90YXNrRW1wdHlcclxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXHJcbiAgICAgIC5waXBlKGZpcnN0KCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMub25FeGl0Lm5leHQoKTtcclxuICAgICAgICB0aGlzLm9uRXhpdC5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFrQixLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlLLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU3Riw0RUFBNEU7QUFDNUUsMkZBQTJGO0FBQzNGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFHLGtCQUFrQixDQUFDLFFBQVEsSUFBSSxlQUFlLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztBQUNyRyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLElBQUksZUFBZSxDQUFDLGtCQUFrQixF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c0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQmFzZVBvcnRhbE91dGxldCwgQ2RrUG9ydGFsT3V0bGV0LCBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEVtYmVkZGVkVmlld1JlZiwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgTmdab25lLCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XG5pbXBvcnQgeyBLZXlib2FyZEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0nO1xuaW1wb3J0IHsgS2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uIH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bSc7XG5cbi8vIFRPRE86IHdlIGNhbid0IHVzZSBjb25zdGFudHMgZnJvbSBhbmltYXRpb24udHMgaGVyZSBiZWNhdXNlIHlvdSBjYW4ndCB1c2Vcbi8vIGEgdGV4dCBpbnRlcnBvbGF0aW9uIGluIGFueXRoaW5nIHRoYXQgaXMgYW5hbHl6ZWQgc3RhdGljYWxseSB3aXRoIG5nYyAoZm9yIEFvVCBjb21waWxlKS5cbmV4cG9ydCBjb25zdCBTSE9XX0FOSU1BVElPTiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FTlRFUklOR30gJHtBbmltYXRpb25DdXJ2ZXMuREVDRUxFUkFUSU9OX0NVUlZFfWA7XG5leHBvcnQgY29uc3QgSElERV9BTklNQVRJT04gPSBgJHtBbmltYXRpb25EdXJhdGlvbnMuRVhJVElOR30gJHtBbmltYXRpb25DdXJ2ZXMuQUNDRUxFUkFUSU9OX0NVUlZFfWA7XG5cbi8qKlxuICogSW50ZXJuYWwgY29tcG9uZW50IHRoYXQgd3JhcHMgdXNlci1wcm92aWRlZCBrZXlib2FyZCBjb250ZW50LlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQta2V5Ym9hcmQtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIC8vIGFuaW1hdGlvbnM6IFtcbiAgLy8gICB0cmlnZ2VyKCdzdGF0ZScsIFtcbiAgLy8gICAgIHN0YXRlKCd2aXNpYmxlJywgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCUpJ30pKSxcbiAgLy8gICAgIHRyYW5zaXRpb24oJ3Zpc2libGUgPT4gaGlkZGVuJywgYW5pbWF0ZShISURFX0FOSU1BVElPTikpLFxuICAvLyAgICAgdHJhbnNpdGlvbigndm9pZCA9PiB2aXNpYmxlJywgYW5pbWF0ZShTSE9XX0FOSU1BVElPTikpLFxuICAvLyAgIF0pXG4gIC8vIF1cbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3N0YXRlJywgW1xuICAgICAgc3RhdGUoYCR7S2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5WaXNpYmxlfWAsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwJSknIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oYCR7S2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uLkhpZGV9YCwgYW5pbWF0ZShISURFX0FOSU1BVElPTikpLFxuICAgICAgdHJhbnNpdGlvbihgJHtLZXlib2FyZEFuaW1hdGlvblRyYW5zaXRpb24uU2hvd31gLCBhbmltYXRlKFNIT1dfQU5JTUFUSU9OKSlcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBoYXMgYmVlbiBkZXN0cm95ZWQuICovXG4gIHByaXZhdGUgX2Rlc3Ryb3llZCA9IGZhbHNlO1xuXG4gIC8qKiBUaGUgcG9ydGFsIG91dGxldCBpbnNpZGUgb2YgdGhpcyBjb250YWluZXIgaW50byB3aGljaCB0aGUga2V5Ym9hcmQgY29udGVudCB3aWxsIGJlIGxvYWRlZC4gKi9cbiAgQFZpZXdDaGlsZChDZGtQb3J0YWxPdXRsZXQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgX3BvcnRhbE91dGxldDogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIC8qKiBUaGUgc3RhdGUgb2YgdGhlIGtleWJvYXJkIGFuaW1hdGlvbnMuICovXG4gIEBIb3N0QmluZGluZygnQHN0YXRlJylcbiAgX2FuaW1hdGlvblN0YXRlOiBLZXlib2FyZEFuaW1hdGlvblN0YXRlID0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkO1xuXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhhdCB0aGUga2V5Ym9hcmQgaGFzIGV4aXRlZCBmcm9tIHZpZXcuICovXG4gIG9uRXhpdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoYXQgdGhlIGtleWJvYXJkIGhhcyBmaW5pc2hlZCBlbnRlcmluZyB0aGUgdmlldy4gKi9cbiAgb25FbnRlcjogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gIGF0dHJSb2xlID0gJ2FsZXJ0JztcblxuICAvLyB0aGUga2V5Ym9hcmQgY29uZmlndXJhdGlvblxuICBrZXlib2FyZENvbmZpZzogTWF0S2V5Ym9hcmRDb25maWc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBvbk1vdXNlZG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICAvKiogQXR0YWNoIGEgY29tcG9uZW50IHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyLiAqL1xuICBhdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsOiBDb21wb25lbnRQb3J0YWw8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xuICAgIGlmICh0aGlzLl9wb3J0YWxPdXRsZXQuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ0F0dGVtcHRpbmcgdG8gYXR0YWNoIGtleWJvYXJkIGNvbnRlbnQgYWZ0ZXIgY29udGVudCBpcyBhbHJlYWR5IGF0dGFjaGVkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG4gIC8vIEF0dGFjaCBhIHRlbXBsYXRlIHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyXG4gIGF0dGFjaFRlbXBsYXRlUG9ydGFsKCk6IEVtYmVkZGVkVmlld1JlZjxhbnk+IHtcbiAgICB0aHJvdyBFcnJvcignTm90IHlldCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEhhbmRsZSBlbmQgb2YgYW5pbWF0aW9ucywgdXBkYXRpbmcgdGhlIHN0YXRlIG9mIHRoZSBrZXlib2FyZC4gKi9cbiAgQEhvc3RMaXN0ZW5lcignQHN0YXRlLmRvbmUnLCBbJyRldmVudCddKVxuICBvbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICBjb25zdCB7IGZyb21TdGF0ZSwgdG9TdGF0ZSB9ID0gZXZlbnQ7XG5cbiAgICBpZiAoKHRvU3RhdGUgPT09IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVm9pZCAmJiBmcm9tU3RhdGUgIT09IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVm9pZCkgfHwgdG9TdGF0ZS5zdGFydHNXaXRoKCdoaWRkZW4nKSkge1xuICAgICAgdGhpcy5fY29tcGxldGVFeGl0KCk7XG4gICAgfVxuXG4gICAgaWYgKHRvU3RhdGUgPT09IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZSkge1xuICAgICAgLy8gTm90ZTogd2Ugc2hvdWxkbid0IHVzZSBgdGhpc2AgaW5zaWRlIHRoZSB6b25lIGNhbGxiYWNrLFxuICAgICAgLy8gYmVjYXVzZSBpdCBjYW4gY2F1c2UgYSBtZW1vcnkgbGVhay5cbiAgICAgIGNvbnN0IG9uRW50ZXIgPSB0aGlzLm9uRW50ZXI7XG5cbiAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICBvbkVudGVyLm5leHQoKTtcbiAgICAgICAgb25FbnRlci5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEJlZ2luIGFuaW1hdGlvbiBvZiBrZXlib2FyZCBlbnRyYW5jZSBpbnRvIHZpZXcuICovXG4gIGVudGVyKCkge1xuICAgIGlmICghdGhpcy5fZGVzdHJveWVkKSB7XG4gICAgICB0aGlzLl9hbmltYXRpb25TdGF0ZSA9IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZTtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQmVnaW4gYW5pbWF0aW9uIG9mIHRoZSBzbmFjayBiYXIgZXhpdGluZyBmcm9tIHZpZXcuICovXG4gIGV4aXQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5fYW5pbWF0aW9uU3RhdGUgPSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbjtcbiAgICByZXR1cm4gdGhpcy5vbkV4aXQ7XG4gIH1cblxuICAvKipcbiAgICogTWFrZXMgc3VyZSB0aGUgZXhpdCBjYWxsYmFja3MgaGF2ZSBiZWVuIGludm9rZWQgd2hlbiB0aGUgZWxlbWVudCBpcyBkZXN0cm95ZWQuXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9kZXN0cm95ZWQgPSB0cnVlO1xuICAgIHRoaXMuX2NvbXBsZXRlRXhpdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdhaXRzIGZvciB0aGUgem9uZSB0byBzZXR0bGUgYmVmb3JlIHJlbW92aW5nIHRoZSBlbGVtZW50LiBIZWxwcyBwcmV2ZW50XG4gICAqIGVycm9ycyB3aGVyZSB3ZSBlbmQgdXAgcmVtb3ZpbmcgYW4gZWxlbWVudCB3aGljaCBpcyBpbiB0aGUgbWlkZGxlIG9mIGFuIGFuaW1hdGlvbi5cbiAgICovXG4gIHByaXZhdGUgX2NvbXBsZXRlRXhpdCgpIHtcbiAgICB0aGlzLl9uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eVxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXG4gICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMub25FeGl0Lm5leHQoKTtcbiAgICAgICAgdGhpcy5vbkV4aXQuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Output } from '@angular/core';

@@ -350,51 +350,51 @@ import { BehaviorSubject } from 'rxjs';

];
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "key", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "icon", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "active", null);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "pressed", null);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "input", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "control", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "genericClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "enterClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "bkspClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "capsClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "altClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "shiftClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "spaceClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "tabClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "keyClick", void 0);
MatKeyboardKeyComponent = tslib_1.__decorate([
MatKeyboardKeyComponent = __decorate([
Component({
selector: 'mat-keyboard-key',
template: "<button mat-raised-button\r\n class=\"mat-keyboard-key\"\r\n tabindex=\"-1\"\r\n [class.mat-keyboard-key-active]=\"active$ | async\"\r\n [class.mat-keyboard-key-pressed]=\"pressed$ | async\"\r\n [ngClass]=\"cssClass\"\r\n (click)=\"onClick($event)\"\r\n (pointerdown)=\"onPointerDown()\"\r\n (pointerleave)=\"cancelRepeat()\"\r\n (pointerup)=\"cancelRepeat()\"\r\n>\r\n <mat-icon *ngIf=\"hasIcon; else noIcon\" [fontSet]=\"fontSet\" [fontIcon]=\"fontIcon\" [svgIcon]=\"svgIcon\">{{ iconName }}</mat-icon>\r\n <ng-template #noIcon>{{ key }}</ng-template>\r\n</button>\r\n",
template: "<button mat-raised-button\n class=\"mat-keyboard-key\"\n tabindex=\"-1\"\n [class.mat-keyboard-key-active]=\"active$ | async\"\n [class.mat-keyboard-key-pressed]=\"pressed$ | async\"\n [ngClass]=\"cssClass\"\n (click)=\"onClick($event)\"\n (pointerdown)=\"onPointerDown()\"\n (pointerleave)=\"cancelRepeat()\"\n (pointerup)=\"cancelRepeat()\"\n>\n <mat-icon *ngIf=\"hasIcon; else noIcon\" [fontSet]=\"fontSet\" [fontIcon]=\"fontIcon\" [svgIcon]=\"svgIcon\">{{ iconName }}</mat-icon>\n <ng-template #noIcon>{{ key }}</ng-template>\n</button>\n",
changeDetection: ChangeDetectionStrategy.OnPush,

@@ -404,5 +404,5 @@ preserveWhitespaces: false,

}),
tslib_1.__param(0, Inject(MAT_KEYBOARD_DEADKEYS))
__param(0, Inject(MAT_KEYBOARD_DEADKEYS))
], MatKeyboardKeyComponent);
export { MatKeyboardKeyComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQta2V5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUl2RSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFDL0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQztBQUM5QixNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUM7QUFDM0IsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBUzVCLElBQWEsdUJBQXVCLEdBQXBDLE1BQWEsdUJBQXVCO0lBeUlsQyxzQkFBc0I7SUFDdEIsWUFBbUQsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUF4SXZFLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBRzVCLGlCQUFZLEdBQVksS0FBSyxDQUFDLENBQUMsc0NBQXNDO1FBRTdFLFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0QsYUFBUSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWlDaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzlD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QUU7eURBQ2lDO0FBRzFDO0lBREMsTUFBTSxFQUFFOzJEQUNtQztBQUc1QztJQURDLE1BQU0sRUFBRTsyREFDbUM7QUFHNUM7SUFEQyxNQUFNLEVBQUU7eURBQ2lDO0FBRzFDO0lBREMsTUFBTSxFQUFFO3lEQUNpQztBQWxFL0IsdUJBQXVCO0lBUG5DLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxrQkFBa0I7UUFDNUIsdW9CQUE0QztRQUU1QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtRQUMvQyxtQkFBbUIsRUFBRSxLQUFLOztLQUMzQixDQUFDO0lBMklhLG1CQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0dBMUkvQix1QkFBdUIsQ0EyYW5DO1NBM2FZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1BVF9LRVlCT0FSRF9ERUFES0VZUyB9IGZyb20gJy4uLy4uL2NvbmZpZ3Mva2V5Ym9hcmQtZGVhZGtleS5jb25maWcnO1xyXG5pbXBvcnQgeyBLZXlib2FyZENsYXNzS2V5IH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0nO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmREZWFka2V5cyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSU1hdEljb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgY29uc3QgVkFMVUVfTkVXTElORSA9ICdcXG5cXHInO1xyXG5leHBvcnQgY29uc3QgVkFMVUVfU1BBQ0UgPSAnICc7XHJcbmV4cG9ydCBjb25zdCBWQUxVRV9UQUIgPSAnXFx0JztcclxuY29uc3QgUkVQRUFUX1RJTUVPVVQgPSA1MDA7XHJcbmNvbnN0IFJFUEVBVF9JTlRFUlZBTCA9IDEwMDtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWtleWJvYXJkLWtleScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLWtleS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va2V5Ym9hcmQta2V5LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBwcml2YXRlIF9kZWFka2V5S2V5czogc3RyaW5nW10gPSBbXTtcclxuICBwcml2YXRlIF9yZXBlYXRUaW1lb3V0SGFuZGxlcjogYW55O1xyXG4gIHByaXZhdGUgX3JlcGVhdEludGVydmFsSGFuZGxlcjogYW55O1xyXG4gIHByaXZhdGUgX3JlcGVhdFN0YXRlOiBib29sZWFuID0gZmFsc2U7IC8vIHRydWUgaWYgcmVwZWF0aW5nLCBmYWxzZSBpZiB3YWl0aW5nXHJcblxyXG4gIGFjdGl2ZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG5cclxuICBwcmVzc2VkJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAga2V5OiBzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGljb246IElNYXRJY29uO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBhY3RpdmUoYWN0aXZlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmFjdGl2ZSQubmV4dChhY3RpdmUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGFjdGl2ZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZSQuZ2V0VmFsdWUoKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHByZXNzZWQocHJlc3NlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5wcmVzc2VkJC5uZXh0KHByZXNzZWQpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHByZXNzZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5wcmVzc2VkJC5nZXRWYWx1ZSgpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBpbnB1dD86IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29udHJvbD86IEZvcm1Db250cm9sO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBnZW5lcmljQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGVudGVyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGJrc3BDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgY2Fwc0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBhbHRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgc2hpZnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgc3BhY2VDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgdGFiQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGtleUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBnZXQgbG93ZXJLZXkoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmtleX1gLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgY2hhckNvZGUoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmtleX1gLmNoYXJDb2RlQXQoMCk7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNDbGFzc0tleSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmtleSBpbiBLZXlib2FyZENsYXNzS2V5O1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlzRGVhZEtleSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9kZWFka2V5S2V5cy5zb21lKChkZWFkS2V5OiBzdHJpbmcpID0+IGRlYWRLZXkgPT09IGAke3RoaXMua2V5fWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc0ljb24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uICE9PSB1bmRlZmluZWQgJiYgdGhpcy5pY29uICE9PSBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGljb25OYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uLm5hbWUgfHwgJyc7XHJcbiAgfVxyXG5cclxuICBnZXQgZm9udFNldCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvbi5mb250U2V0IHx8ICcnO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZvbnRJY29uKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uLmZvbnRJY29uIHx8ICcnO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN2Z0ljb24oKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb24uc3ZnSWNvbiB8fCAnJztcclxuICB9XHJcblxyXG4gIGdldCBjc3NDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgY2xhc3NlcyA9IFtdO1xyXG5cclxuICAgIGlmICh0aGlzLmhhc0ljb24pIHtcclxuICAgICAgY2xhc3Nlcy5wdXNoKCdtYXQta2V5Ym9hcmQta2V5LW1vZGlmaWVyJyk7XHJcbiAgICAgIGNsYXNzZXMucHVzaChgbWF0LWtleWJvYXJkLWtleS0ke3RoaXMubG93ZXJLZXl9YCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNEZWFkS2V5KSB7XHJcbiAgICAgIGNsYXNzZXMucHVzaCgnbWF0LWtleWJvYXJkLWtleS1kZWFka2V5Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGNsYXNzZXMuam9pbignICcpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlucHV0VmFsdWUoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29udHJvbC52YWx1ZTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXQgaW5wdXRWYWx1ZShpbnB1dFZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKGlucHV0VmFsdWUpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlucHV0ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBpbnB1dFZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gSW5qZWN0IGRlcGVuZGVuY2llc1xyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTUFUX0tFWUJPQVJEX0RFQURLRVlTKSBwcml2YXRlIF9kZWFka2V5czogSUtleWJvYXJkRGVhZGtleXMpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIC8vIHJlYWQgdGhlIGRlYWRrZXlzXHJcbiAgICB0aGlzLl9kZWFka2V5S2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuX2RlYWRrZXlzKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5jYW5jZWxSZXBlYXQoKTtcclxuICB9XHJcblxyXG4gIG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIC8vIFRyaWdnZXIgZ2VuZXJpYyBjbGljayBldmVudFxyXG4gICAgdGhpcy5nZW5lcmljQ2xpY2suZW1pdChldmVudCk7XHJcblxyXG4gICAgLy8gRG8gbm90IGV4ZWN1dGUga2V5cHJlc3MgaWYga2V5IGlzIGN1cnJlbnRseSByZXBlYXRpbmdcclxuICAgIGlmICh0aGlzLl9yZXBlYXRTdGF0ZSkgeyByZXR1cm47IH1cclxuXHJcbiAgICAvLyBUcmlnZ2VyIGEgZ2xvYmFsIGtleSBldmVudC4gVE9ETzogaW52ZXN0aWdhdGVcclxuICAgIC8vIHRoaXMuX3RyaWdnZXJLZXlFdmVudCgpO1xyXG5cclxuICAgIC8vIE1hbmlwdWxhdGUgdGhlIGZvY3VzZWQgaW5wdXQgLyB0ZXh0YXJlYSB2YWx1ZVxyXG4gICAgY29uc3QgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XHJcblxyXG4gICAgbGV0IGNoYXI6IHN0cmluZztcclxuICAgIHN3aXRjaCAodGhpcy5rZXkpIHtcclxuICAgICAgLy8gdGhpcyBrZXlzIGhhdmUgbm8gYWN0aW9ucyB5ZXRcclxuICAgICAgLy8gVE9ETzogYWRkIGRlYWRrZXlzIGFuZCBtb2RpZmllcnNcclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdDpcclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdEdyOlxyXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0TGs6XHJcbiAgICAgICAgdGhpcy5hbHRDbGljay5lbWl0KGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5Ca3NwOlxyXG4gICAgICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWRUZXh0KCk7XHJcbiAgICAgICAgdGhpcy5ia3NwQ2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQ2FwczpcclxuICAgICAgICB0aGlzLmNhcHNDbGljay5lbWl0KGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5FbnRlcjpcclxuICAgICAgICBpZiAodGhpcy5faXNUZXh0YXJlYSgpKSB7XHJcbiAgICAgICAgICBjaGFyID0gVkFMVUVfTkVXTElORTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5lbnRlckNsaWNrLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgICAgLy8gVE9ETzogdHJpZ2dlciBzdWJtaXQgLyBvblN1Ym1pdCAvIG5nU3VibWl0IHByb3Blcmx5IChmb3IgdGhlIHRpbWUgYmVpbmcgdGhpcyBoYXMgdG8gYmUgaGFuZGxlZCBieSB0aGUgdXNlciBoaW1zZWxmKVxyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5jb250cm9sLm5nQ29udHJvbC5jb250cm9sLnJvb3QpXHJcbiAgICAgICAgICAvLyB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9ybS5zdWJtaXQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuU2hpZnQ6XHJcbiAgICAgICAgdGhpcy5zaGlmdENsaWNrLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNwYWNlOlxyXG4gICAgICAgIGNoYXIgPSBWQUxVRV9TUEFDRTtcclxuICAgICAgICB0aGlzLnNwYWNlQ2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuVGFiOlxyXG4gICAgICAgIGNoYXIgPSBWQUxVRV9UQUI7XHJcbiAgICAgICAgdGhpcy50YWJDbGljay5lbWl0KGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgLy8gdGhlIGtleSBpcyBub3QgbWFwcGVkIG9yIGEgc3RyaW5nXHJcbiAgICAgICAgY2hhciA9IGAke3RoaXMua2V5fWA7XHJcbiAgICAgICAgdGhpcy5rZXlDbGljay5lbWl0KGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2hhciAmJiB0aGlzLmlucHV0KSB7XHJcbiAgICAgIHRoaXMucmVwbGFjZVNlbGVjdGVkVGV4dChjaGFyKTtcclxuICAgICAgdGhpcy5fc2V0Q3Vyc29yUG9zaXRpb24oY2FyZXQgKyAxKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBEaXNwYXRjaCBJbnB1dCBFdmVudCBmb3IgQW5ndWxhciB0byByZWdpc3RlciBhIGNoYW5nZVxyXG4gICAgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEhhbmRsZSByZXBlYXRpbmcga2V5cy4gS2V5cHJlc3MgbG9naWMgZGVyaXZlZCBmcm9tIG9uQ2xpY2soKVxyXG4gIG9uUG9pbnRlckRvd24oKSB7XHJcbiAgICB0aGlzLmNhbmNlbFJlcGVhdCgpO1xyXG4gICAgdGhpcy5fcmVwZWF0U3RhdGUgPSBmYWxzZTtcclxuICAgIHRoaXMuX3JlcGVhdFRpbWVvdXRIYW5kbGVyID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIC8vIEluaXRpYWxpemUga2V5cHJlc3MgdmFyaWFibGVzXHJcbiAgICAgIGxldCBjaGFyOiBzdHJpbmc7XHJcbiAgICAgIGxldCBrZXlGbjogKCkgPT4gdm9pZDtcclxuXHJcbiAgICAgIHN3aXRjaCAodGhpcy5rZXkpIHtcclxuICAgICAgICAvLyBJZ25vcmUgbm9uLXJlcGVhdGluZyBrZXlzXHJcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdDpcclxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0R3I6XHJcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdExrOlxyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5DYXBzOlxyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5FbnRlcjpcclxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuU2hpZnQ6XHJcbiAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5Ca3NwOlxyXG4gICAgICAgICAga2V5Rm4gPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWRUZXh0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuYmtzcENsaWNrLmVtaXQoKTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNwYWNlOlxyXG4gICAgICAgICAgY2hhciA9IFZBTFVFX1NQQUNFO1xyXG4gICAgICAgICAga2V5Rm4gPSAoKSA9PiB0aGlzLnNwYWNlQ2xpY2suZW1pdCgpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5UYWI6XHJcbiAgICAgICAgICBjaGFyID0gVkFMVUVfVEFCO1xyXG4gICAgICAgICAga2V5Rm4gPSAoKSA9PiB0aGlzLnRhYkNsaWNrLmVtaXQoKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgY2hhciA9IGAke3RoaXMua2V5fWA7XHJcbiAgICAgICAgICBrZXlGbiA9ICgpID0+IHRoaXMua2V5Q2xpY2suZW1pdCgpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIEV4ZWN1dGUgcmVwZWF0aW5nIGtleXByZXNzXHJcbiAgICAgIHRoaXMuX3JlcGVhdEludGVydmFsSGFuZGxlciA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgICBjb25zdCBjYXJldCA9IHRoaXMuaW5wdXQgPyB0aGlzLl9nZXRDdXJzb3JQb3NpdGlvbigpIDogMDtcclxuICAgICAgICB0aGlzLl9yZXBlYXRTdGF0ZSA9IHRydWU7XHJcblxyXG4gICAgICAgIGlmIChrZXlGbikgeyBrZXlGbigpOyB9XHJcblxyXG4gICAgICAgIGlmIChjaGFyICYmIHRoaXMuaW5wdXQpIHtcclxuICAgICAgICAgIHRoaXMucmVwbGFjZVNlbGVjdGVkVGV4dChjaGFyKTtcclxuICAgICAgICAgIHRoaXMuX3NldEN1cnNvclBvc2l0aW9uKGNhcmV0ICsgMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdpbnB1dCcsIHsgYnViYmxlczogdHJ1ZSB9KSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgUkVQRUFUX0lOVEVSVkFMKTtcclxuICAgIH0sIFJFUEVBVF9USU1FT1VUKTtcclxuICB9XHJcblxyXG4gIGNhbmNlbFJlcGVhdCgpIHtcclxuICAgIGlmICh0aGlzLl9yZXBlYXRUaW1lb3V0SGFuZGxlcikge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fcmVwZWF0VGltZW91dEhhbmRsZXIpO1xyXG4gICAgICB0aGlzLl9yZXBlYXRUaW1lb3V0SGFuZGxlciA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuX3JlcGVhdEludGVydmFsSGFuZGxlcikge1xyXG4gICAgICBjbGVhckludGVydmFsKHRoaXMuX3JlcGVhdEludGVydmFsSGFuZGxlcik7XHJcbiAgICAgIHRoaXMuX3JlcGVhdEludGVydmFsSGFuZGxlciA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRlbGV0ZVNlbGVjdGVkVGV4dCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5pbnB1dFZhbHVlID8gdGhpcy5pbnB1dFZhbHVlLnRvU3RyaW5nKCkgOiAnJztcclxuICAgIGxldCBjYXJldCA9IHRoaXMuaW5wdXQgPyB0aGlzLl9nZXRDdXJzb3JQb3NpdGlvbigpIDogMDtcclxuICAgIGxldCBzZWxlY3Rpb25MZW5ndGggPSB0aGlzLl9nZXRTZWxlY3Rpb25MZW5ndGgoKTtcclxuICAgIGlmIChzZWxlY3Rpb25MZW5ndGggPT09IDApIHtcclxuICAgICAgaWYgKGNhcmV0ID09PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjYXJldC0tO1xyXG4gICAgICBzZWxlY3Rpb25MZW5ndGggPSAxO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGhlYWRQYXJ0ID0gdmFsdWUuc2xpY2UoMCwgY2FyZXQpO1xyXG4gICAgY29uc3QgZW5kUGFydCA9IHZhbHVlLnNsaWNlKGNhcmV0ICsgc2VsZWN0aW9uTGVuZ3RoKTtcclxuXHJcbiAgICB0aGlzLmlucHV0VmFsdWUgPSBbaGVhZFBhcnQsIGVuZFBhcnRdLmpvaW4oJycpO1xyXG4gICAgdGhpcy5fc2V0Q3Vyc29yUG9zaXRpb24oY2FyZXQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXBsYWNlU2VsZWN0ZWRUZXh0KGNoYXI6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmlucHV0VmFsdWUgPyB0aGlzLmlucHV0VmFsdWUudG9TdHJpbmcoKSA6ICcnO1xyXG4gICAgY29uc3QgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XHJcbiAgICBjb25zdCBzZWxlY3Rpb25MZW5ndGggPSB0aGlzLl9nZXRTZWxlY3Rpb25MZW5ndGgoKTtcclxuICAgIGNvbnN0IGhlYWRQYXJ0ID0gdmFsdWUuc2xpY2UoMCwgY2FyZXQpO1xyXG4gICAgY29uc3QgZW5kUGFydCA9IHZhbHVlLnNsaWNlKGNhcmV0ICsgc2VsZWN0aW9uTGVuZ3RoKTtcclxuXHJcbiAgICB0aGlzLmlucHV0VmFsdWUgPSBbaGVhZFBhcnQsIGNoYXIsIGVuZFBhcnRdLmpvaW4oJycpO1xyXG4gIH1cclxuXHJcbiAgLy8gVE9ETzogSW5jbHVkZSBmb3IgcmVwZWF0aW5nIGtleXMgYXMgd2VsbCAoaWYgdGhpcyBnZXRzIGltcGxlbWVudGVkKVxyXG4gIC8vIHByaXZhdGUgX3RyaWdnZXJLZXlFdmVudCgpOiBFdmVudCB7XHJcbiAgLy8gICBjb25zdCBrZXlib2FyZEV2ZW50ID0gbmV3IEtleWJvYXJkRXZlbnQoJ2tleWRvd24nKTtcclxuICAvLyAgIC8vXHJcbiAgLy8gICAvLyBrZXlib2FyZEV2ZW50W2luaXRNZXRob2RdKFxyXG4gIC8vICAgLy8gICB0cnVlLCAvLyBidWJibGVzXHJcbiAgLy8gICAvLyAgIHRydWUsIC8vIGNhbmNlbGFibGVcclxuICAvLyAgIC8vICAgd2luZG93LCAvLyB2aWV3QXJnOiBzaG91bGQgYmUgd2luZG93XHJcbiAgLy8gICAvLyAgIGZhbHNlLCAvLyBjdHJsS2V5QXJnXHJcbiAgLy8gICAvLyAgIGZhbHNlLCAvLyBhbHRLZXlBcmdcclxuICAvLyAgIC8vICAgZmFsc2UsIC8vIHNoaWZ0S2V5QXJnXHJcbiAgLy8gICAvLyAgIGZhbHNlLCAvLyBtZXRhS2V5QXJnXHJcbiAgLy8gICAvLyAgIHRoaXMuY2hhckNvZGUsIC8vIGtleUNvZGVBcmcgOiB1bnNpZ25lZCBsb25nIC0gdGhlIHZpcnR1YWwga2V5IGNvZGUsIGVsc2UgMFxyXG4gIC8vICAgLy8gICAwIC8vIGNoYXJDb2RlQXJncyA6IHVuc2lnbmVkIGxvbmcgLSB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBkZXByZXNzZWQga2V5LCBlbHNlIDBcclxuICAvLyAgIC8vICk7XHJcbiAgLy8gICAvL1xyXG4gIC8vICAgLy8gd2luZG93LmRvY3VtZW50LmRpc3BhdGNoRXZlbnQoa2V5Ym9hcmRFdmVudCk7XHJcblxyXG4gIC8vICAgcmV0dXJuIGtleWJvYXJkRXZlbnQ7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBpbnNwaXJlZCBieTpcclxuICAvLyByZWYgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzI4OTc1MTAvMTE0NjIwN1xyXG4gIHByaXZhdGUgX2dldEN1cnNvclBvc2l0aW9uKCk6IG51bWJlciB7XHJcbiAgICBpZiAoIXRoaXMuaW5wdXQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICgnc2VsZWN0aW9uU3RhcnQnIGluIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAvLyBTdGFuZGFyZC1jb21wbGlhbnQgYnJvd3NlcnNcclxuICAgICAgcmV0dXJuIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydDtcclxuICAgIH0gZWxzZSBpZiAoJ3NlbGVjdGlvbicgaW4gd2luZG93LmRvY3VtZW50KSB7XHJcbiAgICAgIC8vIElFXHJcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgICBjb25zdCBzZWxlY3Rpb246IGFueSA9IHdpbmRvdy5kb2N1bWVudFsnc2VsZWN0aW9uJ107XHJcbiAgICAgIGNvbnN0IHNlbCA9IHNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpO1xyXG4gICAgICBjb25zdCBzZWxMZW4gPSBzZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKS50ZXh0Lmxlbmd0aDtcclxuICAgICAgc2VsLm1vdmVTdGFydCgnY2hhcmFjdGVyJywgLXRoaXMuY29udHJvbC52YWx1ZS5sZW5ndGgpO1xyXG5cclxuICAgICAgcmV0dXJuIHNlbC50ZXh0Lmxlbmd0aCAtIHNlbExlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldFNlbGVjdGlvbkxlbmd0aCgpOiBudW1iZXIge1xyXG4gICAgaWYgKCF0aGlzLmlucHV0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoJ3NlbGVjdGlvbkVuZCcgaW4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgIC8vIFN0YW5kYXJkLWNvbXBsaWFudCBicm93c2Vyc1xyXG4gICAgICByZXR1cm4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZCAtIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoJ3NlbGVjdGlvbicgaW4gd2luZG93LmRvY3VtZW50KSB7XHJcbiAgICAgIC8vIElFXHJcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgICBjb25zdCBzZWxlY3Rpb246IGFueSA9IHdpbmRvdy5kb2N1bWVudFsnc2VsZWN0aW9uJ107XHJcbiAgICAgIHJldHVybiBzZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKS50ZXh0Lmxlbmd0aDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGluc3BpcmVkIGJ5OlxyXG4gIC8vIHJlZiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTI1MTg3MzcvMTE0NjIwN1xyXG4gIC8vIHRzbGludDpkaXNhYmxlIG9uZS1saW5lXHJcbiAgcHJpdmF0ZSBfc2V0Q3Vyc29yUG9zaXRpb24ocG9zaXRpb246IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmlucHV0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmNvbnRyb2wudmFsdWU7XHJcbiAgICAvLyBeIHRoaXMgaXMgdXNlZCB0byBub3Qgb25seSBnZXQgXCJmb2N1c1wiLCBidXRcclxuICAgIC8vIHRvIG1ha2Ugc3VyZSB3ZSBkb24ndCBoYXZlIGl0IGV2ZXJ5dGhpbmcgLXNlbGVjdGVkLVxyXG4gICAgLy8gKGl0IGNhdXNlcyBhbiBpc3N1ZSBpbiBjaHJvbWUsIGFuZCBoYXZpbmcgaXQgZG9lc24ndCBodXJ0IGFueSBvdGhlciBicm93c2VyKVxyXG5cclxuICAgIGlmICgnY3JlYXRlVGV4dFJhbmdlJyBpbiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgY29uc3QgcmFuZ2UgPSB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuY3JlYXRlVGV4dFJhbmdlKCk7XHJcbiAgICAgIHJhbmdlLm1vdmUoJ2NoYXJhY3RlcicsIHBvc2l0aW9uKTtcclxuICAgICAgcmFuZ2Uuc2VsZWN0KCk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gKGVsLnNlbGVjdGlvblN0YXJ0ID09PSAwIGFkZGVkIGZvciBGaXJlZm94IGJ1ZylcclxuICAgICAgaWYgKHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCB8fCB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPT09IDApIHtcclxuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UocG9zaXRpb24sIHBvc2l0aW9uKTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICAvLyBmYWlsIGNpdHksIGZvcnR1bmF0ZWx5IHRoaXMgbmV2ZXIgaGFwcGVucyAoYXMgZmFyIGFzIEkndmUgdGVzdGVkKSA6KVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2lzVGV4dGFyZWEoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnRhZ05hbWUgPT09ICdURVhUQVJFQSc7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQta2V5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUl2RSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFDL0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQztBQUM5QixNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUM7QUFDM0IsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBUzVCLElBQWEsdUJBQXVCLEdBQXBDLE1BQWEsdUJBQXVCO0lBeUlsQyxzQkFBc0I7SUFDdEIsWUFBbUQsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUF4SXZFLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBRzVCLGlCQUFZLEdBQVksS0FBSyxDQUFDLENBQUMsc0NBQXNDO1FBRTdFLFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0QsYUFBUSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWlDaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzlD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QUU7eURBQ2lDO0FBRzFDO0lBREMsTUFBTSxFQUFFOzJEQUNtQztBQUc1QztJQURDLE1BQU0sRUFBRTsyREFDbUM7QUFHNUM7SUFEQyxNQUFNLEVBQUU7eURBQ2lDO0FBRzFDO0lBREMsTUFBTSxFQUFFO3lEQUNpQztBQWxFL0IsdUJBQXVCO0lBUG5DLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxrQkFBa0I7UUFDNUIsMm1CQUE0QztRQUU1QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtRQUMvQyxtQkFBbUIsRUFBRSxLQUFLOztLQUMzQixDQUFDO0lBMklhLFdBQUEsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7R0ExSS9CLHVCQUF1QixDQTJhbkM7U0EzYVksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTUFUX0tFWUJPQVJEX0RFQURLRVlTIH0gZnJvbSAnLi4vLi4vY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZyc7XG5pbXBvcnQgeyBLZXlib2FyZENsYXNzS2V5IH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0nO1xuaW1wb3J0IHsgSUtleWJvYXJkRGVhZGtleXMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWRlYWRrZXlzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJTWF0SWNvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IFZBTFVFX05FV0xJTkUgPSAnXFxuXFxyJztcbmV4cG9ydCBjb25zdCBWQUxVRV9TUEFDRSA9ICcgJztcbmV4cG9ydCBjb25zdCBWQUxVRV9UQUIgPSAnXFx0JztcbmNvbnN0IFJFUEVBVF9USU1FT1VUID0gNTAwO1xuY29uc3QgUkVQRUFUX0lOVEVSVkFMID0gMTAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQta2V5Ym9hcmQta2V5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLWtleS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2tleWJvYXJkLWtleS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfZGVhZGtleUtleXM6IHN0cmluZ1tdID0gW107XG4gIHByaXZhdGUgX3JlcGVhdFRpbWVvdXRIYW5kbGVyOiBhbnk7XG4gIHByaXZhdGUgX3JlcGVhdEludGVydmFsSGFuZGxlcjogYW55O1xuICBwcml2YXRlIF9yZXBlYXRTdGF0ZTogYm9vbGVhbiA9IGZhbHNlOyAvLyB0cnVlIGlmIHJlcGVhdGluZywgZmFsc2UgaWYgd2FpdGluZ1xuXG4gIGFjdGl2ZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHByZXNzZWQkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBASW5wdXQoKVxuICBrZXk6IHN0cmluZyB8IEtleWJvYXJkQ2xhc3NLZXk7XG5cbiAgQElucHV0KClcbiAgaWNvbjogSU1hdEljb247XG5cbiAgQElucHV0KClcbiAgc2V0IGFjdGl2ZShhY3RpdmU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmFjdGl2ZSQubmV4dChhY3RpdmUpO1xuICB9XG5cbiAgZ2V0IGFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUkLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgcHJlc3NlZChwcmVzc2VkOiBib29sZWFuKSB7XG4gICAgdGhpcy5wcmVzc2VkJC5uZXh0KHByZXNzZWQpO1xuICB9XG5cbiAgZ2V0IHByZXNzZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHJlc3NlZCQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGlucHV0PzogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKVxuICBjb250cm9sPzogRm9ybUNvbnRyb2w7XG5cbiAgQE91dHB1dCgpXG4gIGdlbmVyaWNDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgZW50ZXJDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgYmtzcENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBjYXBzQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFsdENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBzaGlmdENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBzcGFjZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICB0YWJDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAga2V5Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgZ2V0IGxvd2VyS2V5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMua2V5fWAudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG4gIGdldCBjaGFyQ29kZSgpOiBudW1iZXIge1xuICAgIHJldHVybiBgJHt0aGlzLmtleX1gLmNoYXJDb2RlQXQoMCk7XG4gIH1cblxuICBnZXQgaXNDbGFzc0tleSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5rZXkgaW4gS2V5Ym9hcmRDbGFzc0tleTtcbiAgfVxuXG4gIGdldCBpc0RlYWRLZXkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2RlYWRrZXlLZXlzLnNvbWUoKGRlYWRLZXk6IHN0cmluZykgPT4gZGVhZEtleSA9PT0gYCR7dGhpcy5rZXl9YCk7XG4gIH1cblxuICBnZXQgaGFzSWNvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pY29uICE9PSB1bmRlZmluZWQgJiYgdGhpcy5pY29uICE9PSBudWxsO1xuICB9XG5cbiAgZ2V0IGljb25OYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbi5uYW1lIHx8ICcnO1xuICB9XG5cbiAgZ2V0IGZvbnRTZXQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uLmZvbnRTZXQgfHwgJyc7XG4gIH1cblxuICBnZXQgZm9udEljb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uLmZvbnRJY29uIHx8ICcnO1xuICB9XG5cbiAgZ2V0IHN2Z0ljb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uLnN2Z0ljb24gfHwgJyc7XG4gIH1cblxuICBnZXQgY3NzQ2xhc3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc2VzID0gW107XG5cbiAgICBpZiAodGhpcy5oYXNJY29uKSB7XG4gICAgICBjbGFzc2VzLnB1c2goJ21hdC1rZXlib2FyZC1rZXktbW9kaWZpZXInKTtcbiAgICAgIGNsYXNzZXMucHVzaChgbWF0LWtleWJvYXJkLWtleS0ke3RoaXMubG93ZXJLZXl9YCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXNEZWFkS2V5KSB7XG4gICAgICBjbGFzc2VzLnB1c2goJ21hdC1rZXlib2FyZC1rZXktZGVhZGtleScpO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGdldCBpbnB1dFZhbHVlKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgcmV0dXJuIHRoaXMuY29udHJvbC52YWx1ZTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSkge1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxuXG4gIHNldCBpbnB1dFZhbHVlKGlucHV0VmFsdWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIHRoaXMuY29udHJvbC5zZXRWYWx1ZShpbnB1dFZhbHVlKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBpbnB1dFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEluamVjdCBkZXBlbmRlbmNpZXNcbiAgY29uc3RydWN0b3IoQEluamVjdChNQVRfS0VZQk9BUkRfREVBREtFWVMpIHByaXZhdGUgX2RlYWRrZXlzOiBJS2V5Ym9hcmREZWFka2V5cykgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gcmVhZCB0aGUgZGVhZGtleXNcbiAgICB0aGlzLl9kZWFka2V5S2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuX2RlYWRrZXlzKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY2FuY2VsUmVwZWF0KCk7XG4gIH1cblxuICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgLy8gVHJpZ2dlciBnZW5lcmljIGNsaWNrIGV2ZW50XG4gICAgdGhpcy5nZW5lcmljQ2xpY2suZW1pdChldmVudCk7XG5cbiAgICAvLyBEbyBub3QgZXhlY3V0ZSBrZXlwcmVzcyBpZiBrZXkgaXMgY3VycmVudGx5IHJlcGVhdGluZ1xuICAgIGlmICh0aGlzLl9yZXBlYXRTdGF0ZSkgeyByZXR1cm47IH1cblxuICAgIC8vIFRyaWdnZXIgYSBnbG9iYWwga2V5IGV2ZW50LiBUT0RPOiBpbnZlc3RpZ2F0ZVxuICAgIC8vIHRoaXMuX3RyaWdnZXJLZXlFdmVudCgpO1xuXG4gICAgLy8gTWFuaXB1bGF0ZSB0aGUgZm9jdXNlZCBpbnB1dCAvIHRleHRhcmVhIHZhbHVlXG4gICAgY29uc3QgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XG5cbiAgICBsZXQgY2hhcjogc3RyaW5nO1xuICAgIHN3aXRjaCAodGhpcy5rZXkpIHtcbiAgICAgIC8vIHRoaXMga2V5cyBoYXZlIG5vIGFjdGlvbnMgeWV0XG4gICAgICAvLyBUT0RPOiBhZGQgZGVhZGtleXMgYW5kIG1vZGlmaWVyc1xuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdDpcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHRHcjpcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHRMazpcbiAgICAgICAgdGhpcy5hbHRDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5Ca3NwOlxuICAgICAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkVGV4dCgpO1xuICAgICAgICB0aGlzLmJrc3BDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5DYXBzOlxuICAgICAgICB0aGlzLmNhcHNDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5FbnRlcjpcbiAgICAgICAgaWYgKHRoaXMuX2lzVGV4dGFyZWEoKSkge1xuICAgICAgICAgIGNoYXIgPSBWQUxVRV9ORVdMSU5FO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZW50ZXJDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgICAvLyBUT0RPOiB0cmlnZ2VyIHN1Ym1pdCAvIG9uU3VibWl0IC8gbmdTdWJtaXQgcHJvcGVybHkgKGZvciB0aGUgdGltZSBiZWluZyB0aGlzIGhhcyB0byBiZSBoYW5kbGVkIGJ5IHRoZSB1c2VyIGhpbXNlbGYpXG4gICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5jb250cm9sLm5nQ29udHJvbC5jb250cm9sLnJvb3QpXG4gICAgICAgICAgLy8gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvcm0uc3VibWl0KCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5TaGlmdDpcbiAgICAgICAgdGhpcy5zaGlmdENsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNwYWNlOlxuICAgICAgICBjaGFyID0gVkFMVUVfU1BBQ0U7XG4gICAgICAgIHRoaXMuc3BhY2VDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5UYWI6XG4gICAgICAgIGNoYXIgPSBWQUxVRV9UQUI7XG4gICAgICAgIHRoaXMudGFiQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICAvLyB0aGUga2V5IGlzIG5vdCBtYXBwZWQgb3IgYSBzdHJpbmdcbiAgICAgICAgY2hhciA9IGAke3RoaXMua2V5fWA7XG4gICAgICAgIHRoaXMua2V5Q2xpY2suZW1pdChldmVudCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGlmIChjaGFyICYmIHRoaXMuaW5wdXQpIHtcbiAgICAgIHRoaXMucmVwbGFjZVNlbGVjdGVkVGV4dChjaGFyKTtcbiAgICAgIHRoaXMuX3NldEN1cnNvclBvc2l0aW9uKGNhcmV0ICsgMSk7XG4gICAgfVxuXG4gICAgLy8gRGlzcGF0Y2ggSW5wdXQgRXZlbnQgZm9yIEFuZ3VsYXIgdG8gcmVnaXN0ZXIgYSBjaGFuZ2VcbiAgICBpZiAodGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhhbmRsZSByZXBlYXRpbmcga2V5cy4gS2V5cHJlc3MgbG9naWMgZGVyaXZlZCBmcm9tIG9uQ2xpY2soKVxuICBvblBvaW50ZXJEb3duKCkge1xuICAgIHRoaXMuY2FuY2VsUmVwZWF0KCk7XG4gICAgdGhpcy5fcmVwZWF0U3RhdGUgPSBmYWxzZTtcbiAgICB0aGlzLl9yZXBlYXRUaW1lb3V0SGFuZGxlciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgLy8gSW5pdGlhbGl6ZSBrZXlwcmVzcyB2YXJpYWJsZXNcbiAgICAgIGxldCBjaGFyOiBzdHJpbmc7XG4gICAgICBsZXQga2V5Rm46ICgpID0+IHZvaWQ7XG5cbiAgICAgIHN3aXRjaCAodGhpcy5rZXkpIHtcbiAgICAgICAgLy8gSWdub3JlIG5vbi1yZXBlYXRpbmcga2V5c1xuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0OlxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0R3I6XG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHRMazpcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkNhcHM6XG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5FbnRlcjpcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNoaWZ0OlxuICAgICAgICAgIHJldHVybjtcblxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQmtzcDpcbiAgICAgICAgICBrZXlGbiA9ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlU2VsZWN0ZWRUZXh0KCk7XG4gICAgICAgICAgICB0aGlzLmJrc3BDbGljay5lbWl0KCk7XG4gICAgICAgICAgfTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuU3BhY2U6XG4gICAgICAgICAgY2hhciA9IFZBTFVFX1NQQUNFO1xuICAgICAgICAgIGtleUZuID0gKCkgPT4gdGhpcy5zcGFjZUNsaWNrLmVtaXQoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuVGFiOlxuICAgICAgICAgIGNoYXIgPSBWQUxVRV9UQUI7XG4gICAgICAgICAga2V5Rm4gPSAoKSA9PiB0aGlzLnRhYkNsaWNrLmVtaXQoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNoYXIgPSBgJHt0aGlzLmtleX1gO1xuICAgICAgICAgIGtleUZuID0gKCkgPT4gdGhpcy5rZXlDbGljay5lbWl0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4ZWN1dGUgcmVwZWF0aW5nIGtleXByZXNzXG4gICAgICB0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNhcmV0ID0gdGhpcy5pbnB1dCA/IHRoaXMuX2dldEN1cnNvclBvc2l0aW9uKCkgOiAwO1xuICAgICAgICB0aGlzLl9yZXBlYXRTdGF0ZSA9IHRydWU7XG5cbiAgICAgICAgaWYgKGtleUZuKSB7IGtleUZuKCk7IH1cblxuICAgICAgICBpZiAoY2hhciAmJiB0aGlzLmlucHV0KSB7XG4gICAgICAgICAgdGhpcy5yZXBsYWNlU2VsZWN0ZWRUZXh0KGNoYXIpO1xuICAgICAgICAgIHRoaXMuX3NldEN1cnNvclBvc2l0aW9uKGNhcmV0ICsgMSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUgfSkpKTtcbiAgICAgICAgfVxuICAgICAgfSwgUkVQRUFUX0lOVEVSVkFMKTtcbiAgICB9LCBSRVBFQVRfVElNRU9VVCk7XG4gIH1cblxuICBjYW5jZWxSZXBlYXQoKSB7XG4gICAgaWYgKHRoaXMuX3JlcGVhdFRpbWVvdXRIYW5kbGVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fcmVwZWF0VGltZW91dEhhbmRsZXIpO1xuICAgICAgdGhpcy5fcmVwZWF0VGltZW91dEhhbmRsZXIgPSBudWxsO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5fcmVwZWF0SW50ZXJ2YWxIYW5kbGVyKTtcbiAgICAgIHRoaXMuX3JlcGVhdEludGVydmFsSGFuZGxlciA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkZWxldGVTZWxlY3RlZFRleHQoKTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmlucHV0VmFsdWUgPyB0aGlzLmlucHV0VmFsdWUudG9TdHJpbmcoKSA6ICcnO1xuICAgIGxldCBjYXJldCA9IHRoaXMuaW5wdXQgPyB0aGlzLl9nZXRDdXJzb3JQb3NpdGlvbigpIDogMDtcbiAgICBsZXQgc2VsZWN0aW9uTGVuZ3RoID0gdGhpcy5fZ2V0U2VsZWN0aW9uTGVuZ3RoKCk7XG4gICAgaWYgKHNlbGVjdGlvbkxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKGNhcmV0ID09PSAwKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY2FyZXQtLTtcbiAgICAgIHNlbGVjdGlvbkxlbmd0aCA9IDE7XG4gICAgfVxuXG4gICAgY29uc3QgaGVhZFBhcnQgPSB2YWx1ZS5zbGljZSgwLCBjYXJldCk7XG4gICAgY29uc3QgZW5kUGFydCA9IHZhbHVlLnNsaWNlKGNhcmV0ICsgc2VsZWN0aW9uTGVuZ3RoKTtcblxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IFtoZWFkUGFydCwgZW5kUGFydF0uam9pbignJyk7XG4gICAgdGhpcy5fc2V0Q3Vyc29yUG9zaXRpb24oY2FyZXQpO1xuICB9XG5cbiAgcHJpdmF0ZSByZXBsYWNlU2VsZWN0ZWRUZXh0KGNoYXI6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5pbnB1dFZhbHVlID8gdGhpcy5pbnB1dFZhbHVlLnRvU3RyaW5nKCkgOiAnJztcbiAgICBjb25zdCBjYXJldCA9IHRoaXMuaW5wdXQgPyB0aGlzLl9nZXRDdXJzb3JQb3NpdGlvbigpIDogMDtcbiAgICBjb25zdCBzZWxlY3Rpb25MZW5ndGggPSB0aGlzLl9nZXRTZWxlY3Rpb25MZW5ndGgoKTtcbiAgICBjb25zdCBoZWFkUGFydCA9IHZhbHVlLnNsaWNlKDAsIGNhcmV0KTtcbiAgICBjb25zdCBlbmRQYXJ0ID0gdmFsdWUuc2xpY2UoY2FyZXQgKyBzZWxlY3Rpb25MZW5ndGgpO1xuXG4gICAgdGhpcy5pbnB1dFZhbHVlID0gW2hlYWRQYXJ0LCBjaGFyLCBlbmRQYXJ0XS5qb2luKCcnKTtcbiAgfVxuXG4gIC8vIFRPRE86IEluY2x1ZGUgZm9yIHJlcGVhdGluZyBrZXlzIGFzIHdlbGwgKGlmIHRoaXMgZ2V0cyBpbXBsZW1lbnRlZClcbiAgLy8gcHJpdmF0ZSBfdHJpZ2dlcktleUV2ZW50KCk6IEV2ZW50IHtcbiAgLy8gICBjb25zdCBrZXlib2FyZEV2ZW50ID0gbmV3IEtleWJvYXJkRXZlbnQoJ2tleWRvd24nKTtcbiAgLy8gICAvL1xuICAvLyAgIC8vIGtleWJvYXJkRXZlbnRbaW5pdE1ldGhvZF0oXG4gIC8vICAgLy8gICB0cnVlLCAvLyBidWJibGVzXG4gIC8vICAgLy8gICB0cnVlLCAvLyBjYW5jZWxhYmxlXG4gIC8vICAgLy8gICB3aW5kb3csIC8vIHZpZXdBcmc6IHNob3VsZCBiZSB3aW5kb3dcbiAgLy8gICAvLyAgIGZhbHNlLCAvLyBjdHJsS2V5QXJnXG4gIC8vICAgLy8gICBmYWxzZSwgLy8gYWx0S2V5QXJnXG4gIC8vICAgLy8gICBmYWxzZSwgLy8gc2hpZnRLZXlBcmdcbiAgLy8gICAvLyAgIGZhbHNlLCAvLyBtZXRhS2V5QXJnXG4gIC8vICAgLy8gICB0aGlzLmNoYXJDb2RlLCAvLyBrZXlDb2RlQXJnIDogdW5zaWduZWQgbG9uZyAtIHRoZSB2aXJ0dWFsIGtleSBjb2RlLCBlbHNlIDBcbiAgLy8gICAvLyAgIDAgLy8gY2hhckNvZGVBcmdzIDogdW5zaWduZWQgbG9uZyAtIHRoZSBVbmljb2RlIGNoYXJhY3RlciBhc3NvY2lhdGVkIHdpdGggdGhlIGRlcHJlc3NlZCBrZXksIGVsc2UgMFxuICAvLyAgIC8vICk7XG4gIC8vICAgLy9cbiAgLy8gICAvLyB3aW5kb3cuZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChrZXlib2FyZEV2ZW50KTtcblxuICAvLyAgIHJldHVybiBrZXlib2FyZEV2ZW50O1xuICAvLyB9XG5cbiAgLy8gaW5zcGlyZWQgYnk6XG4gIC8vIHJlZiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMjg5NzUxMC8xMTQ2MjA3XG4gIHByaXZhdGUgX2dldEN1cnNvclBvc2l0aW9uKCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmlucHV0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCdzZWxlY3Rpb25TdGFydCcgaW4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAvLyBTdGFuZGFyZC1jb21wbGlhbnQgYnJvd3NlcnNcbiAgICAgIHJldHVybiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgfSBlbHNlIGlmICgnc2VsZWN0aW9uJyBpbiB3aW5kb3cuZG9jdW1lbnQpIHtcbiAgICAgIC8vIElFXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgIGNvbnN0IHNlbGVjdGlvbjogYW55ID0gd2luZG93LmRvY3VtZW50WydzZWxlY3Rpb24nXTtcbiAgICAgIGNvbnN0IHNlbCA9IHNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpO1xuICAgICAgY29uc3Qgc2VsTGVuID0gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCkudGV4dC5sZW5ndGg7XG4gICAgICBzZWwubW92ZVN0YXJ0KCdjaGFyYWN0ZXInLCAtdGhpcy5jb250cm9sLnZhbHVlLmxlbmd0aCk7XG5cbiAgICAgIHJldHVybiBzZWwudGV4dC5sZW5ndGggLSBzZWxMZW47XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0U2VsZWN0aW9uTGVuZ3RoKCk6IG51bWJlciB7XG4gICAgaWYgKCF0aGlzLmlucHV0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCdzZWxlY3Rpb25FbmQnIGluIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xuICAgICAgLy8gU3RhbmRhcmQtY29tcGxpYW50IGJyb3dzZXJzXG4gICAgICByZXR1cm4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZCAtIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydDtcbiAgICB9XG5cbiAgICBpZiAoJ3NlbGVjdGlvbicgaW4gd2luZG93LmRvY3VtZW50KSB7XG4gICAgICAvLyBJRVxuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICBjb25zdCBzZWxlY3Rpb246IGFueSA9IHdpbmRvdy5kb2N1bWVudFsnc2VsZWN0aW9uJ107XG4gICAgICByZXR1cm4gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCkudGV4dC5sZW5ndGg7XG4gICAgfVxuICB9XG5cbiAgLy8gaW5zcGlyZWQgYnk6XG4gIC8vIHJlZiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTI1MTg3MzcvMTE0NjIwN1xuICAvLyB0c2xpbnQ6ZGlzYWJsZSBvbmUtbGluZVxuICBwcml2YXRlIF9zZXRDdXJzb3JQb3NpdGlvbihwb3NpdGlvbjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmlucHV0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5jb250cm9sLnZhbHVlO1xuICAgIC8vIF4gdGhpcyBpcyB1c2VkIHRvIG5vdCBvbmx5IGdldCBcImZvY3VzXCIsIGJ1dFxuICAgIC8vIHRvIG1ha2Ugc3VyZSB3ZSBkb24ndCBoYXZlIGl0IGV2ZXJ5dGhpbmcgLXNlbGVjdGVkLVxuICAgIC8vIChpdCBjYXVzZXMgYW4gaXNzdWUgaW4gY2hyb21lLCBhbmQgaGF2aW5nIGl0IGRvZXNuJ3QgaHVydCBhbnkgb3RoZXIgYnJvd3NlcilcblxuICAgIGlmICgnY3JlYXRlVGV4dFJhbmdlJyBpbiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGNvbnN0IHJhbmdlID0gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmNyZWF0ZVRleHRSYW5nZSgpO1xuICAgICAgcmFuZ2UubW92ZSgnY2hhcmFjdGVyJywgcG9zaXRpb24pO1xuICAgICAgcmFuZ2Uuc2VsZWN0KCk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gKGVsLnNlbGVjdGlvblN0YXJ0ID09PSAwIGFkZGVkIGZvciBGaXJlZm94IGJ1ZylcbiAgICAgIGlmICh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgfHwgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID09PSAwKSB7XG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2V0U2VsZWN0aW9uUmFuZ2UocG9zaXRpb24sIHBvc2l0aW9uKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICAvLyBmYWlsIGNpdHksIGZvcnR1bmF0ZWx5IHRoaXMgbmV2ZXIgaGFwcGVucyAoYXMgZmFyIGFzIEkndmUgdGVzdGVkKSA6KVxuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNUZXh0YXJlYSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnRhZ05hbWUgPT09ICdURVhUQVJFQSc7XG4gIH1cblxufVxuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Inject, LOCALE_ID, ViewChildren } from '@angular/core';

@@ -212,18 +212,18 @@ import { BehaviorSubject } from 'rxjs';

];
tslib_1.__decorate([
__decorate([
ViewChildren(MatKeyboardKeyComponent)
], MatKeyboardComponent.prototype, "_keys", void 0);
tslib_1.__decorate([
__decorate([
HostBinding('class.mat-keyboard')
], MatKeyboardComponent.prototype, "cssClass", void 0);
tslib_1.__decorate([
__decorate([
HostListener('document:keydown', ['$event'])
], MatKeyboardComponent.prototype, "onKeyDown", null);
tslib_1.__decorate([
__decorate([
HostListener('document:keyup', ['$event'])
], MatKeyboardComponent.prototype, "onKeyUp", null);
MatKeyboardComponent = tslib_1.__decorate([
MatKeyboardComponent = __decorate([
Component({
selector: 'mat-keyboard',
template: "<div class=\"mat-keyboard-wrapper\"\r\n [class.dark-theme]=\"darkTheme$ | async\"\r\n [class.debug]=\"isDebug$ | async\"\r\n>\r\n <nav class=\"mat-keyboard-layout\">\r\n <div class=\"mat-keyboard-row\"\r\n *ngFor=\"let row of layout.keys\"\r\n >\r\n <ng-container *ngFor=\"let key of row\">\r\n <mat-keyboard-key class=\"mat-keyboard-col\"\r\n *ngIf=\"getModifiedKey(key)\"\r\n [key]=\"getModifiedKey(key)\"\r\n [icon]=\"getKeyIcon(key)\"\r\n [active]=\"isActive(key)\"\r\n [input]=\"inputInstance | async\"\r\n [control]=\"control\"\r\n (enterClick)=\"onEnterClick()\"\r\n (capsClick)=\"onCapsClick()\"\r\n (altClick)=\"onAltClick()\"\r\n (shiftClick)=\"onShiftClick()\"\r\n (keyClick)=\"onKeyClick()\"\r\n ></mat-keyboard-key>\r\n </ng-container>\r\n </div>\r\n </nav>\r\n</div>\r\n",
template: "<div class=\"mat-keyboard-wrapper\"\n [class.dark-theme]=\"darkTheme$ | async\"\n [class.debug]=\"isDebug$ | async\"\n>\n <nav class=\"mat-keyboard-layout\">\n <div class=\"mat-keyboard-row\"\n *ngFor=\"let row of layout.keys\"\n >\n <ng-container *ngFor=\"let key of row\">\n <mat-keyboard-key class=\"mat-keyboard-col\"\n *ngIf=\"getModifiedKey(key)\"\n [key]=\"getModifiedKey(key)\"\n [icon]=\"getKeyIcon(key)\"\n [active]=\"isActive(key)\"\n [input]=\"inputInstance | async\"\n [control]=\"control\"\n (enterClick)=\"onEnterClick()\"\n (capsClick)=\"onCapsClick()\"\n (altClick)=\"onAltClick()\"\n (shiftClick)=\"onShiftClick()\"\n (keyClick)=\"onKeyClick()\"\n ></mat-keyboard-key>\n </ng-container>\n </div>\n </nav>\n</div>\n",
changeDetection: ChangeDetectionStrategy.OnPush,

@@ -233,5 +233,5 @@ preserveWhitespaces: false,

}),
tslib_1.__param(0, Inject(LOCALE_ID))
__param(0, Inject(LOCALE_ID))
], MatKeyboardComponent);
export { MatKeyboardComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQXFCLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1SyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVqRjs7O0dBR0c7QUFRSCxJQUFhLG9CQUFvQixHQUFqQyxNQUFhLG9CQUFvQjtJQW1FL0Isc0JBQXNCO0lBQ3RCLFlBQXVDLE9BQWUsRUFDbEMsZ0JBQW9DO1FBRGpCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQW5FaEQsZUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsRSxhQUFRLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhFLG9CQUFlLEdBQXVDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBS2hGLGNBQVMsR0FBcUIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBRXBELGdCQUFX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QUFvQixDQWlRaEM7U0FqUVksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSG9zdExpc3RlbmVyLCBJbmplY3QsIExPQ0FMRV9JRCwgT25Jbml0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZFJlZiB9IGZyb20gJy4uLy4uL2NsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzJztcclxuaW1wb3J0IHsgS0VZQk9BUkRfSUNPTlMgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLWljb25zLmNvbmZpZyc7XHJcbmltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi8uLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XHJcbmltcG9ydCB7IEtleWJvYXJkTW9kaWZpZXIgfSBmcm9tICcuLi8uLi9lbnVtcy9rZXlib2FyZC1tb2RpZmllci5lbnVtJztcclxuaW1wb3J0IHsgSUtleWJvYXJkSWNvbnMsIElNYXRJY29uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQgfSBmcm9tICcuLi9rZXlib2FyZC1rZXkva2V5Ym9hcmQta2V5LmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQSBjb21wb25lbnQgdXNlZCB0byBvcGVuIGFzIHRoZSBkZWZhdWx0IGtleWJvYXJkLCBtYXRjaGluZyBtYXRlcmlhbCBzcGVjLlxyXG4gKiBUaGlzIHNob3VsZCBvbmx5IGJlIHVzZWQgaW50ZXJuYWxseSBieSB0aGUga2V5Ym9hcmQgc2VydmljZS5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWtleWJvYXJkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4va2V5Ym9hcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2tleWJvYXJkLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHJpdmF0ZSBfZGFya1RoZW1lOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcclxuXHJcbiAgcHJpdmF0ZSBfaXNEZWJ1ZzogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIHByaXZhdGUgX2lucHV0SW5zdGFuY2UkOiBCZWhhdmlvclN1YmplY3Q8RWxlbWVudFJlZiB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcclxuXHJcbiAgQFZpZXdDaGlsZHJlbihNYXRLZXlib2FyZEtleUNvbXBvbmVudClcclxuICBwcml2YXRlIF9rZXlzOiBRdWVyeUxpc3Q8TWF0S2V5Ym9hcmRLZXlDb21wb25lbnQ+O1xyXG5cclxuICBwcml2YXRlIF9tb2RpZmllcjogS2V5Ym9hcmRNb2RpZmllciA9IEtleWJvYXJkTW9kaWZpZXIuTm9uZTtcclxuXHJcbiAgcHJpdmF0ZSBfY2Fwc0xvY2tlZCA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIF9pY29uczogSUtleWJvYXJkSWNvbnMgPSBLRVlCT0FSRF9JQ09OUztcclxuXHJcbiAgLy8gdGhlIHNlcnZpY2UgcHJvdmlkZXMgYSBsb2NhbGUgb3IgbGF5b3V0IG9wdGlvbmFsbHlcclxuICBsb2NhbGU/OiBzdHJpbmc7XHJcblxyXG4gIGxheW91dDogSUtleWJvYXJkTGF5b3V0O1xyXG5cclxuICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XHJcblxyXG4gIC8vIHRoZSBpbnN0YW5jZSBvZiB0aGUgY29tcG9uZW50IG1ha2luZyB1cCB0aGUgY29udGVudCBvZiB0aGUga2V5Ym9hcmRcclxuICBrZXlib2FyZFJlZjogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+O1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1hdC1rZXlib2FyZCcpXHJcbiAgY3NzQ2xhc3MgPSB0cnVlO1xyXG5cclxuICBlbnRlckNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNhcHNDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBhbHRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBzaGlmdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIC8vIHJldHVybnMgYW4gb2JzZXJ2YWJsZSBvZiB0aGUgaW5wdXQgaW5zdGFuY2VcclxuICBnZXQgaW5wdXRJbnN0YW5jZSgpOiBPYnNlcnZhYmxlPEVsZW1lbnRSZWYgfCBudWxsPiB7XHJcbiAgICByZXR1cm4gdGhpcy5faW5wdXRJbnN0YW5jZSQuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBzZXQgaWNvbnMoaWNvbnM6IElLZXlib2FyZEljb25zKSB7XHJcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuX2ljb25zLCBpY29ucyk7XHJcbiAgfVxyXG5cclxuICBzZXQgZGFya1RoZW1lKGRhcmtUaGVtZTogYm9vbGVhbikge1xyXG4gICAgaWYgKHRoaXMuX2RhcmtUaGVtZS5nZXRWYWx1ZSgpICE9PSBkYXJrVGhlbWUpIHtcclxuICAgICAgdGhpcy5fZGFya1RoZW1lLm5leHQoZGFya1RoZW1lKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldCBpc0RlYnVnKGlzRGVidWc6IGJvb2xlYW4pIHtcclxuICAgIGlmICh0aGlzLl9pc0RlYnVnLmdldFZhbHVlKCkgIT09IGlzRGVidWcpIHtcclxuICAgICAgdGhpcy5faXNEZWJ1Zy5uZXh0KGlzRGVidWcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGRhcmtUaGVtZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGFya1RoZW1lLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlzRGVidWckKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzRGVidWcuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICAvLyBpbmplY3QgZGVwZW5kZW5jaWVzXHJcbiAgY29uc3RydWN0b3IoQEluamVjdChMT0NBTEVfSUQpIHByaXZhdGUgX2xvY2FsZTogc3RyaW5nLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgX2tleWJvYXJkU2VydmljZTogTWF0S2V5Ym9hcmRTZXJ2aWNlKSB7IH1cclxuXHJcbiAgc2V0SW5wdXRJbnN0YW5jZShpbnB1dEluc3RhbmNlOiBFbGVtZW50UmVmKSB7XHJcbiAgICB0aGlzLl9pbnB1dEluc3RhbmNlJC5uZXh0KGlucHV0SW5zdGFuY2UpO1xyXG4gIH1cclxuXHJcbiAgYXR0YWNoQ29udHJvbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpIHtcclxuICAgIHRoaXMuY29udHJvbCA9IGNvbnRyb2w7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIC8vIHNldCBhIGZhbGxiYWNrIHVzaW5nIHRoZSBsb2NhbGVcclxuICAgIGlmICghdGhpcy5sYXlvdXQpIHtcclxuICAgICAgdGhpcy5sb2NhbGUgPSB0aGlzLl9rZXlib2FyZFNlcnZpY2UubWFwTG9jYWxlKHRoaXMuX2xvY2FsZSkgPyB0aGlzLl9sb2NhbGUgOiAnZW4tVVMnO1xyXG4gICAgICB0aGlzLmxheW91dCA9IHRoaXMuX2tleWJvYXJkU2VydmljZS5nZXRMYXlvdXRGb3JMb2NhbGUodGhpcy5sb2NhbGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogZGlzbWlzc2VzIHRoZSBrZXlib2FyZFxyXG4gICAqL1xyXG4gIGRpc21pc3MoKSB7XHJcbiAgICB0aGlzLmtleWJvYXJkUmVmLmRpc21pc3MoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGNoZWNrcyBpZiBhIGdpdmVuIGtleSBpcyBjdXJyZW50bHkgcHJlc3NlZFxyXG4gICAqIEBwYXJhbSBrZXlcclxuICAgKiBAcGFyYW1cclxuICAgKi9cclxuICBpc0FjdGl2ZShrZXk6IChzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5KVtdKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBtb2RpZmllZEtleTogc3RyaW5nID0gdGhpcy5nZXRNb2RpZmllZEtleShrZXkpO1xyXG4gICAgY29uc3QgaXNBY3RpdmVDYXBzTG9jazogYm9vbGVhbiA9IG1vZGlmaWVkS2V5ID09PSBLZXlib2FyZENsYXNzS2V5LkNhcHMgJiYgdGhpcy5fY2Fwc0xvY2tlZDtcclxuICAgIGNvbnN0IGlzQWN0aXZlTW9kaWZpZXI6IGJvb2xlYW4gPSBtb2RpZmllZEtleSA9PT0gS2V5Ym9hcmRNb2RpZmllclt0aGlzLl9tb2RpZmllcl07XHJcbiAgICByZXR1cm4gaXNBY3RpdmVDYXBzTG9jayB8fCBpc0FjdGl2ZU1vZGlmaWVyO1xyXG4gIH1cclxuXHJcbiAgLy8gcmV0cmlldmVzIG1vZGlmaWVkIGtleVxyXG4gIGdldE1vZGlmaWVkS2V5KGtleTogKHN0cmluZyB8IEtleWJvYXJkQ2xhc3NLZXkpW10pOiBzdHJpbmcge1xyXG4gICAgbGV0IG1vZGlmaWVyOiBLZXlib2FyZE1vZGlmaWVyID0gdGhpcy5fbW9kaWZpZXI7XHJcblxyXG4gICAgLy8gYENhcHNMb2NrYCBpbnZlcnRzIHRoZSBtZWFuaW5nIG9mIGBTaGlmdGBcclxuICAgIGlmICh0aGlzLl9jYXBzTG9ja2VkKSB7XHJcbiAgICAgIG1vZGlmaWVyID0gdGhpcy5faW52ZXJ0U2hpZnRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGtleVttb2RpZmllcl07XHJcbiAgfVxyXG5cclxuICAvLyByZXRyaWV2ZXMgaWNvbiBmb3IgZ2l2ZW4ga2V5XHJcbiAgZ2V0S2V5SWNvbihrZXk6IChzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5KVtdKTogSU1hdEljb24ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ljb25zW2tleVtLZXlib2FyZE1vZGlmaWVyLk5vbmVdXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGxpc3RlbnMgdG8gdXNlcnMga2V5Ym9hcmQgaW5wdXRzIHRvIHNpbXVsYXRlIG9uIHZpcnR1YWwga2V5Ym9hcmQsIHRvb1xyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgLy8gJ2FjdGl2YXRlJyBjb3JyZXNwb25kaW5nIGtleVxyXG4gICAgdGhpcy5fa2V5c1xyXG4gICAgICAuZmlsdGVyKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiBrZXkua2V5ID09PSBldmVudC5rZXkpXHJcbiAgICAgIC5mb3JFYWNoKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiB7XHJcbiAgICAgICAga2V5LnByZXNzZWQgPSB0cnVlO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAvLyBzaW11bGF0ZSBtb2RpZmllciBwcmVzc1xyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5DYXBzKSB7XHJcbiAgICAgIHRoaXMub25DYXBzQ2xpY2soZXZlbnQuZ2V0TW9kaWZpZXJTdGF0ZShLZXlib2FyZENsYXNzS2V5LkNhcHMpKTtcclxuICAgIH1cclxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuQWx0ICYmIHRoaXMuX21vZGlmaWVyICE9PSBLZXlib2FyZE1vZGlmaWVyLkFsdCAmJiB0aGlzLl9tb2RpZmllciAhPT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkge1xyXG4gICAgICB0aGlzLm9uQWx0Q2xpY2soKTtcclxuICAgIH1cclxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuU2hpZnQgJiYgdGhpcy5fbW9kaWZpZXIgIT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnQgJiYgdGhpcy5fbW9kaWZpZXIgIT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpIHtcclxuICAgICAgdGhpcy5vblNoaWZ0Q2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGxpc3RlbnMgdG8gdXNlcnMga2V5Ym9hcmQgaW5wdXRzIHRvIHNpbXVsYXRlIG9uIHZpcnR1YWwga2V5Ym9hcmQsIHRvb1xyXG4gICAqIEBwYXJhbSBldmVudFxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleXVwJywgWyckZXZlbnQnXSlcclxuICBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICAvLyAnZGVhY3RpdmF0ZScgY29ycmVzcG9uZGluZyBrZXlcclxuICAgIHRoaXMuX2tleXNcclxuICAgICAgLmZpbHRlcigoa2V5OiBNYXRLZXlib2FyZEtleUNvbXBvbmVudCkgPT4ga2V5LmtleSA9PT0gZXZlbnQua2V5KVxyXG4gICAgICAuZm9yRWFjaCgoa2V5OiBNYXRLZXlib2FyZEtleUNvbXBvbmVudCkgPT4ge1xyXG4gICAgICAgIGtleS5wcmVzc2VkID0gZmFsc2U7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIC8vIHNpbXVsYXRlIG1vZGlmaWVyIHJlbGVhc2VcclxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuQWx0ICYmICh0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5BbHQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpKSB7XHJcbiAgICAgIHRoaXMub25BbHRDbGljaygpO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5TaGlmdCAmJiAodGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpKSB7XHJcbiAgICAgIHRoaXMub25TaGlmdENsaWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBidWJibGVzIGV2ZW50IGlmIHN1Ym1pdCBpcyBwb3RlbnRpYWxseSB0cmlnZ2VyZWRcclxuICAgKi9cclxuICBvbkVudGVyQ2xpY2soKSB7XHJcbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcclxuICAgIHRoaXMuZW50ZXJDbGljay5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBzaW11bGF0ZXMgY2xpY2tpbmcgYENhcHNMb2NrYCBrZXlcclxuICAgKiBAcGFyYW0gdGFyZ2V0U3RhdGVcclxuICAgKi9cclxuICBvbkNhcHNDbGljayh0YXJnZXRTdGF0ZSA9ICF0aGlzLl9jYXBzTG9ja2VkKSB7XHJcbiAgICAvLyBub3QgaW1wbGVtZW50ZWRcclxuICAgIHRoaXMuX2NhcHNMb2NrZWQgPSB0YXJnZXRTdGF0ZTtcclxuXHJcbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcclxuICAgIHRoaXMuY2Fwc0NsaWNrLm5leHQoKTtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogbm9uLW1vZGlmaWVyIGtleXMgYXJlIGNsaWNrZWRcclxuICAgKi9cclxuICBvbktleUNsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0IHx8IHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSB7XHJcbiAgICAgIHRoaXMuX21vZGlmaWVyID0gdGhpcy5faW52ZXJ0U2hpZnRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLkFsdCB8fCB0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkge1xyXG4gICAgICB0aGlzLl9tb2RpZmllciA9IHRoaXMuX2ludmVydEFsdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHNpbXVsYXRlcyBjbGlja2luZyBgQWx0YCBrZXlcclxuICAgKi9cclxuICBvbkFsdENsaWNrKCkge1xyXG4gICAgLy8gaW52ZXJ0IG1vZGlmaWVyIG1lYW5pbmdcclxuICAgIHRoaXMuX21vZGlmaWVyID0gdGhpcy5faW52ZXJ0QWx0TW9kaWZpZXIodGhpcy5fbW9kaWZpZXIpO1xyXG5cclxuICAgIC8vIG5vdGlmeSBzdWJzY3JpYmVyc1xyXG4gICAgdGhpcy5hbHRDbGljay5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBzaW11bGF0ZXMgY2xpY2tpbmcgYFNoaWZ0YCBrZXlcclxuICAgKi9cclxuICBvblNoaWZ0Q2xpY2soKSB7XHJcbiAgICAvLyBpbnZlcnQgbW9kaWZpZXIgbWVhbmluZ1xyXG4gICAgdGhpcy5fbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRTaGlmdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcclxuXHJcbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcclxuICAgIHRoaXMuc2hpZnRDbGljay5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbnZlcnRBbHRNb2RpZmllcihtb2RpZmllcjogS2V5Ym9hcmRNb2RpZmllcik6IEtleWJvYXJkTW9kaWZpZXIge1xyXG4gICAgc3dpdGNoIChtb2RpZmllcikge1xyXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuTm9uZTpcclxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5BbHQ7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ6XHJcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQ7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQ6XHJcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuQWx0OlxyXG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLk5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbnZlcnRTaGlmdE1vZGlmaWVyKG1vZGlmaWVyOiBLZXlib2FyZE1vZGlmaWVyKTogS2V5Ym9hcmRNb2RpZmllciB7XHJcbiAgICBzd2l0Y2ggKG1vZGlmaWVyKSB7XHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5Ob25lOlxyXG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0O1xyXG5cclxuICAgICAgY2FzZSBLZXlib2FyZE1vZGlmaWVyLkFsdDpcclxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdDtcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdDpcclxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5BbHQ7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ6XHJcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuTm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQXFCLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1SyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVqRjs7O0dBR0c7QUFRSCxJQUFhLG9CQUFvQixHQUFqQyxNQUFhLG9CQUFvQjtJQW1FL0Isc0JBQXNCO0lBQ3RCLFlBQXVDLE9BQWUsRUFDbEMsZ0JBQW9DO1FBRGpCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQW5FaEQsZUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsRSxhQUFRLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhFLG9CQUFlLEdBQXVDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBS2hGLGNBQVMsR0FBcUIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBRXBELGdCQUFX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QW9CLENBaVFoQztTQWpRWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgTE9DQUxFX0lELCBPbkluaXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1hdEtleWJvYXJkUmVmIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xuaW1wb3J0IHsgS0VZQk9BUkRfSUNPTlMgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLWljb25zLmNvbmZpZyc7XG5pbXBvcnQgeyBLZXlib2FyZENsYXNzS2V5IH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0nO1xuaW1wb3J0IHsgS2V5Ym9hcmRNb2RpZmllciB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLW1vZGlmaWVyLmVudW0nO1xuaW1wb3J0IHsgSUtleWJvYXJkSWNvbnMsIElNYXRJY29uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQgfSBmcm9tICcuLi9rZXlib2FyZC1rZXkva2V5Ym9hcmQta2V5LmNvbXBvbmVudCc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdXNlZCB0byBvcGVuIGFzIHRoZSBkZWZhdWx0IGtleWJvYXJkLCBtYXRjaGluZyBtYXRlcmlhbCBzcGVjLlxuICogVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGludGVybmFsbHkgYnkgdGhlIGtleWJvYXJkIHNlcnZpY2UuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hdC1rZXlib2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9rZXlib2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2tleWJvYXJkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHJpdmF0ZSBfZGFya1RoZW1lOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcml2YXRlIF9pc0RlYnVnOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcml2YXRlIF9pbnB1dEluc3RhbmNlJDogQmVoYXZpb3JTdWJqZWN0PEVsZW1lbnRSZWYgfCBudWxsPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG5cbiAgQFZpZXdDaGlsZHJlbihNYXRLZXlib2FyZEtleUNvbXBvbmVudClcbiAgcHJpdmF0ZSBfa2V5czogUXVlcnlMaXN0PE1hdEtleWJvYXJkS2V5Q29tcG9uZW50PjtcblxuICBwcml2YXRlIF9tb2RpZmllcjogS2V5Ym9hcmRNb2RpZmllciA9IEtleWJvYXJkTW9kaWZpZXIuTm9uZTtcblxuICBwcml2YXRlIF9jYXBzTG9ja2VkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfaWNvbnM6IElLZXlib2FyZEljb25zID0gS0VZQk9BUkRfSUNPTlM7XG5cbiAgLy8gdGhlIHNlcnZpY2UgcHJvdmlkZXMgYSBsb2NhbGUgb3IgbGF5b3V0IG9wdGlvbmFsbHlcbiAgbG9jYWxlPzogc3RyaW5nO1xuXG4gIGxheW91dDogSUtleWJvYXJkTGF5b3V0O1xuXG4gIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcblxuICAvLyB0aGUgaW5zdGFuY2Ugb2YgdGhlIGNvbXBvbmVudCBtYWtpbmcgdXAgdGhlIGNvbnRlbnQgb2YgdGhlIGtleWJvYXJkXG4gIGtleWJvYXJkUmVmOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tYXQta2V5Ym9hcmQnKVxuICBjc3NDbGFzcyA9IHRydWU7XG5cbiAgZW50ZXJDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIGNhcHNDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIGFsdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgc2hpZnRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8vIHJldHVybnMgYW4gb2JzZXJ2YWJsZSBvZiB0aGUgaW5wdXQgaW5zdGFuY2VcbiAgZ2V0IGlucHV0SW5zdGFuY2UoKTogT2JzZXJ2YWJsZTxFbGVtZW50UmVmIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLl9pbnB1dEluc3RhbmNlJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHNldCBpY29ucyhpY29uczogSUtleWJvYXJkSWNvbnMpIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuX2ljb25zLCBpY29ucyk7XG4gIH1cblxuICBzZXQgZGFya1RoZW1lKGRhcmtUaGVtZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9kYXJrVGhlbWUuZ2V0VmFsdWUoKSAhPT0gZGFya1RoZW1lKSB7XG4gICAgICB0aGlzLl9kYXJrVGhlbWUubmV4dChkYXJrVGhlbWUpO1xuICAgIH1cbiAgfVxuXG4gIHNldCBpc0RlYnVnKGlzRGVidWc6IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5faXNEZWJ1Zy5nZXRWYWx1ZSgpICE9PSBpc0RlYnVnKSB7XG4gICAgICB0aGlzLl9pc0RlYnVnLm5leHQoaXNEZWJ1Zyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGRhcmtUaGVtZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2RhcmtUaGVtZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBpc0RlYnVnJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5faXNEZWJ1Zy5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8vIGluamVjdCBkZXBlbmRlbmNpZXNcbiAgY29uc3RydWN0b3IoQEluamVjdChMT0NBTEVfSUQpIHByaXZhdGUgX2xvY2FsZTogc3RyaW5nLFxuICAgICAgICAgICAgICBwcml2YXRlIF9rZXlib2FyZFNlcnZpY2U6IE1hdEtleWJvYXJkU2VydmljZSkgeyB9XG5cbiAgc2V0SW5wdXRJbnN0YW5jZShpbnB1dEluc3RhbmNlOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5faW5wdXRJbnN0YW5jZSQubmV4dChpbnB1dEluc3RhbmNlKTtcbiAgfVxuXG4gIGF0dGFjaENvbnRyb2woY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gICAgdGhpcy5jb250cm9sID0gY29udHJvbDtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vIHNldCBhIGZhbGxiYWNrIHVzaW5nIHRoZSBsb2NhbGVcbiAgICBpZiAoIXRoaXMubGF5b3V0KSB7XG4gICAgICB0aGlzLmxvY2FsZSA9IHRoaXMuX2tleWJvYXJkU2VydmljZS5tYXBMb2NhbGUodGhpcy5fbG9jYWxlKSA/IHRoaXMuX2xvY2FsZSA6ICdlbi1VUyc7XG4gICAgICB0aGlzLmxheW91dCA9IHRoaXMuX2tleWJvYXJkU2VydmljZS5nZXRMYXlvdXRGb3JMb2NhbGUodGhpcy5sb2NhbGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBkaXNtaXNzZXMgdGhlIGtleWJvYXJkXG4gICAqL1xuICBkaXNtaXNzKCkge1xuICAgIHRoaXMua2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrcyBpZiBhIGdpdmVuIGtleSBpcyBjdXJyZW50bHkgcHJlc3NlZFxuICAgKiBAcGFyYW0ga2V5XG4gICAqIEBwYXJhbVxuICAgKi9cbiAgaXNBY3RpdmUoa2V5OiAoc3RyaW5nIHwgS2V5Ym9hcmRDbGFzc0tleSlbXSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IG1vZGlmaWVkS2V5OiBzdHJpbmcgPSB0aGlzLmdldE1vZGlmaWVkS2V5KGtleSk7XG4gICAgY29uc3QgaXNBY3RpdmVDYXBzTG9jazogYm9vbGVhbiA9IG1vZGlmaWVkS2V5ID09PSBLZXlib2FyZENsYXNzS2V5LkNhcHMgJiYgdGhpcy5fY2Fwc0xvY2tlZDtcbiAgICBjb25zdCBpc0FjdGl2ZU1vZGlmaWVyOiBib29sZWFuID0gbW9kaWZpZWRLZXkgPT09IEtleWJvYXJkTW9kaWZpZXJbdGhpcy5fbW9kaWZpZXJdO1xuICAgIHJldHVybiBpc0FjdGl2ZUNhcHNMb2NrIHx8IGlzQWN0aXZlTW9kaWZpZXI7XG4gIH1cblxuICAvLyByZXRyaWV2ZXMgbW9kaWZpZWQga2V5XG4gIGdldE1vZGlmaWVkS2V5KGtleTogKHN0cmluZyB8IEtleWJvYXJkQ2xhc3NLZXkpW10pOiBzdHJpbmcge1xuICAgIGxldCBtb2RpZmllcjogS2V5Ym9hcmRNb2RpZmllciA9IHRoaXMuX21vZGlmaWVyO1xuXG4gICAgLy8gYENhcHNMb2NrYCBpbnZlcnRzIHRoZSBtZWFuaW5nIG9mIGBTaGlmdGBcbiAgICBpZiAodGhpcy5fY2Fwc0xvY2tlZCkge1xuICAgICAgbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRTaGlmdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcbiAgICB9XG5cbiAgICByZXR1cm4ga2V5W21vZGlmaWVyXTtcbiAgfVxuXG4gIC8vIHJldHJpZXZlcyBpY29uIGZvciBnaXZlbiBrZXlcbiAgZ2V0S2V5SWNvbihrZXk6IChzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5KVtdKTogSU1hdEljb24ge1xuICAgIHJldHVybiB0aGlzLl9pY29uc1trZXlbS2V5Ym9hcmRNb2RpZmllci5Ob25lXV07XG4gIH1cblxuICAvKipcbiAgICogbGlzdGVucyB0byB1c2VycyBrZXlib2FyZCBpbnB1dHMgdG8gc2ltdWxhdGUgb24gdmlydHVhbCBrZXlib2FyZCwgdG9vXG4gICAqIEBwYXJhbSBldmVudFxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIC8vICdhY3RpdmF0ZScgY29ycmVzcG9uZGluZyBrZXlcbiAgICB0aGlzLl9rZXlzXG4gICAgICAuZmlsdGVyKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiBrZXkua2V5ID09PSBldmVudC5rZXkpXG4gICAgICAuZm9yRWFjaCgoa2V5OiBNYXRLZXlib2FyZEtleUNvbXBvbmVudCkgPT4ge1xuICAgICAgICBrZXkucHJlc3NlZCA9IHRydWU7XG4gICAgICB9KTtcblxuICAgIC8vIHNpbXVsYXRlIG1vZGlmaWVyIHByZXNzXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5DYXBzKSB7XG4gICAgICB0aGlzLm9uQ2Fwc0NsaWNrKGV2ZW50LmdldE1vZGlmaWVyU3RhdGUoS2V5Ym9hcmRDbGFzc0tleS5DYXBzKSk7XG4gICAgfVxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuQWx0ICYmIHRoaXMuX21vZGlmaWVyICE9PSBLZXlib2FyZE1vZGlmaWVyLkFsdCAmJiB0aGlzLl9tb2RpZmllciAhPT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkge1xuICAgICAgdGhpcy5vbkFsdENsaWNrKCk7XG4gICAgfVxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuU2hpZnQgJiYgdGhpcy5fbW9kaWZpZXIgIT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnQgJiYgdGhpcy5fbW9kaWZpZXIgIT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpIHtcbiAgICAgIHRoaXMub25TaGlmdENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIGxpc3RlbnMgdG8gdXNlcnMga2V5Ym9hcmQgaW5wdXRzIHRvIHNpbXVsYXRlIG9uIHZpcnR1YWwga2V5Ym9hcmQsIHRvb1xuICAgKiBAcGFyYW0gZXZlbnRcbiAgICovXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleXVwJywgWyckZXZlbnQnXSlcbiAgb25LZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIC8vICdkZWFjdGl2YXRlJyBjb3JyZXNwb25kaW5nIGtleVxuICAgIHRoaXMuX2tleXNcbiAgICAgIC5maWx0ZXIoKGtleTogTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQpID0+IGtleS5rZXkgPT09IGV2ZW50LmtleSlcbiAgICAgIC5mb3JFYWNoKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiB7XG4gICAgICAgIGtleS5wcmVzc2VkID0gZmFsc2U7XG4gICAgICB9KTtcblxuICAgIC8vIHNpbXVsYXRlIG1vZGlmaWVyIHJlbGVhc2VcbiAgICBpZiAoZXZlbnQua2V5ID09PSBLZXlib2FyZENsYXNzS2V5LkFsdCAmJiAodGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuQWx0IHx8IHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSkge1xuICAgICAgdGhpcy5vbkFsdENsaWNrKCk7XG4gICAgfVxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuU2hpZnQgJiYgKHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0IHx8IHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSkge1xuICAgICAgdGhpcy5vblNoaWZ0Q2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogYnViYmxlcyBldmVudCBpZiBzdWJtaXQgaXMgcG90ZW50aWFsbHkgdHJpZ2dlcmVkXG4gICAqL1xuICBvbkVudGVyQ2xpY2soKSB7XG4gICAgLy8gbm90aWZ5IHN1YnNjcmliZXJzXG4gICAgdGhpcy5lbnRlckNsaWNrLm5leHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBzaW11bGF0ZXMgY2xpY2tpbmcgYENhcHNMb2NrYCBrZXlcbiAgICogQHBhcmFtIHRhcmdldFN0YXRlXG4gICAqL1xuICBvbkNhcHNDbGljayh0YXJnZXRTdGF0ZSA9ICF0aGlzLl9jYXBzTG9ja2VkKSB7XG4gICAgLy8gbm90IGltcGxlbWVudGVkXG4gICAgdGhpcy5fY2Fwc0xvY2tlZCA9IHRhcmdldFN0YXRlO1xuXG4gICAgLy8gbm90aWZ5IHN1YnNjcmliZXJzXG4gICAgdGhpcy5jYXBzQ2xpY2submV4dCgpO1xuICB9XG5cbiAgLypcbiAgICogbm9uLW1vZGlmaWVyIGtleXMgYXJlIGNsaWNrZWRcbiAgICovXG4gIG9uS2V5Q2xpY2soKSB7XG4gICAgaWYgKHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0IHx8IHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSB7XG4gICAgICB0aGlzLl9tb2RpZmllciA9IHRoaXMuX2ludmVydFNoaWZ0TW9kaWZpZXIodGhpcy5fbW9kaWZpZXIpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5BbHQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpIHtcbiAgICAgIHRoaXMuX21vZGlmaWVyID0gdGhpcy5faW52ZXJ0QWx0TW9kaWZpZXIodGhpcy5fbW9kaWZpZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBzaW11bGF0ZXMgY2xpY2tpbmcgYEFsdGAga2V5XG4gICAqL1xuICBvbkFsdENsaWNrKCkge1xuICAgIC8vIGludmVydCBtb2RpZmllciBtZWFuaW5nXG4gICAgdGhpcy5fbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRBbHRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XG5cbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcbiAgICB0aGlzLmFsdENsaWNrLm5leHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBzaW11bGF0ZXMgY2xpY2tpbmcgYFNoaWZ0YCBrZXlcbiAgICovXG4gIG9uU2hpZnRDbGljaygpIHtcbiAgICAvLyBpbnZlcnQgbW9kaWZpZXIgbWVhbmluZ1xuICAgIHRoaXMuX21vZGlmaWVyID0gdGhpcy5faW52ZXJ0U2hpZnRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XG5cbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcbiAgICB0aGlzLnNoaWZ0Q2xpY2submV4dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW52ZXJ0QWx0TW9kaWZpZXIobW9kaWZpZXI6IEtleWJvYXJkTW9kaWZpZXIpOiBLZXlib2FyZE1vZGlmaWVyIHtcbiAgICBzd2l0Y2ggKG1vZGlmaWVyKSB7XG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuTm9uZTpcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuQWx0O1xuXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ6XG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0O1xuXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQ6XG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0O1xuXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuQWx0OlxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5Ob25lO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2ludmVydFNoaWZ0TW9kaWZpZXIobW9kaWZpZXI6IEtleWJvYXJkTW9kaWZpZXIpOiBLZXlib2FyZE1vZGlmaWVyIHtcbiAgICBzd2l0Y2ggKG1vZGlmaWVyKSB7XG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuTm9uZTpcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5BbHQ6XG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0O1xuXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQ6XG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLkFsdDtcblxuICAgICAgY2FzZSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0OlxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5Ob25lO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=

@@ -209,2 +209,2 @@ // - Lay out each dead key set as an object of property/value

export { MAT_KEYBOARD_DEADKEYS, keyboardDeadkeys };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleS5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2REFBNkQ7QUFDN0QsZ0VBQWdFO0FBQ2hFLHVDQUF1QztBQUN2QyxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLG1FQUFtRTtBQUNuRSxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLGlFQUFpRTtBQUNqRSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFvQix5QkFBeUIsQ0FBQyxDQUFDO0FBQy9GLE1BQU0sZ0JBQWdCLEdBQXNCO0lBQzFDLEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDMUQsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDM0Q7SUFDRCxHQUFHLEVBQUU7UUFDSCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN2RyxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUN4RztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixRQUFRLEVBQUUsUUFBUTtLQUNuQjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRO1FBQzdGLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUM5RjtJQUNELElBQUksRUFBRTtRQUNKLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUM1QixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRO0tBQzdCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUN2QztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN4RixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDekY7SUFDRCxRQUFRLEVBQUU7UUFDUixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUMxRCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUMzRDtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNEOzs7U0FHSztJQUNMLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVE7UUFDbEcsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUNuRztDQUNGLENBQUM7QUFFRixVQUFVO0FBQ1YsU0FBUztBQUNULGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25ELDZFQUE2RTtBQUM3RSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoRixzQkFBc0I7QUFDdEIsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakYsT0FBTztBQUNQLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3hELGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXhELE9BQU8sRUFBcUIscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0gTGF5IG91dCBlYWNoIGRlYWQga2V5IHNldCBhcyBhbiBvYmplY3Qgb2YgcHJvcGVydHkvdmFsdWVcclxuLy8gICBwYWlycy4gIFRoZSByb3dzIGJlbG93IGFyZSB3cmFwcGVkIHNvIHVwcGVyY2FzZSBsZXR0ZXJzIGFyZVxyXG4vLyAgIGJlbG93IHRoZWlyIGxvd2VyY2FzZSBlcXVpdmFsZW50cy5cclxuLy9cclxuLy8gLSBUaGUgcHJvcGVydHkgbmFtZSBpcyB0aGUgbGV0dGVyIHByZXNzZWQgYWZ0ZXIgdGhlIGRpYWNyaXRpYy5cclxuLy8gICBUaGUgcHJvcGVydHkgdmFsdWUgaXMgdGhlIGxldHRlciB0aGlzIGtleS1jb21ibyB3aWxsIGdlbmVyYXRlLlxyXG4vL1xyXG4vLyAtIE5vdGUgdGhhdCBpZiB5b3UgaGF2ZSBjcmVhdGVkIGEgbmV3IGtleWJvYXJkIGxheW91dCBhbmQgd2FudFxyXG4vLyAgIGl0IGluY2x1ZGVkIGluIHRoZSBkaXN0cmlidXRlZCBzY3JpcHQsIFBMRUFTRSBURUxMIE1FIGlmIHlvdVxyXG4vLyAgIGhhdmUgYWRkZWQgYWRkaXRpb25hbCBkZWFkIGtleXMgdG8gdGhlIG9uZXMgYmVsb3cuXHJcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElLZXlib2FyZERlYWRrZXlzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xyXG5cclxuY29uc3QgTUFUX0tFWUJPQVJEX0RFQURLRVlTID0gbmV3IEluamVjdGlvblRva2VuPElLZXlib2FyZERlYWRrZXlzPigna2V5Ym9hcmQtZGVhZGtleS5jb25maWcnKTtcclxuY29uc3Qga2V5Ym9hcmREZWFka2V5czogSUtleWJvYXJkRGVhZGtleXMgPSB7XHJcbiAgJ1wiJzoge1xyXG4gICAgJ2EnOiAnXFx1MDBlNCcsXHJcbiAgICAnZSc6ICdcXHUwMGViJyxcclxuICAgICdpJzogJ1xcdTAwZWYnLFxyXG4gICAgJ28nOiAnXFx1MDBmNicsXHJcbiAgICAndSc6ICdcXHUwMGZjJyxcclxuICAgICd5JzogJ1xcdTAwZmYnLFxyXG4gICAgJ1xcdTAzYjknOiAnXFx1MDNjYScsXHJcbiAgICAnXFx1MDNjNSc6ICdcXHUwM2NiJyxcclxuICAgICdcXHUwMTZCJzogJ1xcdTAxRDYnLFxyXG4gICAgJ1xcdTAwRkEnOiAnXFx1MDFEOCcsXHJcbiAgICAnXFx1MDFENCc6ICdcXHUwMURBJyxcclxuICAgICdcXHUwMEY5JzogJ1xcdTAxREMnLFxyXG4gICAgJ0EnOiAnXFx1MDBjNCcsXHJcbiAgICAnRSc6ICdcXHUwMGNiJyxcclxuICAgICdJJzogJ1xcdTAwY2YnLFxyXG4gICAgJ08nOiAnXFx1MDBkNicsXHJcbiAgICAnVSc6ICdcXHUwMGRjJyxcclxuICAgICdZJzogJ1xcdTAxNzgnLFxyXG4gICAgJ1xcdTAzOTknOiAnXFx1MDNhYScsXHJcbiAgICAnXFx1MDNhNSc6ICdcXHUwM2FiJyxcclxuICAgICdcXHUwMTZBJzogJ1xcdTAxRDUnLFxyXG4gICAgJ1xcdTAwREEnOiAnXFx1MDFENycsXHJcbiAgICAnXFx1MDFEMyc6ICdcXHUwMUQ5JyxcclxuICAgICdcXHUwMEQ5JzogJ1xcdTAxREInLFxyXG4gICAgJ1xcdTMwNGInOiAnXFx1MzA0YycsXHJcbiAgICAnXFx1MzA0ZCc6ICdcXHUzMDRlJyxcclxuICAgICdcXHUzMDRmJzogJ1xcdTMwNTAnLFxyXG4gICAgJ1xcdTMwNTEnOiAnXFx1MzA1MicsXHJcbiAgICAnXFx1MzA1Myc6ICdcXHUzMDU0JyxcclxuICAgICdcXHUzMDVmJzogJ1xcdTMwNjAnLFxyXG4gICAgJ1xcdTMwNjEnOiAnXFx1MzA2MicsXHJcbiAgICAnXFx1MzA2NCc6ICdcXHUzMDY1JyxcclxuICAgICdcXHUzMDY2JzogJ1xcdTMwNjcnLFxyXG4gICAgJ1xcdTMwNjgnOiAnXFx1MzA2OScsXHJcbiAgICAnXFx1MzA1NSc6ICdcXHUzMDU2JyxcclxuICAgICdcXHUzMDU3JzogJ1xcdTMwNTgnLFxyXG4gICAgJ1xcdTMwNTknOiAnXFx1MzA1YScsXHJcbiAgICAnXFx1MzA1Yic6ICdcXHUzMDVjJyxcclxuICAgICdcXHUzMDVkJzogJ1xcdTMwNWUnLFxyXG4gICAgJ1xcdTMwNmYnOiAnXFx1MzA3MCcsXHJcbiAgICAnXFx1MzA3Mic6ICdcXHUzMDczJyxcclxuICAgICdcXHUzMDc1JzogJ1xcdTMwNzYnLFxyXG4gICAgJ1xcdTMwNzgnOiAnXFx1MzA3OScsXHJcbiAgICAnXFx1MzA3Yic6ICdcXHUzMDdjJyxcclxuICAgICdcXHUzMGFiJzogJ1xcdTMwYWMnLFxyXG4gICAgJ1xcdTMwYWQnOiAnXFx1MzBhZScsXHJcbiAgICAnXFx1MzBhZic6ICdcXHUzMGIwJyxcclxuICAgICdcXHUzMGIxJzogJ1xcdTMwYjInLFxyXG4gICAgJ1xcdTMwYjMnOiAnXFx1MzBiNCcsXHJcbiAgICAnXFx1MzBiZic6ICdcXHUzMGMwJyxcclxuICAgICdcXHUzMGMxJzogJ1xcdTMwYzInLFxyXG4gICAgJ1xcdTMwYzQnOiAnXFx1MzBjNScsXHJcbiAgICAnXFx1MzBjNic6ICdcXHUzMGM3JyxcclxuICAgICdcXHUzMGM4JzogJ1xcdTMwYzknLFxyXG4gICAgJ1xcdTMwYjUnOiAnXFx1MzBiNicsXHJcbiAgICAnXFx1MzBiNyc6ICdcXHUzMGI4JyxcclxuICAgICdcXHUzMGI5JzogJ1xcdTMwYmEnLFxyXG4gICAgJ1xcdTMwYmInOiAnXFx1MzBiYycsXHJcbiAgICAnXFx1MzBiZCc6ICdcXHUzMGJlJyxcclxuICAgICdcXHUzMGNmJzogJ1xcdTMwZDAnLFxyXG4gICAgJ1xcdTMwZDInOiAnXFx1MzBkMycsXHJcbiAgICAnXFx1MzBkNSc6ICdcXHUzMGQ2JyxcclxuICAgICdcXHUzMGQ4JzogJ1xcdTMwZDknLFxyXG4gICAgJ1xcdTMwZGInOiAnXFx1MzBkYydcclxuICB9LFxyXG4gICd+JzogeyAvLyBUaWxkZSAvIFN0cm9rZVxyXG4gICAgJ2EnOiAnXFx1MDBlMycsICdsJzogJ1xcdTAxNDInLCAnbic6ICdcXHUwMGYxJywgJ28nOiAnXFx1MDBmNScsXHJcbiAgICAnQSc6ICdcXHUwMGMzJywgJ0wnOiAnXFx1MDE0MScsICdOJzogJ1xcdTAwZDEnLCAnTyc6ICdcXHUwMGQ1J1xyXG4gIH0sXHJcbiAgJ14nOiB7IC8vIENpcmN1bWZsZXhcclxuICAgICdhJzogJ1xcdTAwZTInLCAnZSc6ICdcXHUwMGVhJywgJ2knOiAnXFx1MDBlZScsICdvJzogJ1xcdTAwZjQnLCAndSc6ICdcXHUwMGZiJywgJ3cnOiAnXFx1MDE3NScsICd5JzogJ1xcdTAxNzcnLFxyXG4gICAgJ0EnOiAnXFx1MDBjMicsICdFJzogJ1xcdTAwY2EnLCAnSSc6ICdcXHUwMGNlJywgJ08nOiAnXFx1MDBkNCcsICdVJzogJ1xcdTAwZGInLCAnVyc6ICdcXHUwMTc0JywgJ1knOiAnXFx1MDE3NidcclxuICB9LFxyXG4gICdcXHUwMmM3JzogeyAvLyBCYWx0aWMgY2Fyb25cclxuICAgICdjJzogJ1xcdTAxMEQnLFxyXG4gICAgJ2QnOiAnXFx1MDEwZicsXHJcbiAgICAnZSc6ICdcXHUwMTFiJyxcclxuICAgICdzJzogJ1xcdTAxNjEnLFxyXG4gICAgJ2wnOiAnXFx1MDEzZScsXHJcbiAgICAnbic6ICdcXHUwMTQ4JyxcclxuICAgICdyJzogJ1xcdTAxNTknLFxyXG4gICAgJ3QnOiAnXFx1MDE2NScsXHJcbiAgICAndSc6ICdcXHUwMWQ0JyxcclxuICAgICd6JzogJ1xcdTAxN0UnLFxyXG4gICAgJ1xcdTAwZmMnOiAnXFx1MDFkYScsXHJcbiAgICAnQyc6ICdcXHUwMTBDJyxcclxuICAgICdEJzogJ1xcdTAxMGUnLFxyXG4gICAgJ0UnOiAnXFx1MDExYScsXHJcbiAgICAnUyc6ICdcXHUwMTYwJyxcclxuICAgICdMJzogJ1xcdTAxM2QnLFxyXG4gICAgJ04nOiAnXFx1MDE0NycsXHJcbiAgICAnUic6ICdcXHUwMTU4JyxcclxuICAgICdUJzogJ1xcdTAxNjQnLFxyXG4gICAgJ1UnOiAnXFx1MDFkMycsXHJcbiAgICAnWic6ICdcXHUwMTdEJyxcclxuICAgICdcXHUwMGRjJzogJ1xcdTAxZDknXHJcbiAgfSxcclxuICAnXFx1MDJkOCc6IHsgLy8gUm9tYW5pYW4gYW5kIFR1cmtpc2ggYnJldmVcclxuICAgICdhJzogJ1xcdTAxMDMnLCAnZyc6ICdcXHUwMTFmJyxcclxuICAgICdBJzogJ1xcdTAxMDInLCAnRyc6ICdcXHUwMTFlJ1xyXG4gIH0sXHJcbiAgJy0nOiB7IC8vIE1hY3JvblxyXG4gICAgJ2EnOiAnXFx1MDEwMScsXHJcbiAgICAnZSc6ICdcXHUwMTEzJyxcclxuICAgICdpJzogJ1xcdTAxMmInLFxyXG4gICAgJ28nOiAnXFx1MDE0ZCcsXHJcbiAgICAndSc6ICdcXHUwMTZCJyxcclxuICAgICd5JzogJ1xcdTAyMzMnLFxyXG4gICAgJ1xcdTAwZmMnOiAnXFx1MDFkNicsXHJcbiAgICAnQSc6ICdcXHUwMTAwJyxcclxuICAgICdFJzogJ1xcdTAxMTInLFxyXG4gICAgJ0knOiAnXFx1MDEyYScsXHJcbiAgICAnTyc6ICdcXHUwMTRjJyxcclxuICAgICdVJzogJ1xcdTAxNkEnLFxyXG4gICAgJ1knOiAnXFx1MDIzMicsXHJcbiAgICAnXFx1MDBkYyc6ICdcXHUwMWQ1J1xyXG4gIH0sXHJcbiAgJ2AnOiB7IC8vIEdyYXZlXHJcbiAgICAnYSc6ICdcXHUwMGUwJywgJ2UnOiAnXFx1MDBlOCcsICdpJzogJ1xcdTAwZWMnLCAnbyc6ICdcXHUwMGYyJywgJ3UnOiAnXFx1MDBmOScsICdcXHUwMGZjJzogJ1xcdTAxZGMnLFxyXG4gICAgJ0EnOiAnXFx1MDBjMCcsICdFJzogJ1xcdTAwYzgnLCAnSSc6ICdcXHUwMGNjJywgJ08nOiAnXFx1MDBkMicsICdVJzogJ1xcdTAwZDknLCAnXFx1MDBkYyc6ICdcXHUwMWRiJ1xyXG4gIH0sXHJcbiAgJ1xcJyc6IHsgLy8gQWN1dGUgLyBHcmVlayBUb25vc1xyXG4gICAgJ2EnOiAnXFx1MDBlMScsXHJcbiAgICAnZSc6ICdcXHUwMGU5JyxcclxuICAgICdpJzogJ1xcdTAwZWQnLFxyXG4gICAgJ28nOiAnXFx1MDBmMycsXHJcbiAgICAndSc6ICdcXHUwMGZhJyxcclxuICAgICd5JzogJ1xcdTAwZmQnLFxyXG4gICAgJ1xcdTAzYjEnOiAnXFx1MDNhYycsXHJcbiAgICAnXFx1MDNiNSc6ICdcXHUwM2FkJyxcclxuICAgICdcXHUwM2I3JzogJ1xcdTAzYWUnLFxyXG4gICAgJ1xcdTAzYjknOiAnXFx1MDNhZicsXHJcbiAgICAnXFx1MDNiZic6ICdcXHUwM2NjJyxcclxuICAgICdcXHUwM2M1JzogJ1xcdTAzY2QnLFxyXG4gICAgJ1xcdTAzYzknOiAnXFx1MDNjZScsXHJcbiAgICAnXFx1MDBmYyc6ICdcXHUwMWQ4JyxcclxuICAgICdBJzogJ1xcdTAwYzEnLFxyXG4gICAgJ0UnOiAnXFx1MDBjOScsXHJcbiAgICAnSSc6ICdcXHUwMGNkJyxcclxuICAgICdPJzogJ1xcdTAwZDMnLFxyXG4gICAgJ1UnOiAnXFx1MDBkYScsXHJcbiAgICAnWSc6ICdcXHUwMGRkJyxcclxuICAgICdcXHUwMzkxJzogJ1xcdTAzODYnLFxyXG4gICAgJ1xcdTAzOTUnOiAnXFx1MDM4OCcsXHJcbiAgICAnXFx1MDM5Nyc6ICdcXHUwMzg5JyxcclxuICAgICdcXHUwMzk5JzogJ1xcdTAzOGEnLFxyXG4gICAgJ1xcdTAzOWYnOiAnXFx1MDM4YycsXHJcbiAgICAnXFx1MDNhNSc6ICdcXHUwMzhlJyxcclxuICAgICdcXHUwM2E5JzogJ1xcdTAzOGYnLFxyXG4gICAgJ1xcdTAwZGMnOiAnXFx1MDFkNydcclxuICB9LFxyXG4gICdcXHUwMmRkJzogey8vIEh1bmdhcmlhbiBEb3VibGUgQWN1dGUgQWNjZW50XHJcbiAgICAnbyc6ICdcXHUwMTUxJywgJ3UnOiAnXFx1MDE3MScsXHJcbiAgICAnTyc6ICdcXHUwMTUwJywgJ1UnOiAnXFx1MDE3MCdcclxuICB9LFxyXG4gICdcXHUwMzg1JzogeyAvLyBHcmVlayBEaWFseXRpa2EgKyBUb25vc1xyXG4gICAgJ1xcdTAzYjknOiAnXFx1MDM5MCcsICdcXHUwM2M1JzogJ1xcdTAzYjAnXHJcbiAgfSxcclxuICAnXFx1MDBiMCc6IHsgLy8gUmluZ1xyXG4gICAgJ2EnOiAnXFx1MDBlNScsICd1JzogJ1xcdTAxNmYnLFxyXG4gICAgJ0EnOiAnXFx1MDBjNScsICdVJzogJ1xcdTAxNmUnXHJcbiAgfSxcclxuICAnXFx1MDJEQic6IHsgLy8gT2dvbmVrXHJcbiAgICAnYSc6ICdcXHUwMTA2JywgJ2UnOiAnXFx1MDExOScsICdpJzogJ1xcdTAxMmYnLCAnbyc6ICdcXHUwMWViJywgJ3UnOiAnXFx1MDE3MycsICd5JzogJ1xcdTAxNzcnLFxyXG4gICAgJ0EnOiAnXFx1MDEwNScsICdFJzogJ1xcdTAxMTgnLCAnSSc6ICdcXHUwMTJlJywgJ08nOiAnXFx1MDFlYScsICdVJzogJ1xcdTAxNzInLCAnWSc6ICdcXHUwMTc2J1xyXG4gIH0sXHJcbiAgJ1xcdTAyRDknOiB7IC8vIERvdC1hYm92ZVxyXG4gICAgJ2MnOiAnXFx1MDEwQicsICdlJzogJ1xcdTAxMTcnLCAnZyc6ICdcXHUwMTIxJywgJ3onOiAnXFx1MDE3QycsXHJcbiAgICAnQyc6ICdcXHUwMTBBJywgJ0UnOiAnXFx1MDExNicsICdHJzogJ1xcdTAxMjAnLCAnWic6ICdcXHUwMTdCJ1xyXG4gIH0sXHJcbiAgJ1xcdTAwQjgnOiB7IC8vIENlZGlsbGFcclxuICAgICdjJzogJ1xcdTAwZTcnLCAncyc6ICdcXHUwMTVGJyxcclxuICAgICdDJzogJ1xcdTAwYzcnLCAnUyc6ICdcXHUwMTVFJ1xyXG4gIH0sXHJcbiAgLyonLCc6IHsgLy8gQ29tbWFcclxuICAgJ3MnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE1RicgOiAnXFx1MDIxOScsICd0JzogKHRoaXMuVktJX2lzSUVsdDgpID8gJ1xcdTAxNjMnIDogJ1xcdTAyMUInLFxyXG4gICAnUyc6ICh0aGlzLlZLSV9pc0lFbHQ4KSA/ICdcXHUwMTVFJyA6ICdcXHUwMjE4JywgJ1QnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE2MicgOiAnXFx1MDIxQSdcclxuICAgfSwqL1xyXG4gICdcXHUzMDAyJzogeyAvLyBIaXJhZ2FuYS9LYXRha2FuYSBQb2ludFxyXG4gICAgJ1xcdTMwNmYnOiAnXFx1MzA3MScsICdcXHUzMDcyJzogJ1xcdTMwNzQnLCAnXFx1MzA3NSc6ICdcXHUzMDc3JywgJ1xcdTMwNzgnOiAnXFx1MzA3YScsICdcXHUzMDdiJzogJ1xcdTMwN2QnLFxyXG4gICAgJ1xcdTMwY2YnOiAnXFx1MzBkMScsICdcXHUzMGQyJzogJ1xcdTMwZDQnLCAnXFx1MzBkNSc6ICdcXHUzMGQ3JywgJ1xcdTMwZDgnOiAnXFx1MzBkYScsICdcXHUzMGRiJzogJ1xcdTMwZGQnXHJcbiAgfVxyXG59O1xyXG5cclxuLy8gYWxpYXNlc1xyXG4vLyBNYWNyb25cclxua2V5Ym9hcmREZWFka2V5c1snXFx1MDBhZiddID0ga2V5Ym9hcmREZWFka2V5c1snLSddO1xyXG4vLyBVbWxhdXQgLyBEaWFlcmVzaXMgLyBHcmVlayBEaWFseXRpa2EgLyBIaXJhZ2FuYS9LYXRha2FuYSBWb2ljZWQgU291bmQgTWFya1xyXG5rZXlib2FyZERlYWRrZXlzWydcXHUwMGE4J10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUzMDlCJ10gPSBrZXlib2FyZERlYWRrZXlzWydcIiddO1xyXG4vLyBBY3V0ZSAvIEdyZWVrIFRvbm9zXHJcbmtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYjQnXSA9IGtleWJvYXJkRGVhZGtleXNbJ1xcdTAzODQnXSA9IGtleWJvYXJkRGVhZGtleXNbJ1xcJyddO1xyXG4vLyBSaW5nXHJcbmtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYmEnXSA9IGtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYjAnXTtcclxua2V5Ym9hcmREZWFka2V5c1snXFx1MjAxYSddID0ga2V5Ym9hcmREZWFka2V5c1snXFx1MDBCOCddO1xyXG5cclxuZXhwb3J0IHsgSUtleWJvYXJkRGVhZGtleXMsIE1BVF9LRVlCT0FSRF9ERUFES0VZUywga2V5Ym9hcmREZWFka2V5cyB9O1xyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleS5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2REFBNkQ7QUFDN0QsZ0VBQWdFO0FBQ2hFLHVDQUF1QztBQUN2QyxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLG1FQUFtRTtBQUNuRSxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLGlFQUFpRTtBQUNqRSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFvQix5QkFBeUIsQ0FBQyxDQUFDO0FBQy9GLE1BQU0sZ0JBQWdCLEdBQXNCO0lBQzFDLEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDMUQsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDM0Q7SUFDRCxHQUFHLEVBQUU7UUFDSCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN2RyxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUN4RztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixRQUFRLEVBQUUsUUFBUTtLQUNuQjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRO1FBQzdGLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUM5RjtJQUNELElBQUksRUFBRTtRQUNKLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUM1QixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRO0tBQzdCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUN2QztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN4RixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDekY7SUFDRCxRQUFRLEVBQUU7UUFDUixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUMxRCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUMzRDtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNEOzs7U0FHSztJQUNMLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVE7UUFDbEcsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUNuRztDQUNGLENBQUM7QUFFRixVQUFVO0FBQ1YsU0FBUztBQUNULGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25ELDZFQUE2RTtBQUM3RSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoRixzQkFBc0I7QUFDdEIsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakYsT0FBTztBQUNQLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3hELGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXhELE9BQU8sRUFBcUIscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0gTGF5IG91dCBlYWNoIGRlYWQga2V5IHNldCBhcyBhbiBvYmplY3Qgb2YgcHJvcGVydHkvdmFsdWVcbi8vICAgcGFpcnMuICBUaGUgcm93cyBiZWxvdyBhcmUgd3JhcHBlZCBzbyB1cHBlcmNhc2UgbGV0dGVycyBhcmVcbi8vICAgYmVsb3cgdGhlaXIgbG93ZXJjYXNlIGVxdWl2YWxlbnRzLlxuLy9cbi8vIC0gVGhlIHByb3BlcnR5IG5hbWUgaXMgdGhlIGxldHRlciBwcmVzc2VkIGFmdGVyIHRoZSBkaWFjcml0aWMuXG4vLyAgIFRoZSBwcm9wZXJ0eSB2YWx1ZSBpcyB0aGUgbGV0dGVyIHRoaXMga2V5LWNvbWJvIHdpbGwgZ2VuZXJhdGUuXG4vL1xuLy8gLSBOb3RlIHRoYXQgaWYgeW91IGhhdmUgY3JlYXRlZCBhIG5ldyBrZXlib2FyZCBsYXlvdXQgYW5kIHdhbnRcbi8vICAgaXQgaW5jbHVkZWQgaW4gdGhlIGRpc3RyaWJ1dGVkIHNjcmlwdCwgUExFQVNFIFRFTEwgTUUgaWYgeW91XG4vLyAgIGhhdmUgYWRkZWQgYWRkaXRpb25hbCBkZWFkIGtleXMgdG8gdGhlIG9uZXMgYmVsb3cuXG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUtleWJvYXJkRGVhZGtleXMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWRlYWRrZXlzLmludGVyZmFjZSc7XG5cbmNvbnN0IE1BVF9LRVlCT0FSRF9ERUFES0VZUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJS2V5Ym9hcmREZWFka2V5cz4oJ2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJyk7XG5jb25zdCBrZXlib2FyZERlYWRrZXlzOiBJS2V5Ym9hcmREZWFka2V5cyA9IHtcbiAgJ1wiJzoge1xuICAgICdhJzogJ1xcdTAwZTQnLFxuICAgICdlJzogJ1xcdTAwZWInLFxuICAgICdpJzogJ1xcdTAwZWYnLFxuICAgICdvJzogJ1xcdTAwZjYnLFxuICAgICd1JzogJ1xcdTAwZmMnLFxuICAgICd5JzogJ1xcdTAwZmYnLFxuICAgICdcXHUwM2I5JzogJ1xcdTAzY2EnLFxuICAgICdcXHUwM2M1JzogJ1xcdTAzY2InLFxuICAgICdcXHUwMTZCJzogJ1xcdTAxRDYnLFxuICAgICdcXHUwMEZBJzogJ1xcdTAxRDgnLFxuICAgICdcXHUwMUQ0JzogJ1xcdTAxREEnLFxuICAgICdcXHUwMEY5JzogJ1xcdTAxREMnLFxuICAgICdBJzogJ1xcdTAwYzQnLFxuICAgICdFJzogJ1xcdTAwY2InLFxuICAgICdJJzogJ1xcdTAwY2YnLFxuICAgICdPJzogJ1xcdTAwZDYnLFxuICAgICdVJzogJ1xcdTAwZGMnLFxuICAgICdZJzogJ1xcdTAxNzgnLFxuICAgICdcXHUwMzk5JzogJ1xcdTAzYWEnLFxuICAgICdcXHUwM2E1JzogJ1xcdTAzYWInLFxuICAgICdcXHUwMTZBJzogJ1xcdTAxRDUnLFxuICAgICdcXHUwMERBJzogJ1xcdTAxRDcnLFxuICAgICdcXHUwMUQzJzogJ1xcdTAxRDknLFxuICAgICdcXHUwMEQ5JzogJ1xcdTAxREInLFxuICAgICdcXHUzMDRiJzogJ1xcdTMwNGMnLFxuICAgICdcXHUzMDRkJzogJ1xcdTMwNGUnLFxuICAgICdcXHUzMDRmJzogJ1xcdTMwNTAnLFxuICAgICdcXHUzMDUxJzogJ1xcdTMwNTInLFxuICAgICdcXHUzMDUzJzogJ1xcdTMwNTQnLFxuICAgICdcXHUzMDVmJzogJ1xcdTMwNjAnLFxuICAgICdcXHUzMDYxJzogJ1xcdTMwNjInLFxuICAgICdcXHUzMDY0JzogJ1xcdTMwNjUnLFxuICAgICdcXHUzMDY2JzogJ1xcdTMwNjcnLFxuICAgICdcXHUzMDY4JzogJ1xcdTMwNjknLFxuICAgICdcXHUzMDU1JzogJ1xcdTMwNTYnLFxuICAgICdcXHUzMDU3JzogJ1xcdTMwNTgnLFxuICAgICdcXHUzMDU5JzogJ1xcdTMwNWEnLFxuICAgICdcXHUzMDViJzogJ1xcdTMwNWMnLFxuICAgICdcXHUzMDVkJzogJ1xcdTMwNWUnLFxuICAgICdcXHUzMDZmJzogJ1xcdTMwNzAnLFxuICAgICdcXHUzMDcyJzogJ1xcdTMwNzMnLFxuICAgICdcXHUzMDc1JzogJ1xcdTMwNzYnLFxuICAgICdcXHUzMDc4JzogJ1xcdTMwNzknLFxuICAgICdcXHUzMDdiJzogJ1xcdTMwN2MnLFxuICAgICdcXHUzMGFiJzogJ1xcdTMwYWMnLFxuICAgICdcXHUzMGFkJzogJ1xcdTMwYWUnLFxuICAgICdcXHUzMGFmJzogJ1xcdTMwYjAnLFxuICAgICdcXHUzMGIxJzogJ1xcdTMwYjInLFxuICAgICdcXHUzMGIzJzogJ1xcdTMwYjQnLFxuICAgICdcXHUzMGJmJzogJ1xcdTMwYzAnLFxuICAgICdcXHUzMGMxJzogJ1xcdTMwYzInLFxuICAgICdcXHUzMGM0JzogJ1xcdTMwYzUnLFxuICAgICdcXHUzMGM2JzogJ1xcdTMwYzcnLFxuICAgICdcXHUzMGM4JzogJ1xcdTMwYzknLFxuICAgICdcXHUzMGI1JzogJ1xcdTMwYjYnLFxuICAgICdcXHUzMGI3JzogJ1xcdTMwYjgnLFxuICAgICdcXHUzMGI5JzogJ1xcdTMwYmEnLFxuICAgICdcXHUzMGJiJzogJ1xcdTMwYmMnLFxuICAgICdcXHUzMGJkJzogJ1xcdTMwYmUnLFxuICAgICdcXHUzMGNmJzogJ1xcdTMwZDAnLFxuICAgICdcXHUzMGQyJzogJ1xcdTMwZDMnLFxuICAgICdcXHUzMGQ1JzogJ1xcdTMwZDYnLFxuICAgICdcXHUzMGQ4JzogJ1xcdTMwZDknLFxuICAgICdcXHUzMGRiJzogJ1xcdTMwZGMnXG4gIH0sXG4gICd+JzogeyAvLyBUaWxkZSAvIFN0cm9rZVxuICAgICdhJzogJ1xcdTAwZTMnLCAnbCc6ICdcXHUwMTQyJywgJ24nOiAnXFx1MDBmMScsICdvJzogJ1xcdTAwZjUnLFxuICAgICdBJzogJ1xcdTAwYzMnLCAnTCc6ICdcXHUwMTQxJywgJ04nOiAnXFx1MDBkMScsICdPJzogJ1xcdTAwZDUnXG4gIH0sXG4gICdeJzogeyAvLyBDaXJjdW1mbGV4XG4gICAgJ2EnOiAnXFx1MDBlMicsICdlJzogJ1xcdTAwZWEnLCAnaSc6ICdcXHUwMGVlJywgJ28nOiAnXFx1MDBmNCcsICd1JzogJ1xcdTAwZmInLCAndyc6ICdcXHUwMTc1JywgJ3knOiAnXFx1MDE3NycsXG4gICAgJ0EnOiAnXFx1MDBjMicsICdFJzogJ1xcdTAwY2EnLCAnSSc6ICdcXHUwMGNlJywgJ08nOiAnXFx1MDBkNCcsICdVJzogJ1xcdTAwZGInLCAnVyc6ICdcXHUwMTc0JywgJ1knOiAnXFx1MDE3NidcbiAgfSxcbiAgJ1xcdTAyYzcnOiB7IC8vIEJhbHRpYyBjYXJvblxuICAgICdjJzogJ1xcdTAxMEQnLFxuICAgICdkJzogJ1xcdTAxMGYnLFxuICAgICdlJzogJ1xcdTAxMWInLFxuICAgICdzJzogJ1xcdTAxNjEnLFxuICAgICdsJzogJ1xcdTAxM2UnLFxuICAgICduJzogJ1xcdTAxNDgnLFxuICAgICdyJzogJ1xcdTAxNTknLFxuICAgICd0JzogJ1xcdTAxNjUnLFxuICAgICd1JzogJ1xcdTAxZDQnLFxuICAgICd6JzogJ1xcdTAxN0UnLFxuICAgICdcXHUwMGZjJzogJ1xcdTAxZGEnLFxuICAgICdDJzogJ1xcdTAxMEMnLFxuICAgICdEJzogJ1xcdTAxMGUnLFxuICAgICdFJzogJ1xcdTAxMWEnLFxuICAgICdTJzogJ1xcdTAxNjAnLFxuICAgICdMJzogJ1xcdTAxM2QnLFxuICAgICdOJzogJ1xcdTAxNDcnLFxuICAgICdSJzogJ1xcdTAxNTgnLFxuICAgICdUJzogJ1xcdTAxNjQnLFxuICAgICdVJzogJ1xcdTAxZDMnLFxuICAgICdaJzogJ1xcdTAxN0QnLFxuICAgICdcXHUwMGRjJzogJ1xcdTAxZDknXG4gIH0sXG4gICdcXHUwMmQ4JzogeyAvLyBSb21hbmlhbiBhbmQgVHVya2lzaCBicmV2ZVxuICAgICdhJzogJ1xcdTAxMDMnLCAnZyc6ICdcXHUwMTFmJyxcbiAgICAnQSc6ICdcXHUwMTAyJywgJ0cnOiAnXFx1MDExZSdcbiAgfSxcbiAgJy0nOiB7IC8vIE1hY3JvblxuICAgICdhJzogJ1xcdTAxMDEnLFxuICAgICdlJzogJ1xcdTAxMTMnLFxuICAgICdpJzogJ1xcdTAxMmInLFxuICAgICdvJzogJ1xcdTAxNGQnLFxuICAgICd1JzogJ1xcdTAxNkInLFxuICAgICd5JzogJ1xcdTAyMzMnLFxuICAgICdcXHUwMGZjJzogJ1xcdTAxZDYnLFxuICAgICdBJzogJ1xcdTAxMDAnLFxuICAgICdFJzogJ1xcdTAxMTInLFxuICAgICdJJzogJ1xcdTAxMmEnLFxuICAgICdPJzogJ1xcdTAxNGMnLFxuICAgICdVJzogJ1xcdTAxNkEnLFxuICAgICdZJzogJ1xcdTAyMzInLFxuICAgICdcXHUwMGRjJzogJ1xcdTAxZDUnXG4gIH0sXG4gICdgJzogeyAvLyBHcmF2ZVxuICAgICdhJzogJ1xcdTAwZTAnLCAnZSc6ICdcXHUwMGU4JywgJ2knOiAnXFx1MDBlYycsICdvJzogJ1xcdTAwZjInLCAndSc6ICdcXHUwMGY5JywgJ1xcdTAwZmMnOiAnXFx1MDFkYycsXG4gICAgJ0EnOiAnXFx1MDBjMCcsICdFJzogJ1xcdTAwYzgnLCAnSSc6ICdcXHUwMGNjJywgJ08nOiAnXFx1MDBkMicsICdVJzogJ1xcdTAwZDknLCAnXFx1MDBkYyc6ICdcXHUwMWRiJ1xuICB9LFxuICAnXFwnJzogeyAvLyBBY3V0ZSAvIEdyZWVrIFRvbm9zXG4gICAgJ2EnOiAnXFx1MDBlMScsXG4gICAgJ2UnOiAnXFx1MDBlOScsXG4gICAgJ2knOiAnXFx1MDBlZCcsXG4gICAgJ28nOiAnXFx1MDBmMycsXG4gICAgJ3UnOiAnXFx1MDBmYScsXG4gICAgJ3knOiAnXFx1MDBmZCcsXG4gICAgJ1xcdTAzYjEnOiAnXFx1MDNhYycsXG4gICAgJ1xcdTAzYjUnOiAnXFx1MDNhZCcsXG4gICAgJ1xcdTAzYjcnOiAnXFx1MDNhZScsXG4gICAgJ1xcdTAzYjknOiAnXFx1MDNhZicsXG4gICAgJ1xcdTAzYmYnOiAnXFx1MDNjYycsXG4gICAgJ1xcdTAzYzUnOiAnXFx1MDNjZCcsXG4gICAgJ1xcdTAzYzknOiAnXFx1MDNjZScsXG4gICAgJ1xcdTAwZmMnOiAnXFx1MDFkOCcsXG4gICAgJ0EnOiAnXFx1MDBjMScsXG4gICAgJ0UnOiAnXFx1MDBjOScsXG4gICAgJ0knOiAnXFx1MDBjZCcsXG4gICAgJ08nOiAnXFx1MDBkMycsXG4gICAgJ1UnOiAnXFx1MDBkYScsXG4gICAgJ1knOiAnXFx1MDBkZCcsXG4gICAgJ1xcdTAzOTEnOiAnXFx1MDM4NicsXG4gICAgJ1xcdTAzOTUnOiAnXFx1MDM4OCcsXG4gICAgJ1xcdTAzOTcnOiAnXFx1MDM4OScsXG4gICAgJ1xcdTAzOTknOiAnXFx1MDM4YScsXG4gICAgJ1xcdTAzOWYnOiAnXFx1MDM4YycsXG4gICAgJ1xcdTAzYTUnOiAnXFx1MDM4ZScsXG4gICAgJ1xcdTAzYTknOiAnXFx1MDM4ZicsXG4gICAgJ1xcdTAwZGMnOiAnXFx1MDFkNydcbiAgfSxcbiAgJ1xcdTAyZGQnOiB7Ly8gSHVuZ2FyaWFuIERvdWJsZSBBY3V0ZSBBY2NlbnRcbiAgICAnbyc6ICdcXHUwMTUxJywgJ3UnOiAnXFx1MDE3MScsXG4gICAgJ08nOiAnXFx1MDE1MCcsICdVJzogJ1xcdTAxNzAnXG4gIH0sXG4gICdcXHUwMzg1JzogeyAvLyBHcmVlayBEaWFseXRpa2EgKyBUb25vc1xuICAgICdcXHUwM2I5JzogJ1xcdTAzOTAnLCAnXFx1MDNjNSc6ICdcXHUwM2IwJ1xuICB9LFxuICAnXFx1MDBiMCc6IHsgLy8gUmluZ1xuICAgICdhJzogJ1xcdTAwZTUnLCAndSc6ICdcXHUwMTZmJyxcbiAgICAnQSc6ICdcXHUwMGM1JywgJ1UnOiAnXFx1MDE2ZSdcbiAgfSxcbiAgJ1xcdTAyREInOiB7IC8vIE9nb25la1xuICAgICdhJzogJ1xcdTAxMDYnLCAnZSc6ICdcXHUwMTE5JywgJ2knOiAnXFx1MDEyZicsICdvJzogJ1xcdTAxZWInLCAndSc6ICdcXHUwMTczJywgJ3knOiAnXFx1MDE3NycsXG4gICAgJ0EnOiAnXFx1MDEwNScsICdFJzogJ1xcdTAxMTgnLCAnSSc6ICdcXHUwMTJlJywgJ08nOiAnXFx1MDFlYScsICdVJzogJ1xcdTAxNzInLCAnWSc6ICdcXHUwMTc2J1xuICB9LFxuICAnXFx1MDJEOSc6IHsgLy8gRG90LWFib3ZlXG4gICAgJ2MnOiAnXFx1MDEwQicsICdlJzogJ1xcdTAxMTcnLCAnZyc6ICdcXHUwMTIxJywgJ3onOiAnXFx1MDE3QycsXG4gICAgJ0MnOiAnXFx1MDEwQScsICdFJzogJ1xcdTAxMTYnLCAnRyc6ICdcXHUwMTIwJywgJ1onOiAnXFx1MDE3QidcbiAgfSxcbiAgJ1xcdTAwQjgnOiB7IC8vIENlZGlsbGFcbiAgICAnYyc6ICdcXHUwMGU3JywgJ3MnOiAnXFx1MDE1RicsXG4gICAgJ0MnOiAnXFx1MDBjNycsICdTJzogJ1xcdTAxNUUnXG4gIH0sXG4gIC8qJywnOiB7IC8vIENvbW1hXG4gICAncyc6ICh0aGlzLlZLSV9pc0lFbHQ4KSA/ICdcXHUwMTVGJyA6ICdcXHUwMjE5JywgJ3QnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE2MycgOiAnXFx1MDIxQicsXG4gICAnUyc6ICh0aGlzLlZLSV9pc0lFbHQ4KSA/ICdcXHUwMTVFJyA6ICdcXHUwMjE4JywgJ1QnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE2MicgOiAnXFx1MDIxQSdcbiAgIH0sKi9cbiAgJ1xcdTMwMDInOiB7IC8vIEhpcmFnYW5hL0thdGFrYW5hIFBvaW50XG4gICAgJ1xcdTMwNmYnOiAnXFx1MzA3MScsICdcXHUzMDcyJzogJ1xcdTMwNzQnLCAnXFx1MzA3NSc6ICdcXHUzMDc3JywgJ1xcdTMwNzgnOiAnXFx1MzA3YScsICdcXHUzMDdiJzogJ1xcdTMwN2QnLFxuICAgICdcXHUzMGNmJzogJ1xcdTMwZDEnLCAnXFx1MzBkMic6ICdcXHUzMGQ0JywgJ1xcdTMwZDUnOiAnXFx1MzBkNycsICdcXHUzMGQ4JzogJ1xcdTMwZGEnLCAnXFx1MzBkYic6ICdcXHUzMGRkJ1xuICB9XG59O1xuXG4vLyBhbGlhc2VzXG4vLyBNYWNyb25cbmtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYWYnXSA9IGtleWJvYXJkRGVhZGtleXNbJy0nXTtcbi8vIFVtbGF1dCAvIERpYWVyZXNpcyAvIEdyZWVrIERpYWx5dGlrYSAvIEhpcmFnYW5hL0thdGFrYW5hIFZvaWNlZCBTb3VuZCBNYXJrXG5rZXlib2FyZERlYWRrZXlzWydcXHUwMGE4J10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUzMDlCJ10gPSBrZXlib2FyZERlYWRrZXlzWydcIiddO1xuLy8gQWN1dGUgLyBHcmVlayBUb25vc1xua2V5Ym9hcmREZWFka2V5c1snXFx1MDBiNCddID0ga2V5Ym9hcmREZWFka2V5c1snXFx1MDM4NCddID0ga2V5Ym9hcmREZWFka2V5c1snXFwnJ107XG4vLyBSaW5nXG5rZXlib2FyZERlYWRrZXlzWydcXHUwMGJhJ10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUwMGIwJ107XG5rZXlib2FyZERlYWRrZXlzWydcXHUyMDFhJ10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUwMEI4J107XG5cbmV4cG9ydCB7IElLZXlib2FyZERlYWRrZXlzLCBNQVRfS0VZQk9BUkRfREVBREtFWVMsIGtleWJvYXJkRGVhZGtleXMgfTtcbiJdfQ==

@@ -10,2 +10,2 @@ import { KeyboardClassKey } from '../enums/keyboard-class-key.enum';

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3BFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBbUI7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBQztJQUN0RCxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO0lBQ3RELENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7SUFDckQsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRTtJQUN2RCxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtJQUN2QyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRTtDQUNqRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5Ym9hcmRDbGFzc0tleSB9IGZyb20gJy4uL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcclxuaW1wb3J0IHsgSUtleWJvYXJkSWNvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgY29uc3QgS0VZQk9BUkRfSUNPTlM6IElLZXlib2FyZEljb25zID0ge1xyXG4gIFtLZXlib2FyZENsYXNzS2V5LkJrc3BdOiB7IG5hbWU6ICdrZXlib2FyZF9iYWNrc3BhY2UnfSxcclxuICBbS2V5Ym9hcmRDbGFzc0tleS5DYXBzXTogeyBuYW1lOiAna2V5Ym9hcmRfY2Fwc2xvY2snIH0sXHJcbiAgW0tleWJvYXJkQ2xhc3NLZXkuRW50ZXJdOiB7IG5hbWU6ICdrZXlib2FyZF9yZXR1cm4nIH0sXHJcbiAgW0tleWJvYXJkQ2xhc3NLZXkuU2hpZnRdOiB7IG5hbWU6ICdrZXlib2FyZF9hcnJvd191cCcgfSxcclxuICBbS2V5Ym9hcmRDbGFzc0tleS5TcGFjZV06IHsgbmFtZTogJyAnIH0sXHJcbiAgW0tleWJvYXJkQ2xhc3NLZXkuVGFiXTogeyBuYW1lOiAna2V5Ym9hcmRfdGFiJyB9XHJcbn07XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBR3BFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBbUI7SUFDNUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBQztJQUN0RCxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO0lBQ3RELENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7SUFDckQsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRTtJQUN2RCxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtJQUN2QyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRTtDQUNqRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5Ym9hcmRDbGFzc0tleSB9IGZyb20gJy4uL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcbmltcG9ydCB7IElLZXlib2FyZEljb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgS0VZQk9BUkRfSUNPTlM6IElLZXlib2FyZEljb25zID0ge1xuICBbS2V5Ym9hcmRDbGFzc0tleS5Ca3NwXTogeyBuYW1lOiAna2V5Ym9hcmRfYmFja3NwYWNlJ30sXG4gIFtLZXlib2FyZENsYXNzS2V5LkNhcHNdOiB7IG5hbWU6ICdrZXlib2FyZF9jYXBzbG9jaycgfSxcbiAgW0tleWJvYXJkQ2xhc3NLZXkuRW50ZXJdOiB7IG5hbWU6ICdrZXlib2FyZF9yZXR1cm4nIH0sXG4gIFtLZXlib2FyZENsYXNzS2V5LlNoaWZ0XTogeyBuYW1lOiAna2V5Ym9hcmRfYXJyb3dfdXAnIH0sXG4gIFtLZXlib2FyZENsYXNzS2V5LlNwYWNlXTogeyBuYW1lOiAnICcgfSxcbiAgW0tleWJvYXJkQ2xhc3NLZXkuVGFiXTogeyBuYW1lOiAna2V5Ym9hcmRfdGFiJyB9XG59O1xuIl19

@@ -19,2 +19,2 @@ export class MatKeyboardConfig {

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sT0FBTyxpQkFBaUI7SUFBOUI7UUFDRSxzRUFBc0U7UUFDdEUsZUFBVSxHQUF3QixXQUFXLENBQUM7UUFFOUMsMERBQTBEO1FBQzFELHdCQUFtQixHQUFJLEVBQUUsQ0FBQztRQUUxQixxRUFBcUU7UUFDckUscUJBQWdCLEdBQXNCLElBQUksQ0FBQztRQUUzQywwR0FBMEc7UUFDMUcsYUFBUSxHQUFJLENBQUMsQ0FBQztRQUVkLDZCQUE2QjtRQUM3QixjQUFTLEdBQUksSUFBSSxDQUFDO1FBRWxCLDRCQUE0QjtRQUM1QixZQUFPLEdBQUksS0FBSyxDQUFDO1FBS2pCLDRCQUE0QjtRQUM1QixnQkFBVyxHQUFvQixFQUFFLENBQUM7SUFDcEMsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJpYUxpdmVQb2xpdGVuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xyXG5pbXBvcnQgeyBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSUtleWJvYXJkSWNvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRDb25maWcge1xyXG4gIC8qKiBUaGUgcG9saXRlbmVzcyBsZXZlbCBmb3IgdGhlIE1hdEFyaWFMaXZlQW5ub3VuY2VyIGFubm91bmNlbWVudC4gKi9cclxuICBwb2xpdGVuZXNzPzogQXJpYUxpdmVQb2xpdGVuZXNzID0gJ2Fzc2VydGl2ZSc7XHJcblxyXG4gIC8qKiBNZXNzYWdlIHRvIGJlIGFubm91bmNlZCBieSB0aGUgTWF0QXJpYUxpdmVBbm5vdW5jZXIgKi9cclxuICBhbm5vdW5jZW1lbnRNZXNzYWdlPyA9ICcnO1xyXG5cclxuICAvKiogVGhlIHZpZXcgY29udGFpbmVyIHRvIHBsYWNlIHRoZSBvdmVybGF5IGZvciB0aGUga2V5Ym9hcmQgaW50by4gKi9cclxuICB2aWV3Q29udGFpbmVyUmVmPzogVmlld0NvbnRhaW5lclJlZiA9IG51bGw7XHJcblxyXG4gIC8qKiBUaGUgbGVuZ3RoIG9mIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRvIHdhaXQgYmVmb3JlIGF1dG9tYXRpY2FsbHkgZGlzbWlzc2luZyB0aGUga2V5Ym9hcmQgYWZ0ZXIgYmx1ci4gKi9cclxuICBkdXJhdGlvbj8gPSAwO1xyXG5cclxuICAvKiogRW5hYmxlIGEgZGFyayBrZXlib2FyZCAqL1xyXG4gIGRhcmtUaGVtZT8gPSBudWxsO1xyXG5cclxuICAvKiogRW5hYmxlIHRoZSBkZWJ1ZyB2aWV3ICovXHJcbiAgaXNEZWJ1Zz8gPSBmYWxzZTtcclxuXHJcbiAgLyoqIEVuYWJsZSB0aGUgZGVidWcgdmlldyAqL1xyXG4gIG5nQ29udHJvbD86IE5nQ29udHJvbDtcclxuXHJcbiAgLyoqIEN1c3RvbSBpY29uIG92ZXJyaWRlcyAqL1xyXG4gIGN1c3RvbUljb25zPzogSUtleWJvYXJkSWNvbnMgPSB7fTtcclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sT0FBTyxpQkFBaUI7SUFBOUI7UUFDRSxzRUFBc0U7UUFDdEUsZUFBVSxHQUF3QixXQUFXLENBQUM7UUFFOUMsMERBQTBEO1FBQzFELHdCQUFtQixHQUFJLEVBQUUsQ0FBQztRQUUxQixxRUFBcUU7UUFDckUscUJBQWdCLEdBQXNCLElBQUksQ0FBQztRQUUzQywwR0FBMEc7UUFDMUcsYUFBUSxHQUFJLENBQUMsQ0FBQztRQUVkLDZCQUE2QjtRQUM3QixjQUFTLEdBQUksSUFBSSxDQUFDO1FBRWxCLDRCQUE0QjtRQUM1QixZQUFPLEdBQUksS0FBSyxDQUFDO1FBS2pCLDRCQUE0QjtRQUM1QixnQkFBVyxHQUFvQixFQUFFLENBQUM7SUFDcEMsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJpYUxpdmVQb2xpdGVuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSUtleWJvYXJkSWNvbnMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZENvbmZpZyB7XG4gIC8qKiBUaGUgcG9saXRlbmVzcyBsZXZlbCBmb3IgdGhlIE1hdEFyaWFMaXZlQW5ub3VuY2VyIGFubm91bmNlbWVudC4gKi9cbiAgcG9saXRlbmVzcz86IEFyaWFMaXZlUG9saXRlbmVzcyA9ICdhc3NlcnRpdmUnO1xuXG4gIC8qKiBNZXNzYWdlIHRvIGJlIGFubm91bmNlZCBieSB0aGUgTWF0QXJpYUxpdmVBbm5vdW5jZXIgKi9cbiAgYW5ub3VuY2VtZW50TWVzc2FnZT8gPSAnJztcblxuICAvKiogVGhlIHZpZXcgY29udGFpbmVyIHRvIHBsYWNlIHRoZSBvdmVybGF5IGZvciB0aGUga2V5Ym9hcmQgaW50by4gKi9cbiAgdmlld0NvbnRhaW5lclJlZj86IFZpZXdDb250YWluZXJSZWYgPSBudWxsO1xuXG4gIC8qKiBUaGUgbGVuZ3RoIG9mIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRvIHdhaXQgYmVmb3JlIGF1dG9tYXRpY2FsbHkgZGlzbWlzc2luZyB0aGUga2V5Ym9hcmQgYWZ0ZXIgYmx1ci4gKi9cbiAgZHVyYXRpb24/ID0gMDtcblxuICAvKiogRW5hYmxlIGEgZGFyayBrZXlib2FyZCAqL1xuICBkYXJrVGhlbWU/ID0gbnVsbDtcblxuICAvKiogRW5hYmxlIHRoZSBkZWJ1ZyB2aWV3ICovXG4gIGlzRGVidWc/ID0gZmFsc2U7XG5cbiAgLyoqIEVuYWJsZSB0aGUgZGVidWcgdmlldyAqL1xuICBuZ0NvbnRyb2w/OiBOZ0NvbnRyb2w7XG5cbiAgLyoqIEN1c3RvbSBpY29uIG92ZXJyaWRlcyAqL1xuICBjdXN0b21JY29ucz86IElLZXlib2FyZEljb25zID0ge307XG59XG4iXX0=

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { Directive, ElementRef, EventEmitter, HostListener, Input, OnDestroy, Optional, Output, Self } from '@angular/core';

@@ -47,39 +47,39 @@ import { NgControl } from '@angular/forms';

];
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "matKeyboard", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "darkTheme", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "duration", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "isDebug", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "enterClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "capsClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "altClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "shiftClick", void 0);
tslib_1.__decorate([
__decorate([
HostListener('focus', ['$event'])
], MatKeyboardDirective.prototype, "showKeyboard", null);
tslib_1.__decorate([
__decorate([
HostListener('blur', ['$event'])
], MatKeyboardDirective.prototype, "hideKeyboard", null);
MatKeyboardDirective = tslib_1.__decorate([
MatKeyboardDirective = __decorate([
Directive({
selector: 'input[matKeyboard], textarea[matKeyboard]'
}),
tslib_1.__param(2, Optional()), tslib_1.__param(2, Self())
__param(2, Optional()), __param(2, Self())
], MatKeyboardDirective);
export { MatKeyboardDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImRpcmVjdGl2ZXMva2V5Ym9hcmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBS2xFLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBb0IvQixZQUFvQixXQUF1QixFQUN2QixnQkFBb0MsRUFDaEIsUUFBb0I7UUFGeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBVmxELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUxRCxjQUFTLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFekQsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXhELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUlMLENBQUM7SUFFaEUsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBR00sWUFBWTtRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMvRCxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztTQUN0QixDQUFDLENBQUM7UUFFSCw4QkFBOEI7UUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTlELG1EQUFtRDtRQUNuRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakU7UUFFRCxrQkFBa0I7UUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUdNLFlBQVk7UUFDakIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDN0I7SUFDSCxDQUFDO0NBRUYsQ0FBQTs7WUF0Q2tDLFVBQVU7WUFDTCxrQkFBa0I7WUFDTCxTQUFTLHVCQUEvQyxRQUFRLFlBQUksSUFBSTs7QUFsQnBCO0lBQVIsS0FBSyxFQUFFO3lEQUFxQjtBQUVwQjtJQUFSLEtBQUssRUFBRTt1REFBb0I7QUFFbkI7SUFBUixLQUFLLEVBQUU7c0RBQWtCO0FBRWpCO0lBQVIsS0FBSyxFQUFFO3FEQUFrQjtBQUVoQjtJQUFULE1BQU0sRUFBRTt3REFBMkQ7QUFFMUQ7SUFBVCxNQUFNLEVBQUU7dURBQTBEO0FBRXpEO0lBQVQsTUFBTSxFQUFFO3NEQUF5RDtBQUV4RDtJQUFULE1BQU0sRUFBRTt3REFBMkQ7QUFXcEU7SUFEQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7d0RBcUJqQztBQUdEO0lBREMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3dEQUtoQztBQXhEVSxvQkFBb0I7SUFIaEMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLDJDQUEyQztLQUN0RCxDQUFDO0lBdUJhLG1CQUFBLFFBQVEsRUFBRSxDQUFBLEVBQUUsbUJBQUEsSUFBSSxFQUFFLENBQUE7R0F0QnBCLG9CQUFvQixDQTBEaEM7U0ExRFksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwsIE91dHB1dCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBNYXRLZXlib2FyZFJlZiB9IGZyb20gJy4uL2NsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdpbnB1dFttYXRLZXlib2FyZF0sIHRleHRhcmVhW21hdEtleWJvYXJkXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgcHJpdmF0ZSBfa2V5Ym9hcmRSZWY6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PjtcclxuXHJcbiAgQElucHV0KCkgbWF0S2V5Ym9hcmQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgZGFya1RoZW1lOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKSBkdXJhdGlvbjogbnVtYmVyO1xyXG5cclxuICBASW5wdXQoKSBpc0RlYnVnOiBib29sZWFuO1xyXG5cclxuICBAT3V0cHV0KCkgZW50ZXJDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KCkgY2Fwc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBhbHRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBAT3V0cHV0KCkgc2hpZnRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgX2tleWJvYXJkU2VydmljZTogTWF0S2V5Ym9hcmRTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHJpdmF0ZSBfY29udHJvbD86IE5nQ29udHJvbCkge31cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmhpZGVLZXlib2FyZCgpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBzaG93S2V5Ym9hcmQoKSB7XHJcbiAgICB0aGlzLl9rZXlib2FyZFJlZiA9IHRoaXMuX2tleWJvYXJkU2VydmljZS5vcGVuKHRoaXMubWF0S2V5Ym9hcmQsIHtcclxuICAgICAgZGFya1RoZW1lOiB0aGlzLmRhcmtUaGVtZSxcclxuICAgICAgZHVyYXRpb246IHRoaXMuZHVyYXRpb24sXHJcbiAgICAgIGlzRGVidWc6IHRoaXMuaXNEZWJ1Z1xyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gcmVmZXJlbmNlIHRoZSBpbnB1dCBlbGVtZW50XHJcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5zZXRJbnB1dEluc3RhbmNlKHRoaXMuX2VsZW1lbnRSZWYpO1xyXG5cclxuICAgIC8vIHNldCBjb250cm9sIGlmIGdpdmVuLCBjYXN0IHRvIHNtdGguIG5vbi1hYnN0cmFjdFxyXG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcclxuICAgICAgdGhpcy5fa2V5Ym9hcmRSZWYuaW5zdGFuY2UuYXR0YWNoQ29udHJvbCh0aGlzLl9jb250cm9sLmNvbnRyb2wpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGNvbm5lY3Qgb3V0cHV0c1xyXG4gICAgdGhpcy5fa2V5Ym9hcmRSZWYuaW5zdGFuY2UuZW50ZXJDbGljay5zdWJzY3JpYmUoKCkgPT4gdGhpcy5lbnRlckNsaWNrLm5leHQoKSk7XHJcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5jYXBzQ2xpY2suc3Vic2NyaWJlKCgpID0+IHRoaXMuY2Fwc0NsaWNrLm5leHQoKSk7XHJcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5hbHRDbGljay5zdWJzY3JpYmUoKCkgPT4gdGhpcy5hbHRDbGljay5uZXh0KCkpO1xyXG4gICAgdGhpcy5fa2V5Ym9hcmRSZWYuaW5zdGFuY2Uuc2hpZnRDbGljay5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zaGlmdENsaWNrLm5leHQoKSk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgaGlkZUtleWJvYXJkKCkge1xyXG4gICAgaWYgKHRoaXMuX2tleWJvYXJkUmVmKSB7XHJcbiAgICAgIHRoaXMuX2tleWJvYXJkUmVmLmRpc21pc3MoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImRpcmVjdGl2ZXMva2V5Ym9hcmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBS2xFLElBQWEsb0JBQW9CLEdBQWpDLE1BQWEsb0JBQW9CO0lBb0IvQixZQUFvQixXQUF1QixFQUN2QixnQkFBb0MsRUFDaEIsUUFBb0I7UUFGeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBVmxELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUxRCxjQUFTLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFekQsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXhELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUlMLENBQUM7SUFFaEUsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBR00sWUFBWTtRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMvRCxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztTQUN0QixDQUFDLENBQUM7UUFFSCw4QkFBOEI7UUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRTlELG1EQUFtRDtRQUNuRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDakU7UUFFRCxrQkFBa0I7UUFDbEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUdNLFlBQVk7UUFDakIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDN0I7SUFDSCxDQUFDO0NBRUYsQ0FBQTs7WUF0Q2tDLFVBQVU7WUFDTCxrQkFBa0I7WUFDTCxTQUFTLHVCQUEvQyxRQUFRLFlBQUksSUFBSTs7QUFsQnBCO0lBQVIsS0FBSyxFQUFFO3lEQUFxQjtBQUVwQjtJQUFSLEtBQUssRUFBRTt1REFBb0I7QUFFbkI7SUFBUixLQUFLLEVBQUU7c0RBQWtCO0FBRWpCO0lBQVIsS0FBSyxFQUFFO3FEQUFrQjtBQUVoQjtJQUFULE1BQU0sRUFBRTt3REFBMkQ7QUFFMUQ7SUFBVCxNQUFNLEVBQUU7dURBQTBEO0FBRXpEO0lBQVQsTUFBTSxFQUFFO3NEQUF5RDtBQUV4RDtJQUFULE1BQU0sRUFBRTt3REFBMkQ7QUFXcEU7SUFEQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7d0RBcUJqQztBQUdEO0lBREMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDO3dEQUtoQztBQXhEVSxvQkFBb0I7SUFIaEMsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLDJDQUEyQztLQUN0RCxDQUFDO0lBdUJhLFdBQUEsUUFBUSxFQUFFLENBQUEsRUFBRSxXQUFBLElBQUksRUFBRSxDQUFBO0dBdEJwQixvQkFBb0IsQ0EwRGhDO1NBMURZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBPdXRwdXQsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRSZWYgfSBmcm9tICcuLi9jbGFzc2VzL2tleWJvYXJkLXJlZi5jbGFzcyc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdpbnB1dFttYXRLZXlib2FyZF0sIHRleHRhcmVhW21hdEtleWJvYXJkXSdcbn0pXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX2tleWJvYXJkUmVmOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD47XG5cbiAgQElucHV0KCkgbWF0S2V5Ym9hcmQ6IHN0cmluZztcblxuICBASW5wdXQoKSBkYXJrVGhlbWU6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgZHVyYXRpb246IG51bWJlcjtcblxuICBASW5wdXQoKSBpc0RlYnVnOiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSBlbnRlckNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpIGNhcHNDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKSBhbHRDbGljazogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKSBzaGlmdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfa2V5Ym9hcmRTZXJ2aWNlOiBNYXRLZXlib2FyZFNlcnZpY2UsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHJpdmF0ZSBfY29udHJvbD86IE5nQ29udHJvbCkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmhpZGVLZXlib2FyZCgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnLCBbJyRldmVudCddKVxuICBwdWJsaWMgc2hvd0tleWJvYXJkKCkge1xuICAgIHRoaXMuX2tleWJvYXJkUmVmID0gdGhpcy5fa2V5Ym9hcmRTZXJ2aWNlLm9wZW4odGhpcy5tYXRLZXlib2FyZCwge1xuICAgICAgZGFya1RoZW1lOiB0aGlzLmRhcmtUaGVtZSxcbiAgICAgIGR1cmF0aW9uOiB0aGlzLmR1cmF0aW9uLFxuICAgICAgaXNEZWJ1ZzogdGhpcy5pc0RlYnVnXG4gICAgfSk7XG5cbiAgICAvLyByZWZlcmVuY2UgdGhlIGlucHV0IGVsZW1lbnRcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5zZXRJbnB1dEluc3RhbmNlKHRoaXMuX2VsZW1lbnRSZWYpO1xuXG4gICAgLy8gc2V0IGNvbnRyb2wgaWYgZ2l2ZW4sIGNhc3QgdG8gc210aC4gbm9uLWFic3RyYWN0XG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcbiAgICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLmF0dGFjaENvbnRyb2wodGhpcy5fY29udHJvbC5jb250cm9sKTtcbiAgICB9XG5cbiAgICAvLyBjb25uZWN0IG91dHB1dHNcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5lbnRlckNsaWNrLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVudGVyQ2xpY2submV4dCgpKTtcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5jYXBzQ2xpY2suc3Vic2NyaWJlKCgpID0+IHRoaXMuY2Fwc0NsaWNrLm5leHQoKSk7XG4gICAgdGhpcy5fa2V5Ym9hcmRSZWYuaW5zdGFuY2UuYWx0Q2xpY2suc3Vic2NyaWJlKCgpID0+IHRoaXMuYWx0Q2xpY2submV4dCgpKTtcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5zaGlmdENsaWNrLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNoaWZ0Q2xpY2submV4dCgpKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInLCBbJyRldmVudCddKVxuICBwdWJsaWMgaGlkZUtleWJvYXJkKCkge1xuICAgIGlmICh0aGlzLl9rZXlib2FyZFJlZikge1xuICAgICAgdGhpcy5fa2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=

@@ -7,2 +7,2 @@ export var KeyboardAnimationState;

})(KeyboardAnimationState || (KeyboardAnimationState = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksc0JBSVg7QUFKRCxXQUFZLHNCQUFzQjtJQUNoQyx1Q0FBYSxDQUFBO0lBQ2IsNkNBQW1CLENBQUE7SUFDbkIsMkNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFJakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBLZXlib2FyZEFuaW1hdGlvblN0YXRlIHtcclxuICBWb2lkID0gJ3ZvaWQnLFxyXG4gIFZpc2libGUgPSAndmlzaWJsZScsXHJcbiAgSGlkZGVuID0gJ2hpZGRlbidcclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksc0JBSVg7QUFKRCxXQUFZLHNCQUFzQjtJQUNoQyx1Q0FBYSxDQUFBO0lBQ2IsNkNBQW1CLENBQUE7SUFDbkIsMkNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFJakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBLZXlib2FyZEFuaW1hdGlvblN0YXRlIHtcbiAgVm9pZCA9ICd2b2lkJyxcbiAgVmlzaWJsZSA9ICd2aXNpYmxlJyxcbiAgSGlkZGVuID0gJ2hpZGRlbidcbn1cbiJdfQ==

@@ -12,2 +12,2 @@ // import { KeyboardAnimationState } from './keyboard-animation-state.enum';

})(KeyboardAnimationTransition || (KeyboardAnimationTransition = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1hbmltYXRpb24tdHJhbnNpdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRFQUE0RTtBQUM1RSxFQUFFO0FBQ0YsNENBQTRDO0FBQzVDLG9GQUFvRjtBQUNwRixpRkFBaUY7QUFDakYsSUFBSTtBQUVKLE1BQU0sQ0FBTixJQUFZLDJCQUdYO0FBSEQsV0FBWSwyQkFBMkI7SUFDckMseURBQTBCLENBQUE7SUFDMUIsdURBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQUhXLDJCQUEyQixLQUEzQiwyQkFBMkIsUUFHdEMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlib2FyZEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi9rZXlib2FyZC1hbmltYXRpb24tc3RhdGUuZW51bSc7XHJcbi8vXHJcbi8vIGV4cG9ydCBlbnVtIEtleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbiB7XHJcbi8vICAgSGlkZSA9IGAke0tleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZX0gPT4gJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbn1gLFxyXG4vLyAgIFNob3cgPSBgJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZvaWR9ID0+ICR7S2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5WaXNpYmxlfWBcclxuLy8gfVxyXG5cclxuZXhwb3J0IGVudW0gS2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uIHtcclxuICBIaWRlID0gJ3Zpc2libGUgPT4gaGlkZGVuJyxcclxuICBTaG93ID0gJ3ZvaWQgPT4gdmlzaWJsZSdcclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1hbmltYXRpb24tdHJhbnNpdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRFQUE0RTtBQUM1RSxFQUFFO0FBQ0YsNENBQTRDO0FBQzVDLG9GQUFvRjtBQUNwRixpRkFBaUY7QUFDakYsSUFBSTtBQUVKLE1BQU0sQ0FBTixJQUFZLDJCQUdYO0FBSEQsV0FBWSwyQkFBMkI7SUFDckMseURBQTBCLENBQUE7SUFDMUIsdURBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQUhXLDJCQUEyQixLQUEzQiwyQkFBMkIsUUFHdEMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlib2FyZEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi9rZXlib2FyZC1hbmltYXRpb24tc3RhdGUuZW51bSc7XG4vL1xuLy8gZXhwb3J0IGVudW0gS2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uIHtcbi8vICAgSGlkZSA9IGAke0tleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZX0gPT4gJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbn1gLFxuLy8gICBTaG93ID0gYCR7S2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkfSA9PiAke0tleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZX1gXG4vLyB9XG5cbmV4cG9ydCBlbnVtIEtleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbiB7XG4gIEhpZGUgPSAndmlzaWJsZSA9PiBoaWRkZW4nLFxuICBTaG93ID0gJ3ZvaWQgPT4gdmlzaWJsZSdcbn1cbiJdfQ==

@@ -16,2 +16,2 @@ // TODO: use real string based enums (available sine typescript 1.4) if

})(KeyboardClassKey || (KeyboardClassKey = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUVBQXVFO0FBQ3ZFLDhFQUE4RTtBQUM5RSx1RUFBdUU7QUFDdkUsTUFBTSxDQUFOLElBQVksZ0JBVVg7QUFWRCxXQUFZLGdCQUFnQjtJQUMxQiwrQkFBVyxDQUFBO0lBQ1gsc0NBQWtCLENBQUE7SUFDbEIsbUNBQWUsQ0FBQTtJQUNmLHNDQUFrQixDQUFBO0lBQ2xCLHFDQUFpQixDQUFBO0lBQ2pCLG1DQUFlLENBQUE7SUFDZixtQ0FBZSxDQUFBO0lBQ2YsK0JBQVcsQ0FBQTtJQUNYLCtCQUFXLENBQUE7QUFDYixDQUFDLEVBVlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQVUzQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IHVzZSByZWFsIHN0cmluZyBiYXNlZCBlbnVtcyAoYXZhaWxhYmxlIHNpbmUgdHlwZXNjcmlwdCAxLjQpIGlmXHJcbi8vIFt0c2xpbnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9wYWxhbnRpci90c2xpbnQvaXNzdWVzLzI5OTMpIGFuZCBtb3JlIGltcG9ydGFudFxyXG4vLyBbcm9sbHVwXShodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNzUxNikgc3VwcG9ydCBpdFxyXG5leHBvcnQgZW51bSBLZXlib2FyZENsYXNzS2V5IHtcclxuICBBbHQgPSAnQWx0JyxcclxuICBBbHRHciA9ICdBbHRHcmFwaCcsXHJcbiAgQWx0TGsgPSAnQWx0TGsnLFxyXG4gIEJrc3AgPSAnQmFja3NwYWNlJyxcclxuICBDYXBzID0gJ0NhcHNMb2NrJyxcclxuICBFbnRlciA9ICdFbnRlcicsXHJcbiAgU2hpZnQgPSAnU2hpZnQnLFxyXG4gIFNwYWNlID0gJyAnLFxyXG4gIFRhYiA9ICdUYWInXHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUVBQXVFO0FBQ3ZFLDhFQUE4RTtBQUM5RSx1RUFBdUU7QUFDdkUsTUFBTSxDQUFOLElBQVksZ0JBVVg7QUFWRCxXQUFZLGdCQUFnQjtJQUMxQiwrQkFBVyxDQUFBO0lBQ1gsc0NBQWtCLENBQUE7SUFDbEIsbUNBQWUsQ0FBQTtJQUNmLHNDQUFrQixDQUFBO0lBQ2xCLHFDQUFpQixDQUFBO0lBQ2pCLG1DQUFlLENBQUE7SUFDZixtQ0FBZSxDQUFBO0lBQ2YsK0JBQVcsQ0FBQTtJQUNYLCtCQUFXLENBQUE7QUFDYixDQUFDLEVBVlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQVUzQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IHVzZSByZWFsIHN0cmluZyBiYXNlZCBlbnVtcyAoYXZhaWxhYmxlIHNpbmUgdHlwZXNjcmlwdCAxLjQpIGlmXG4vLyBbdHNsaW50XShodHRwczovL2dpdGh1Yi5jb20vcGFsYW50aXIvdHNsaW50L2lzc3Vlcy8yOTkzKSBhbmQgbW9yZSBpbXBvcnRhbnRcbi8vIFtyb2xsdXBdKGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzE3NTE2KSBzdXBwb3J0IGl0XG5leHBvcnQgZW51bSBLZXlib2FyZENsYXNzS2V5IHtcbiAgQWx0ID0gJ0FsdCcsXG4gIEFsdEdyID0gJ0FsdEdyYXBoJyxcbiAgQWx0TGsgPSAnQWx0TGsnLFxuICBCa3NwID0gJ0JhY2tzcGFjZScsXG4gIENhcHMgPSAnQ2Fwc0xvY2snLFxuICBFbnRlciA9ICdFbnRlcicsXG4gIFNoaWZ0ID0gJ1NoaWZ0JyxcbiAgU3BhY2UgPSAnICcsXG4gIFRhYiA9ICdUYWInXG59XG4iXX0=

@@ -10,2 +10,2 @@ // this enum index has to be number based because it is used

})(KeyboardModifier || (KeyboardModifier = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbW9kaWZpZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1tb2RpZmllci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDREQUE0RDtBQUM1RCw0REFBNEQ7QUFDNUQsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUMxQix1REFBSSxDQUFBO0lBQ0oseURBQUssQ0FBQTtJQUNMLHFEQUFHLENBQUE7SUFDSCwrREFBUSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFLM0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0aGlzIGVudW0gaW5kZXggaGFzIHRvIGJlIG51bWJlciBiYXNlZCBiZWNhdXNlIGl0IGlzIHVzZWRcclxuLy8gdG8gYWNjZXNzIHRoZSBrZXlib2FyZCBjb25maWdzIGFsdGVybmF0aXZlIGtleSBhc3NpZ25tZW50XHJcbmV4cG9ydCBlbnVtIEtleWJvYXJkTW9kaWZpZXIge1xyXG4gIE5vbmUsXHJcbiAgU2hpZnQsXHJcbiAgQWx0LFxyXG4gIFNoaWZ0QWx0XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbW9kaWZpZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1tb2RpZmllci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDREQUE0RDtBQUM1RCw0REFBNEQ7QUFDNUQsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUMxQix1REFBSSxDQUFBO0lBQ0oseURBQUssQ0FBQTtJQUNMLHFEQUFHLENBQUE7SUFDSCwrREFBUSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFLM0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0aGlzIGVudW0gaW5kZXggaGFzIHRvIGJlIG51bWJlciBiYXNlZCBiZWNhdXNlIGl0IGlzIHVzZWRcbi8vIHRvIGFjY2VzcyB0aGUga2V5Ym9hcmQgY29uZmlncyBhbHRlcm5hdGl2ZSBrZXkgYXNzaWdubWVudFxuZXhwb3J0IGVudW0gS2V5Ym9hcmRNb2RpZmllciB7XG4gIE5vbmUsXG4gIFNoaWZ0LFxuICBBbHQsXG4gIFNoaWZ0QWx0XG59XG4iXX0=

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElLZXlib2FyZERlYWRrZXlzIHtcclxuICBbZGVhZGtleTogc3RyaW5nXToge1xyXG4gICAgW3RhcmdldDogc3RyaW5nXTogc3RyaW5nO1xyXG4gIH07XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElLZXlib2FyZERlYWRrZXlzIHtcbiAgW2RlYWRrZXk6IHN0cmluZ106IHtcbiAgICBbdGFyZ2V0OiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG59XG4iXX0=

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgSUtleWJvYXJkSWNvbnMge1xyXG4gIFtrZXk6IHN0cmluZ106IElNYXRJY29uO1xyXG59XHJcblxyXG5pbnRlcmZhY2UgSU1hdEljb24ge1xyXG4gIG5hbWU/OiBzdHJpbmc7XHJcbiAgZm9udFNldD86IHN0cmluZztcclxuICBmb250SWNvbj86IHN0cmluZztcclxuICBzdmdJY29uPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgeyBJS2V5Ym9hcmRJY29ucywgSU1hdEljb24gfTtcclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgSUtleWJvYXJkSWNvbnMge1xuICBba2V5OiBzdHJpbmddOiBJTWF0SWNvbjtcbn1cblxuaW50ZXJmYWNlIElNYXRJY29uIHtcbiAgbmFtZT86IHN0cmluZztcbiAgZm9udFNldD86IHN0cmluZztcbiAgZm9udEljb24/OiBzdHJpbmc7XG4gIHN2Z0ljb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB7IElLZXlib2FyZEljb25zLCBJTWF0SWNvbiB9O1xuIl19

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJpbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElLZXlib2FyZExheW91dCB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGtleXM6IChzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5KVtdW11bXTtcclxuICBsYW5nPzogc3RyaW5nW107XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJpbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUtleWJvYXJkTGF5b3V0IHtcbiAgbmFtZTogc3RyaW5nO1xuICBrZXlzOiAoc3RyaW5nIHwgS2V5Ym9hcmRDbGFzc0tleSlbXVtdW107XG4gIGxhbmc/OiBzdHJpbmdbXTtcbn1cbiJdfQ==

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0IH0gZnJvbSAnLi9rZXlib2FyZC1sYXlvdXQuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUtleWJvYXJkTGF5b3V0cyB7XHJcbiAgW2xheW91dDogc3RyaW5nXTogSUtleWJvYXJkTGF5b3V0O1xyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0IH0gZnJvbSAnLi9rZXlib2FyZC1sYXlvdXQuaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBJS2V5Ym9hcmRMYXlvdXRzIHtcbiAgW2xheW91dDogc3RyaW5nXTogSUtleWJvYXJkTGF5b3V0O1xufVxuIl19

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLW1hcC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9sb2NhbGUtbWFwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJTG9jYWxlTWFwIHtcclxuICBbbG9jYWxlOiBzdHJpbmddOiBzdHJpbmc7XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLW1hcC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9sb2NhbGUtbWFwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJTG9jYWxlTWFwIHtcbiAgW2xvY2FsZTogc3RyaW5nXTogc3RyaW5nO1xufVxuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate } from "tslib";
// External modules

@@ -6,3 +6,2 @@ import { CommonModule } from '@angular/common';

// Angular CDK
import { LIVE_ANNOUNCER_PROVIDER } from '@angular/cdk/a11y';
import { OverlayModule } from '@angular/cdk/overlay';

@@ -29,3 +28,3 @@ import { PortalModule } from '@angular/cdk/portal';

};
MatKeyboardModule = tslib_1.__decorate([
MatKeyboardModule = __decorate([
NgModule({

@@ -64,3 +63,2 @@ imports: [

MatKeyboardService,
LIVE_ANNOUNCER_PROVIDER,
{ provide: MAT_KEYBOARD_DEADKEYS, useValue: ɵ0 },

@@ -73,2 +71,2 @@ { provide: MAT_KEYBOARD_LAYOUTS, useValue: ɵ1 }

export { ɵ0, ɵ1 };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImtleWJvYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsbUJBQW1CO0FBQ25CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLGNBQWM7QUFDZCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELG1CQUFtQjtBQUNuQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsVUFBVTtBQUNWLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRiw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDN0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsWUFBWTtBQUNaLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO1dBc0NqQixnQkFBZ0IsT0FDakIsZUFBZTtBQUc5RCxJQUFhLGlCQUFpQixHQUE5QixNQUFhLGlCQUFpQjtDQUFHLENBQUE7QUFBcEIsaUJBQWlCO0lBeEM3QixRQUFRLENBQUM7UUFDUixPQUFPLEVBQUU7WUFDUCxrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLGFBQWE7WUFFYixjQUFjO1lBQ2QsWUFBWTtZQUVaLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGFBQWE7WUFDYixjQUFjO1NBQ2Y7UUFDRCxPQUFPLEVBQUU7WUFDUCxvQkFBb0I7WUFDcEIsNkJBQTZCO1lBQzdCLHVCQUF1QjtZQUN2QixvQkFBb0I7U0FDckI7UUFDRCxZQUFZLEVBQUU7WUFDWix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLDZCQUE2QjtZQUM3Qix1QkFBdUI7WUFDdkIsb0JBQW9CO1NBQ3JCO1FBQ0QsZUFBZSxFQUFFO1lBQ2Ysb0JBQW9CO1lBQ3BCLDZCQUE2QjtZQUM3Qix1QkFBdUI7U0FDeEI7UUFDRCxTQUFTLEVBQUU7WUFDVCxrQkFBa0I7WUFDbEIsdUJBQXVCO1lBQ3ZCLEVBQUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLFFBQVEsSUFBa0IsRUFBRTtZQUM5RCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLElBQWlCLEVBQUU7U0FDN0Q7S0FDRixDQUFDO0dBQ1csaUJBQWlCLENBQUc7U0FBcEIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRXh0ZXJuYWwgbW9kdWxlc1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG4vLyBBbmd1bGFyIENES1xyXG5pbXBvcnQgeyBMSVZFX0FOTk9VTkNFUl9QUk9WSURFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcclxuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbi8vIEFuZ3VsYXIgbWF0ZXJpYWxcclxuaW1wb3J0IHsgTWF0Q29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbi8vIENvbmZpZ3NcclxuaW1wb3J0IHsga2V5Ym9hcmREZWFka2V5cywgTUFUX0tFWUJPQVJEX0RFQURLRVlTIH0gZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJztcclxuaW1wb3J0IHsga2V5Ym9hcmRMYXlvdXRzLCBNQVRfS0VZQk9BUkRfTEFZT1VUUyB9IGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XHJcbi8vIENvbXBvbmVudHMgYW5kIGRpcmVjdGl2ZXNcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZEtleUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1rZXkva2V5Ym9hcmQta2V5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2tleWJvYXJkLmRpcmVjdGl2ZSc7XHJcbi8vIFByb3ZpZGVyc1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgfSBmcm9tICcuL3BpcGVzL2tlYmFiLWNhc2UucGlwZSc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIC8vIEFuZ3VsYXIgbW9kdWxlc1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgT3ZlcmxheU1vZHVsZSxcclxuXHJcbiAgICAvLyBDZGsgbW9kdWxlc1xyXG4gICAgUG9ydGFsTW9kdWxlLFxyXG5cclxuICAgIC8vIE1hdGVyaWFsIG1vZHVsZXNcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdENvbW1vbk1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50LFxyXG4gICAgTWF0S2V5Ym9hcmREaXJlY3RpdmVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgTWF0S2V5Ym9hcmRLZWJhYkNhc2VQaXBlLFxyXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50LFxyXG4gICAgTWF0S2V5Ym9hcmREaXJlY3RpdmVcclxuICBdLFxyXG4gIGVudHJ5Q29tcG9uZW50czogW1xyXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50XHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIE1hdEtleWJvYXJkU2VydmljZSxcclxuICAgIExJVkVfQU5OT1VOQ0VSX1BST1ZJREVSLFxyXG4gICAgeyBwcm92aWRlOiBNQVRfS0VZQk9BUkRfREVBREtFWVMsIHVzZVZhbHVlOiBrZXlib2FyZERlYWRrZXlzIH0sXHJcbiAgICB7IHByb3ZpZGU6IE1BVF9LRVlCT0FSRF9MQVlPVVRTLCB1c2VWYWx1ZToga2V5Ym9hcmRMYXlvdXRzIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZE1vZHVsZSB7fVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImtleWJvYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsbUJBQW1CO0FBQ25CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLGNBQWM7QUFDZCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELG1CQUFtQjtBQUNuQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsVUFBVTtBQUNWLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRiw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDN0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsWUFBWTtBQUNaLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO1dBcUNqQixnQkFBZ0IsT0FDakIsZUFBZTtBQUc5RCxJQUFhLGlCQUFpQixHQUE5QixNQUFhLGlCQUFpQjtDQUFHLENBQUE7QUFBcEIsaUJBQWlCO0lBdkM3QixRQUFRLENBQUM7UUFDUixPQUFPLEVBQUU7WUFDUCxrQkFBa0I7WUFDbEIsWUFBWTtZQUNaLGFBQWE7WUFFYixjQUFjO1lBQ2QsWUFBWTtZQUVaLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGFBQWE7WUFDYixjQUFjO1NBQ2Y7UUFDRCxPQUFPLEVBQUU7WUFDUCxvQkFBb0I7WUFDcEIsNkJBQTZCO1lBQzdCLHVCQUF1QjtZQUN2QixvQkFBb0I7U0FDckI7UUFDRCxZQUFZLEVBQUU7WUFDWix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLDZCQUE2QjtZQUM3Qix1QkFBdUI7WUFDdkIsb0JBQW9CO1NBQ3JCO1FBQ0QsZUFBZSxFQUFFO1lBQ2Ysb0JBQW9CO1lBQ3BCLDZCQUE2QjtZQUM3Qix1QkFBdUI7U0FDeEI7UUFDRCxTQUFTLEVBQUU7WUFDVCxrQkFBa0I7WUFDbEIsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxJQUFrQixFQUFFO1lBQzlELEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFFBQVEsSUFBaUIsRUFBRTtTQUM3RDtLQUNGLENBQUM7R0FDVyxpQkFBaUIsQ0FBRztTQUFwQixpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFeHRlcm5hbCBtb2R1bGVzXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbi8vIEFuZ3VsYXIgQ0RLXG5pbXBvcnQgeyBPdmVybGF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG4vLyBBbmd1bGFyIG1hdGVyaWFsXG5pbXBvcnQgeyBNYXRDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0Jztcbi8vIENvbmZpZ3NcbmltcG9ydCB7IGtleWJvYXJkRGVhZGtleXMsIE1BVF9LRVlCT0FSRF9ERUFES0VZUyB9IGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZyc7XG5pbXBvcnQgeyBrZXlib2FyZExheW91dHMsIE1BVF9LRVlCT0FSRF9MQVlPVVRTIH0gZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWxheW91dHMuY29uZmlnJztcbi8vIENvbXBvbmVudHMgYW5kIGRpcmVjdGl2ZXNcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9rZXlib2FyZC5kaXJlY3RpdmUnO1xuLy8gUHJvdmlkZXJzXG5pbXBvcnQgeyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgfSBmcm9tICcuL3BpcGVzL2tlYmFiLWNhc2UucGlwZSc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgLy8gQW5ndWxhciBtb2R1bGVzXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE92ZXJsYXlNb2R1bGUsXG5cbiAgICAvLyBDZGsgbW9kdWxlc1xuICAgIFBvcnRhbE1vZHVsZSxcblxuICAgIC8vIE1hdGVyaWFsIG1vZHVsZXNcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0Q29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE1hdEtleWJvYXJkQ29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkRGlyZWN0aXZlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE1hdEtleWJvYXJkS2ViYWJDYXNlUGlwZSxcbiAgICBNYXRLZXlib2FyZENvbXBvbmVudCxcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNYXRLZXlib2FyZEtleUNvbXBvbmVudCxcbiAgICBNYXRLZXlib2FyZERpcmVjdGl2ZVxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICBNYXRLZXlib2FyZENvbXBvbmVudCxcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNYXRLZXlib2FyZEtleUNvbXBvbmVudFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBNYXRLZXlib2FyZFNlcnZpY2UsXG4gICAgeyBwcm92aWRlOiBNQVRfS0VZQk9BUkRfREVBREtFWVMsIHVzZVZhbHVlOiBrZXlib2FyZERlYWRrZXlzIH0sXG4gICAgeyBwcm92aWRlOiBNQVRfS0VZQk9BUkRfTEFZT1VUUywgdXNlVmFsdWU6IGtleWJvYXJkTGF5b3V0cyB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRNb2R1bGUge31cbiJdfQ==

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate } from "tslib";
import { Pipe } from '@angular/core';

@@ -10,3 +10,3 @@ let MatKeyboardKebabCasePipe = class MatKeyboardKebabCasePipe {

};
MatKeyboardKebabCasePipe = tslib_1.__decorate([
MatKeyboardKebabCasePipe = __decorate([
Pipe({

@@ -18,2 +18,2 @@ name: 'matKeyboardKebabCase',

export { MatKeyboardKebabCasePipe };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2ViYWItY2FzZS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbInBpcGVzL2tlYmFiLWNhc2UucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFNcEQsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7SUFFbkMsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQzthQUM3QyxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQzthQUNwQixXQUFXLEVBQUUsQ0FBQztJQUNuQixDQUFDO0NBRUYsQ0FBQTtBQVJZLHdCQUF3QjtJQUpwQyxJQUFJLENBQUM7UUFDSixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLElBQUksRUFBRSxLQUFLO0tBQ1osQ0FBQztHQUNXLHdCQUF3QixDQVFwQztTQVJZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnbWF0S2V5Ym9hcmRLZWJhYkNhc2UnLFxyXG4gIHB1cmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMS0kMicpXHJcbiAgICAgIC5yZXBsYWNlKC9cXHMrL2csICctJylcclxuICAgICAgLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2ViYWItY2FzZS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbInBpcGVzL2tlYmFiLWNhc2UucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFNcEQsSUFBYSx3QkFBd0IsR0FBckMsTUFBYSx3QkFBd0I7SUFFbkMsU0FBUyxDQUFDLEtBQWE7UUFDckIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQzthQUM3QyxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQzthQUNwQixXQUFXLEVBQUUsQ0FBQztJQUNuQixDQUFDO0NBRUYsQ0FBQTtBQVJZLHdCQUF3QjtJQUpwQyxJQUFJLENBQUM7UUFDSixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLElBQUksRUFBRSxLQUFLO0tBQ1osQ0FBQztHQUNXLHdCQUF3QixDQVFwQztTQVJZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbWF0S2V5Ym9hcmRLZWJhYkNhc2UnLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMS0kMicpXG4gICAgICAucmVwbGFjZSgvXFxzKy9nLCAnLScpXG4gICAgICAudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG59XG4iXX0=

@@ -18,2 +18,2 @@ export * from './classes/keyboard-ref.class';

export * from './keyboard.module';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0RBQWtELENBQUM7QUFFakUsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNENBQTRDLENBQUM7QUFRM0QsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsd0JBQXdCLENBQUM7QUFFdkMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1jb250YWluZXIva2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1rZXkva2V5Ym9hcmQta2V5LmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWljb25zLmNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMva2V5Ym9hcmQuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLW1vZGlmaWVyLmVudW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLWFuaW1hdGlvbi1zdGF0ZS5lbnVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9lbnVtcy9rZXlib2FyZC1hbmltYXRpb24tdHJhbnNpdGlvbi5lbnVtJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvbG9jYWxlLW1hcC5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9rZWJhYi1jYXNlLnBpcGUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMva2V5Ym9hcmQudXRpbHMnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9rZXlib2FyZC5tb2R1bGUnO1xyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0RBQWtELENBQUM7QUFFakUsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNENBQTRDLENBQUM7QUFRM0QsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsd0JBQXdCLENBQUM7QUFFdkMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1jb250YWluZXIva2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQta2V5L2tleWJvYXJkLWtleS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9rZXlib2FyZC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMva2V5Ym9hcmQtbW9kaWZpZXIuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLWFuaW1hdGlvbi1zdGF0ZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2xvY2FsZS1tYXAuaW50ZXJmYWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9rZWJhYi1jYXNlLnBpcGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL2tleWJvYXJkLnV0aWxzJztcblxuZXhwb3J0ICogZnJvbSAnLi9rZXlib2FyZC5tb2R1bGUnO1xuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { LiveAnnouncer } from '@angular/cdk/a11y';

@@ -194,9 +194,9 @@ import { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';

];
MatKeyboardService = tslib_1.__decorate([
MatKeyboardService = __decorate([
Injectable(),
tslib_1.__param(2, Inject(LOCALE_ID)),
tslib_1.__param(3, Inject(MAT_KEYBOARD_LAYOUTS)),
tslib_1.__param(4, Optional()), tslib_1.__param(4, SkipSelf())
__param(2, Inject(LOCALE_ID)),
__param(3, Inject(MAT_KEYBOARD_LAYOUTS)),
__param(4, Optional()), __param(4, SkipSelf())
], MatKeyboardService);
export { MatKeyboardService };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJzZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBZ0IsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDOUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFLMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkY7O0dBRUc7QUFFSCxJQUFhLGtCQUFrQixHQUEvQixNQUFhLGtCQUFrQjtJQWdDN0IsWUFBb0IsUUFBaUIsRUFDakIsS0FBb0IsRUFDRCxjQUFzQixFQUNYLFFBQTBCLEVBQ2hDLGVBQW1DO1FBSjNELGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUNELG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBbkMvRTs7OztXQUlHO1FBQ0ssNEJBQXVC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QVEsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUF5QyxDQUFDO0lBQ2hILENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWM7UUFDcEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxhQUFhLENBQUM7WUFDOUIsS0FBSyxFQUFFLE1BQU07U0FDZCxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDbkMsUUFBUSxFQUFFO2FBQ1YsTUFBTSxFQUFFO2FBQ1Isa0JBQWtCLEVBQUU7YUFDcEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0NBQ0YsQ0FBQTs7WUF6SytCLE9BQU87WUFDVixhQUFhO3lDQUMzQixNQUFNLFNBQUMsU0FBUzs0Q0FDaEIsTUFBTSxTQUFDLG9CQUFvQjtZQUNxQixrQkFBa0IsdUJBQWxFLFFBQVEsWUFBSSxRQUFROztBQXBDdEIsa0JBQWtCO0lBRDlCLFVBQVUsRUFBRTtJQW1DRSxtQkFBQSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDakIsbUJBQUEsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFDNUIsbUJBQUEsUUFBUSxFQUFFLENBQUEsRUFBRSxtQkFBQSxRQUFRLEVBQUUsQ0FBQTtHQXBDeEIsa0JBQWtCLENBeU05QjtTQXpNWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXZlQW5ub3VuY2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xyXG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBJbmplY3QsIEluamVjdGFibGUsIExPQ0FMRV9JRCwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBNYXRLZXlib2FyZFJlZiB9IGZyb20gJy4uL2NsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1BVF9LRVlCT0FSRF9MQVlPVVRTIH0gZnJvbSAnLi4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29uZmlnIH0gZnJvbSAnLi4vY29uZmlncy9rZXlib2FyZC5jb25maWcnO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXRzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElMb2NhbGVNYXAgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2xvY2FsZS1tYXAuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgX2FwcGx5QXZhaWxhYmxlTGF5b3V0cywgX2FwcGx5Q29uZmlnRGVmYXVsdHMgfSBmcm9tICcuLi91dGlscy9rZXlib2FyZC51dGlscyc7XHJcblxyXG4vKipcclxuICogU2VydmljZSB0byBkaXNwYXRjaCBNYXRlcmlhbCBEZXNpZ24ga2V5Ym9hcmQuXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZFNlcnZpY2Uge1xyXG4gIC8qKlxyXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgY3VycmVudCBrZXlib2FyZCBpbiB0aGUgdmlldyAqYXQgdGhpcyBsZXZlbCogKGluIHRoZSBBbmd1bGFyIGluamVjdG9yIHRyZWUpLlxyXG4gICAqIElmIHRoZXJlIGlzIGEgcGFyZW50IGtleWJvYXJkIHNlcnZpY2UsIGFsbCBvcGVyYXRpb25zIHNob3VsZCBkZWxlZ2F0ZSB0byB0aGF0IHBhcmVudFxyXG4gICAqIHZpYSBgX29wZW5lZEtleWJvYXJkUmVmYC5cclxuICAgKi9cclxuICBwcml2YXRlIF9rZXlib2FyZFJlZkF0VGhpc0xldmVsOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBfYXZhaWxhYmxlTG9jYWxlczogSUxvY2FsZU1hcCA9IHt9O1xyXG5cclxuICAvKiogUmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50bHkgb3BlbmVkIGtleWJvYXJkIGF0ICphbnkqIGxldmVsLiAqL1xyXG4gIHByaXZhdGUgZ2V0IF9vcGVuZWRLZXlib2FyZFJlZigpOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gfCBudWxsIHtcclxuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMuX3BhcmVudEtleWJvYXJkO1xyXG4gICAgcmV0dXJuIHBhcmVudCA/IHBhcmVudC5fb3BlbmVkS2V5Ym9hcmRSZWYgOiB0aGlzLl9rZXlib2FyZFJlZkF0VGhpc0xldmVsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXQgX29wZW5lZEtleWJvYXJkUmVmKHZhbHVlOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4pIHtcclxuICAgIGlmICh0aGlzLl9wYXJlbnRLZXlib2FyZCkge1xyXG4gICAgICB0aGlzLl9wYXJlbnRLZXlib2FyZC5fb3BlbmVkS2V5Ym9hcmRSZWYgPSB2YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2tleWJvYXJkUmVmQXRUaGlzTGV2ZWwgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBhdmFpbGFibGVMb2NhbGVzKCk6IElMb2NhbGVNYXAge1xyXG4gICAgcmV0dXJuIHRoaXMuX2F2YWlsYWJsZUxvY2FsZXM7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNPcGVuZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLl9vcGVuZWRLZXlib2FyZFJlZjtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbGl2ZTogTGl2ZUFubm91bmNlcixcclxuICAgICAgICAgICAgICBASW5qZWN0KExPQ0FMRV9JRCkgcHJpdmF0ZSBfZGVmYXVsdExvY2FsZTogc3RyaW5nLFxyXG4gICAgICAgICAgICAgIEBJbmplY3QoTUFUX0tFWUJPQVJEX0xBWU9VVFMpIHByaXZhdGUgX2xheW91dHM6IElLZXlib2FyZExheW91dHMsXHJcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSBfcGFyZW50S2V5Ym9hcmQ6IE1hdEtleWJvYXJkU2VydmljZSkge1xyXG4gICAgLy8gcHJlcGFyZSBhdmFpbGFibGUgbGF5b3V0cyBtYXBwaW5nXHJcbiAgICB0aGlzLl9hdmFpbGFibGVMb2NhbGVzID0gX2FwcGx5QXZhaWxhYmxlTGF5b3V0cyhfbGF5b3V0cyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGFuZCBkaXNwYXRjaGVzIGEga2V5Ym9hcmQgd2l0aCBhIGN1c3RvbSBjb21wb25lbnQgZm9yIHRoZSBjb250ZW50LCByZW1vdmluZyBhbnlcclxuICAgKiBjdXJyZW50bHkgb3BlbmVkIGtleWJvYXJkcy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBsYXlvdXRPckxvY2FsZSBsYXlvdXQgb3IgbG9jYWxlIHRvIHVzZS5cclxuICAgKiBAcGFyYW0gY29uZmlnIEV4dHJhIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBrZXlib2FyZC5cclxuICAgKi9cclxuICBvcGVuRnJvbUNvbXBvbmVudChsYXlvdXRPckxvY2FsZTogc3RyaW5nLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+IHtcclxuICAgIGNvbnN0IGtleWJvYXJkUmVmOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gPSB0aGlzLl9hdHRhY2hLZXlib2FyZENvbnRlbnQoY29uZmlnKTtcclxuXHJcbiAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5kYXJrVGhlbWUgPSBjb25maWcuZGFya1RoZW1lO1xyXG4gICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UuaXNEZWJ1ZyA9IGNvbmZpZy5pc0RlYnVnO1xyXG5cclxuICAgIC8vIGEgbG9jYWxlIGlzIHByb3ZpZGVkXHJcbiAgICBpZiAodGhpcy5hdmFpbGFibGVMb2NhbGVzW2xheW91dE9yTG9jYWxlXSkge1xyXG4gICAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5sb2NhbGUgPSBsYXlvdXRPckxvY2FsZTtcclxuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubGF5b3V0ID0gdGhpcy5nZXRMYXlvdXRGb3JMb2NhbGUobGF5b3V0T3JMb2NhbGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGEgbGF5b3V0IG5hbWUgaXMgcHJvdmlkZWRcclxuICAgIGlmICh0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXSkge1xyXG4gICAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5sYXlvdXQgPSB0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXTtcclxuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubG9jYWxlID0gdGhpcy5fbGF5b3V0c1tsYXlvdXRPckxvY2FsZV0ubGFuZyAmJiB0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXS5sYW5nLnBvcCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb25maWcuY3VzdG9tSWNvbnMpIHtcclxuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UuaWNvbnMgPSBjb25maWcuY3VzdG9tSWNvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gV2hlbiB0aGUga2V5Ym9hcmQgaXMgZGlzbWlzc2VkLCBsb3dlciB0aGUga2V5Ym9hcmQgY291bnRlci5cclxuICAgIGtleWJvYXJkUmVmXHJcbiAgICAgIC5hZnRlckRpc21pc3NlZCgpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIC8vIENsZWFyIHRoZSBrZXlib2FyZCByZWYgaWYgaXQgaGFzbid0IGFscmVhZHkgYmVlbiByZXBsYWNlZCBieSBhIG5ld2VyIGtleWJvYXJkLlxyXG4gICAgICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZiA9PT0ga2V5Ym9hcmRSZWYpIHtcclxuICAgICAgICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZikge1xyXG4gICAgICAvLyBJZiBhIGtleWJvYXJkIGlzIGFscmVhZHkgaW4gdmlldywgZGlzbWlzcyBpdCBhbmQgZW50ZXIgdGhlXHJcbiAgICAgIC8vIG5ldyBrZXlib2FyZCBhZnRlciBleGl0IGFuaW1hdGlvbiBpcyBjb21wbGV0ZS5cclxuICAgICAgdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWZcclxuICAgICAgICAuYWZ0ZXJEaXNtaXNzZWQoKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAga2V5Ym9hcmRSZWYuY29udGFpbmVySW5zdGFuY2UuZW50ZXIoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gSWYgbm8ga2V5Ym9hcmQgaXMgaW4gdmlldywgZW50ZXIgdGhlIG5ldyBrZXlib2FyZC5cclxuICAgICAga2V5Ym9hcmRSZWYuY29udGFpbmVySW5zdGFuY2UuZW50ZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBJZiBhIGRpc21pc3MgdGltZW91dCBpcyBwcm92aWRlZCwgc2V0IHVwIGRpc21pc3MgYmFzZWQgb24gYWZ0ZXIgdGhlIGtleWJvYXJkIGlzIG9wZW5lZC5cclxuICAgIC8vIGlmIChjb25maWdzLmR1cmF0aW9uID4gMCkge1xyXG4gICAgLy8gICBrZXlib2FyZFJlZi5hZnRlck9wZW5lZCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAvLyAgICAgc2V0VGltZW91dCgoKSA9PiBrZXlib2FyZFJlZi5kaXNtaXNzKCksIGNvbmZpZ3MuZHVyYXRpb24pO1xyXG4gICAgLy8gICB9KTtcclxuICAgIC8vIH1cclxuXHJcbiAgICBpZiAoY29uZmlnLmFubm91bmNlbWVudE1lc3NhZ2UpIHtcclxuICAgICAgdGhpcy5fbGl2ZS5hbm5vdW5jZShjb25maWcuYW5ub3VuY2VtZW50TWVzc2FnZSwgY29uZmlnLnBvbGl0ZW5lc3MpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmID0ga2V5Ym9hcmRSZWY7XHJcbiAgICByZXR1cm4gdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWY7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPcGVucyBhIGtleWJvYXJkIHdpdGggYSBtZXNzYWdlIGFuZCBhbiBvcHRpb25hbCBhY3Rpb24uXHJcbiAgICogQHBhcmFtIGxheW91dE9yTG9jYWxlIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgbG9jYWxlIG9yIHRoZSBsYXlvdXQgbmFtZSB0byBiZSB1c2VkLlxyXG4gICAqIEBwYXJhbSBjb25maWcgQWRkaXRpb25hbCBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBrZXlib2FyZC5cclxuICAgKi9cclxuICBvcGVuKGxheW91dE9yTG9jYWxlOiBzdHJpbmcgPSB0aGlzLl9kZWZhdWx0TG9jYWxlLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnID0ge30pOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4ge1xyXG4gICAgY29uc3QgX2NvbmZpZyA9IF9hcHBseUNvbmZpZ0RlZmF1bHRzKGNvbmZpZyk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMub3BlbkZyb21Db21wb25lbnQobGF5b3V0T3JMb2NhbGUsIF9jb25maWcpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGlzbWlzc2VzIHRoZSBjdXJyZW50bHktdmlzaWJsZSBrZXlib2FyZC5cclxuICAgKi9cclxuICBkaXNtaXNzKCkge1xyXG4gICAgaWYgKHRoaXMuX29wZW5lZEtleWJvYXJkUmVmKSB7XHJcbiAgICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmLmRpc21pc3MoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBhIGdpdmVuIGxvY2FsZSB0byBhIGxheW91dCBuYW1lLlxyXG4gICAqIEBwYXJhbSBsb2NhbGUgVGhlIGxheW91dCBuYW1lXHJcbiAgICovXHJcbiAgbWFwTG9jYWxlKGxvY2FsZTogc3RyaW5nID0gdGhpcy5fZGVmYXVsdExvY2FsZSk6IHN0cmluZyB7XHJcbiAgICBsZXQgbGF5b3V0OiBzdHJpbmc7XHJcbiAgICBjb25zdCBjb3VudHJ5ID0gbG9jYWxlXHJcbiAgICAgIC5zcGxpdCgnLScpXHJcbiAgICAgIC5zaGlmdCgpO1xyXG5cclxuICAgIC8vIHNlYXJjaCBmb3IgbGF5b3V0IG1hdGNoaW5nIHRoZVxyXG4gICAgLy8gZmlyc3QgcGFydCwgdGhlIGNvdW50cnkgY29kZVxyXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTG9jYWxlc1tjb3VudHJ5XSkge1xyXG4gICAgICBsYXlvdXQgPSB0aGlzLmF2YWlsYWJsZUxvY2FsZXNbbG9jYWxlXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBsb29rIGlmIHRoZSBkZXRhaWxlZCBsb2NhbGUgbWF0Y2hlcyBhbnkgbGF5b3V0XHJcbiAgICBpZiAodGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV0pIHtcclxuICAgICAgbGF5b3V0ID0gdGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV07XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFsYXlvdXQpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoYE5vIGxheW91dCBmb3VuZCBmb3IgbG9jYWxlICR7bG9jYWxlfWApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBsYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBnZXRMYXlvdXRGb3JMb2NhbGUobG9jYWxlOiBzdHJpbmcpOiBJS2V5Ym9hcmRMYXlvdXQge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xheW91dHNbdGhpcy5tYXBMb2NhbGUobG9jYWxlKV07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBdHRhY2hlcyB0aGUga2V5Ym9hcmQgY29udGFpbmVyIGNvbXBvbmVudCB0byB0aGUgb3ZlcmxheS5cclxuICAgKi9cclxuICBwcml2YXRlIF9hdHRhY2hLZXlib2FyZENvbnRhaW5lcihvdmVybGF5UmVmOiBPdmVybGF5UmVmLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQge1xyXG4gICAgY29uc3QgY29udGFpbmVyUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCwgY29uZmlnLnZpZXdDb250YWluZXJSZWYpO1xyXG4gICAgY29uc3QgY29udGFpbmVyUmVmOiBDb21wb25lbnRSZWY8TWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQ+ID0gb3ZlcmxheVJlZi5hdHRhY2goY29udGFpbmVyUG9ydGFsKTtcclxuXHJcbiAgICAvLyBzZXQgY29uZmlnXHJcbiAgICBjb250YWluZXJSZWYuaW5zdGFuY2Uua2V5Ym9hcmRDb25maWcgPSBjb25maWc7XHJcblxyXG4gICAgcmV0dXJuIGNvbnRhaW5lclJlZi5pbnN0YW5jZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFBsYWNlcyBhIG5ldyBjb21wb25lbnQgYXMgdGhlIGNvbnRlbnQgb2YgdGhlIGtleWJvYXJkIGNvbnRhaW5lci5cclxuICAgKi9cclxuICBwcml2YXRlIF9hdHRhY2hLZXlib2FyZENvbnRlbnQoY29uZmlnOiBNYXRLZXlib2FyZENvbmZpZyk6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PiB7XHJcbiAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy5fY3JlYXRlT3ZlcmxheSgpO1xyXG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5fYXR0YWNoS2V5Ym9hcmRDb250YWluZXIob3ZlcmxheVJlZiwgY29uZmlnKTtcclxuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoTWF0S2V5Ym9hcmRDb21wb25lbnQpO1xyXG4gICAgY29uc3QgY29udGVudFJlZiA9IGNvbnRhaW5lci5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcclxuICAgIHJldHVybiBuZXcgTWF0S2V5Ym9hcmRSZWYoY29udGVudFJlZi5pbnN0YW5jZSwgY29udGFpbmVyLCBvdmVybGF5UmVmKSBhcyBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD47XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGEgbmV3IG92ZXJsYXkgYW5kIHBsYWNlcyBpdCBpbiB0aGUgY29ycmVjdCBsb2NhdGlvbi5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVPdmVybGF5KCk6IE92ZXJsYXlSZWYge1xyXG4gICAgY29uc3Qgc3RhdGUgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XHJcbiAgICAgIHdpZHRoOiAnMTAwJSdcclxuICAgIH0pO1xyXG5cclxuICAgIHN0YXRlLnBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5XHJcbiAgICAgIC5wb3NpdGlvbigpXHJcbiAgICAgIC5nbG9iYWwoKVxyXG4gICAgICAuY2VudGVySG9yaXpvbnRhbGx5KClcclxuICAgICAgLmJvdHRvbSgnMCcpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLl9vdmVybGF5LmNyZWF0ZShzdGF0ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJzZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBZ0IsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDOUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFLMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkY7O0dBRUc7QUFFSCxJQUFhLGtCQUFrQixHQUEvQixNQUFhLGtCQUFrQjtJQWdDN0IsWUFBb0IsUUFBaUIsRUFDakIsS0FBb0IsRUFDRCxjQUFzQixFQUNYLFFBQTBCLEVBQ2hDLGVBQW1DO1FBSjNELGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUNELG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBbkMvRTs7OztXQUlHO1FBQ0ssNEJBQXVC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QVEsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUF5QyxDQUFDO0lBQ2hILENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWM7UUFDcEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxhQUFhLENBQUM7WUFDOUIsS0FBSyxFQUFFLE1BQU07U0FDZCxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDbkMsUUFBUSxFQUFFO2FBQ1YsTUFBTSxFQUFFO2FBQ1Isa0JBQWtCLEVBQUU7YUFDcEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0NBQ0YsQ0FBQTs7WUF6SytCLE9BQU87WUFDVixhQUFhO3lDQUMzQixNQUFNLFNBQUMsU0FBUzs0Q0FDaEIsTUFBTSxTQUFDLG9CQUFvQjtZQUNxQixrQkFBa0IsdUJBQWxFLFFBQVEsWUFBSSxRQUFROztBQXBDdEIsa0JBQWtCO0lBRDlCLFVBQVUsRUFBRTtJQW1DRSxXQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUNqQixXQUFBLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBQzVCLFdBQUEsUUFBUSxFQUFFLENBQUEsRUFBRSxXQUFBLFFBQVEsRUFBRSxDQUFBO0dBcEN4QixrQkFBa0IsQ0F5TTlCO1NBek1ZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdCwgSW5qZWN0YWJsZSwgTE9DQUxFX0lELCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRSZWYgfSBmcm9tICcuLi9jbGFzc2VzL2tleWJvYXJkLXJlZi5jbGFzcyc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNQVRfS0VZQk9BUkRfTEFZT1VUUyB9IGZyb20gJy4uL2NvbmZpZ3Mva2V5Ym9hcmQtbGF5b3V0cy5jb25maWcnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0cyB9IGZyb20gJy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUxvY2FsZU1hcCB9IGZyb20gJy4uL2ludGVyZmFjZXMvbG9jYWxlLW1hcC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgX2FwcGx5QXZhaWxhYmxlTGF5b3V0cywgX2FwcGx5Q29uZmlnRGVmYXVsdHMgfSBmcm9tICcuLi91dGlscy9rZXlib2FyZC51dGlscyc7XG5cbi8qKlxuICogU2VydmljZSB0byBkaXNwYXRjaCBNYXRlcmlhbCBEZXNpZ24ga2V5Ym9hcmQuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZFNlcnZpY2Uge1xuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50IGtleWJvYXJkIGluIHRoZSB2aWV3ICphdCB0aGlzIGxldmVsKiAoaW4gdGhlIEFuZ3VsYXIgaW5qZWN0b3IgdHJlZSkuXG4gICAqIElmIHRoZXJlIGlzIGEgcGFyZW50IGtleWJvYXJkIHNlcnZpY2UsIGFsbCBvcGVyYXRpb25zIHNob3VsZCBkZWxlZ2F0ZSB0byB0aGF0IHBhcmVudFxuICAgKiB2aWEgYF9vcGVuZWRLZXlib2FyZFJlZmAuXG4gICAqL1xuICBwcml2YXRlIF9rZXlib2FyZFJlZkF0VGhpc0xldmVsOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9hdmFpbGFibGVMb2NhbGVzOiBJTG9jYWxlTWFwID0ge307XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgY3VycmVudGx5IG9wZW5lZCBrZXlib2FyZCBhdCAqYW55KiBsZXZlbC4gKi9cbiAgcHJpdmF0ZSBnZXQgX29wZW5lZEtleWJvYXJkUmVmKCk6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PiB8IG51bGwge1xuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMuX3BhcmVudEtleWJvYXJkO1xuICAgIHJldHVybiBwYXJlbnQgPyBwYXJlbnQuX29wZW5lZEtleWJvYXJkUmVmIDogdGhpcy5fa2V5Ym9hcmRSZWZBdFRoaXNMZXZlbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0IF9vcGVuZWRLZXlib2FyZFJlZih2YWx1ZTogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+KSB7XG4gICAgaWYgKHRoaXMuX3BhcmVudEtleWJvYXJkKSB7XG4gICAgICB0aGlzLl9wYXJlbnRLZXlib2FyZC5fb3BlbmVkS2V5Ym9hcmRSZWYgPSB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fa2V5Ym9hcmRSZWZBdFRoaXNMZXZlbCA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIGdldCBhdmFpbGFibGVMb2NhbGVzKCk6IElMb2NhbGVNYXAge1xuICAgIHJldHVybiB0aGlzLl9hdmFpbGFibGVMb2NhbGVzO1xuICB9XG5cbiAgZ2V0IGlzT3BlbmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX29wZW5lZEtleWJvYXJkUmVmO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbGl2ZTogTGl2ZUFubm91bmNlcixcbiAgICAgICAgICAgICAgQEluamVjdChMT0NBTEVfSUQpIHByaXZhdGUgX2RlZmF1bHRMb2NhbGU6IHN0cmluZyxcbiAgICAgICAgICAgICAgQEluamVjdChNQVRfS0VZQk9BUkRfTEFZT1VUUykgcHJpdmF0ZSBfbGF5b3V0czogSUtleWJvYXJkTGF5b3V0cyxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSBfcGFyZW50S2V5Ym9hcmQ6IE1hdEtleWJvYXJkU2VydmljZSkge1xuICAgIC8vIHByZXBhcmUgYXZhaWxhYmxlIGxheW91dHMgbWFwcGluZ1xuICAgIHRoaXMuX2F2YWlsYWJsZUxvY2FsZXMgPSBfYXBwbHlBdmFpbGFibGVMYXlvdXRzKF9sYXlvdXRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuZCBkaXNwYXRjaGVzIGEga2V5Ym9hcmQgd2l0aCBhIGN1c3RvbSBjb21wb25lbnQgZm9yIHRoZSBjb250ZW50LCByZW1vdmluZyBhbnlcbiAgICogY3VycmVudGx5IG9wZW5lZCBrZXlib2FyZHMuXG4gICAqXG4gICAqIEBwYXJhbSBsYXlvdXRPckxvY2FsZSBsYXlvdXQgb3IgbG9jYWxlIHRvIHVzZS5cbiAgICogQHBhcmFtIGNvbmZpZyBFeHRyYSBjb25maWd1cmF0aW9uIGZvciB0aGUga2V5Ym9hcmQuXG4gICAqL1xuICBvcGVuRnJvbUNvbXBvbmVudChsYXlvdXRPckxvY2FsZTogc3RyaW5nLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+IHtcbiAgICBjb25zdCBrZXlib2FyZFJlZjogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+ID0gdGhpcy5fYXR0YWNoS2V5Ym9hcmRDb250ZW50KGNvbmZpZyk7XG5cbiAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5kYXJrVGhlbWUgPSBjb25maWcuZGFya1RoZW1lO1xuICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmlzRGVidWcgPSBjb25maWcuaXNEZWJ1ZztcblxuICAgIC8vIGEgbG9jYWxlIGlzIHByb3ZpZGVkXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTG9jYWxlc1tsYXlvdXRPckxvY2FsZV0pIHtcbiAgICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmxvY2FsZSA9IGxheW91dE9yTG9jYWxlO1xuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubGF5b3V0ID0gdGhpcy5nZXRMYXlvdXRGb3JMb2NhbGUobGF5b3V0T3JMb2NhbGUpO1xuICAgIH1cblxuICAgIC8vIGEgbGF5b3V0IG5hbWUgaXMgcHJvdmlkZWRcbiAgICBpZiAodGhpcy5fbGF5b3V0c1tsYXlvdXRPckxvY2FsZV0pIHtcbiAgICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmxheW91dCA9IHRoaXMuX2xheW91dHNbbGF5b3V0T3JMb2NhbGVdO1xuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubG9jYWxlID0gdGhpcy5fbGF5b3V0c1tsYXlvdXRPckxvY2FsZV0ubGFuZyAmJiB0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXS5sYW5nLnBvcCgpO1xuICAgIH1cblxuICAgIGlmIChjb25maWcuY3VzdG9tSWNvbnMpIHtcbiAgICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmljb25zID0gY29uZmlnLmN1c3RvbUljb25zO1xuICAgIH1cblxuICAgIC8vIFdoZW4gdGhlIGtleWJvYXJkIGlzIGRpc21pc3NlZCwgbG93ZXIgdGhlIGtleWJvYXJkIGNvdW50ZXIuXG4gICAga2V5Ym9hcmRSZWZcbiAgICAgIC5hZnRlckRpc21pc3NlZCgpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLy8gQ2xlYXIgdGhlIGtleWJvYXJkIHJlZiBpZiBpdCBoYXNuJ3QgYWxyZWFkeSBiZWVuIHJlcGxhY2VkIGJ5IGEgbmV3ZXIga2V5Ym9hcmQuXG4gICAgICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZiA9PT0ga2V5Ym9hcmRSZWYpIHtcbiAgICAgICAgICB0aGlzLl9vcGVuZWRLZXlib2FyZFJlZiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuX29wZW5lZEtleWJvYXJkUmVmKSB7XG4gICAgICAvLyBJZiBhIGtleWJvYXJkIGlzIGFscmVhZHkgaW4gdmlldywgZGlzbWlzcyBpdCBhbmQgZW50ZXIgdGhlXG4gICAgICAvLyBuZXcga2V5Ym9hcmQgYWZ0ZXIgZXhpdCBhbmltYXRpb24gaXMgY29tcGxldGUuXG4gICAgICB0aGlzLl9vcGVuZWRLZXlib2FyZFJlZlxuICAgICAgICAuYWZ0ZXJEaXNtaXNzZWQoKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBrZXlib2FyZFJlZi5jb250YWluZXJJbnN0YW5jZS5lbnRlcigpO1xuICAgICAgICB9KTtcbiAgICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmLmRpc21pc3MoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSWYgbm8ga2V5Ym9hcmQgaXMgaW4gdmlldywgZW50ZXIgdGhlIG5ldyBrZXlib2FyZC5cbiAgICAgIGtleWJvYXJkUmVmLmNvbnRhaW5lckluc3RhbmNlLmVudGVyKCk7XG4gICAgfVxuXG4gICAgLy8gSWYgYSBkaXNtaXNzIHRpbWVvdXQgaXMgcHJvdmlkZWQsIHNldCB1cCBkaXNtaXNzIGJhc2VkIG9uIGFmdGVyIHRoZSBrZXlib2FyZCBpcyBvcGVuZWQuXG4gICAgLy8gaWYgKGNvbmZpZ3MuZHVyYXRpb24gPiAwKSB7XG4gICAgLy8gICBrZXlib2FyZFJlZi5hZnRlck9wZW5lZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgLy8gICAgIHNldFRpbWVvdXQoKCkgPT4ga2V5Ym9hcmRSZWYuZGlzbWlzcygpLCBjb25maWdzLmR1cmF0aW9uKTtcbiAgICAvLyAgIH0pO1xuICAgIC8vIH1cblxuICAgIGlmIChjb25maWcuYW5ub3VuY2VtZW50TWVzc2FnZSkge1xuICAgICAgdGhpcy5fbGl2ZS5hbm5vdW5jZShjb25maWcuYW5ub3VuY2VtZW50TWVzc2FnZSwgY29uZmlnLnBvbGl0ZW5lc3MpO1xuICAgIH1cblxuICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmID0ga2V5Ym9hcmRSZWY7XG4gICAgcmV0dXJuIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEga2V5Ym9hcmQgd2l0aCBhIG1lc3NhZ2UgYW5kIGFuIG9wdGlvbmFsIGFjdGlvbi5cbiAgICogQHBhcmFtIGxheW91dE9yTG9jYWxlIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgbG9jYWxlIG9yIHRoZSBsYXlvdXQgbmFtZSB0byBiZSB1c2VkLlxuICAgKiBAcGFyYW0gY29uZmlnIEFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUga2V5Ym9hcmQuXG4gICAqL1xuICBvcGVuKGxheW91dE9yTG9jYWxlOiBzdHJpbmcgPSB0aGlzLl9kZWZhdWx0TG9jYWxlLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnID0ge30pOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4ge1xuICAgIGNvbnN0IF9jb25maWcgPSBfYXBwbHlDb25maWdEZWZhdWx0cyhjb25maWcpO1xuXG4gICAgcmV0dXJuIHRoaXMub3BlbkZyb21Db21wb25lbnQobGF5b3V0T3JMb2NhbGUsIF9jb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc21pc3NlcyB0aGUgY3VycmVudGx5LXZpc2libGUga2V5Ym9hcmQuXG4gICAqL1xuICBkaXNtaXNzKCkge1xuICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZikge1xuICAgICAgdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYXAgYSBnaXZlbiBsb2NhbGUgdG8gYSBsYXlvdXQgbmFtZS5cbiAgICogQHBhcmFtIGxvY2FsZSBUaGUgbGF5b3V0IG5hbWVcbiAgICovXG4gIG1hcExvY2FsZShsb2NhbGU6IHN0cmluZyA9IHRoaXMuX2RlZmF1bHRMb2NhbGUpOiBzdHJpbmcge1xuICAgIGxldCBsYXlvdXQ6IHN0cmluZztcbiAgICBjb25zdCBjb3VudHJ5ID0gbG9jYWxlXG4gICAgICAuc3BsaXQoJy0nKVxuICAgICAgLnNoaWZ0KCk7XG5cbiAgICAvLyBzZWFyY2ggZm9yIGxheW91dCBtYXRjaGluZyB0aGVcbiAgICAvLyBmaXJzdCBwYXJ0LCB0aGUgY291bnRyeSBjb2RlXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTG9jYWxlc1tjb3VudHJ5XSkge1xuICAgICAgbGF5b3V0ID0gdGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV07XG4gICAgfVxuXG4gICAgLy8gbG9vayBpZiB0aGUgZGV0YWlsZWQgbG9jYWxlIG1hdGNoZXMgYW55IGxheW91dFxuICAgIGlmICh0aGlzLmF2YWlsYWJsZUxvY2FsZXNbbG9jYWxlXSkge1xuICAgICAgbGF5b3V0ID0gdGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV07XG4gICAgfVxuXG4gICAgaWYgKCFsYXlvdXQpIHtcbiAgICAgIHRocm93IEVycm9yKGBObyBsYXlvdXQgZm91bmQgZm9yIGxvY2FsZSAke2xvY2FsZX1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGF5b3V0O1xuICB9XG5cbiAgZ2V0TGF5b3V0Rm9yTG9jYWxlKGxvY2FsZTogc3RyaW5nKTogSUtleWJvYXJkTGF5b3V0IHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0c1t0aGlzLm1hcExvY2FsZShsb2NhbGUpXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2hlcyB0aGUga2V5Ym9hcmQgY29udGFpbmVyIGNvbXBvbmVudCB0byB0aGUgb3ZlcmxheS5cbiAgICovXG4gIHByaXZhdGUgX2F0dGFjaEtleWJvYXJkQ29udGFpbmVyKG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsIGNvbmZpZzogTWF0S2V5Ym9hcmRDb25maWcpOiBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCB7XG4gICAgY29uc3QgY29udGFpbmVyUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCwgY29uZmlnLnZpZXdDb250YWluZXJSZWYpO1xuICAgIGNvbnN0IGNvbnRhaW5lclJlZjogQ29tcG9uZW50UmVmPE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50PiA9IG92ZXJsYXlSZWYuYXR0YWNoKGNvbnRhaW5lclBvcnRhbCk7XG5cbiAgICAvLyBzZXQgY29uZmlnXG4gICAgY29udGFpbmVyUmVmLmluc3RhbmNlLmtleWJvYXJkQ29uZmlnID0gY29uZmlnO1xuXG4gICAgcmV0dXJuIGNvbnRhaW5lclJlZi5pbnN0YW5jZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQbGFjZXMgYSBuZXcgY29tcG9uZW50IGFzIHRoZSBjb250ZW50IG9mIHRoZSBrZXlib2FyZCBjb250YWluZXIuXG4gICAqL1xuICBwcml2YXRlIF9hdHRhY2hLZXlib2FyZENvbnRlbnQoY29uZmlnOiBNYXRLZXlib2FyZENvbmZpZyk6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PiB7XG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuX2NyZWF0ZU92ZXJsYXkoKTtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9hdHRhY2hLZXlib2FyZENvbnRhaW5lcihvdmVybGF5UmVmLCBjb25maWcpO1xuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoTWF0S2V5Ym9hcmRDb21wb25lbnQpO1xuICAgIGNvbnN0IGNvbnRlbnRSZWYgPSBjb250YWluZXIuYXR0YWNoQ29tcG9uZW50UG9ydGFsKHBvcnRhbCk7XG4gICAgcmV0dXJuIG5ldyBNYXRLZXlib2FyZFJlZihjb250ZW50UmVmLmluc3RhbmNlLCBjb250YWluZXIsIG92ZXJsYXlSZWYpIGFzIE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG92ZXJsYXkgYW5kIHBsYWNlcyBpdCBpbiB0aGUgY29ycmVjdCBsb2NhdGlvbi5cbiAgICovXG4gIHByaXZhdGUgX2NyZWF0ZU92ZXJsYXkoKTogT3ZlcmxheVJlZiB7XG4gICAgY29uc3Qgc3RhdGUgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICB3aWR0aDogJzEwMCUnXG4gICAgfSk7XG5cbiAgICBzdGF0ZS5wb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheVxuICAgICAgLnBvc2l0aW9uKClcbiAgICAgIC5nbG9iYWwoKVxuICAgICAgLmNlbnRlckhvcml6b250YWxseSgpXG4gICAgICAuYm90dG9tKCcwJyk7XG5cbiAgICByZXR1cm4gdGhpcy5fb3ZlcmxheS5jcmVhdGUoc3RhdGUpO1xuICB9XG59XG4iXX0=

@@ -26,2 +26,2 @@ import { MatKeyboardConfig } from '../configs/keyboard.config';

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQudXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsidXRpbHMva2V5Ym9hcmQudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJL0Q7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUF5QjtJQUM1RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsT0FBeUI7SUFDOUQsTUFBTSxpQkFBaUIsR0FBZSxFQUFFLENBQUM7SUFFekMsTUFBTTtTQUNILElBQUksQ0FBQyxPQUFPLENBQUM7U0FDYixNQUFNLENBQUMsQ0FBQyxNQUFjLEVBQUUsRUFBRSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDckQsT0FBTyxDQUFDLENBQUMsTUFBYyxFQUFFLEVBQUU7UUFDMUIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFZLEVBQUUsRUFBRTtZQUM1QyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVMLE9BQU8saUJBQWlCLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdEtleWJvYXJkQ29uZmlnIH0gZnJvbSAnLi4vY29uZmlncy9rZXlib2FyZC5jb25maWcnO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXRzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElMb2NhbGVNYXAgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2xvY2FsZS1tYXAuaW50ZXJmYWNlJztcclxuXHJcbi8qKlxyXG4gKiBBcHBsaWVzIGRlZmF1bHQgb3B0aW9ucyB0byB0aGUga2V5Ym9hcmQgY29uZmlncy5cclxuICogQHBhcmFtIGNvbmZpZyBUaGUgY29uZmlndXJhdGlvbiB0byB3aGljaCB0aGUgZGVmYXVsdHMgd2lsbCBiZSBhcHBsaWVkLlxyXG4gKiBAcmV0dXJucyBUaGUgbmV3IGNvbmZpZ3VyYXRpb24gb2JqZWN0IHdpdGggZGVmYXVsdHMgYXBwbGllZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBfYXBwbHlDb25maWdEZWZhdWx0cyhjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRDb25maWcge1xyXG4gIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBNYXRLZXlib2FyZENvbmZpZygpLCBjb25maWcpO1xyXG59XHJcblxyXG4vKipcclxuICogQXBwbGllcyBhdmFpbGFibGUgbGF5b3V0cy5cclxuICogQHBhcmFtIGxheW91dHNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBfYXBwbHlBdmFpbGFibGVMYXlvdXRzKGxheW91dHM6IElLZXlib2FyZExheW91dHMpOiBJTG9jYWxlTWFwIHtcclxuICBjb25zdCBfYXZhaWxhYmxlTG9jYWxlczogSUxvY2FsZU1hcCA9IHt9O1xyXG5cclxuICBPYmplY3RcclxuICAgIC5rZXlzKGxheW91dHMpXHJcbiAgICAuZmlsdGVyKChsYXlvdXQ6IHN0cmluZykgPT4gJ2xhbmcnIGluIGxheW91dHNbbGF5b3V0XSlcclxuICAgIC5mb3JFYWNoKChsYXlvdXQ6IHN0cmluZykgPT4ge1xyXG4gICAgICBsYXlvdXRzW2xheW91dF0ubGFuZy5mb3JFYWNoKChsYW5nOiBzdHJpbmcpID0+IHtcclxuICAgICAgICBfYXZhaWxhYmxlTG9jYWxlc1tsYW5nXSA9IGxheW91dDtcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuXHJcbiAgcmV0dXJuIF9hdmFpbGFibGVMb2NhbGVzO1xyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQudXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsidXRpbHMva2V5Ym9hcmQudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJL0Q7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUF5QjtJQUM1RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsT0FBeUI7SUFDOUQsTUFBTSxpQkFBaUIsR0FBZSxFQUFFLENBQUM7SUFFekMsTUFBTTtTQUNILElBQUksQ0FBQyxPQUFPLENBQUM7U0FDYixNQUFNLENBQUMsQ0FBQyxNQUFjLEVBQUUsRUFBRSxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDckQsT0FBTyxDQUFDLENBQUMsTUFBYyxFQUFFLEVBQUU7UUFDMUIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFZLEVBQUUsRUFBRTtZQUM1QyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVMLE9BQU8saUJBQWlCLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdEtleWJvYXJkQ29uZmlnIH0gZnJvbSAnLi4vY29uZmlncy9rZXlib2FyZC5jb25maWcnO1xuaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0cyB9IGZyb20gJy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUxvY2FsZU1hcCB9IGZyb20gJy4uL2ludGVyZmFjZXMvbG9jYWxlLW1hcC5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEFwcGxpZXMgZGVmYXVsdCBvcHRpb25zIHRvIHRoZSBrZXlib2FyZCBjb25maWdzLlxuICogQHBhcmFtIGNvbmZpZyBUaGUgY29uZmlndXJhdGlvbiB0byB3aGljaCB0aGUgZGVmYXVsdHMgd2lsbCBiZSBhcHBsaWVkLlxuICogQHJldHVybnMgVGhlIG5ldyBjb25maWd1cmF0aW9uIG9iamVjdCB3aXRoIGRlZmF1bHRzIGFwcGxpZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBfYXBwbHlDb25maWdEZWZhdWx0cyhjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRDb25maWcge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgTWF0S2V5Ym9hcmRDb25maWcoKSwgY29uZmlnKTtcbn1cblxuLyoqXG4gKiBBcHBsaWVzIGF2YWlsYWJsZSBsYXlvdXRzLlxuICogQHBhcmFtIGxheW91dHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIF9hcHBseUF2YWlsYWJsZUxheW91dHMobGF5b3V0czogSUtleWJvYXJkTGF5b3V0cyk6IElMb2NhbGVNYXAge1xuICBjb25zdCBfYXZhaWxhYmxlTG9jYWxlczogSUxvY2FsZU1hcCA9IHt9O1xuXG4gIE9iamVjdFxuICAgIC5rZXlzKGxheW91dHMpXG4gICAgLmZpbHRlcigobGF5b3V0OiBzdHJpbmcpID0+ICdsYW5nJyBpbiBsYXlvdXRzW2xheW91dF0pXG4gICAgLmZvckVhY2goKGxheW91dDogc3RyaW5nKSA9PiB7XG4gICAgICBsYXlvdXRzW2xheW91dF0ubGFuZy5mb3JFYWNoKChsYW5nOiBzdHJpbmcpID0+IHtcbiAgICAgICAgX2F2YWlsYWJsZUxvY2FsZXNbbGFuZ10gPSBsYXlvdXQ7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICByZXR1cm4gX2F2YWlsYWJsZUxvY2FsZXM7XG59XG4iXX0=

@@ -49,2 +49,2 @@ import { Subject } from 'rxjs';

export { MatKeyboardRef };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtcmVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFNM0M7O0dBRUc7QUFDSDtJQWNFLHdCQUFZLFFBQThCLEVBQ3hDLGlCQUFnRCxFQUN4QyxXQUF1QjtRQUZqQyxpQkFTQztRQVBTLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBZGpDLG1FQUFtRTtRQUMzRCxpQkFBWSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRW5ELGdGQUFnRjtRQUN4RSxpQkFBWSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBV2pELGdFQUFnRTtRQUNoRSxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFFM0MsNkJBQTZCO1FBQzdCLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxjQUFjLEVBQUUsRUFBckIsQ0FBcUIsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsZ0NBQU8sR0FBUDtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLDhCQUFLLEdBQUw7UUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELGlGQUFpRjtJQUNqRix1Q0FBYyxHQUFkO1FBQ0UsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxxRkFBcUY7SUFDckYsb0NBQVcsR0FBWDtRQUNFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztJQUN4QyxDQUFDO0lBRUQsdUNBQXVDO0lBQy9CLHVDQUFjLEdBQXRCO1FBQ0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUNILHFCQUFDO0FBQUQsQ0FBQyxBQXpERCxJQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBSZWZlcmVuY2UgdG8gYSBrZXlib2FyZCBkaXNwYXRjaGVkIGZyb20gdGhlIGtleWJvYXJkIHNlcnZpY2UuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRSZWY8VD4ge1xyXG5cclxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoZSB1c2VyIHRoYXQgdGhlIGtleWJvYXJkIGhhcyBjbG9zZWQuICovXHJcbiAgcHJpdmF0ZSBfYWZ0ZXJDbG9zZWQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhlIHVzZXIgdGhhdCB0aGUga2V5Ym9hcmQgaGFzIG9wZW5lZCBhbmQgYXBwZWFyZWQuICovXHJcbiAgcHJpdmF0ZSBfYWZ0ZXJPcGVuZWQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIC8qKiBUaGUgaW5zdGFuY2Ugb2YgdGhlIGNvbXBvbmVudCBtYWtpbmcgdXAgdGhlIGNvbnRlbnQgb2YgdGhlIGtleWJvYXJkLiAqL1xyXG4gIGluc3RhbmNlOiBNYXRLZXlib2FyZENvbXBvbmVudDtcclxuXHJcbiAgLyoqIFRoZSBpbnN0YW5jZSBvZiB0aGUgY29tcG9uZW50IG1ha2luZyB1cCB0aGUgY29udGVudCBvZiB0aGUga2V5Ym9hcmQuICovXHJcbiAgY29udGFpbmVySW5zdGFuY2U6IE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50O1xyXG5cclxuICBjb25zdHJ1Y3RvcihpbnN0YW5jZTogTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBjb250YWluZXJJbnN0YW5jZTogTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmKSB7XHJcbiAgICAvLyBTZXRzIHRoZSByZWFkb25seSBpbnN0YW5jZSBvZiB0aGUga2V5Ym9hcmQgY29udGVudCBjb21wb25lbnQuXHJcbiAgICB0aGlzLmluc3RhbmNlID0gaW5zdGFuY2U7XHJcbiAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlID0gY29udGFpbmVySW5zdGFuY2U7XHJcblxyXG4gICAgLy8gRmluaXNoIGRpc21pc3Mgb24gZXhpdHRpbmdcclxuICAgIGNvbnRhaW5lckluc3RhbmNlLm9uRXhpdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZmluaXNoRGlzbWlzcygpKTtcclxuICB9XHJcblxyXG4gIC8qKiBEaXNtaXNzZXMgdGhlIGtleWJvYXJkLiAqL1xyXG4gIGRpc21pc3MoKSB7XHJcbiAgICBpZiAoIXRoaXMuX2FmdGVyQ2xvc2VkLmNsb3NlZCkge1xyXG4gICAgICB0aGlzLmNvbnRhaW5lckluc3RhbmNlLmV4aXQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBNYXJrcyB0aGUga2V5Ym9hcmQgYXMgb3BlbmVkICovXHJcbiAgX29wZW4oKSB7XHJcbiAgICBpZiAoIXRoaXMuX2FmdGVyT3BlbmVkLmNsb3NlZCkge1xyXG4gICAgICB0aGlzLl9hZnRlck9wZW5lZC5uZXh0KCk7XHJcbiAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogR2V0cyBhbiBvYnNlcnZhYmxlIHRoYXQgaXMgbm90aWZpZWQgd2hlbiB0aGUga2V5Ym9hcmQgaXMgZmluaXNoZWQgY2xvc2luZy4gKi9cclxuICBhZnRlckRpc21pc3NlZCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9hZnRlckNsb3NlZC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIC8qKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBrZXlib2FyZCBoYXMgb3BlbmVkIGFuZCBhcHBlYXJlZC4gKi9cclxuICBhZnRlck9wZW5lZCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRhaW5lckluc3RhbmNlLm9uRW50ZXI7XHJcbiAgfVxyXG5cclxuICAvKiogQ2xlYW5zIHVwIHRoZSBET00gYWZ0ZXIgY2xvc2luZy4gKi9cclxuICBwcml2YXRlIF9maW5pc2hEaXNtaXNzKCkge1xyXG4gICAgdGhpcy5fb3ZlcmxheVJlZi5kaXNwb3NlKCk7XHJcblxyXG4gICAgdGhpcy5fYWZ0ZXJDbG9zZWQubmV4dCgpO1xyXG4gICAgdGhpcy5fYWZ0ZXJDbG9zZWQuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtcmVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJM0M7O0dBRUc7QUFDSDtJQWNFLHdCQUFZLFFBQThCLEVBQ3hDLGlCQUFnRCxFQUN4QyxXQUF1QjtRQUZqQyxpQkFTQztRQVBTLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBZGpDLG1FQUFtRTtRQUMzRCxpQkFBWSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRW5ELGdGQUFnRjtRQUN4RSxpQkFBWSxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBV2pELGdFQUFnRTtRQUNoRSxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFFM0MsNkJBQTZCO1FBQzdCLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxjQUFjLEVBQUUsRUFBckIsQ0FBcUIsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsZ0NBQU8sR0FBUDtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRTtZQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLDhCQUFLLEdBQUw7UUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELGlGQUFpRjtJQUNqRix1Q0FBYyxHQUFkO1FBQ0UsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxxRkFBcUY7SUFDckYsb0NBQVcsR0FBWDtRQUNFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztJQUN4QyxDQUFDO0lBRUQsdUNBQXVDO0lBQy9CLHVDQUFjLEdBQXRCO1FBQ0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUNILHFCQUFDO0FBQUQsQ0FBQyxBQXpERCxJQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XG5cbi8qKlxuICogUmVmZXJlbmNlIHRvIGEga2V5Ym9hcmQgZGlzcGF0Y2hlZCBmcm9tIHRoZSBrZXlib2FyZCBzZXJ2aWNlLlxuICovXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRSZWY8VD4ge1xuXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhlIHVzZXIgdGhhdCB0aGUga2V5Ym9hcmQgaGFzIGNsb3NlZC4gKi9cbiAgcHJpdmF0ZSBfYWZ0ZXJDbG9zZWQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBrZXlib2FyZCBoYXMgb3BlbmVkIGFuZCBhcHBlYXJlZC4gKi9cbiAgcHJpdmF0ZSBfYWZ0ZXJPcGVuZWQ6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgLyoqIFRoZSBpbnN0YW5jZSBvZiB0aGUgY29tcG9uZW50IG1ha2luZyB1cCB0aGUgY29udGVudCBvZiB0aGUga2V5Ym9hcmQuICovXG4gIGluc3RhbmNlOiBNYXRLZXlib2FyZENvbXBvbmVudDtcblxuICAvKiogVGhlIGluc3RhbmNlIG9mIHRoZSBjb21wb25lbnQgbWFraW5nIHVwIHRoZSBjb250ZW50IG9mIHRoZSBrZXlib2FyZC4gKi9cbiAgY29udGFpbmVySW5zdGFuY2U6IE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50O1xuXG4gIGNvbnN0cnVjdG9yKGluc3RhbmNlOiBNYXRLZXlib2FyZENvbXBvbmVudCxcbiAgICBjb250YWluZXJJbnN0YW5jZTogTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQsXG4gICAgcHJpdmF0ZSBfb3ZlcmxheVJlZjogT3ZlcmxheVJlZikge1xuICAgIC8vIFNldHMgdGhlIHJlYWRvbmx5IGluc3RhbmNlIG9mIHRoZSBrZXlib2FyZCBjb250ZW50IGNvbXBvbmVudC5cbiAgICB0aGlzLmluc3RhbmNlID0gaW5zdGFuY2U7XG4gICAgdGhpcy5jb250YWluZXJJbnN0YW5jZSA9IGNvbnRhaW5lckluc3RhbmNlO1xuXG4gICAgLy8gRmluaXNoIGRpc21pc3Mgb24gZXhpdHRpbmdcbiAgICBjb250YWluZXJJbnN0YW5jZS5vbkV4aXQuc3Vic2NyaWJlKCgpID0+IHRoaXMuX2ZpbmlzaERpc21pc3MoKSk7XG4gIH1cblxuICAvKiogRGlzbWlzc2VzIHRoZSBrZXlib2FyZC4gKi9cbiAgZGlzbWlzcygpIHtcbiAgICBpZiAoIXRoaXMuX2FmdGVyQ2xvc2VkLmNsb3NlZCkge1xuICAgICAgdGhpcy5jb250YWluZXJJbnN0YW5jZS5leGl0KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIE1hcmtzIHRoZSBrZXlib2FyZCBhcyBvcGVuZWQgKi9cbiAgX29wZW4oKSB7XG4gICAgaWYgKCF0aGlzLl9hZnRlck9wZW5lZC5jbG9zZWQpIHtcbiAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLm5leHQoKTtcbiAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLmNvbXBsZXRlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEdldHMgYW4gb2JzZXJ2YWJsZSB0aGF0IGlzIG5vdGlmaWVkIHdoZW4gdGhlIGtleWJvYXJkIGlzIGZpbmlzaGVkIGNsb3NpbmcuICovXG4gIGFmdGVyRGlzbWlzc2VkKCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl9hZnRlckNsb3NlZC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBrZXlib2FyZCBoYXMgb3BlbmVkIGFuZCBhcHBlYXJlZC4gKi9cbiAgYWZ0ZXJPcGVuZWQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGFpbmVySW5zdGFuY2Uub25FbnRlcjtcbiAgfVxuXG4gIC8qKiBDbGVhbnMgdXAgdGhlIERPTSBhZnRlciBjbG9zaW5nLiAqL1xuICBwcml2YXRlIF9maW5pc2hEaXNtaXNzKCkge1xuICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xuXG4gICAgdGhpcy5fYWZ0ZXJDbG9zZWQubmV4dCgpO1xuICAgIHRoaXMuX2FmdGVyQ2xvc2VkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __extends } from "tslib";
import { animate, state, style, transition, trigger } from '@angular/animations';

@@ -19,3 +19,3 @@ import { BasePortalOutlet, CdkPortalOutlet } from '@angular/cdk/portal';

var MatKeyboardContainerComponent = /** @class */ (function (_super) {
tslib_1.__extends(MatKeyboardContainerComponent, _super);
__extends(MatKeyboardContainerComponent, _super);
function MatKeyboardContainerComponent(_ngZone, _changeDetectorRef) {

@@ -103,21 +103,21 @@ var _this = _super.call(this) || this;

]; };
tslib_1.__decorate([
__decorate([
ViewChild(CdkPortalOutlet, { static: true })
], MatKeyboardContainerComponent.prototype, "_portalOutlet", void 0);
tslib_1.__decorate([
__decorate([
HostBinding('@state')
], MatKeyboardContainerComponent.prototype, "_animationState", void 0);
tslib_1.__decorate([
__decorate([
HostBinding('attr.role')
], MatKeyboardContainerComponent.prototype, "attrRole", void 0);
tslib_1.__decorate([
__decorate([
HostListener('mousedown', ['$event'])
], MatKeyboardContainerComponent.prototype, "onMousedown", null);
tslib_1.__decorate([
__decorate([
HostListener('@state.done', ['$event'])
], MatKeyboardContainerComponent.prototype, "onAnimationEnd", null);
MatKeyboardContainerComponent = tslib_1.__decorate([
MatKeyboardContainerComponent = __decorate([
Component({
selector: 'mat-keyboard-container',
template: "<ng-template cdkPortalHost></ng-template>\r\n",
template: "<ng-template cdkPortalHost></ng-template>\n",
changeDetection: ChangeDetectionStrategy.OnPush,

@@ -139,3 +139,3 @@ preserveWhitespaces: false,

],
styles: [":host{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);border-radius:2px;box-sizing:border-box;display:block;margin:0 auto;max-width:960px;min-width:568px;-webkit-transform:translateY(100%);transform:translateY(100%)}@media (-ms-high-contrast:active){:host{border:1px solid}}"]
styles: [":host{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);border-radius:2px;box-sizing:border-box;display:block;margin:0 auto;max-width:960px;min-width:568px;-webkit-transform:translateY(100%);transform:translateY(100%)}.cdk-high-contrast-active :host{border:1px solid}.cdk-high-contrast-active :host :host{border:1px solid}"]
})

@@ -146,2 +146,2 @@ ], MatKeyboardContainerComponent);

export { MatKeyboardContainerComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFrQixLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlLLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU3Riw0RUFBNEU7QUFDNUUsMkZBQTJGO0FBQzNGLE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBTSxrQkFBa0IsQ0FBQyxRQUFRLFNBQUksZUFBZSxDQUFDLGtCQUFvQixDQUFDO0FBQ3JHLE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBTSxrQkFBa0IsQ0FBQyxPQUFPLFNBQUksZUFBZSxDQUFDLGtCQUFvQixDQUFDO0FBRXBHOzs7R0FHRztBQXNCSDtJQUFtRCx5REFBZ0I7SUF5QmpFLHVDQUFvQixPQUFlLEVBQ2Ysa0JBQXFDO1FBRHpELFlBRUUsaUJBQU8sU0FDUjtRQUhtQixhQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2Ysd0JBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQXhCekQsZ0RBQWdEO1FBQ3hDLGdCQUFVLEdBQUcsS0FBSyxDQUFDO1FBTTNCLDRDQUE0QztRQUU1QyxxQkFBZSxHQUEyQixzQkFBc0IsQ0FBQyxJQUFJLENBQUM7UUFFdEUsb0VBQW9FO1FBQ3BFLFlBQU0sR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUVyQyw4RUFBOEU7UUFDOUUsYUFBTyxHQUFpQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBR3RDLGNBQVEsR0FBRyxPQUFPLENBQUM7O0lBUW5CLENBQUM7SUFHRCxtREFBVyxHQUFYLFVBQVksS0FBaUI7UUFDM0IsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCx1RUFBdUU7SUFDdkUsNkRBQXFCLEdBQXJCLFVBQXlCLE1BQTBCO1FBQ2pELElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNwQyxNQUFNLEtBQUssQ0FBQyx5RUFBeUUsQ0FBQyxDQUFDO1NBQ3hGO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxpRUFBaUU7SUFDakUsNERBQW9CLEdBQXBCO1FBQ0UsTUFBTSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsb0VBQW9FO0lBRXBFLHNEQUFjLEdBQWQsVUFBZSxLQUFxQjtRQUMxQixJQUFBLDJCQUFTLEVBQUUsdUJBQU8sQ0FBVztRQUVyQyxJQUFJLENBQUMsT0FBTyxLQUFLLHNCQUFzQixDQUFDLElBQUksSUFBSSxTQUFTLEtBQUssc0JBQXNCLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMxSCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7UUFFRCxJQUFJLE9BQU8sS0FBSyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUU7WUFDOUMsMERBQTBEO1lBQzFELHNDQUFzQztZQUN0QyxJQUFNLFNBQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBRTdCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO2dCQUNmLFNBQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDZixTQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxzREFBc0Q7SUFDdEQsNkNBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxlQUFlLEdBQUcsc0JBQXNCLENBQUMsT0FBTyxDQUFDO1lBQ3RELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN6QztJQUNILENBQUM7SUFFRCwwREFBMEQ7SUFDMUQsNENBQUksR0FBSjtRQUNFLElBQUksQ0FBQyxlQUFlLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxtREFBVyxHQUFYO1FBQ0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxxREFBYSxHQUFyQjtRQUFBLGlCQVFDO1FBUEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0I7YUFDMUIsWUFBWSxFQUFFO2FBQ2QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxDQUFDO1lBQ1QsS0FBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixLQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7Z0JBL0U0QixNQUFNO2dCQUNLLGlCQUFpQjs7SUFuQnpEO1FBREMsU0FBUyxDQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQzt3RUFDTjtJQUl2QztRQURDLFdBQVcsQ0FBQyxRQUFRLENBQUM7MEVBQ2dEO0lBU3RFO1FBREMsV0FBVyxDQUFDLFdBQVcsQ0FBQzttRUFDTjtJQVduQjtRQURDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztvRUFHckM7SUFrQkQ7UUFEQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7dUVBa0J2QztJQXBFVSw2QkFBNkI7UUFyQnpDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSx3QkFBd0I7WUFDbEMseURBQWtEO1lBRWxELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLG1CQUFtQixFQUFFLEtBQUs7WUFDMUIsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2Qiw4REFBOEQ7WUFDOUQsZ0VBQWdFO1lBQ2hFLDhEQUE4RDtZQUM5RCxPQUFPO1lBQ1AsSUFBSTtZQUNKLFVBQVUsRUFBRTtnQkFDVixPQUFPLENBQUMsT0FBTyxFQUFFO29CQUNmLEtBQUssQ0FBQyxLQUFHLHNCQUFzQixDQUFDLE9BQVMsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO29CQUNsRixVQUFVLENBQUMsS0FBRywyQkFBMkIsQ0FBQyxJQUFNLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO29CQUMxRSxVQUFVLENBQUMsS0FBRywyQkFBMkIsQ0FBQyxJQUFNLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO2lCQUMzRSxDQUFDO2FBQ0g7O1NBQ0YsQ0FBQztPQUNXLDZCQUE2QixDQXlHekM7SUFBRCxvQ0FBQztDQUFBLEFBekdELENBQW1ELGdCQUFnQixHQXlHbEU7U0F6R1ksNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBCYXNlUG9ydGFsT3V0bGV0LCBDZGtQb3J0YWxPdXRsZXQsIENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgQ29tcG9uZW50UmVmLCBFbWJlZGRlZFZpZXdSZWYsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIE5nWm9uZSwgT25EZXN0cm95LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XHJcbmltcG9ydCB7IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9lbnVtcy9rZXlib2FyZC1hbmltYXRpb24tc3RhdGUuZW51bSc7XHJcbmltcG9ydCB7IEtleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbiB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLWFuaW1hdGlvbi10cmFuc2l0aW9uLmVudW0nO1xyXG5cclxuLy8gVE9ETzogd2UgY2FuJ3QgdXNlIGNvbnN0YW50cyBmcm9tIGFuaW1hdGlvbi50cyBoZXJlIGJlY2F1c2UgeW91IGNhbid0IHVzZVxyXG4vLyBhIHRleHQgaW50ZXJwb2xhdGlvbiBpbiBhbnl0aGluZyB0aGF0IGlzIGFuYWx5emVkIHN0YXRpY2FsbHkgd2l0aCBuZ2MgKGZvciBBb1QgY29tcGlsZSkuXHJcbmV4cG9ydCBjb25zdCBTSE9XX0FOSU1BVElPTiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FTlRFUklOR30gJHtBbmltYXRpb25DdXJ2ZXMuREVDRUxFUkFUSU9OX0NVUlZFfWA7XHJcbmV4cG9ydCBjb25zdCBISURFX0FOSU1BVElPTiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FWElUSU5HfSAke0FuaW1hdGlvbkN1cnZlcy5BQ0NFTEVSQVRJT05fQ1VSVkV9YDtcclxuXHJcbi8qKlxyXG4gKiBJbnRlcm5hbCBjb21wb25lbnQgdGhhdCB3cmFwcyB1c2VyLXByb3ZpZGVkIGtleWJvYXJkIGNvbnRlbnQuXHJcbiAqIEBkb2NzLXByaXZhdGVcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWtleWJvYXJkLWNvbnRhaW5lcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXHJcbiAgLy8gYW5pbWF0aW9uczogW1xyXG4gIC8vICAgdHJpZ2dlcignc3RhdGUnLCBbXHJcbiAgLy8gICAgIHN0YXRlKCd2aXNpYmxlJywgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCUpJ30pKSxcclxuICAvLyAgICAgdHJhbnNpdGlvbigndmlzaWJsZSA9PiBoaWRkZW4nLCBhbmltYXRlKEhJREVfQU5JTUFUSU9OKSksXHJcbiAgLy8gICAgIHRyYW5zaXRpb24oJ3ZvaWQgPT4gdmlzaWJsZScsIGFuaW1hdGUoU0hPV19BTklNQVRJT04pKSxcclxuICAvLyAgIF0pXHJcbiAgLy8gXVxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHRyaWdnZXIoJ3N0YXRlJywgW1xyXG4gICAgICBzdGF0ZShgJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZpc2libGV9YCwgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDAlKScgfSkpLFxyXG4gICAgICB0cmFuc2l0aW9uKGAke0tleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbi5IaWRlfWAsIGFuaW1hdGUoSElERV9BTklNQVRJT04pKSxcclxuICAgICAgdHJhbnNpdGlvbihgJHtLZXlib2FyZEFuaW1hdGlvblRyYW5zaXRpb24uU2hvd31gLCBhbmltYXRlKFNIT1dfQU5JTUFUSU9OKSlcclxuICAgIF0pXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlUG9ydGFsT3V0bGV0IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBoYXMgYmVlbiBkZXN0cm95ZWQuICovXHJcbiAgcHJpdmF0ZSBfZGVzdHJveWVkID0gZmFsc2U7XHJcblxyXG4gIC8qKiBUaGUgcG9ydGFsIG91dGxldCBpbnNpZGUgb2YgdGhpcyBjb250YWluZXIgaW50byB3aGljaCB0aGUga2V5Ym9hcmQgY29udGVudCB3aWxsIGJlIGxvYWRlZC4gKi9cclxuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSlcclxuICBwcml2YXRlIF9wb3J0YWxPdXRsZXQ6IENka1BvcnRhbE91dGxldDtcclxuXHJcbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUga2V5Ym9hcmQgYW5pbWF0aW9ucy4gKi9cclxuICBASG9zdEJpbmRpbmcoJ0BzdGF0ZScpXHJcbiAgX2FuaW1hdGlvblN0YXRlOiBLZXlib2FyZEFuaW1hdGlvblN0YXRlID0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkO1xyXG5cclxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoYXQgdGhlIGtleWJvYXJkIGhhcyBleGl0ZWQgZnJvbSB2aWV3LiAqL1xyXG4gIG9uRXhpdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGF0IHRoZSBrZXlib2FyZCBoYXMgZmluaXNoZWQgZW50ZXJpbmcgdGhlIHZpZXcuICovXHJcbiAgb25FbnRlcjogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxyXG4gIGF0dHJSb2xlID0gJ2FsZXJ0JztcclxuXHJcbiAgLy8gdGhlIGtleWJvYXJkIGNvbmZpZ3VyYXRpb25cclxuICBrZXlib2FyZENvbmZpZzogTWF0S2V5Ym9hcmRDb25maWc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX25nWm9uZTogTmdab25lLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25Nb3VzZWRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG5cclxuICAvKiogQXR0YWNoIGEgY29tcG9uZW50IHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyLiAqL1xyXG4gIGF0dGFjaENvbXBvbmVudFBvcnRhbDxUPihwb3J0YWw6IENvbXBvbmVudFBvcnRhbDxUPik6IENvbXBvbmVudFJlZjxUPiB7XHJcbiAgICBpZiAodGhpcy5fcG9ydGFsT3V0bGV0Lmhhc0F0dGFjaGVkKCkpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoJ0F0dGVtcHRpbmcgdG8gYXR0YWNoIGtleWJvYXJkIGNvbnRlbnQgYWZ0ZXIgY29udGVudCBpcyBhbHJlYWR5IGF0dGFjaGVkJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcclxuICB9XHJcblxyXG4gIC8vIEF0dGFjaCBhIHRlbXBsYXRlIHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyXHJcbiAgYXR0YWNoVGVtcGxhdGVQb3J0YWwoKTogRW1iZWRkZWRWaWV3UmVmPGFueT4ge1xyXG4gICAgdGhyb3cgRXJyb3IoJ05vdCB5ZXQgaW1wbGVtZW50ZWQnKTtcclxuICB9XHJcblxyXG4gIC8qKiBIYW5kbGUgZW5kIG9mIGFuaW1hdGlvbnMsIHVwZGF0aW5nIHRoZSBzdGF0ZSBvZiB0aGUga2V5Ym9hcmQuICovXHJcbiAgQEhvc3RMaXN0ZW5lcignQHN0YXRlLmRvbmUnLCBbJyRldmVudCddKVxyXG4gIG9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCkge1xyXG4gICAgY29uc3QgeyBmcm9tU3RhdGUsIHRvU3RhdGUgfSA9IGV2ZW50O1xyXG5cclxuICAgIGlmICgodG9TdGF0ZSA9PT0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkICYmIGZyb21TdGF0ZSAhPT0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkKSB8fCB0b1N0YXRlLnN0YXJ0c1dpdGgoJ2hpZGRlbicpKSB7XHJcbiAgICAgIHRoaXMuX2NvbXBsZXRlRXhpdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0b1N0YXRlID09PSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZpc2libGUpIHtcclxuICAgICAgLy8gTm90ZTogd2Ugc2hvdWxkbid0IHVzZSBgdGhpc2AgaW5zaWRlIHRoZSB6b25lIGNhbGxiYWNrLFxyXG4gICAgICAvLyBiZWNhdXNlIGl0IGNhbiBjYXVzZSBhIG1lbW9yeSBsZWFrLlxyXG4gICAgICBjb25zdCBvbkVudGVyID0gdGhpcy5vbkVudGVyO1xyXG5cclxuICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB7XHJcbiAgICAgICAgb25FbnRlci5uZXh0KCk7XHJcbiAgICAgICAgb25FbnRlci5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBCZWdpbiBhbmltYXRpb24gb2Yga2V5Ym9hcmQgZW50cmFuY2UgaW50byB2aWV3LiAqL1xyXG4gIGVudGVyKCkge1xyXG4gICAgaWYgKCF0aGlzLl9kZXN0cm95ZWQpIHtcclxuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGUgPSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZpc2libGU7XHJcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBCZWdpbiBhbmltYXRpb24gb2YgdGhlIHNuYWNrIGJhciBleGl0aW5nIGZyb20gdmlldy4gKi9cclxuICBleGl0KCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgdGhpcy5fYW5pbWF0aW9uU3RhdGUgPSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbjtcclxuICAgIHJldHVybiB0aGlzLm9uRXhpdDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ha2VzIHN1cmUgdGhlIGV4aXQgY2FsbGJhY2tzIGhhdmUgYmVlbiBpbnZva2VkIHdoZW4gdGhlIGVsZW1lbnQgaXMgZGVzdHJveWVkLlxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fZGVzdHJveWVkID0gdHJ1ZTtcclxuICAgIHRoaXMuX2NvbXBsZXRlRXhpdCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2FpdHMgZm9yIHRoZSB6b25lIHRvIHNldHRsZSBiZWZvcmUgcmVtb3ZpbmcgdGhlIGVsZW1lbnQuIEhlbHBzIHByZXZlbnRcclxuICAgKiBlcnJvcnMgd2hlcmUgd2UgZW5kIHVwIHJlbW92aW5nIGFuIGVsZW1lbnQgd2hpY2ggaXMgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbmltYXRpb24uXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY29tcGxldGVFeGl0KCkge1xyXG4gICAgdGhpcy5fbmdab25lLm9uTWljcm90YXNrRW1wdHlcclxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXHJcbiAgICAgIC5waXBlKGZpcnN0KCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMub25FeGl0Lm5leHQoKTtcclxuICAgICAgICB0aGlzLm9uRXhpdC5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFrQixLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFtQixNQUFNLHFCQUFxQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlLLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUU3Riw0RUFBNEU7QUFDNUUsMkZBQTJGO0FBQzNGLE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBTSxrQkFBa0IsQ0FBQyxRQUFRLFNBQUksZUFBZSxDQUFDLGtCQUFvQixDQUFDO0FBQ3JHLE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBTSxrQkFBa0IsQ0FBQyxPQUFPLFNBQUksZUFBZSxDQUFDLGtCQUFvQixDQUFDO0FBRXBHOzs7R0FH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bnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uRXZlbnQsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQmFzZVBvcnRhbE91dGxldCwgQ2RrUG9ydGFsT3V0bGV0LCBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEVtYmVkZGVkVmlld1JlZiwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgTmdab25lLCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XG5pbXBvcnQgeyBLZXlib2FyZEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0nO1xuaW1wb3J0IHsgS2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uIH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bSc7XG5cbi8vIFRPRE86IHdlIGNhbid0IHVzZSBjb25zdGFudHMgZnJvbSBhbmltYXRpb24udHMgaGVyZSBiZWNhdXNlIHlvdSBjYW4ndCB1c2Vcbi8vIGEgdGV4dCBpbnRlcnBvbGF0aW9uIGluIGFueXRoaW5nIHRoYXQgaXMgYW5hbHl6ZWQgc3RhdGljYWxseSB3aXRoIG5nYyAoZm9yIEFvVCBjb21waWxlKS5cbmV4cG9ydCBjb25zdCBTSE9XX0FOSU1BVElPTiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FTlRFUklOR30gJHtBbmltYXRpb25DdXJ2ZXMuREVDRUxFUkFUSU9OX0NVUlZFfWA7XG5leHBvcnQgY29uc3QgSElERV9BTklNQVRJT04gPSBgJHtBbmltYXRpb25EdXJhdGlvbnMuRVhJVElOR30gJHtBbmltYXRpb25DdXJ2ZXMuQUNDRUxFUkFUSU9OX0NVUlZFfWA7XG5cbi8qKlxuICogSW50ZXJuYWwgY29tcG9uZW50IHRoYXQgd3JhcHMgdXNlci1wcm92aWRlZCBrZXlib2FyZCBjb250ZW50LlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQta2V5Ym9hcmQtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIC8vIGFuaW1hdGlvbnM6IFtcbiAgLy8gICB0cmlnZ2VyKCdzdGF0ZScsIFtcbiAgLy8gICAgIHN0YXRlKCd2aXNpYmxlJywgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCUpJ30pKSxcbiAgLy8gICAgIHRyYW5zaXRpb24oJ3Zpc2libGUgPT4gaGlkZGVuJywgYW5pbWF0ZShISURFX0FOSU1BVElPTikpLFxuICAvLyAgICAgdHJhbnNpdGlvbigndm9pZCA9PiB2aXNpYmxlJywgYW5pbWF0ZShTSE9XX0FOSU1BVElPTikpLFxuICAvLyAgIF0pXG4gIC8vIF1cbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3N0YXRlJywgW1xuICAgICAgc3RhdGUoYCR7S2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5WaXNpYmxlfWAsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwJSknIH0pKSxcbiAgICAgIHRyYW5zaXRpb24oYCR7S2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uLkhpZGV9YCwgYW5pbWF0ZShISURFX0FOSU1BVElPTikpLFxuICAgICAgdHJhbnNpdGlvbihgJHtLZXlib2FyZEFuaW1hdGlvblRyYW5zaXRpb24uU2hvd31gLCBhbmltYXRlKFNIT1dfQU5JTUFUSU9OKSlcbiAgICBdKVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBoYXMgYmVlbiBkZXN0cm95ZWQuICovXG4gIHByaXZhdGUgX2Rlc3Ryb3llZCA9IGZhbHNlO1xuXG4gIC8qKiBUaGUgcG9ydGFsIG91dGxldCBpbnNpZGUgb2YgdGhpcyBjb250YWluZXIgaW50byB3aGljaCB0aGUga2V5Ym9hcmQgY29udGVudCB3aWxsIGJlIGxvYWRlZC4gKi9cbiAgQFZpZXdDaGlsZChDZGtQb3J0YWxPdXRsZXQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHByaXZhdGUgX3BvcnRhbE91dGxldDogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIC8qKiBUaGUgc3RhdGUgb2YgdGhlIGtleWJvYXJkIGFuaW1hdGlvbnMuICovXG4gIEBIb3N0QmluZGluZygnQHN0YXRlJylcbiAgX2FuaW1hdGlvblN0YXRlOiBLZXlib2FyZEFuaW1hdGlvblN0YXRlID0gS2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkO1xuXG4gIC8qKiBTdWJqZWN0IGZvciBub3RpZnlpbmcgdGhhdCB0aGUga2V5Ym9hcmQgaGFzIGV4aXRlZCBmcm9tIHZpZXcuICovXG4gIG9uRXhpdDogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICAvKiogU3ViamVjdCBmb3Igbm90aWZ5aW5nIHRoYXQgdGhlIGtleWJvYXJkIGhhcyBmaW5pc2hlZCBlbnRlcmluZyB0aGUgdmlldy4gKi9cbiAgb25FbnRlcjogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gIGF0dHJSb2xlID0gJ2FsZXJ0JztcblxuICAvLyB0aGUga2V5Ym9hcmQgY29uZmlndXJhdGlvblxuICBrZXlib2FyZENvbmZpZzogTWF0S2V5Ym9hcmRDb25maWc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBvbk1vdXNlZG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICAvKiogQXR0YWNoIGEgY29tcG9uZW50IHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyLiAqL1xuICBhdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsOiBDb21wb25lbnRQb3J0YWw8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xuICAgIGlmICh0aGlzLl9wb3J0YWxPdXRsZXQuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ0F0dGVtcHRpbmcgdG8gYXR0YWNoIGtleWJvYXJkIGNvbnRlbnQgYWZ0ZXIgY29udGVudCBpcyBhbHJlYWR5IGF0dGFjaGVkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX3BvcnRhbE91dGxldC5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG4gIC8vIEF0dGFjaCBhIHRlbXBsYXRlIHBvcnRhbCBhcyBjb250ZW50IHRvIHRoaXMga2V5Ym9hcmQgY29udGFpbmVyXG4gIGF0dGFjaFRlbXBsYXRlUG9ydGFsKCk6IEVtYmVkZGVkVmlld1JlZjxhbnk+IHtcbiAgICB0aHJvdyBFcnJvcignTm90IHlldCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEhhbmRsZSBlbmQgb2YgYW5pbWF0aW9ucywgdXBkYXRpbmcgdGhlIHN0YXRlIG9mIHRoZSBrZXlib2FyZC4gKi9cbiAgQEhvc3RMaXN0ZW5lcignQHN0YXRlLmRvbmUnLCBbJyRldmVudCddKVxuICBvbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpIHtcbiAgICBjb25zdCB7IGZyb21TdGF0ZSwgdG9TdGF0ZSB9ID0gZXZlbnQ7XG5cbiAgICBpZiAoKHRvU3RhdGUgPT09IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVm9pZCAmJiBmcm9tU3RhdGUgIT09IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVm9pZCkgfHwgdG9TdGF0ZS5zdGFydHNXaXRoKCdoaWRkZW4nKSkge1xuICAgICAgdGhpcy5fY29tcGxldGVFeGl0KCk7XG4gICAgfVxuXG4gICAgaWYgKHRvU3RhdGUgPT09IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZSkge1xuICAgICAgLy8gTm90ZTogd2Ugc2hvdWxkbid0IHVzZSBgdGhpc2AgaW5zaWRlIHRoZSB6b25lIGNhbGxiYWNrLFxuICAgICAgLy8gYmVjYXVzZSBpdCBjYW4gY2F1c2UgYSBtZW1vcnkgbGVhay5cbiAgICAgIGNvbnN0IG9uRW50ZXIgPSB0aGlzLm9uRW50ZXI7XG5cbiAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICBvbkVudGVyLm5leHQoKTtcbiAgICAgICAgb25FbnRlci5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEJlZ2luIGFuaW1hdGlvbiBvZiBrZXlib2FyZCBlbnRyYW5jZSBpbnRvIHZpZXcuICovXG4gIGVudGVyKCkge1xuICAgIGlmICghdGhpcy5fZGVzdHJveWVkKSB7XG4gICAgICB0aGlzLl9hbmltYXRpb25TdGF0ZSA9IEtleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZTtcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQmVnaW4gYW5pbWF0aW9uIG9mIHRoZSBzbmFjayBiYXIgZXhpdGluZyBmcm9tIHZpZXcuICovXG4gIGV4aXQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5fYW5pbWF0aW9uU3RhdGUgPSBLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbjtcbiAgICByZXR1cm4gdGhpcy5vbkV4aXQ7XG4gIH1cblxuICAvKipcbiAgICogTWFrZXMgc3VyZSB0aGUgZXhpdCBjYWxsYmFja3MgaGF2ZSBiZWVuIGludm9rZWQgd2hlbiB0aGUgZWxlbWVudCBpcyBkZXN0cm95ZWQuXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9kZXN0cm95ZWQgPSB0cnVlO1xuICAgIHRoaXMuX2NvbXBsZXRlRXhpdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdhaXRzIGZvciB0aGUgem9uZSB0byBzZXR0bGUgYmVmb3JlIHJlbW92aW5nIHRoZSBlbGVtZW50LiBIZWxwcyBwcmV2ZW50XG4gICAqIGVycm9ycyB3aGVyZSB3ZSBlbmQgdXAgcmVtb3ZpbmcgYW4gZWxlbWVudCB3aGljaCBpcyBpbiB0aGUgbWlkZGxlIG9mIGFuIGFuaW1hdGlvbi5cbiAgICovXG4gIHByaXZhdGUgX2NvbXBsZXRlRXhpdCgpIHtcbiAgICB0aGlzLl9uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eVxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXG4gICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMub25FeGl0Lm5leHQoKTtcbiAgICAgICAgdGhpcy5vbkV4aXQuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Output } from '@angular/core';

@@ -404,51 +404,51 @@ import { BehaviorSubject } from 'rxjs';

]; };
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "key", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "icon", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "active", null);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "pressed", null);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "input", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardKeyComponent.prototype, "control", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "genericClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "enterClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "bkspClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "capsClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "altClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "shiftClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "spaceClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "tabClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardKeyComponent.prototype, "keyClick", void 0);
MatKeyboardKeyComponent = tslib_1.__decorate([
MatKeyboardKeyComponent = __decorate([
Component({
selector: 'mat-keyboard-key',
template: "<button mat-raised-button\r\n class=\"mat-keyboard-key\"\r\n tabindex=\"-1\"\r\n [class.mat-keyboard-key-active]=\"active$ | async\"\r\n [class.mat-keyboard-key-pressed]=\"pressed$ | async\"\r\n [ngClass]=\"cssClass\"\r\n (click)=\"onClick($event)\"\r\n (pointerdown)=\"onPointerDown()\"\r\n (pointerleave)=\"cancelRepeat()\"\r\n (pointerup)=\"cancelRepeat()\"\r\n>\r\n <mat-icon *ngIf=\"hasIcon; else noIcon\" [fontSet]=\"fontSet\" [fontIcon]=\"fontIcon\" [svgIcon]=\"svgIcon\">{{ iconName }}</mat-icon>\r\n <ng-template #noIcon>{{ key }}</ng-template>\r\n</button>\r\n",
template: "<button mat-raised-button\n class=\"mat-keyboard-key\"\n tabindex=\"-1\"\n [class.mat-keyboard-key-active]=\"active$ | async\"\n [class.mat-keyboard-key-pressed]=\"pressed$ | async\"\n [ngClass]=\"cssClass\"\n (click)=\"onClick($event)\"\n (pointerdown)=\"onPointerDown()\"\n (pointerleave)=\"cancelRepeat()\"\n (pointerup)=\"cancelRepeat()\"\n>\n <mat-icon *ngIf=\"hasIcon; else noIcon\" [fontSet]=\"fontSet\" [fontIcon]=\"fontIcon\" [svgIcon]=\"svgIcon\">{{ iconName }}</mat-icon>\n <ng-template #noIcon>{{ key }}</ng-template>\n</button>\n",
changeDetection: ChangeDetectionStrategy.OnPush,

@@ -458,3 +458,3 @@ preserveWhitespaces: false,

}),
tslib_1.__param(0, Inject(MAT_KEYBOARD_DEADKEYS))
__param(0, Inject(MAT_KEYBOARD_DEADKEYS))
], MatKeyboardKeyComponent);

@@ -464,2 +464,2 @@ return MatKeyboardKeyComponent;

export { MatKeyboardKeyComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQta2V5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUl2RSxNQUFNLENBQUMsSUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxJQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFDL0IsTUFBTSxDQUFDLElBQU0sU0FBUyxHQUFHLElBQUksQ0FBQztBQUM5QixJQUFNLGNBQWMsR0FBRyxHQUFHLENBQUM7QUFDM0IsSUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBUzVCO0lBeUlFLHNCQUFzQjtJQUN0QixpQ0FBbUQsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUF4SXZFLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBRzVCLGlCQUFZLEdBQVksS0FBSyxDQUFDLENBQUMsc0NBQXNDO1FBRTdFLFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0QsYUFBUSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWlDaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzlDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFD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O0lBT0Q7UUFEQyxLQUFLLEVBQUU7MERBR1A7SUFPRDtRQURDLEtBQUssRUFBRTswREFDVztJQUduQjtRQURDLEtBQUssRUFBRTs0REFDYztJQUd0QjtRQURDLE1BQU0sRUFBRTtpRUFDcUM7SUFHOUM7UUFEQyxNQUFNLEVBQUU7K0RBQ21DO0lBRzVDO1FBREMsTUFBTSxFQUFFOzhEQUNrQztJQUczQztRQURDLE1BQU0sRUFBRTs4REFDa0M7SUFHM0M7UUFEQyxNQUFNLEVBQUU7NkRBQ2lDO0lBRzFDO1FBREMsTUFBTSxFQUFFOytEQUNtQztJQUc1QztRQURDLE1BQU0sRUFBRTsrREFDbUM7SUFHNUM7UUFEQyxNQUFNLEVBQUU7NkRBQ2lDO0lBRzFDO1FBREMsTUFBTSxFQUFFOzZEQUNpQztJQWxFL0IsdUJBQXVCO1FBUG5DLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsdW9CQUE0QztZQUU1QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtZQUMvQyxtQkFBbUIsRUFBRSxLQUFLOztTQUMzQixDQUFDO1FBMklhLG1CQUFBLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO09BMUkvQix1QkFBdUIsQ0EyYW5DO0lBQUQsOEJBQUM7Q0FBQSxBQTNhRCxJQTJhQztTQTNhWSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNQVRfS0VZQk9BUkRfREVBREtFWVMgfSBmcm9tICcuLi8uLi9jb25maWdzL2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJztcclxuaW1wb3J0IHsgS2V5Ym9hcmRDbGFzc0tleSB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcclxuaW1wb3J0IHsgSUtleWJvYXJkRGVhZGtleXMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWRlYWRrZXlzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElNYXRJY29uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFZBTFVFX05FV0xJTkUgPSAnXFxuXFxyJztcclxuZXhwb3J0IGNvbnN0IFZBTFVFX1NQQUNFID0gJyAnO1xyXG5leHBvcnQgY29uc3QgVkFMVUVfVEFCID0gJ1xcdCc7XHJcbmNvbnN0IFJFUEVBVF9USU1FT1VUID0gNTAwO1xyXG5jb25zdCBSRVBFQVRfSU5URVJWQUwgPSAxMDA7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21hdC1rZXlib2FyZC1rZXknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rZXlib2FyZC1rZXkuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2tleWJvYXJkLWtleS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZEtleUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgcHJpdmF0ZSBfZGVhZGtleUtleXM6IHN0cmluZ1tdID0gW107XHJcbiAgcHJpdmF0ZSBfcmVwZWF0VGltZW91dEhhbmRsZXI6IGFueTtcclxuICBwcml2YXRlIF9yZXBlYXRJbnRlcnZhbEhhbmRsZXI6IGFueTtcclxuICBwcml2YXRlIF9yZXBlYXRTdGF0ZTogYm9vbGVhbiA9IGZhbHNlOyAvLyB0cnVlIGlmIHJlcGVhdGluZywgZmFsc2UgaWYgd2FpdGluZ1xyXG5cclxuICBhY3RpdmUkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcclxuXHJcbiAgcHJlc3NlZCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGtleTogc3RyaW5nIHwgS2V5Ym9hcmRDbGFzc0tleTtcclxuXHJcbiAgQElucHV0KClcclxuICBpY29uOiBJTWF0SWNvbjtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgYWN0aXZlKGFjdGl2ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5hY3RpdmUkLm5leHQoYWN0aXZlKTtcclxuICB9XHJcblxyXG4gIGdldCBhY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUkLmdldFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBwcmVzc2VkKHByZXNzZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMucHJlc3NlZCQubmV4dChwcmVzc2VkKTtcclxuICB9XHJcblxyXG4gIGdldCBwcmVzc2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMucHJlc3NlZCQuZ2V0VmFsdWUoKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgaW5wdXQ/OiBFbGVtZW50UmVmO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbnRyb2w/OiBGb3JtQ29udHJvbDtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgZ2VuZXJpY0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBlbnRlckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBia3NwQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGNhcHNDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgYWx0Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHNoaWZ0Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHNwYWNlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHRhYkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBrZXlDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcclxuXHJcbiAgZ2V0IGxvd2VyS2V5KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7dGhpcy5rZXl9YC50b0xvd2VyQ2FzZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNoYXJDb2RlKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gYCR7dGhpcy5rZXl9YC5jaGFyQ29kZUF0KDApO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlzQ2xhc3NLZXkoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5rZXkgaW4gS2V5Ym9hcmRDbGFzc0tleTtcclxuICB9XHJcblxyXG4gIGdldCBpc0RlYWRLZXkoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGVhZGtleUtleXMuc29tZSgoZGVhZEtleTogc3RyaW5nKSA9PiBkZWFkS2V5ID09PSBgJHt0aGlzLmtleX1gKTtcclxuICB9XHJcblxyXG4gIGdldCBoYXNJY29uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvbiAhPT0gdW5kZWZpbmVkICYmIHRoaXMuaWNvbiAhPT0gbnVsbDtcclxuICB9XHJcblxyXG4gIGdldCBpY29uTmFtZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvbi5uYW1lIHx8ICcnO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZvbnRTZXQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb24uZm9udFNldCB8fCAnJztcclxuICB9XHJcblxyXG4gIGdldCBmb250SWNvbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvbi5mb250SWNvbiB8fCAnJztcclxuICB9XHJcblxyXG4gIGdldCBzdmdJY29uKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uLnN2Z0ljb24gfHwgJyc7XHJcbiAgfVxyXG5cclxuICBnZXQgY3NzQ2xhc3MoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGNsYXNzZXMgPSBbXTtcclxuXHJcbiAgICBpZiAodGhpcy5oYXNJY29uKSB7XHJcbiAgICAgIGNsYXNzZXMucHVzaCgnbWF0LWtleWJvYXJkLWtleS1tb2RpZmllcicpO1xyXG4gICAgICBjbGFzc2VzLnB1c2goYG1hdC1rZXlib2FyZC1rZXktJHt0aGlzLmxvd2VyS2V5fWApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzRGVhZEtleSkge1xyXG4gICAgICBjbGFzc2VzLnB1c2goJ21hdC1rZXlib2FyZC1rZXktZGVhZGtleScpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjbGFzc2VzLmpvaW4oJyAnKTtcclxuICB9XHJcblxyXG4gIGdldCBpbnB1dFZhbHVlKCk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbnRyb2wudmFsdWU7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0IGlucHV0VmFsdWUoaW5wdXRWYWx1ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbC5zZXRWYWx1ZShpbnB1dFZhbHVlKTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gaW5wdXRWYWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEluamVjdCBkZXBlbmRlbmNpZXNcclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KE1BVF9LRVlCT0FSRF9ERUFES0VZUykgcHJpdmF0ZSBfZGVhZGtleXM6IElLZXlib2FyZERlYWRrZXlzKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICAvLyByZWFkIHRoZSBkZWFka2V5c1xyXG4gICAgdGhpcy5fZGVhZGtleUtleXMgPSBPYmplY3Qua2V5cyh0aGlzLl9kZWFka2V5cyk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuY2FuY2VsUmVwZWF0KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICAvLyBUcmlnZ2VyIGdlbmVyaWMgY2xpY2sgZXZlbnRcclxuICAgIHRoaXMuZ2VuZXJpY0NsaWNrLmVtaXQoZXZlbnQpO1xyXG5cclxuICAgIC8vIERvIG5vdCBleGVjdXRlIGtleXByZXNzIGlmIGtleSBpcyBjdXJyZW50bHkgcmVwZWF0aW5nXHJcbiAgICBpZiAodGhpcy5fcmVwZWF0U3RhdGUpIHsgcmV0dXJuOyB9XHJcblxyXG4gICAgLy8gVHJpZ2dlciBhIGdsb2JhbCBrZXkgZXZlbnQuIFRPRE86IGludmVzdGlnYXRlXHJcbiAgICAvLyB0aGlzLl90cmlnZ2VyS2V5RXZlbnQoKTtcclxuXHJcbiAgICAvLyBNYW5pcHVsYXRlIHRoZSBmb2N1c2VkIGlucHV0IC8gdGV4dGFyZWEgdmFsdWVcclxuICAgIGNvbnN0IGNhcmV0ID0gdGhpcy5pbnB1dCA/IHRoaXMuX2dldEN1cnNvclBvc2l0aW9uKCkgOiAwO1xyXG5cclxuICAgIGxldCBjaGFyOiBzdHJpbmc7XHJcbiAgICBzd2l0Y2ggKHRoaXMua2V5KSB7XHJcbiAgICAgIC8vIHRoaXMga2V5cyBoYXZlIG5vIGFjdGlvbnMgeWV0XHJcbiAgICAgIC8vIFRPRE86IGFkZCBkZWFka2V5cyBhbmQgbW9kaWZpZXJzXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHQ6XHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHRHcjpcclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdExrOlxyXG4gICAgICAgIHRoaXMuYWx0Q2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQmtzcDpcclxuICAgICAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkVGV4dCgpO1xyXG4gICAgICAgIHRoaXMuYmtzcENsaWNrLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkNhcHM6XHJcbiAgICAgICAgdGhpcy5jYXBzQ2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuRW50ZXI6XHJcbiAgICAgICAgaWYgKHRoaXMuX2lzVGV4dGFyZWEoKSkge1xyXG4gICAgICAgICAgY2hhciA9IFZBTFVFX05FV0xJTkU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZW50ZXJDbGljay5lbWl0KGV2ZW50KTtcclxuICAgICAgICAgIC8vIFRPRE86IHRyaWdnZXIgc3VibWl0IC8gb25TdWJtaXQgLyBuZ1N1Ym1pdCBwcm9wZXJseSAoZm9yIHRoZSB0aW1lIGJlaW5nIHRoaXMgaGFzIHRvIGJlIGhhbmRsZWQgYnkgdGhlIHVzZXIgaGltc2VsZilcclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuY29udHJvbC5uZ0NvbnRyb2wuY29udHJvbC5yb290KVxyXG4gICAgICAgICAgLy8gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvcm0uc3VibWl0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNoaWZ0OlxyXG4gICAgICAgIHRoaXMuc2hpZnRDbGljay5lbWl0KGV2ZW50KTtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5TcGFjZTpcclxuICAgICAgICBjaGFyID0gVkFMVUVfU1BBQ0U7XHJcbiAgICAgICAgdGhpcy5zcGFjZUNsaWNrLmVtaXQoZXZlbnQpO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlRhYjpcclxuICAgICAgICBjaGFyID0gVkFMVUVfVEFCO1xyXG4gICAgICAgIHRoaXMudGFiQ2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIC8vIHRoZSBrZXkgaXMgbm90IG1hcHBlZCBvciBhIHN0cmluZ1xyXG4gICAgICAgIGNoYXIgPSBgJHt0aGlzLmtleX1gO1xyXG4gICAgICAgIHRoaXMua2V5Q2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNoYXIgJiYgdGhpcy5pbnB1dCkge1xyXG4gICAgICB0aGlzLnJlcGxhY2VTZWxlY3RlZFRleHQoY2hhcik7XHJcbiAgICAgIHRoaXMuX3NldEN1cnNvclBvc2l0aW9uKGNhcmV0ICsgMSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRGlzcGF0Y2ggSW5wdXQgRXZlbnQgZm9yIEFuZ3VsYXIgdG8gcmVnaXN0ZXIgYSBjaGFuZ2VcclxuICAgIGlmICh0aGlzLmlucHV0ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlIH0pKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBIYW5kbGUgcmVwZWF0aW5nIGtleXMuIEtleXByZXNzIGxvZ2ljIGRlcml2ZWQgZnJvbSBvbkNsaWNrKClcclxuICBvblBvaW50ZXJEb3duKCkge1xyXG4gICAgdGhpcy5jYW5jZWxSZXBlYXQoKTtcclxuICAgIHRoaXMuX3JlcGVhdFN0YXRlID0gZmFsc2U7XHJcbiAgICB0aGlzLl9yZXBlYXRUaW1lb3V0SGFuZGxlciA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAvLyBJbml0aWFsaXplIGtleXByZXNzIHZhcmlhYmxlc1xyXG4gICAgICBsZXQgY2hhcjogc3RyaW5nO1xyXG4gICAgICBsZXQga2V5Rm46ICgpID0+IHZvaWQ7XHJcblxyXG4gICAgICBzd2l0Y2ggKHRoaXMua2V5KSB7XHJcbiAgICAgICAgLy8gSWdub3JlIG5vbi1yZXBlYXRpbmcga2V5c1xyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHQ6XHJcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdEdyOlxyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHRMazpcclxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQ2FwczpcclxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuRW50ZXI6XHJcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNoaWZ0OlxyXG4gICAgICAgICAgcmV0dXJuO1xyXG5cclxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQmtzcDpcclxuICAgICAgICAgIGtleUZuID0gKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkVGV4dCgpO1xyXG4gICAgICAgICAgICB0aGlzLmJrc3BDbGljay5lbWl0KCk7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5TcGFjZTpcclxuICAgICAgICAgIGNoYXIgPSBWQUxVRV9TUEFDRTtcclxuICAgICAgICAgIGtleUZuID0gKCkgPT4gdGhpcy5zcGFjZUNsaWNrLmVtaXQoKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuVGFiOlxyXG4gICAgICAgICAgY2hhciA9IFZBTFVFX1RBQjtcclxuICAgICAgICAgIGtleUZuID0gKCkgPT4gdGhpcy50YWJDbGljay5lbWl0KCk7XHJcbiAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIGNoYXIgPSBgJHt0aGlzLmtleX1gO1xyXG4gICAgICAgICAga2V5Rm4gPSAoKSA9PiB0aGlzLmtleUNsaWNrLmVtaXQoKTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBFeGVjdXRlIHJlcGVhdGluZyBrZXlwcmVzc1xyXG4gICAgICB0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XHJcbiAgICAgICAgdGhpcy5fcmVwZWF0U3RhdGUgPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAoa2V5Rm4pIHsga2V5Rm4oKTsgfVxyXG5cclxuICAgICAgICBpZiAoY2hhciAmJiB0aGlzLmlucHV0KSB7XHJcbiAgICAgICAgICB0aGlzLnJlcGxhY2VTZWxlY3RlZFRleHQoY2hhcik7XHJcbiAgICAgICAgICB0aGlzLl9zZXRDdXJzb3JQb3NpdGlvbihjYXJldCArIDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUgfSkpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sIFJFUEVBVF9JTlRFUlZBTCk7XHJcbiAgICB9LCBSRVBFQVRfVElNRU9VVCk7XHJcbiAgfVxyXG5cclxuICBjYW5jZWxSZXBlYXQoKSB7XHJcbiAgICBpZiAodGhpcy5fcmVwZWF0VGltZW91dEhhbmRsZXIpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3JlcGVhdFRpbWVvdXRIYW5kbGVyKTtcclxuICAgICAgdGhpcy5fcmVwZWF0VGltZW91dEhhbmRsZXIgPSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIpIHtcclxuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIpO1xyXG4gICAgICB0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkZWxldGVTZWxlY3RlZFRleHQoKTogdm9pZCB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaW5wdXRWYWx1ZSA/IHRoaXMuaW5wdXRWYWx1ZS50b1N0cmluZygpIDogJyc7XHJcbiAgICBsZXQgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XHJcbiAgICBsZXQgc2VsZWN0aW9uTGVuZ3RoID0gdGhpcy5fZ2V0U2VsZWN0aW9uTGVuZ3RoKCk7XHJcbiAgICBpZiAoc2VsZWN0aW9uTGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIGlmIChjYXJldCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgY2FyZXQtLTtcclxuICAgICAgc2VsZWN0aW9uTGVuZ3RoID0gMTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBoZWFkUGFydCA9IHZhbHVlLnNsaWNlKDAsIGNhcmV0KTtcclxuICAgIGNvbnN0IGVuZFBhcnQgPSB2YWx1ZS5zbGljZShjYXJldCArIHNlbGVjdGlvbkxlbmd0aCk7XHJcblxyXG4gICAgdGhpcy5pbnB1dFZhbHVlID0gW2hlYWRQYXJ0LCBlbmRQYXJ0XS5qb2luKCcnKTtcclxuICAgIHRoaXMuX3NldEN1cnNvclBvc2l0aW9uKGNhcmV0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVwbGFjZVNlbGVjdGVkVGV4dChjaGFyOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5pbnB1dFZhbHVlID8gdGhpcy5pbnB1dFZhbHVlLnRvU3RyaW5nKCkgOiAnJztcclxuICAgIGNvbnN0IGNhcmV0ID0gdGhpcy5pbnB1dCA/IHRoaXMuX2dldEN1cnNvclBvc2l0aW9uKCkgOiAwO1xyXG4gICAgY29uc3Qgc2VsZWN0aW9uTGVuZ3RoID0gdGhpcy5fZ2V0U2VsZWN0aW9uTGVuZ3RoKCk7XHJcbiAgICBjb25zdCBoZWFkUGFydCA9IHZhbHVlLnNsaWNlKDAsIGNhcmV0KTtcclxuICAgIGNvbnN0IGVuZFBhcnQgPSB2YWx1ZS5zbGljZShjYXJldCArIHNlbGVjdGlvbkxlbmd0aCk7XHJcblxyXG4gICAgdGhpcy5pbnB1dFZhbHVlID0gW2hlYWRQYXJ0LCBjaGFyLCBlbmRQYXJ0XS5qb2luKCcnKTtcclxuICB9XHJcblxyXG4gIC8vIFRPRE86IEluY2x1ZGUgZm9yIHJlcGVhdGluZyBrZXlzIGFzIHdlbGwgKGlmIHRoaXMgZ2V0cyBpbXBsZW1lbnRlZClcclxuICAvLyBwcml2YXRlIF90cmlnZ2VyS2V5RXZlbnQoKTogRXZlbnQge1xyXG4gIC8vICAgY29uc3Qga2V5Ym9hcmRFdmVudCA9IG5ldyBLZXlib2FyZEV2ZW50KCdrZXlkb3duJyk7XHJcbiAgLy8gICAvL1xyXG4gIC8vICAgLy8ga2V5Ym9hcmRFdmVudFtpbml0TWV0aG9kXShcclxuICAvLyAgIC8vICAgdHJ1ZSwgLy8gYnViYmxlc1xyXG4gIC8vICAgLy8gICB0cnVlLCAvLyBjYW5jZWxhYmxlXHJcbiAgLy8gICAvLyAgIHdpbmRvdywgLy8gdmlld0FyZzogc2hvdWxkIGJlIHdpbmRvd1xyXG4gIC8vICAgLy8gICBmYWxzZSwgLy8gY3RybEtleUFyZ1xyXG4gIC8vICAgLy8gICBmYWxzZSwgLy8gYWx0S2V5QXJnXHJcbiAgLy8gICAvLyAgIGZhbHNlLCAvLyBzaGlmdEtleUFyZ1xyXG4gIC8vICAgLy8gICBmYWxzZSwgLy8gbWV0YUtleUFyZ1xyXG4gIC8vICAgLy8gICB0aGlzLmNoYXJDb2RlLCAvLyBrZXlDb2RlQXJnIDogdW5zaWduZWQgbG9uZyAtIHRoZSB2aXJ0dWFsIGtleSBjb2RlLCBlbHNlIDBcclxuICAvLyAgIC8vICAgMCAvLyBjaGFyQ29kZUFyZ3MgOiB1bnNpZ25lZCBsb25nIC0gdGhlIFVuaWNvZGUgY2hhcmFjdGVyIGFzc29jaWF0ZWQgd2l0aCB0aGUgZGVwcmVzc2VkIGtleSwgZWxzZSAwXHJcbiAgLy8gICAvLyApO1xyXG4gIC8vICAgLy9cclxuICAvLyAgIC8vIHdpbmRvdy5kb2N1bWVudC5kaXNwYXRjaEV2ZW50KGtleWJvYXJkRXZlbnQpO1xyXG5cclxuICAvLyAgIHJldHVybiBrZXlib2FyZEV2ZW50O1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gaW5zcGlyZWQgYnk6XHJcbiAgLy8gcmVmIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yODk3NTEwLzExNDYyMDdcclxuICBwcml2YXRlIF9nZXRDdXJzb3JQb3NpdGlvbigpOiBudW1iZXIge1xyXG4gICAgaWYgKCF0aGlzLmlucHV0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoJ3NlbGVjdGlvblN0YXJ0JyBpbiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgLy8gU3RhbmRhcmQtY29tcGxpYW50IGJyb3dzZXJzXHJcbiAgICAgIHJldHVybiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICB9IGVsc2UgaWYgKCdzZWxlY3Rpb24nIGluIHdpbmRvdy5kb2N1bWVudCkge1xyXG4gICAgICAvLyBJRVxyXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgY29uc3Qgc2VsZWN0aW9uOiBhbnkgPSB3aW5kb3cuZG9jdW1lbnRbJ3NlbGVjdGlvbiddO1xyXG4gICAgICBjb25zdCBzZWwgPSBzZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTtcclxuICAgICAgY29uc3Qgc2VsTGVuID0gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCkudGV4dC5sZW5ndGg7XHJcbiAgICAgIHNlbC5tb3ZlU3RhcnQoJ2NoYXJhY3RlcicsIC10aGlzLmNvbnRyb2wudmFsdWUubGVuZ3RoKTtcclxuXHJcbiAgICAgIHJldHVybiBzZWwudGV4dC5sZW5ndGggLSBzZWxMZW47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRTZWxlY3Rpb25MZW5ndGgoKTogbnVtYmVyIHtcclxuICAgIGlmICghdGhpcy5pbnB1dCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCdzZWxlY3Rpb25FbmQnIGluIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAvLyBTdGFuZGFyZC1jb21wbGlhbnQgYnJvd3NlcnNcclxuICAgICAgcmV0dXJuIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgLSB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCdzZWxlY3Rpb24nIGluIHdpbmRvdy5kb2N1bWVudCkge1xyXG4gICAgICAvLyBJRVxyXG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgY29uc3Qgc2VsZWN0aW9uOiBhbnkgPSB3aW5kb3cuZG9jdW1lbnRbJ3NlbGVjdGlvbiddO1xyXG4gICAgICByZXR1cm4gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCkudGV4dC5sZW5ndGg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBpbnNwaXJlZCBieTpcclxuICAvLyByZWYgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzEyNTE4NzM3LzExNDYyMDdcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZSBvbmUtbGluZVxyXG4gIHByaXZhdGUgX3NldEN1cnNvclBvc2l0aW9uKHBvc2l0aW9uOiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy5pbnB1dCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5jb250cm9sLnZhbHVlO1xyXG4gICAgLy8gXiB0aGlzIGlzIHVzZWQgdG8gbm90IG9ubHkgZ2V0IFwiZm9jdXNcIiwgYnV0XHJcbiAgICAvLyB0byBtYWtlIHN1cmUgd2UgZG9uJ3QgaGF2ZSBpdCBldmVyeXRoaW5nIC1zZWxlY3RlZC1cclxuICAgIC8vIChpdCBjYXVzZXMgYW4gaXNzdWUgaW4gY2hyb21lLCBhbmQgaGF2aW5nIGl0IGRvZXNuJ3QgaHVydCBhbnkgb3RoZXIgYnJvd3NlcilcclxuXHJcbiAgICBpZiAoJ2NyZWF0ZVRleHRSYW5nZScgaW4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgIGNvbnN0IHJhbmdlID0gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmNyZWF0ZVRleHRSYW5nZSgpO1xyXG4gICAgICByYW5nZS5tb3ZlKCdjaGFyYWN0ZXInLCBwb3NpdGlvbik7XHJcbiAgICAgIHJhbmdlLnNlbGVjdCgpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIChlbC5zZWxlY3Rpb25TdGFydCA9PT0gMCBhZGRlZCBmb3IgRmlyZWZveCBidWcpXHJcbiAgICAgIGlmICh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgfHwgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID09PSAwKSB7XHJcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHBvc2l0aW9uLCBwb3NpdGlvbik7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgLy8gZmFpbCBjaXR5LCBmb3J0dW5hdGVseSB0aGlzIG5ldmVyIGhhcHBlbnMgKGFzIGZhciBhcyBJJ3ZlIHRlc3RlZCkgOilcclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pc1RleHRhcmVhKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC50YWdOYW1lID09PSAnVEVYVEFSRUEnO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQta2V5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJjb21wb25lbnRzL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkksT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUl2RSxNQUFNLENBQUMsSUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxJQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFDL0IsTUFBTSxDQUFDLElBQU0sU0FBUyxHQUFHLElBQUksQ0FBQztBQUM5QixJQUFNLGNBQWMsR0FBRyxHQUFHLENBQUM7QUFDM0IsSUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBUzVCO0lBeUlFLHNCQUFzQjtJQUN0QixpQ0FBbUQsU0FBNEI7UUFBNUIsY0FBUyxHQUFULFNBQVMsQ0FBbUI7UUF4SXZFLGlCQUFZLEdBQWEsRUFBRSxDQUFDO1FBRzVCLGlCQUFZLEdBQVksS0FBSyxDQUFDLENBQUMsc0NBQXNDO1FBRTdFLFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0QsYUFBUSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQWlDaEUsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzlDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzVDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzNDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzNDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzFDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzVDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzVDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBRzFDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO0lBd0V5QyxDQUFDO0lBeEhwRixzQkFBSSwyQ0FBTTthQUlWO1lBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pDLENBQUM7YUFORCxVQUFXLE1BQWU7WUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUIsQ0FBQzs7O09BQUE7SUFPRCxzQkFBSSw0Q0FBTzthQUlYO1lBQ0UsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2xDLENBQUM7YUFORCxVQUFZLE9BQWdCO1lBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLENBQUM7OztPQUFBO0lBdUNELHNCQUFJLDZDQUFRO2FBQVo7WUFDRSxPQUFPLENBQUEsS0FBRyxJQUFJLENBQUMsR0FBSyxDQUFBLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2Q0FBUTthQUFaO1lBQ0UsT0FBTyxDQUFBLEtBQUcsSUFBSSxDQUFDLEdBQUssQ0FBQSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLCtDQUFVO2FBQWQ7WUFDRSxPQUFPLElBQUksQ0FBQyxHQUFHLElBQUksZ0JBQWdCLENBQUM7UUFDdEMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw4Q0FBUzthQUFiO1lBQUEsaUJBRUM7WUFEQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQUMsT0FBZSxJQUFLLE9BQUEsT0FBTyxLQUFLLEtBQUcsS0FBSSxDQUFDLEdBQUssRUFBekIsQ0FBeUIsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNENBQU87YUFBWDtZQUNFLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUM7UUFDdkQsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2Q0FBUTthQUFaO1lBQ0UsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDOUIsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDakMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2Q0FBUTthQUFaO1lBQ0UsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7UUFDbEMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDakMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2Q0FBUTthQUFaO1lBQ0UsSUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBRW5CLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO2dCQUMxQyxPQUFPLENBQUMsSUFBSSxDQUFDLHNCQUFvQixJQUFJLENBQUMsUUFBVSxDQUFDLENBQUM7YUFDbkQ7WUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsQ0FBQzthQUMxQztZQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLCtDQUFVO2FBQWQ7WUFDRSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7YUFDM0I7aUJBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRTtnQkFDbkYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7YUFDdkM7aUJBQU07Z0JBQ0wsT0FBTyxFQUFFLENBQUM7YUFDWDtRQUNILENBQUM7YUFFRCxVQUFlLFVBQWtCO1lBQy9CLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDbkM7aUJBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFO2dCQUNqRCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDO2FBQzdDO1FBQ0gsQ0FBQzs7O09BUkE7SUFhRCwwQ0FBUSxHQUFSO1FBQ0Usb0JBQW9CO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELDZDQUFXLEdBQVg7UUFDRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELHlDQUFPLEdBQVAsVUFBUSxLQUFpQjtRQUF6QixpQkEyRUM7UUExRUMsOEJBQThCO1FBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTlCLHdEQUF3RDtRQUN4RCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFBRSxPQUFPO1NBQUU7UUFFbEMsZ0RBQWdEO1FBQ2hELDJCQUEyQjtRQUUzQixnREFBZ0Q7UUFDaEQsSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUV6RCxJQUFJLElBQVksQ0FBQztRQUNqQixRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDaEIsZ0NBQWdDO1lBQ2hDLG1DQUFtQztZQUNuQyxLQUFLLGdCQUFnQixDQUFDLEdBQUcsQ0FBQztZQUMxQixLQUFLLGdCQUFnQixDQUFDLEtBQUssQ0FBQztZQUM1QixLQUFLLGdCQUFnQixDQUFDLEtBQUs7Z0JBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQixNQUFNO1lBRVIsS0FBSyxnQkFBZ0IsQ0FBQyxJQUFJO2dCQUN4QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzNCLE1BQU07WUFFUixLQUFLLGdCQUFnQixDQUFDLElBQUk7Z0JBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBRVIsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLO2dCQUN6QixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRTtvQkFDdEIsSUFBSSxHQUFHLGFBQWEsQ0FBQztpQkFDdEI7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzVCLHNIQUFzSDtvQkFDdEgsbURBQW1EO29CQUNuRCwwQ0FBMEM7aUJBQzNDO2dCQUNELE1BQU07WUFFUixLQUFLLGdCQUFnQixDQUFDLEtBQUs7Z0JBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM1QixNQUFNO1lBRVIsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLO2dCQUN6QixJQUFJLEdBQUcsV0FBVyxDQUFDO2dCQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDNUIsTUFBTTtZQUVSLEtBQUssZ0JBQWdCLENBQUMsR0FBRztnQkFDdkIsSUFBSSxHQUFHLFNBQVMsQ0FBQztnQkFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFCLE1BQU07WUFFUjtnQkFDRSxvQ0FBb0M7Z0JBQ3BDLElBQUksR0FBRyxLQUFHLElBQUksQ0FBQyxHQUFLLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMxQixNQUFNO1NBQ1Q7UUFFRCxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3BDO1FBRUQsd0RBQXdEO1FBQ3hELElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtZQUMxQyxVQUFVLENBQUM7Z0JBQ1QsS0FBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDaEYsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCwrREFBK0Q7SUFDL0QsK0NBQWEsR0FBYjtRQUFBLGlCQTBEQztRQXpEQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFVBQVUsQ0FBQztZQUN0QyxnQ0FBZ0M7WUFDaEMsSUFBSSxJQUFZLENBQUM7WUFDakIsSUFBSSxLQUFpQixDQUFDO1lBRXRCLFFBQVEsS0FBSSxDQUFDLEdBQUcsRUFBRTtnQkFDaEIsNEJBQTRCO2dCQUM1QixLQUFLLGdCQUFnQixDQUFDLEdBQUcsQ0FBQztnQkFDMUIsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7Z0JBQzVCLEtBQUssZ0JBQWdCLENBQUMsS0FBSyxDQUFDO2dCQUM1QixLQUFLLGdCQUFnQixDQUFDLElBQUksQ0FBQztnQkFDM0IsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7Z0JBQzVCLEtBQUssZ0JBQWdCLENBQUMsS0FBSztvQkFDekIsT0FBTztnQkFFVCxLQUFLLGdCQUFnQixDQUFDLElBQUk7b0JBQ3hCLEtBQUssR0FBRzt3QkFDTixLQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQzt3QkFDMUIsS0FBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDeEIsQ0FBQyxDQUFDO29CQUNGLE1BQU07Z0JBRVIsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLO29CQUN6QixJQUFJLEdBQUcsV0FBVyxDQUFDO29CQUNuQixLQUFLLEdBQUcsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQXRCLENBQXNCLENBQUM7b0JBQ3JDLE1BQU07Z0JBRVIsS0FBSyxnQkFBZ0IsQ0FBQyxHQUFHO29CQUN2QixJQUFJLEdBQUcsU0FBUyxDQUFDO29CQUNqQixLQUFLLEdBQUcsY0FBTSxPQUFBLEtBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQXBCLENBQW9CLENBQUM7b0JBQ25DLE1BQU07Z0JBRVI7b0JBQ0UsSUFBSSxHQUFHLEtBQUcsS0FBSSxDQUFDLEdBQUssQ0FBQztvQkFDckIsS0FBSyxHQUFHLGNBQU0sT0FBQSxLQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFwQixDQUFvQixDQUFDO29CQUNuQyxNQUFNO2FBQ1Q7WUFFRCw2QkFBNkI7WUFDN0IsS0FBSSxDQUFDLHNCQUFzQixHQUFHLFdBQVcsQ0FBQztnQkFDeEMsSUFBTSxLQUFLLEdBQUcsS0FBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekQsS0FBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7Z0JBRXpCLElBQUksS0FBSyxFQUFFO29CQUFFLEtBQUssRUFBRSxDQUFDO2lCQUFFO2dCQUV2QixJQUFJLElBQUksSUFBSSxLQUFJLENBQUMsS0FBSyxFQUFFO29CQUN0QixLQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQy9CLEtBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQ3BDO2dCQUVELElBQUksS0FBSSxDQUFDLEtBQUssSUFBSSxLQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtvQkFDMUMsVUFBVSxDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFBN0UsQ0FBNkUsQ0FBQyxDQUFDO2lCQUNqRztZQUNILENBQUMsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUN0QixDQUFDLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELDhDQUFZLEdBQVo7UUFDRSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUM5QixZQUFZLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztTQUNuQztRQUVELElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1lBQy9CLGFBQWEsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVPLG9EQUFrQixHQUExQjtRQUNFLElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNoRSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksZUFBZSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ2pELElBQUksZUFBZSxLQUFLLENBQUMsRUFBRTtZQUN6QixJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7Z0JBQ2YsT0FBTzthQUNSO1lBRUQsS0FBSyxFQUFFLENBQUM7WUFDUixlQUFlLEdBQUcsQ0FBQyxDQUFDO1NBQ3JCO1FBRUQsSUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxxREFBbUIsR0FBM0IsVUFBNEIsSUFBWTtRQUN0QyxJQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDaEUsSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6RCxJQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNuRCxJQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2QyxJQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsQ0FBQztRQUVyRCxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELHNFQUFzRTtJQUN0RSxzQ0FBc0M7SUFDdEMsd0RBQXdEO0lBQ3hELE9BQU87SUFDUCxrQ0FBa0M7SUFDbEMsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3Qiw4Q0FBOEM7SUFDOUMsOEJBQThCO0lBQzlCLDZCQUE2QjtJQUM3QiwrQkFBK0I7SUFDL0IsOEJBQThCO0lBQzlCLHFGQUFxRjtJQUNyRiw2R0FBNkc7SUFDN0csVUFBVTtJQUNWLE9BQU87SUFDUCxxREFBcUQ7SUFFckQsMEJBQTBCO0lBQzFCLElBQUk7SUFFSixlQUFlO0lBQ2Ysa0RBQWtEO0lBQzFDLG9EQUFrQixHQUExQjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsT0FBTztTQUNSO1FBRUQsSUFBSSxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRTtZQUNoRCw4QkFBOEI7WUFDOUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUM7U0FDaEQ7YUFBTSxJQUFJLFdBQVcsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFO1lBQ3pDLEtBQUs7WUFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNqQyxJQUFNLFNBQVMsR0FBUSxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3BELElBQU0sR0FBRyxHQUFHLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQyxJQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUNuRCxHQUFHLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRXZELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVPLHFEQUFtQixHQUEzQjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsT0FBTztTQUNSO1FBRUQsSUFBSSxjQUFjLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7WUFDOUMsOEJBQThCO1lBQzlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQztTQUN4RjtRQUVELElBQUksV0FBVyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDbEMsS0FBSztZQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2pDLElBQU0sU0FBUyxHQUFRLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDcEQsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztTQUM1QztJQUNILENBQUM7SUFFRCxlQUFlO0lBQ2YsbURBQW1EO0lBQ25ELDBCQUEwQjtJQUNsQixvREFBa0IsR0FBMUIsVUFBMkIsUUFBZ0I7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ3JDLDhDQUE4QztRQUM5QyxzREFBc0Q7UUFDdEQsK0VBQStFO1FBRS9FLElBQUksaUJBQWlCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUU7WUFDakQsSUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekQsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDbEMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2YsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNO1lBQ0wsa0RBQWtEO1lBQ2xELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLGNBQWMsS0FBSyxDQUFDLEVBQUU7Z0JBQzVGLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQy9ELE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFDRCx1RUFBdUU7aUJBQ2xFO2dCQUNILElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNqQyxPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sNkNBQVcsR0FBbkI7UUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQztJQUNuRyxDQUFDOztnREEvUlksTUFBTSxTQUFDLHFCQUFxQjs7SUE5SHpDO1FBREMsS0FBSyxFQUFFO3dEQUN1QjtJQUcvQjtRQURDLEtBQUssRUFBRTt5REFDTztJQUdmO1FBREMsS0FBSyxFQUFFO3lEQUdQO0lBT0Q7UUFEQyxLQUFLLEVBQUU7MERBR1A7SUFPRDtRQURDLEtBQUssRUFBRTswREFDVztJQUduQjtRQURDLEtBQUssRUFBRTs0REFDYztJQUd0QjtRQURDLE1BQU0sRUFBRTtpRUFDcUM7SUFHOUM7UUFEQyxNQUFNLEVBQUU7K0RBQ21DO0lBRzVDO1FBREMsTUFBTSxFQUFFOzhEQUNrQztJQUczQztRQURDLE1BQU0sRUFBRTs4REFDa0M7SUFHM0M7UUFEQyxNQUFNLEVBQUU7NkRBQ2lDO0lBRzFDO1FBREMsTUFBTSxFQUFFOytEQUNtQztJQUc1QztRQURDLE1BQU0sRUFBRTsrREFDbUM7SUFHNUM7UUFEQyxNQUFNLEVBQUU7NkRBQ2lDO0lBRzFDO1FBREMsTUFBTSxFQUFFOzZEQUNpQztJQWxFL0IsdUJBQXVCO1FBUG5DLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsMm1CQUE0QztZQUU1QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtZQUMvQyxtQkFBbUIsRUFBRSxLQUFLOztTQUMzQixDQUFDO1FBMklhLFdBQUEsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUE7T0ExSS9CLHVCQUF1QixDQTJhbkM7SUFBRCw4QkFBQztDQUFBLEFBM2FELElBMmFDO1NBM2FZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1BVF9LRVlCT0FSRF9ERUFES0VZUyB9IGZyb20gJy4uLy4uL2NvbmZpZ3Mva2V5Ym9hcmQtZGVhZGtleS5jb25maWcnO1xuaW1wb3J0IHsgS2V5Ym9hcmRDbGFzc0tleSB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcbmltcG9ydCB7IElLZXlib2FyZERlYWRrZXlzIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSU1hdEljb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjb25zdCBWQUxVRV9ORVdMSU5FID0gJ1xcblxccic7XG5leHBvcnQgY29uc3QgVkFMVUVfU1BBQ0UgPSAnICc7XG5leHBvcnQgY29uc3QgVkFMVUVfVEFCID0gJ1xcdCc7XG5jb25zdCBSRVBFQVRfVElNRU9VVCA9IDUwMDtcbmNvbnN0IFJFUEVBVF9JTlRFUlZBTCA9IDEwMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWF0LWtleWJvYXJkLWtleScsXG4gIHRlbXBsYXRlVXJsOiAnLi9rZXlib2FyZC1rZXkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9rZXlib2FyZC1rZXkuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX2RlYWRrZXlLZXlzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIF9yZXBlYXRUaW1lb3V0SGFuZGxlcjogYW55O1xuICBwcml2YXRlIF9yZXBlYXRJbnRlcnZhbEhhbmRsZXI6IGFueTtcbiAgcHJpdmF0ZSBfcmVwZWF0U3RhdGU6IGJvb2xlYW4gPSBmYWxzZTsgLy8gdHJ1ZSBpZiByZXBlYXRpbmcsIGZhbHNlIGlmIHdhaXRpbmdcblxuICBhY3RpdmUkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcmVzc2VkJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgQElucHV0KClcbiAga2V5OiBzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5O1xuXG4gIEBJbnB1dCgpXG4gIGljb246IElNYXRJY29uO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBhY3RpdmUoYWN0aXZlOiBib29sZWFuKSB7XG4gICAgdGhpcy5hY3RpdmUkLm5leHQoYWN0aXZlKTtcbiAgfVxuXG4gIGdldCBhY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHByZXNzZWQocHJlc3NlZDogYm9vbGVhbikge1xuICAgIHRoaXMucHJlc3NlZCQubmV4dChwcmVzc2VkKTtcbiAgfVxuXG4gIGdldCBwcmVzc2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnByZXNzZWQkLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBpbnB1dD86IEVsZW1lbnRSZWY7XG5cbiAgQElucHV0KClcbiAgY29udHJvbD86IEZvcm1Db250cm9sO1xuXG4gIEBPdXRwdXQoKVxuICBnZW5lcmljQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGVudGVyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGJrc3BDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgY2Fwc0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBhbHRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgc2hpZnRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgc3BhY2VDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgdGFiQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGtleUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuXG4gIGdldCBsb3dlcktleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmtleX1gLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBnZXQgY2hhckNvZGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gYCR7dGhpcy5rZXl9YC5jaGFyQ29kZUF0KDApO1xuICB9XG5cbiAgZ2V0IGlzQ2xhc3NLZXkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMua2V5IGluIEtleWJvYXJkQ2xhc3NLZXk7XG4gIH1cblxuICBnZXQgaXNEZWFkS2V5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kZWFka2V5S2V5cy5zb21lKChkZWFkS2V5OiBzdHJpbmcpID0+IGRlYWRLZXkgPT09IGAke3RoaXMua2V5fWApO1xuICB9XG5cbiAgZ2V0IGhhc0ljb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbiAhPT0gdW5kZWZpbmVkICYmIHRoaXMuaWNvbiAhPT0gbnVsbDtcbiAgfVxuXG4gIGdldCBpY29uTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb24ubmFtZSB8fCAnJztcbiAgfVxuXG4gIGdldCBmb250U2V0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbi5mb250U2V0IHx8ICcnO1xuICB9XG5cbiAgZ2V0IGZvbnRJY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbi5mb250SWNvbiB8fCAnJztcbiAgfVxuXG4gIGdldCBzdmdJY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbi5zdmdJY29uIHx8ICcnO1xuICB9XG5cbiAgZ2V0IGNzc0NsYXNzKCk6IHN0cmluZyB7XG4gICAgY29uc3QgY2xhc3NlcyA9IFtdO1xuXG4gICAgaWYgKHRoaXMuaGFzSWNvbikge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdtYXQta2V5Ym9hcmQta2V5LW1vZGlmaWVyJyk7XG4gICAgICBjbGFzc2VzLnB1c2goYG1hdC1rZXlib2FyZC1rZXktJHt0aGlzLmxvd2VyS2V5fWApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzRGVhZEtleSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdtYXQta2V5Ym9hcmQta2V5LWRlYWRrZXknKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2xhc3Nlcy5qb2luKCcgJyk7XG4gIH1cblxuICBnZXQgaW5wdXRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbnRyb2wudmFsdWU7XG4gICAgfSBlbHNlIGlmICh0aGlzLmlucHV0ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUpIHtcbiAgICAgIHJldHVybiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICBzZXQgaW5wdXRWYWx1ZShpbnB1dFZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUoaW5wdXRWYWx1ZSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmlucHV0ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gaW5wdXRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICAvLyBJbmplY3QgZGVwZW5kZW5jaWVzXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTUFUX0tFWUJPQVJEX0RFQURLRVlTKSBwcml2YXRlIF9kZWFka2V5czogSUtleWJvYXJkRGVhZGtleXMpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vIHJlYWQgdGhlIGRlYWRrZXlzXG4gICAgdGhpcy5fZGVhZGtleUtleXMgPSBPYmplY3Qua2V5cyh0aGlzLl9kZWFka2V5cyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmNhbmNlbFJlcGVhdCgpO1xuICB9XG5cbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIC8vIFRyaWdnZXIgZ2VuZXJpYyBjbGljayBldmVudFxuICAgIHRoaXMuZ2VuZXJpY0NsaWNrLmVtaXQoZXZlbnQpO1xuXG4gICAgLy8gRG8gbm90IGV4ZWN1dGUga2V5cHJlc3MgaWYga2V5IGlzIGN1cnJlbnRseSByZXBlYXRpbmdcbiAgICBpZiAodGhpcy5fcmVwZWF0U3RhdGUpIHsgcmV0dXJuOyB9XG5cbiAgICAvLyBUcmlnZ2VyIGEgZ2xvYmFsIGtleSBldmVudC4gVE9ETzogaW52ZXN0aWdhdGVcbiAgICAvLyB0aGlzLl90cmlnZ2VyS2V5RXZlbnQoKTtcblxuICAgIC8vIE1hbmlwdWxhdGUgdGhlIGZvY3VzZWQgaW5wdXQgLyB0ZXh0YXJlYSB2YWx1ZVxuICAgIGNvbnN0IGNhcmV0ID0gdGhpcy5pbnB1dCA/IHRoaXMuX2dldEN1cnNvclBvc2l0aW9uKCkgOiAwO1xuXG4gICAgbGV0IGNoYXI6IHN0cmluZztcbiAgICBzd2l0Y2ggKHRoaXMua2V5KSB7XG4gICAgICAvLyB0aGlzIGtleXMgaGF2ZSBubyBhY3Rpb25zIHlldFxuICAgICAgLy8gVE9ETzogYWRkIGRlYWRrZXlzIGFuZCBtb2RpZmllcnNcbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5BbHQ6XG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0R3I6XG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0TGs6XG4gICAgICAgIHRoaXMuYWx0Q2xpY2suZW1pdChldmVudCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQmtzcDpcbiAgICAgICAgdGhpcy5kZWxldGVTZWxlY3RlZFRleHQoKTtcbiAgICAgICAgdGhpcy5ia3NwQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQ2FwczpcbiAgICAgICAgdGhpcy5jYXBzQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuRW50ZXI6XG4gICAgICAgIGlmICh0aGlzLl9pc1RleHRhcmVhKCkpIHtcbiAgICAgICAgICBjaGFyID0gVkFMVUVfTkVXTElORTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmVudGVyQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgICAgLy8gVE9ETzogdHJpZ2dlciBzdWJtaXQgLyBvblN1Ym1pdCAvIG5nU3VibWl0IHByb3Blcmx5IChmb3IgdGhlIHRpbWUgYmVpbmcgdGhpcyBoYXMgdG8gYmUgaGFuZGxlZCBieSB0aGUgdXNlciBoaW1zZWxmKVxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuY29udHJvbC5uZ0NvbnRyb2wuY29udHJvbC5yb290KVxuICAgICAgICAgIC8vIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb3JtLnN1Ym1pdCgpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuU2hpZnQ6XG4gICAgICAgIHRoaXMuc2hpZnRDbGljay5lbWl0KGV2ZW50KTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5TcGFjZTpcbiAgICAgICAgY2hhciA9IFZBTFVFX1NQQUNFO1xuICAgICAgICB0aGlzLnNwYWNlQ2xpY2suZW1pdChldmVudCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuVGFiOlxuICAgICAgICBjaGFyID0gVkFMVUVfVEFCO1xuICAgICAgICB0aGlzLnRhYkNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICBicmVhaztcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gdGhlIGtleSBpcyBub3QgbWFwcGVkIG9yIGEgc3RyaW5nXG4gICAgICAgIGNoYXIgPSBgJHt0aGlzLmtleX1gO1xuICAgICAgICB0aGlzLmtleUNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBpZiAoY2hhciAmJiB0aGlzLmlucHV0KSB7XG4gICAgICB0aGlzLnJlcGxhY2VTZWxlY3RlZFRleHQoY2hhcik7XG4gICAgICB0aGlzLl9zZXRDdXJzb3JQb3NpdGlvbihjYXJldCArIDEpO1xuICAgIH1cblxuICAgIC8vIERpc3BhdGNoIElucHV0IEV2ZW50IGZvciBBbmd1bGFyIHRvIHJlZ2lzdGVyIGEgY2hhbmdlXG4gICAgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdpbnB1dCcsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvLyBIYW5kbGUgcmVwZWF0aW5nIGtleXMuIEtleXByZXNzIGxvZ2ljIGRlcml2ZWQgZnJvbSBvbkNsaWNrKClcbiAgb25Qb2ludGVyRG93bigpIHtcbiAgICB0aGlzLmNhbmNlbFJlcGVhdCgpO1xuICAgIHRoaXMuX3JlcGVhdFN0YXRlID0gZmFsc2U7XG4gICAgdGhpcy5fcmVwZWF0VGltZW91dEhhbmRsZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIC8vIEluaXRpYWxpemUga2V5cHJlc3MgdmFyaWFibGVzXG4gICAgICBsZXQgY2hhcjogc3RyaW5nO1xuICAgICAgbGV0IGtleUZuOiAoKSA9PiB2b2lkO1xuXG4gICAgICBzd2l0Y2ggKHRoaXMua2V5KSB7XG4gICAgICAgIC8vIElnbm9yZSBub24tcmVwZWF0aW5nIGtleXNcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdDpcbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkFsdEdyOlxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuQWx0TGs6XG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5DYXBzOlxuICAgICAgICBjYXNlIEtleWJvYXJkQ2xhc3NLZXkuRW50ZXI6XG4gICAgICAgIGNhc2UgS2V5Ym9hcmRDbGFzc0tleS5TaGlmdDpcbiAgICAgICAgICByZXR1cm47XG5cbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LkJrc3A6XG4gICAgICAgICAga2V5Rm4gPSAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRlbGV0ZVNlbGVjdGVkVGV4dCgpO1xuICAgICAgICAgICAgdGhpcy5ia3NwQ2xpY2suZW1pdCgpO1xuICAgICAgICAgIH07XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlNwYWNlOlxuICAgICAgICAgIGNoYXIgPSBWQUxVRV9TUEFDRTtcbiAgICAgICAgICBrZXlGbiA9ICgpID0+IHRoaXMuc3BhY2VDbGljay5lbWl0KCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBLZXlib2FyZENsYXNzS2V5LlRhYjpcbiAgICAgICAgICBjaGFyID0gVkFMVUVfVEFCO1xuICAgICAgICAgIGtleUZuID0gKCkgPT4gdGhpcy50YWJDbGljay5lbWl0KCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBjaGFyID0gYCR7dGhpcy5rZXl9YDtcbiAgICAgICAgICBrZXlGbiA9ICgpID0+IHRoaXMua2V5Q2xpY2suZW1pdCgpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICAvLyBFeGVjdXRlIHJlcGVhdGluZyBrZXlwcmVzc1xuICAgICAgdGhpcy5fcmVwZWF0SW50ZXJ2YWxIYW5kbGVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICBjb25zdCBjYXJldCA9IHRoaXMuaW5wdXQgPyB0aGlzLl9nZXRDdXJzb3JQb3NpdGlvbigpIDogMDtcbiAgICAgICAgdGhpcy5fcmVwZWF0U3RhdGUgPSB0cnVlO1xuXG4gICAgICAgIGlmIChrZXlGbikgeyBrZXlGbigpOyB9XG5cbiAgICAgICAgaWYgKGNoYXIgJiYgdGhpcy5pbnB1dCkge1xuICAgICAgICAgIHRoaXMucmVwbGFjZVNlbGVjdGVkVGV4dChjaGFyKTtcbiAgICAgICAgICB0aGlzLl9zZXRDdXJzb3JQb3NpdGlvbihjYXJldCArIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlIH0pKSk7XG4gICAgICAgIH1cbiAgICAgIH0sIFJFUEVBVF9JTlRFUlZBTCk7XG4gICAgfSwgUkVQRUFUX1RJTUVPVVQpO1xuICB9XG5cbiAgY2FuY2VsUmVwZWF0KCkge1xuICAgIGlmICh0aGlzLl9yZXBlYXRUaW1lb3V0SGFuZGxlcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3JlcGVhdFRpbWVvdXRIYW5kbGVyKTtcbiAgICAgIHRoaXMuX3JlcGVhdFRpbWVvdXRIYW5kbGVyID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcmVwZWF0SW50ZXJ2YWxIYW5kbGVyKSB7XG4gICAgICBjbGVhckludGVydmFsKHRoaXMuX3JlcGVhdEludGVydmFsSGFuZGxlcik7XG4gICAgICB0aGlzLl9yZXBlYXRJbnRlcnZhbEhhbmRsZXIgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGVsZXRlU2VsZWN0ZWRUZXh0KCk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5pbnB1dFZhbHVlID8gdGhpcy5pbnB1dFZhbHVlLnRvU3RyaW5nKCkgOiAnJztcbiAgICBsZXQgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XG4gICAgbGV0IHNlbGVjdGlvbkxlbmd0aCA9IHRoaXMuX2dldFNlbGVjdGlvbkxlbmd0aCgpO1xuICAgIGlmIChzZWxlY3Rpb25MZW5ndGggPT09IDApIHtcbiAgICAgIGlmIChjYXJldCA9PT0gMCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNhcmV0LS07XG4gICAgICBzZWxlY3Rpb25MZW5ndGggPSAxO1xuICAgIH1cblxuICAgIGNvbnN0IGhlYWRQYXJ0ID0gdmFsdWUuc2xpY2UoMCwgY2FyZXQpO1xuICAgIGNvbnN0IGVuZFBhcnQgPSB2YWx1ZS5zbGljZShjYXJldCArIHNlbGVjdGlvbkxlbmd0aCk7XG5cbiAgICB0aGlzLmlucHV0VmFsdWUgPSBbaGVhZFBhcnQsIGVuZFBhcnRdLmpvaW4oJycpO1xuICAgIHRoaXMuX3NldEN1cnNvclBvc2l0aW9uKGNhcmV0KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwbGFjZVNlbGVjdGVkVGV4dChjaGFyOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaW5wdXRWYWx1ZSA/IHRoaXMuaW5wdXRWYWx1ZS50b1N0cmluZygpIDogJyc7XG4gICAgY29uc3QgY2FyZXQgPSB0aGlzLmlucHV0ID8gdGhpcy5fZ2V0Q3Vyc29yUG9zaXRpb24oKSA6IDA7XG4gICAgY29uc3Qgc2VsZWN0aW9uTGVuZ3RoID0gdGhpcy5fZ2V0U2VsZWN0aW9uTGVuZ3RoKCk7XG4gICAgY29uc3QgaGVhZFBhcnQgPSB2YWx1ZS5zbGljZSgwLCBjYXJldCk7XG4gICAgY29uc3QgZW5kUGFydCA9IHZhbHVlLnNsaWNlKGNhcmV0ICsgc2VsZWN0aW9uTGVuZ3RoKTtcblxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IFtoZWFkUGFydCwgY2hhciwgZW5kUGFydF0uam9pbignJyk7XG4gIH1cblxuICAvLyBUT0RPOiBJbmNsdWRlIGZvciByZXBlYXRpbmcga2V5cyBhcyB3ZWxsIChpZiB0aGlzIGdldHMgaW1wbGVtZW50ZWQpXG4gIC8vIHByaXZhdGUgX3RyaWdnZXJLZXlFdmVudCgpOiBFdmVudCB7XG4gIC8vICAgY29uc3Qga2V5Ym9hcmRFdmVudCA9IG5ldyBLZXlib2FyZEV2ZW50KCdrZXlkb3duJyk7XG4gIC8vICAgLy9cbiAgLy8gICAvLyBrZXlib2FyZEV2ZW50W2luaXRNZXRob2RdKFxuICAvLyAgIC8vICAgdHJ1ZSwgLy8gYnViYmxlc1xuICAvLyAgIC8vICAgdHJ1ZSwgLy8gY2FuY2VsYWJsZVxuICAvLyAgIC8vICAgd2luZG93LCAvLyB2aWV3QXJnOiBzaG91bGQgYmUgd2luZG93XG4gIC8vICAgLy8gICBmYWxzZSwgLy8gY3RybEtleUFyZ1xuICAvLyAgIC8vICAgZmFsc2UsIC8vIGFsdEtleUFyZ1xuICAvLyAgIC8vICAgZmFsc2UsIC8vIHNoaWZ0S2V5QXJnXG4gIC8vICAgLy8gICBmYWxzZSwgLy8gbWV0YUtleUFyZ1xuICAvLyAgIC8vICAgdGhpcy5jaGFyQ29kZSwgLy8ga2V5Q29kZUFyZyA6IHVuc2lnbmVkIGxvbmcgLSB0aGUgdmlydHVhbCBrZXkgY29kZSwgZWxzZSAwXG4gIC8vICAgLy8gICAwIC8vIGNoYXJDb2RlQXJncyA6IHVuc2lnbmVkIGxvbmcgLSB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBkZXByZXNzZWQga2V5LCBlbHNlIDBcbiAgLy8gICAvLyApO1xuICAvLyAgIC8vXG4gIC8vICAgLy8gd2luZG93LmRvY3VtZW50LmRpc3BhdGNoRXZlbnQoa2V5Ym9hcmRFdmVudCk7XG5cbiAgLy8gICByZXR1cm4ga2V5Ym9hcmRFdmVudDtcbiAgLy8gfVxuXG4gIC8vIGluc3BpcmVkIGJ5OlxuICAvLyByZWYgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzI4OTc1MTAvMTE0NjIwN1xuICBwcml2YXRlIF9nZXRDdXJzb3JQb3NpdGlvbigpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5pbnB1dCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgnc2VsZWN0aW9uU3RhcnQnIGluIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCkge1xuICAgICAgLy8gU3RhbmRhcmQtY29tcGxpYW50IGJyb3dzZXJzXG4gICAgICByZXR1cm4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0O1xuICAgIH0gZWxzZSBpZiAoJ3NlbGVjdGlvbicgaW4gd2luZG93LmRvY3VtZW50KSB7XG4gICAgICAvLyBJRVxuICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICBjb25zdCBzZWxlY3Rpb246IGFueSA9IHdpbmRvdy5kb2N1bWVudFsnc2VsZWN0aW9uJ107XG4gICAgICBjb25zdCBzZWwgPSBzZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTtcbiAgICAgIGNvbnN0IHNlbExlbiA9IHNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLnRleHQubGVuZ3RoO1xuICAgICAgc2VsLm1vdmVTdGFydCgnY2hhcmFjdGVyJywgLXRoaXMuY29udHJvbC52YWx1ZS5sZW5ndGgpO1xuXG4gICAgICByZXR1cm4gc2VsLnRleHQubGVuZ3RoIC0gc2VsTGVuO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2dldFNlbGVjdGlvbkxlbmd0aCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5pbnB1dCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICgnc2VsZWN0aW9uRW5kJyBpbiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIC8vIFN0YW5kYXJkLWNvbXBsaWFudCBicm93c2Vyc1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgLSB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgfVxuXG4gICAgaWYgKCdzZWxlY3Rpb24nIGluIHdpbmRvdy5kb2N1bWVudCkge1xuICAgICAgLy8gSUVcbiAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgY29uc3Qgc2VsZWN0aW9uOiBhbnkgPSB3aW5kb3cuZG9jdW1lbnRbJ3NlbGVjdGlvbiddO1xuICAgICAgcmV0dXJuIHNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLnRleHQubGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIC8vIGluc3BpcmVkIGJ5OlxuICAvLyByZWYgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzEyNTE4NzM3LzExNDYyMDdcbiAgLy8gdHNsaW50OmRpc2FibGUgb25lLWxpbmVcbiAgcHJpdmF0ZSBfc2V0Q3Vyc29yUG9zaXRpb24ocG9zaXRpb246IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5pbnB1dCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuY29udHJvbC52YWx1ZTtcbiAgICAvLyBeIHRoaXMgaXMgdXNlZCB0byBub3Qgb25seSBnZXQgXCJmb2N1c1wiLCBidXRcbiAgICAvLyB0byBtYWtlIHN1cmUgd2UgZG9uJ3QgaGF2ZSBpdCBldmVyeXRoaW5nIC1zZWxlY3RlZC1cbiAgICAvLyAoaXQgY2F1c2VzIGFuIGlzc3VlIGluIGNocm9tZSwgYW5kIGhhdmluZyBpdCBkb2Vzbid0IGh1cnQgYW55IG90aGVyIGJyb3dzZXIpXG5cbiAgICBpZiAoJ2NyZWF0ZVRleHRSYW5nZScgaW4gdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICBjb25zdCByYW5nZSA9IHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5jcmVhdGVUZXh0UmFuZ2UoKTtcbiAgICAgIHJhbmdlLm1vdmUoJ2NoYXJhY3RlcicsIHBvc2l0aW9uKTtcbiAgICAgIHJhbmdlLnNlbGVjdCgpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIChlbC5zZWxlY3Rpb25TdGFydCA9PT0gMCBhZGRlZCBmb3IgRmlyZWZveCBidWcpXG4gICAgICBpZiAodGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0IHx8IHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9PT0gMCkge1xuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHBvc2l0aW9uLCBwb3NpdGlvbik7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgLy8gZmFpbCBjaXR5LCBmb3J0dW5hdGVseSB0aGlzIG5ldmVyIGhhcHBlbnMgKGFzIGZhciBhcyBJJ3ZlIHRlc3RlZCkgOilcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzVGV4dGFyZWEoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXQgJiYgdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50ICYmIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC50YWdOYW1lID09PSAnVEVYVEFSRUEnO1xuICB9XG5cbn1cbiJdfQ==

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Inject, LOCALE_ID, ViewChildren } from '@angular/core';

@@ -236,18 +236,18 @@ import { BehaviorSubject } from 'rxjs';

]; };
tslib_1.__decorate([
__decorate([
ViewChildren(MatKeyboardKeyComponent)
], MatKeyboardComponent.prototype, "_keys", void 0);
tslib_1.__decorate([
__decorate([
HostBinding('class.mat-keyboard')
], MatKeyboardComponent.prototype, "cssClass", void 0);
tslib_1.__decorate([
__decorate([
HostListener('document:keydown', ['$event'])
], MatKeyboardComponent.prototype, "onKeyDown", null);
tslib_1.__decorate([
__decorate([
HostListener('document:keyup', ['$event'])
], MatKeyboardComponent.prototype, "onKeyUp", null);
MatKeyboardComponent = tslib_1.__decorate([
MatKeyboardComponent = __decorate([
Component({
selector: 'mat-keyboard',
template: "<div class=\"mat-keyboard-wrapper\"\r\n [class.dark-theme]=\"darkTheme$ | async\"\r\n [class.debug]=\"isDebug$ | async\"\r\n>\r\n <nav class=\"mat-keyboard-layout\">\r\n <div class=\"mat-keyboard-row\"\r\n *ngFor=\"let row of layout.keys\"\r\n >\r\n <ng-container *ngFor=\"let key of row\">\r\n <mat-keyboard-key class=\"mat-keyboard-col\"\r\n *ngIf=\"getModifiedKey(key)\"\r\n [key]=\"getModifiedKey(key)\"\r\n [icon]=\"getKeyIcon(key)\"\r\n [active]=\"isActive(key)\"\r\n [input]=\"inputInstance | async\"\r\n [control]=\"control\"\r\n (enterClick)=\"onEnterClick()\"\r\n (capsClick)=\"onCapsClick()\"\r\n (altClick)=\"onAltClick()\"\r\n (shiftClick)=\"onShiftClick()\"\r\n (keyClick)=\"onKeyClick()\"\r\n ></mat-keyboard-key>\r\n </ng-container>\r\n </div>\r\n </nav>\r\n</div>\r\n",
template: "<div class=\"mat-keyboard-wrapper\"\n [class.dark-theme]=\"darkTheme$ | async\"\n [class.debug]=\"isDebug$ | async\"\n>\n <nav class=\"mat-keyboard-layout\">\n <div class=\"mat-keyboard-row\"\n *ngFor=\"let row of layout.keys\"\n >\n <ng-container *ngFor=\"let key of row\">\n <mat-keyboard-key class=\"mat-keyboard-col\"\n *ngIf=\"getModifiedKey(key)\"\n [key]=\"getModifiedKey(key)\"\n [icon]=\"getKeyIcon(key)\"\n [active]=\"isActive(key)\"\n [input]=\"inputInstance | async\"\n [control]=\"control\"\n (enterClick)=\"onEnterClick()\"\n (capsClick)=\"onCapsClick()\"\n (altClick)=\"onAltClick()\"\n (shiftClick)=\"onShiftClick()\"\n (keyClick)=\"onKeyClick()\"\n ></mat-keyboard-key>\n </ng-container>\n </div>\n </nav>\n</div>\n",
changeDetection: ChangeDetectionStrategy.OnPush,

@@ -257,3 +257,3 @@ preserveWhitespaces: false,

}),
tslib_1.__param(0, Inject(LOCALE_ID))
__param(0, Inject(LOCALE_ID))
], MatKeyboardComponent);

@@ -263,2 +263,2 @@ return MatKeyboardComponent;

export { MatKeyboardComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQXFCLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1SyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVqRjs7O0dBR0c7QUFRSDtJQW1FRSxzQkFBc0I7SUFDdEIsOEJBQXVDLE9BQWUsRUFDbEMsZ0JBQW9DO1FBRGpCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQW5FaEQsZUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsRSxhQUFRLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhFLG9CQUFlLEdBQXVDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBS2hGLGNBQVMsR0FBcUIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBRXBELGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXBCLFdBQU0sR0FB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LENBQUM7WUFDVCxRQUFRLEVBQUUsY0FBYztZQUN4QixrbUNBQXdDO1lBRXhDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLG1CQUFtQixFQUFFLEtBQUs7O1NBQzNCLENBQUM7UUFxRWEsbUJBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO09BcEVuQixvQkFBb0IsQ0FpUWhDO0lBQUQsMkJBQUM7Q0FBQSxBQWpRRCxJQWlRQztTQWpRWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgTE9DQUxFX0lELCBPbkluaXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkUmVmIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xyXG5pbXBvcnQgeyBLRVlCT0FSRF9JQ09OUyB9IGZyb20gJy4uLy4uL2NvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnJztcclxuaW1wb3J0IHsgS2V5Ym9hcmRDbGFzc0tleSB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcclxuaW1wb3J0IHsgS2V5Ym9hcmRNb2RpZmllciB9IGZyb20gJy4uLy4uL2VudW1zL2tleWJvYXJkLW1vZGlmaWVyLmVudW0nO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRJY29ucywgSU1hdEljb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElLZXlib2FyZExheW91dCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZSc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZEtleUNvbXBvbmVudCB9IGZyb20gJy4uL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBBIGNvbXBvbmVudCB1c2VkIHRvIG9wZW4gYXMgdGhlIGRlZmF1bHQga2V5Ym9hcmQsIG1hdGNoaW5nIG1hdGVyaWFsIHNwZWMuXHJcbiAqIFRoaXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBpbnRlcm5hbGx5IGJ5IHRoZSBrZXlib2FyZCBzZXJ2aWNlLlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtYXQta2V5Ym9hcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9rZXlib2FyZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4va2V5Ym9hcmQuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBwcml2YXRlIF9kYXJrVGhlbWU6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG5cclxuICBwcml2YXRlIF9pc0RlYnVnOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcclxuXHJcbiAgcHJpdmF0ZSBfaW5wdXRJbnN0YW5jZSQ6IEJlaGF2aW9yU3ViamVjdDxFbGVtZW50UmVmIHwgbnVsbD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xyXG5cclxuICBAVmlld0NoaWxkcmVuKE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KVxyXG4gIHByaXZhdGUgX2tleXM6IFF1ZXJ5TGlzdDxNYXRLZXlib2FyZEtleUNvbXBvbmVudD47XHJcblxyXG4gIHByaXZhdGUgX21vZGlmaWVyOiBLZXlib2FyZE1vZGlmaWVyID0gS2V5Ym9hcmRNb2RpZmllci5Ob25lO1xyXG5cclxuICBwcml2YXRlIF9jYXBzTG9ja2VkID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgX2ljb25zOiBJS2V5Ym9hcmRJY29ucyA9IEtFWUJPQVJEX0lDT05TO1xyXG5cclxuICAvLyB0aGUgc2VydmljZSBwcm92aWRlcyBhIGxvY2FsZSBvciBsYXlvdXQgb3B0aW9uYWxseVxyXG4gIGxvY2FsZT86IHN0cmluZztcclxuXHJcbiAgbGF5b3V0OiBJS2V5Ym9hcmRMYXlvdXQ7XHJcblxyXG4gIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuXHJcbiAgLy8gdGhlIGluc3RhbmNlIG9mIHRoZSBjb21wb25lbnQgbWFraW5nIHVwIHRoZSBjb250ZW50IG9mIHRoZSBrZXlib2FyZFxyXG4gIGtleWJvYXJkUmVmOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD47XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MubWF0LWtleWJvYXJkJylcclxuICBjc3NDbGFzcyA9IHRydWU7XHJcblxyXG4gIGVudGVyQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgY2Fwc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGFsdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHNoaWZ0Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgLy8gcmV0dXJucyBhbiBvYnNlcnZhYmxlIG9mIHRoZSBpbnB1dCBpbnN0YW5jZVxyXG4gIGdldCBpbnB1dEluc3RhbmNlKCk6IE9ic2VydmFibGU8RWxlbWVudFJlZiB8IG51bGw+IHtcclxuICAgIHJldHVybiB0aGlzLl9pbnB1dEluc3RhbmNlJC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHNldCBpY29ucyhpY29uczogSUtleWJvYXJkSWNvbnMpIHtcclxuICAgIE9iamVjdC5hc3NpZ24odGhpcy5faWNvbnMsIGljb25zKTtcclxuICB9XHJcblxyXG4gIHNldCBkYXJrVGhlbWUoZGFya1RoZW1lOiBib29sZWFuKSB7XHJcbiAgICBpZiAodGhpcy5fZGFya1RoZW1lLmdldFZhbHVlKCkgIT09IGRhcmtUaGVtZSkge1xyXG4gICAgICB0aGlzLl9kYXJrVGhlbWUubmV4dChkYXJrVGhlbWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0IGlzRGVidWcoaXNEZWJ1ZzogYm9vbGVhbikge1xyXG4gICAgaWYgKHRoaXMuX2lzRGVidWcuZ2V0VmFsdWUoKSAhPT0gaXNEZWJ1Zykge1xyXG4gICAgICB0aGlzLl9pc0RlYnVnLm5leHQoaXNEZWJ1Zyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgZGFya1RoZW1lJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLl9kYXJrVGhlbWUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNEZWJ1ZyQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNEZWJ1Zy5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIC8vIGluamVjdCBkZXBlbmRlbmNpZXNcclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KExPQ0FMRV9JRCkgcHJpdmF0ZSBfbG9jYWxlOiBzdHJpbmcsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfa2V5Ym9hcmRTZXJ2aWNlOiBNYXRLZXlib2FyZFNlcnZpY2UpIHsgfVxyXG5cclxuICBzZXRJbnB1dEluc3RhbmNlKGlucHV0SW5zdGFuY2U6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMuX2lucHV0SW5zdGFuY2UkLm5leHQoaW5wdXRJbnN0YW5jZSk7XHJcbiAgfVxyXG5cclxuICBhdHRhY2hDb250cm9sKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xyXG4gICAgdGhpcy5jb250cm9sID0gY29udHJvbDtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgLy8gc2V0IGEgZmFsbGJhY2sgdXNpbmcgdGhlIGxvY2FsZVxyXG4gICAgaWYgKCF0aGlzLmxheW91dCkge1xyXG4gICAgICB0aGlzLmxvY2FsZSA9IHRoaXMuX2tleWJvYXJkU2VydmljZS5tYXBMb2NhbGUodGhpcy5fbG9jYWxlKSA/IHRoaXMuX2xvY2FsZSA6ICdlbi1VUyc7XHJcbiAgICAgIHRoaXMubGF5b3V0ID0gdGhpcy5fa2V5Ym9hcmRTZXJ2aWNlLmdldExheW91dEZvckxvY2FsZSh0aGlzLmxvY2FsZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBkaXNtaXNzZXMgdGhlIGtleWJvYXJkXHJcbiAgICovXHJcbiAgZGlzbWlzcygpIHtcclxuICAgIHRoaXMua2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogY2hlY2tzIGlmIGEgZ2l2ZW4ga2V5IGlzIGN1cnJlbnRseSBwcmVzc2VkXHJcbiAgICogQHBhcmFtIGtleVxyXG4gICAqIEBwYXJhbVxyXG4gICAqL1xyXG4gIGlzQWN0aXZlKGtleTogKHN0cmluZyB8IEtleWJvYXJkQ2xhc3NLZXkpW10pOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG1vZGlmaWVkS2V5OiBzdHJpbmcgPSB0aGlzLmdldE1vZGlmaWVkS2V5KGtleSk7XHJcbiAgICBjb25zdCBpc0FjdGl2ZUNhcHNMb2NrOiBib29sZWFuID0gbW9kaWZpZWRLZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuQ2FwcyAmJiB0aGlzLl9jYXBzTG9ja2VkO1xyXG4gICAgY29uc3QgaXNBY3RpdmVNb2RpZmllcjogYm9vbGVhbiA9IG1vZGlmaWVkS2V5ID09PSBLZXlib2FyZE1vZGlmaWVyW3RoaXMuX21vZGlmaWVyXTtcclxuICAgIHJldHVybiBpc0FjdGl2ZUNhcHNMb2NrIHx8IGlzQWN0aXZlTW9kaWZpZXI7XHJcbiAgfVxyXG5cclxuICAvLyByZXRyaWV2ZXMgbW9kaWZpZWQga2V5XHJcbiAgZ2V0TW9kaWZpZWRLZXkoa2V5OiAoc3RyaW5nIHwgS2V5Ym9hcmRDbGFzc0tleSlbXSk6IHN0cmluZyB7XHJcbiAgICBsZXQgbW9kaWZpZXI6IEtleWJvYXJkTW9kaWZpZXIgPSB0aGlzLl9tb2RpZmllcjtcclxuXHJcbiAgICAvLyBgQ2Fwc0xvY2tgIGludmVydHMgdGhlIG1lYW5pbmcgb2YgYFNoaWZ0YFxyXG4gICAgaWYgKHRoaXMuX2NhcHNMb2NrZWQpIHtcclxuICAgICAgbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRTaGlmdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4ga2V5W21vZGlmaWVyXTtcclxuICB9XHJcblxyXG4gIC8vIHJldHJpZXZlcyBpY29uIGZvciBnaXZlbiBrZXlcclxuICBnZXRLZXlJY29uKGtleTogKHN0cmluZyB8IEtleWJvYXJkQ2xhc3NLZXkpW10pOiBJTWF0SWNvbiB7XHJcbiAgICByZXR1cm4gdGhpcy5faWNvbnNba2V5W0tleWJvYXJkTW9kaWZpZXIuTm9uZV1dO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogbGlzdGVucyB0byB1c2VycyBrZXlib2FyZCBpbnB1dHMgdG8gc2ltdWxhdGUgb24gdmlydHVhbCBrZXlib2FyZCwgdG9vXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICAvLyAnYWN0aXZhdGUnIGNvcnJlc3BvbmRpbmcga2V5XHJcbiAgICB0aGlzLl9rZXlzXHJcbiAgICAgIC5maWx0ZXIoKGtleTogTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQpID0+IGtleS5rZXkgPT09IGV2ZW50LmtleSlcclxuICAgICAgLmZvckVhY2goKGtleTogTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQpID0+IHtcclxuICAgICAgICBrZXkucHJlc3NlZCA9IHRydWU7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIC8vIHNpbXVsYXRlIG1vZGlmaWVyIHByZXNzXHJcbiAgICBpZiAoZXZlbnQua2V5ID09PSBLZXlib2FyZENsYXNzS2V5LkNhcHMpIHtcclxuICAgICAgdGhpcy5vbkNhcHNDbGljayhldmVudC5nZXRNb2RpZmllclN0YXRlKEtleWJvYXJkQ2xhc3NLZXkuQ2FwcykpO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5BbHQgJiYgdGhpcy5fbW9kaWZpZXIgIT09IEtleWJvYXJkTW9kaWZpZXIuQWx0ICYmIHRoaXMuX21vZGlmaWVyICE9PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSB7XHJcbiAgICAgIHRoaXMub25BbHRDbGljaygpO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5TaGlmdCAmJiB0aGlzLl9tb2RpZmllciAhPT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdCAmJiB0aGlzLl9tb2RpZmllciAhPT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkge1xyXG4gICAgICB0aGlzLm9uU2hpZnRDbGljaygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogbGlzdGVucyB0byB1c2VycyBrZXlib2FyZCBpbnB1dHMgdG8gc2ltdWxhdGUgb24gdmlydHVhbCBrZXlib2FyZCwgdG9vXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5dXAnLCBbJyRldmVudCddKVxyXG4gIG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIC8vICdkZWFjdGl2YXRlJyBjb3JyZXNwb25kaW5nIGtleVxyXG4gICAgdGhpcy5fa2V5c1xyXG4gICAgICAuZmlsdGVyKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiBrZXkua2V5ID09PSBldmVudC5rZXkpXHJcbiAgICAgIC5mb3JFYWNoKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiB7XHJcbiAgICAgICAga2V5LnByZXNzZWQgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgLy8gc2ltdWxhdGUgbW9kaWZpZXIgcmVsZWFzZVxyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5BbHQgJiYgKHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLkFsdCB8fCB0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkpIHtcclxuICAgICAgdGhpcy5vbkFsdENsaWNrKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoZXZlbnQua2V5ID09PSBLZXlib2FyZENsYXNzS2V5LlNoaWZ0ICYmICh0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdCB8fCB0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkpIHtcclxuICAgICAgdGhpcy5vblNoaWZ0Q2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGJ1YmJsZXMgZXZlbnQgaWYgc3VibWl0IGlzIHBvdGVudGlhbGx5IHRyaWdnZXJlZFxyXG4gICAqL1xyXG4gIG9uRW50ZXJDbGljaygpIHtcclxuICAgIC8vIG5vdGlmeSBzdWJzY3JpYmVyc1xyXG4gICAgdGhpcy5lbnRlckNsaWNrLm5leHQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHNpbXVsYXRlcyBjbGlja2luZyBgQ2Fwc0xvY2tgIGtleVxyXG4gICAqIEBwYXJhbSB0YXJnZXRTdGF0ZVxyXG4gICAqL1xyXG4gIG9uQ2Fwc0NsaWNrKHRhcmdldFN0YXRlID0gIXRoaXMuX2NhcHNMb2NrZWQpIHtcclxuICAgIC8vIG5vdCBpbXBsZW1lbnRlZFxyXG4gICAgdGhpcy5fY2Fwc0xvY2tlZCA9IHRhcmdldFN0YXRlO1xyXG5cclxuICAgIC8vIG5vdGlmeSBzdWJzY3JpYmVyc1xyXG4gICAgdGhpcy5jYXBzQ2xpY2submV4dCgpO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBub24tbW9kaWZpZXIga2V5cyBhcmUgY2xpY2tlZFxyXG4gICAqL1xyXG4gIG9uS2V5Q2xpY2soKSB7XHJcbiAgICBpZiAodGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpIHtcclxuICAgICAgdGhpcy5fbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRTaGlmdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuQWx0IHx8IHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSB7XHJcbiAgICAgIHRoaXMuX21vZGlmaWVyID0gdGhpcy5faW52ZXJ0QWx0TW9kaWZpZXIodGhpcy5fbW9kaWZpZXIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogc2ltdWxhdGVzIGNsaWNraW5nIGBBbHRgIGtleVxyXG4gICAqL1xyXG4gIG9uQWx0Q2xpY2soKSB7XHJcbiAgICAvLyBpbnZlcnQgbW9kaWZpZXIgbWVhbmluZ1xyXG4gICAgdGhpcy5fbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRBbHRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XHJcblxyXG4gICAgLy8gbm90aWZ5IHN1YnNjcmliZXJzXHJcbiAgICB0aGlzLmFsdENsaWNrLm5leHQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIHNpbXVsYXRlcyBjbGlja2luZyBgU2hpZnRgIGtleVxyXG4gICAqL1xyXG4gIG9uU2hpZnRDbGljaygpIHtcclxuICAgIC8vIGludmVydCBtb2RpZmllciBtZWFuaW5nXHJcbiAgICB0aGlzLl9tb2RpZmllciA9IHRoaXMuX2ludmVydFNoaWZ0TW9kaWZpZXIodGhpcy5fbW9kaWZpZXIpO1xyXG5cclxuICAgIC8vIG5vdGlmeSBzdWJzY3JpYmVyc1xyXG4gICAgdGhpcy5zaGlmdENsaWNrLm5leHQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ludmVydEFsdE1vZGlmaWVyKG1vZGlmaWVyOiBLZXlib2FyZE1vZGlmaWVyKTogS2V5Ym9hcmRNb2RpZmllciB7XHJcbiAgICBzd2l0Y2ggKG1vZGlmaWVyKSB7XHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5Ob25lOlxyXG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLkFsdDtcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdDpcclxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdDtcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdDpcclxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5TaGlmdDtcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5BbHQ6XHJcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuTm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ludmVydFNoaWZ0TW9kaWZpZXIobW9kaWZpZXI6IEtleWJvYXJkTW9kaWZpZXIpOiBLZXlib2FyZE1vZGlmaWVyIHtcclxuICAgIHN3aXRjaCAobW9kaWZpZXIpIHtcclxuICAgICAgY2FzZSBLZXlib2FyZE1vZGlmaWVyLk5vbmU6XHJcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ7XHJcblxyXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuQWx0OlxyXG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0O1xyXG5cclxuICAgICAgY2FzZSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0OlxyXG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLkFsdDtcclxuXHJcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdDpcclxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5Ob25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQXFCLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU1SyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUd0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVqRjs7O0dBR0c7QUFRSDtJQW1FRSxzQkFBc0I7SUFDdEIsOEJBQXVDLE9BQWUsRUFDbEMsZ0JBQW9DO1FBRGpCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQW5FaEQsZUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsRSxhQUFRLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhFLG9CQUFlLEdBQXVDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBS2hGLGNBQVMsR0FBcUIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBRXBELGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXBCLFdBQU0sR0FB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LENBQUM7WUFDVCxRQUFRLEVBQUUsY0FBYztZQUN4Qiw4aUNBQXdDO1lBRXhDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1lBQy9DLG1CQUFtQixFQUFFLEtBQUs7O1NBQzNCLENBQUM7UUFxRWEsV0FBQSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7T0FwRW5CLG9CQUFvQixDQWlRaEM7SUFBRCwyQkFBQztDQUFBLEFBalFELElBaVFDO1NBalFZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBMT0NBTEVfSUQsIE9uSW5pdCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRSZWYgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2tleWJvYXJkLXJlZi5jbGFzcyc7XG5pbXBvcnQgeyBLRVlCT0FSRF9JQ09OUyB9IGZyb20gJy4uLy4uL2NvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnJztcbmltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi8uLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XG5pbXBvcnQgeyBLZXlib2FyZE1vZGlmaWVyIH0gZnJvbSAnLi4vLi4vZW51bXMva2V5Ym9hcmQtbW9kaWZpZXIuZW51bSc7XG5pbXBvcnQgeyBJS2V5Ym9hcmRJY29ucywgSU1hdEljb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZEtleUNvbXBvbmVudCB9IGZyb20gJy4uL2tleWJvYXJkLWtleS9rZXlib2FyZC1rZXkuY29tcG9uZW50JztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB1c2VkIHRvIG9wZW4gYXMgdGhlIGRlZmF1bHQga2V5Ym9hcmQsIG1hdGNoaW5nIG1hdGVyaWFsIHNwZWMuXG4gKiBUaGlzIHNob3VsZCBvbmx5IGJlIHVzZWQgaW50ZXJuYWxseSBieSB0aGUga2V5Ym9hcmQgc2VydmljZS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWF0LWtleWJvYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2tleWJvYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4va2V5Ym9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlXG59KVxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwcml2YXRlIF9kYXJrVGhlbWU6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHByaXZhdGUgX2lzRGVidWc6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHByaXZhdGUgX2lucHV0SW5zdGFuY2UkOiBCZWhhdmlvclN1YmplY3Q8RWxlbWVudFJlZiB8IG51bGw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcblxuICBAVmlld0NoaWxkcmVuKE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KVxuICBwcml2YXRlIF9rZXlzOiBRdWVyeUxpc3Q8TWF0S2V5Ym9hcmRLZXlDb21wb25lbnQ+O1xuXG4gIHByaXZhdGUgX21vZGlmaWVyOiBLZXlib2FyZE1vZGlmaWVyID0gS2V5Ym9hcmRNb2RpZmllci5Ob25lO1xuXG4gIHByaXZhdGUgX2NhcHNMb2NrZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIF9pY29uczogSUtleWJvYXJkSWNvbnMgPSBLRVlCT0FSRF9JQ09OUztcblxuICAvLyB0aGUgc2VydmljZSBwcm92aWRlcyBhIGxvY2FsZSBvciBsYXlvdXQgb3B0aW9uYWxseVxuICBsb2NhbGU/OiBzdHJpbmc7XG5cbiAgbGF5b3V0OiBJS2V5Ym9hcmRMYXlvdXQ7XG5cbiAgY29udHJvbDogQWJzdHJhY3RDb250cm9sO1xuXG4gIC8vIHRoZSBpbnN0YW5jZSBvZiB0aGUgY29tcG9uZW50IG1ha2luZyB1cCB0aGUgY29udGVudCBvZiB0aGUga2V5Ym9hcmRcbiAga2V5Ym9hcmRSZWY6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PjtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1hdC1rZXlib2FyZCcpXG4gIGNzc0NsYXNzID0gdHJ1ZTtcblxuICBlbnRlckNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgY2Fwc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgYWx0Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBzaGlmdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLy8gcmV0dXJucyBhbiBvYnNlcnZhYmxlIG9mIHRoZSBpbnB1dCBpbnN0YW5jZVxuICBnZXQgaW5wdXRJbnN0YW5jZSgpOiBPYnNlcnZhYmxlPEVsZW1lbnRSZWYgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMuX2lucHV0SW5zdGFuY2UkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgc2V0IGljb25zKGljb25zOiBJS2V5Ym9hcmRJY29ucykge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcy5faWNvbnMsIGljb25zKTtcbiAgfVxuXG4gIHNldCBkYXJrVGhlbWUoZGFya1RoZW1lOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuX2RhcmtUaGVtZS5nZXRWYWx1ZSgpICE9PSBkYXJrVGhlbWUpIHtcbiAgICAgIHRoaXMuX2RhcmtUaGVtZS5uZXh0KGRhcmtUaGVtZSk7XG4gICAgfVxuICB9XG5cbiAgc2V0IGlzRGVidWcoaXNEZWJ1ZzogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9pc0RlYnVnLmdldFZhbHVlKCkgIT09IGlzRGVidWcpIHtcbiAgICAgIHRoaXMuX2lzRGVidWcubmV4dChpc0RlYnVnKTtcbiAgICB9XG4gIH1cblxuICBnZXQgZGFya1RoZW1lJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fZGFya1RoZW1lLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGlzRGVidWckKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9pc0RlYnVnLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLy8gaW5qZWN0IGRlcGVuZGVuY2llc1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KExPQ0FMRV9JRCkgcHJpdmF0ZSBfbG9jYWxlOiBzdHJpbmcsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2tleWJvYXJkU2VydmljZTogTWF0S2V5Ym9hcmRTZXJ2aWNlKSB7IH1cblxuICBzZXRJbnB1dEluc3RhbmNlKGlucHV0SW5zdGFuY2U6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLl9pbnB1dEluc3RhbmNlJC5uZXh0KGlucHV0SW5zdGFuY2UpO1xuICB9XG5cbiAgYXR0YWNoQ29udHJvbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gc2V0IGEgZmFsbGJhY2sgdXNpbmcgdGhlIGxvY2FsZVxuICAgIGlmICghdGhpcy5sYXlvdXQpIHtcbiAgICAgIHRoaXMubG9jYWxlID0gdGhpcy5fa2V5Ym9hcmRTZXJ2aWNlLm1hcExvY2FsZSh0aGlzLl9sb2NhbGUpID8gdGhpcy5fbG9jYWxlIDogJ2VuLVVTJztcbiAgICAgIHRoaXMubGF5b3V0ID0gdGhpcy5fa2V5Ym9hcmRTZXJ2aWNlLmdldExheW91dEZvckxvY2FsZSh0aGlzLmxvY2FsZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIGRpc21pc3NlcyB0aGUga2V5Ym9hcmRcbiAgICovXG4gIGRpc21pc3MoKSB7XG4gICAgdGhpcy5rZXlib2FyZFJlZi5kaXNtaXNzKCk7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2tzIGlmIGEgZ2l2ZW4ga2V5IGlzIGN1cnJlbnRseSBwcmVzc2VkXG4gICAqIEBwYXJhbSBrZXlcbiAgICogQHBhcmFtXG4gICAqL1xuICBpc0FjdGl2ZShrZXk6IChzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5KVtdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbW9kaWZpZWRLZXk6IHN0cmluZyA9IHRoaXMuZ2V0TW9kaWZpZWRLZXkoa2V5KTtcbiAgICBjb25zdCBpc0FjdGl2ZUNhcHNMb2NrOiBib29sZWFuID0gbW9kaWZpZWRLZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuQ2FwcyAmJiB0aGlzLl9jYXBzTG9ja2VkO1xuICAgIGNvbnN0IGlzQWN0aXZlTW9kaWZpZXI6IGJvb2xlYW4gPSBtb2RpZmllZEtleSA9PT0gS2V5Ym9hcmRNb2RpZmllclt0aGlzLl9tb2RpZmllcl07XG4gICAgcmV0dXJuIGlzQWN0aXZlQ2Fwc0xvY2sgfHwgaXNBY3RpdmVNb2RpZmllcjtcbiAgfVxuXG4gIC8vIHJldHJpZXZlcyBtb2RpZmllZCBrZXlcbiAgZ2V0TW9kaWZpZWRLZXkoa2V5OiAoc3RyaW5nIHwgS2V5Ym9hcmRDbGFzc0tleSlbXSk6IHN0cmluZyB7XG4gICAgbGV0IG1vZGlmaWVyOiBLZXlib2FyZE1vZGlmaWVyID0gdGhpcy5fbW9kaWZpZXI7XG5cbiAgICAvLyBgQ2Fwc0xvY2tgIGludmVydHMgdGhlIG1lYW5pbmcgb2YgYFNoaWZ0YFxuICAgIGlmICh0aGlzLl9jYXBzTG9ja2VkKSB7XG4gICAgICBtb2RpZmllciA9IHRoaXMuX2ludmVydFNoaWZ0TW9kaWZpZXIodGhpcy5fbW9kaWZpZXIpO1xuICAgIH1cblxuICAgIHJldHVybiBrZXlbbW9kaWZpZXJdO1xuICB9XG5cbiAgLy8gcmV0cmlldmVzIGljb24gZm9yIGdpdmVuIGtleVxuICBnZXRLZXlJY29uKGtleTogKHN0cmluZyB8IEtleWJvYXJkQ2xhc3NLZXkpW10pOiBJTWF0SWNvbiB7XG4gICAgcmV0dXJuIHRoaXMuX2ljb25zW2tleVtLZXlib2FyZE1vZGlmaWVyLk5vbmVdXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBsaXN0ZW5zIHRvIHVzZXJzIGtleWJvYXJkIGlucHV0cyB0byBzaW11bGF0ZSBvbiB2aXJ0dWFsIGtleWJvYXJkLCB0b29cbiAgICogQHBhcmFtIGV2ZW50XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duJywgWyckZXZlbnQnXSlcbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgLy8gJ2FjdGl2YXRlJyBjb3JyZXNwb25kaW5nIGtleVxuICAgIHRoaXMuX2tleXNcbiAgICAgIC5maWx0ZXIoKGtleTogTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQpID0+IGtleS5rZXkgPT09IGV2ZW50LmtleSlcbiAgICAgIC5mb3JFYWNoKChrZXk6IE1hdEtleWJvYXJkS2V5Q29tcG9uZW50KSA9PiB7XG4gICAgICAgIGtleS5wcmVzc2VkID0gdHJ1ZTtcbiAgICAgIH0pO1xuXG4gICAgLy8gc2ltdWxhdGUgbW9kaWZpZXIgcHJlc3NcbiAgICBpZiAoZXZlbnQua2V5ID09PSBLZXlib2FyZENsYXNzS2V5LkNhcHMpIHtcbiAgICAgIHRoaXMub25DYXBzQ2xpY2soZXZlbnQuZ2V0TW9kaWZpZXJTdGF0ZShLZXlib2FyZENsYXNzS2V5LkNhcHMpKTtcbiAgICB9XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5BbHQgJiYgdGhpcy5fbW9kaWZpZXIgIT09IEtleWJvYXJkTW9kaWZpZXIuQWx0ICYmIHRoaXMuX21vZGlmaWVyICE9PSBLZXlib2FyZE1vZGlmaWVyLlNoaWZ0QWx0KSB7XG4gICAgICB0aGlzLm9uQWx0Q2xpY2soKTtcbiAgICB9XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5TaGlmdCAmJiB0aGlzLl9tb2RpZmllciAhPT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdCAmJiB0aGlzLl9tb2RpZmllciAhPT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkge1xuICAgICAgdGhpcy5vblNoaWZ0Q2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogbGlzdGVucyB0byB1c2VycyBrZXlib2FyZCBpbnB1dHMgdG8gc2ltdWxhdGUgb24gdmlydHVhbCBrZXlib2FyZCwgdG9vXG4gICAqIEBwYXJhbSBldmVudFxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgLy8gJ2RlYWN0aXZhdGUnIGNvcnJlc3BvbmRpbmcga2V5XG4gICAgdGhpcy5fa2V5c1xuICAgICAgLmZpbHRlcigoa2V5OiBNYXRLZXlib2FyZEtleUNvbXBvbmVudCkgPT4ga2V5LmtleSA9PT0gZXZlbnQua2V5KVxuICAgICAgLmZvckVhY2goKGtleTogTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQpID0+IHtcbiAgICAgICAga2V5LnByZXNzZWQgPSBmYWxzZTtcbiAgICAgIH0pO1xuXG4gICAgLy8gc2ltdWxhdGUgbW9kaWZpZXIgcmVsZWFzZVxuICAgIGlmIChldmVudC5rZXkgPT09IEtleWJvYXJkQ2xhc3NLZXkuQWx0ICYmICh0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5BbHQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpKSB7XG4gICAgICB0aGlzLm9uQWx0Q2xpY2soKTtcbiAgICB9XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gS2V5Ym9hcmRDbGFzc0tleS5TaGlmdCAmJiAodGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpKSB7XG4gICAgICB0aGlzLm9uU2hpZnRDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBidWJibGVzIGV2ZW50IGlmIHN1Ym1pdCBpcyBwb3RlbnRpYWxseSB0cmlnZ2VyZWRcbiAgICovXG4gIG9uRW50ZXJDbGljaygpIHtcbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcbiAgICB0aGlzLmVudGVyQ2xpY2submV4dCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIHNpbXVsYXRlcyBjbGlja2luZyBgQ2Fwc0xvY2tgIGtleVxuICAgKiBAcGFyYW0gdGFyZ2V0U3RhdGVcbiAgICovXG4gIG9uQ2Fwc0NsaWNrKHRhcmdldFN0YXRlID0gIXRoaXMuX2NhcHNMb2NrZWQpIHtcbiAgICAvLyBub3QgaW1wbGVtZW50ZWRcbiAgICB0aGlzLl9jYXBzTG9ja2VkID0gdGFyZ2V0U3RhdGU7XG5cbiAgICAvLyBub3RpZnkgc3Vic2NyaWJlcnNcbiAgICB0aGlzLmNhcHNDbGljay5uZXh0KCk7XG4gIH1cblxuICAvKlxuICAgKiBub24tbW9kaWZpZXIga2V5cyBhcmUgY2xpY2tlZFxuICAgKi9cbiAgb25LZXlDbGljaygpIHtcbiAgICBpZiAodGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnQgfHwgdGhpcy5fbW9kaWZpZXIgPT09IEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQpIHtcbiAgICAgIHRoaXMuX21vZGlmaWVyID0gdGhpcy5faW52ZXJ0U2hpZnRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX21vZGlmaWVyID09PSBLZXlib2FyZE1vZGlmaWVyLkFsdCB8fCB0aGlzLl9tb2RpZmllciA9PT0gS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdCkge1xuICAgICAgdGhpcy5fbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRBbHRNb2RpZmllcih0aGlzLl9tb2RpZmllcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIHNpbXVsYXRlcyBjbGlja2luZyBgQWx0YCBrZXlcbiAgICovXG4gIG9uQWx0Q2xpY2soKSB7XG4gICAgLy8gaW52ZXJ0IG1vZGlmaWVyIG1lYW5pbmdcbiAgICB0aGlzLl9tb2RpZmllciA9IHRoaXMuX2ludmVydEFsdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcblxuICAgIC8vIG5vdGlmeSBzdWJzY3JpYmVyc1xuICAgIHRoaXMuYWx0Q2xpY2submV4dCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIHNpbXVsYXRlcyBjbGlja2luZyBgU2hpZnRgIGtleVxuICAgKi9cbiAgb25TaGlmdENsaWNrKCkge1xuICAgIC8vIGludmVydCBtb2RpZmllciBtZWFuaW5nXG4gICAgdGhpcy5fbW9kaWZpZXIgPSB0aGlzLl9pbnZlcnRTaGlmdE1vZGlmaWVyKHRoaXMuX21vZGlmaWVyKTtcblxuICAgIC8vIG5vdGlmeSBzdWJzY3JpYmVyc1xuICAgIHRoaXMuc2hpZnRDbGljay5uZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF9pbnZlcnRBbHRNb2RpZmllcihtb2RpZmllcjogS2V5Ym9hcmRNb2RpZmllcik6IEtleWJvYXJkTW9kaWZpZXIge1xuICAgIHN3aXRjaCAobW9kaWZpZXIpIHtcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5Ob25lOlxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5BbHQ7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdDpcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQ7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdDpcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5BbHQ6XG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLk5vbmU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaW52ZXJ0U2hpZnRNb2RpZmllcihtb2RpZmllcjogS2V5Ym9hcmRNb2RpZmllcik6IEtleWJvYXJkTW9kaWZpZXIge1xuICAgIHN3aXRjaCAobW9kaWZpZXIpIHtcbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5Ob25lOlxuICAgICAgICByZXR1cm4gS2V5Ym9hcmRNb2RpZmllci5TaGlmdDtcblxuICAgICAgY2FzZSBLZXlib2FyZE1vZGlmaWVyLkFsdDpcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuU2hpZnRBbHQ7XG5cbiAgICAgIGNhc2UgS2V5Ym9hcmRNb2RpZmllci5TaGlmdEFsdDpcbiAgICAgICAgcmV0dXJuIEtleWJvYXJkTW9kaWZpZXIuQWx0O1xuXG4gICAgICBjYXNlIEtleWJvYXJkTW9kaWZpZXIuU2hpZnQ6XG4gICAgICAgIHJldHVybiBLZXlib2FyZE1vZGlmaWVyLk5vbmU7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==

@@ -209,2 +209,2 @@ // - Lay out each dead key set as an object of property/value

export { MAT_KEYBOARD_DEADKEYS, keyboardDeadkeys };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleS5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2REFBNkQ7QUFDN0QsZ0VBQWdFO0FBQ2hFLHVDQUF1QztBQUN2QyxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLG1FQUFtRTtBQUNuRSxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLGlFQUFpRTtBQUNqRSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxJQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFvQix5QkFBeUIsQ0FBQyxDQUFDO0FBQy9GLElBQU0sZ0JBQWdCLEdBQXNCO0lBQzFDLEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDMUQsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDM0Q7SUFDRCxHQUFHLEVBQUU7UUFDSCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN2RyxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUN4RztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixRQUFRLEVBQUUsUUFBUTtLQUNuQjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRO1FBQzdGLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUM5RjtJQUNELElBQUksRUFBRTtRQUNKLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUM1QixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRO0tBQzdCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUN2QztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN4RixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDekY7SUFDRCxRQUFRLEVBQUU7UUFDUixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUMxRCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUMzRDtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNEOzs7U0FHSztJQUNMLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVE7UUFDbEcsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUNuRztDQUNGLENBQUM7QUFFRixVQUFVO0FBQ1YsU0FBUztBQUNULGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25ELDZFQUE2RTtBQUM3RSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoRixzQkFBc0I7QUFDdEIsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakYsT0FBTztBQUNQLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3hELGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXhELE9BQU8sRUFBcUIscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0gTGF5IG91dCBlYWNoIGRlYWQga2V5IHNldCBhcyBhbiBvYmplY3Qgb2YgcHJvcGVydHkvdmFsdWVcclxuLy8gICBwYWlycy4gIFRoZSByb3dzIGJlbG93IGFyZSB3cmFwcGVkIHNvIHVwcGVyY2FzZSBsZXR0ZXJzIGFyZVxyXG4vLyAgIGJlbG93IHRoZWlyIGxvd2VyY2FzZSBlcXVpdmFsZW50cy5cclxuLy9cclxuLy8gLSBUaGUgcHJvcGVydHkgbmFtZSBpcyB0aGUgbGV0dGVyIHByZXNzZWQgYWZ0ZXIgdGhlIGRpYWNyaXRpYy5cclxuLy8gICBUaGUgcHJvcGVydHkgdmFsdWUgaXMgdGhlIGxldHRlciB0aGlzIGtleS1jb21ibyB3aWxsIGdlbmVyYXRlLlxyXG4vL1xyXG4vLyAtIE5vdGUgdGhhdCBpZiB5b3UgaGF2ZSBjcmVhdGVkIGEgbmV3IGtleWJvYXJkIGxheW91dCBhbmQgd2FudFxyXG4vLyAgIGl0IGluY2x1ZGVkIGluIHRoZSBkaXN0cmlidXRlZCBzY3JpcHQsIFBMRUFTRSBURUxMIE1FIGlmIHlvdVxyXG4vLyAgIGhhdmUgYWRkZWQgYWRkaXRpb25hbCBkZWFkIGtleXMgdG8gdGhlIG9uZXMgYmVsb3cuXHJcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElLZXlib2FyZERlYWRrZXlzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xyXG5cclxuY29uc3QgTUFUX0tFWUJPQVJEX0RFQURLRVlTID0gbmV3IEluamVjdGlvblRva2VuPElLZXlib2FyZERlYWRrZXlzPigna2V5Ym9hcmQtZGVhZGtleS5jb25maWcnKTtcclxuY29uc3Qga2V5Ym9hcmREZWFka2V5czogSUtleWJvYXJkRGVhZGtleXMgPSB7XHJcbiAgJ1wiJzoge1xyXG4gICAgJ2EnOiAnXFx1MDBlNCcsXHJcbiAgICAnZSc6ICdcXHUwMGViJyxcclxuICAgICdpJzogJ1xcdTAwZWYnLFxyXG4gICAgJ28nOiAnXFx1MDBmNicsXHJcbiAgICAndSc6ICdcXHUwMGZjJyxcclxuICAgICd5JzogJ1xcdTAwZmYnLFxyXG4gICAgJ1xcdTAzYjknOiAnXFx1MDNjYScsXHJcbiAgICAnXFx1MDNjNSc6ICdcXHUwM2NiJyxcclxuICAgICdcXHUwMTZCJzogJ1xcdTAxRDYnLFxyXG4gICAgJ1xcdTAwRkEnOiAnXFx1MDFEOCcsXHJcbiAgICAnXFx1MDFENCc6ICdcXHUwMURBJyxcclxuICAgICdcXHUwMEY5JzogJ1xcdTAxREMnLFxyXG4gICAgJ0EnOiAnXFx1MDBjNCcsXHJcbiAgICAnRSc6ICdcXHUwMGNiJyxcclxuICAgICdJJzogJ1xcdTAwY2YnLFxyXG4gICAgJ08nOiAnXFx1MDBkNicsXHJcbiAgICAnVSc6ICdcXHUwMGRjJyxcclxuICAgICdZJzogJ1xcdTAxNzgnLFxyXG4gICAgJ1xcdTAzOTknOiAnXFx1MDNhYScsXHJcbiAgICAnXFx1MDNhNSc6ICdcXHUwM2FiJyxcclxuICAgICdcXHUwMTZBJzogJ1xcdTAxRDUnLFxyXG4gICAgJ1xcdTAwREEnOiAnXFx1MDFENycsXHJcbiAgICAnXFx1MDFEMyc6ICdcXHUwMUQ5JyxcclxuICAgICdcXHUwMEQ5JzogJ1xcdTAxREInLFxyXG4gICAgJ1xcdTMwNGInOiAnXFx1MzA0YycsXHJcbiAgICAnXFx1MzA0ZCc6ICdcXHUzMDRlJyxcclxuICAgICdcXHUzMDRmJzogJ1xcdTMwNTAnLFxyXG4gICAgJ1xcdTMwNTEnOiAnXFx1MzA1MicsXHJcbiAgICAnXFx1MzA1Myc6ICdcXHUzMDU0JyxcclxuICAgICdcXHUzMDVmJzogJ1xcdTMwNjAnLFxyXG4gICAgJ1xcdTMwNjEnOiAnXFx1MzA2MicsXHJcbiAgICAnXFx1MzA2NCc6ICdcXHUzMDY1JyxcclxuICAgICdcXHUzMDY2JzogJ1xcdTMwNjcnLFxyXG4gICAgJ1xcdTMwNjgnOiAnXFx1MzA2OScsXHJcbiAgICAnXFx1MzA1NSc6ICdcXHUzMDU2JyxcclxuICAgICdcXHUzMDU3JzogJ1xcdTMwNTgnLFxyXG4gICAgJ1xcdTMwNTknOiAnXFx1MzA1YScsXHJcbiAgICAnXFx1MzA1Yic6ICdcXHUzMDVjJyxcclxuICAgICdcXHUzMDVkJzogJ1xcdTMwNWUnLFxyXG4gICAgJ1xcdTMwNmYnOiAnXFx1MzA3MCcsXHJcbiAgICAnXFx1MzA3Mic6ICdcXHUzMDczJyxcclxuICAgICdcXHUzMDc1JzogJ1xcdTMwNzYnLFxyXG4gICAgJ1xcdTMwNzgnOiAnXFx1MzA3OScsXHJcbiAgICAnXFx1MzA3Yic6ICdcXHUzMDdjJyxcclxuICAgICdcXHUzMGFiJzogJ1xcdTMwYWMnLFxyXG4gICAgJ1xcdTMwYWQnOiAnXFx1MzBhZScsXHJcbiAgICAnXFx1MzBhZic6ICdcXHUzMGIwJyxcclxuICAgICdcXHUzMGIxJzogJ1xcdTMwYjInLFxyXG4gICAgJ1xcdTMwYjMnOiAnXFx1MzBiNCcsXHJcbiAgICAnXFx1MzBiZic6ICdcXHUzMGMwJyxcclxuICAgICdcXHUzMGMxJzogJ1xcdTMwYzInLFxyXG4gICAgJ1xcdTMwYzQnOiAnXFx1MzBjNScsXHJcbiAgICAnXFx1MzBjNic6ICdcXHUzMGM3JyxcclxuICAgICdcXHUzMGM4JzogJ1xcdTMwYzknLFxyXG4gICAgJ1xcdTMwYjUnOiAnXFx1MzBiNicsXHJcbiAgICAnXFx1MzBiNyc6ICdcXHUzMGI4JyxcclxuICAgICdcXHUzMGI5JzogJ1xcdTMwYmEnLFxyXG4gICAgJ1xcdTMwYmInOiAnXFx1MzBiYycsXHJcbiAgICAnXFx1MzBiZCc6ICdcXHUzMGJlJyxcclxuICAgICdcXHUzMGNmJzogJ1xcdTMwZDAnLFxyXG4gICAgJ1xcdTMwZDInOiAnXFx1MzBkMycsXHJcbiAgICAnXFx1MzBkNSc6ICdcXHUzMGQ2JyxcclxuICAgICdcXHUzMGQ4JzogJ1xcdTMwZDknLFxyXG4gICAgJ1xcdTMwZGInOiAnXFx1MzBkYydcclxuICB9LFxyXG4gICd+JzogeyAvLyBUaWxkZSAvIFN0cm9rZVxyXG4gICAgJ2EnOiAnXFx1MDBlMycsICdsJzogJ1xcdTAxNDInLCAnbic6ICdcXHUwMGYxJywgJ28nOiAnXFx1MDBmNScsXHJcbiAgICAnQSc6ICdcXHUwMGMzJywgJ0wnOiAnXFx1MDE0MScsICdOJzogJ1xcdTAwZDEnLCAnTyc6ICdcXHUwMGQ1J1xyXG4gIH0sXHJcbiAgJ14nOiB7IC8vIENpcmN1bWZsZXhcclxuICAgICdhJzogJ1xcdTAwZTInLCAnZSc6ICdcXHUwMGVhJywgJ2knOiAnXFx1MDBlZScsICdvJzogJ1xcdTAwZjQnLCAndSc6ICdcXHUwMGZiJywgJ3cnOiAnXFx1MDE3NScsICd5JzogJ1xcdTAxNzcnLFxyXG4gICAgJ0EnOiAnXFx1MDBjMicsICdFJzogJ1xcdTAwY2EnLCAnSSc6ICdcXHUwMGNlJywgJ08nOiAnXFx1MDBkNCcsICdVJzogJ1xcdTAwZGInLCAnVyc6ICdcXHUwMTc0JywgJ1knOiAnXFx1MDE3NidcclxuICB9LFxyXG4gICdcXHUwMmM3JzogeyAvLyBCYWx0aWMgY2Fyb25cclxuICAgICdjJzogJ1xcdTAxMEQnLFxyXG4gICAgJ2QnOiAnXFx1MDEwZicsXHJcbiAgICAnZSc6ICdcXHUwMTFiJyxcclxuICAgICdzJzogJ1xcdTAxNjEnLFxyXG4gICAgJ2wnOiAnXFx1MDEzZScsXHJcbiAgICAnbic6ICdcXHUwMTQ4JyxcclxuICAgICdyJzogJ1xcdTAxNTknLFxyXG4gICAgJ3QnOiAnXFx1MDE2NScsXHJcbiAgICAndSc6ICdcXHUwMWQ0JyxcclxuICAgICd6JzogJ1xcdTAxN0UnLFxyXG4gICAgJ1xcdTAwZmMnOiAnXFx1MDFkYScsXHJcbiAgICAnQyc6ICdcXHUwMTBDJyxcclxuICAgICdEJzogJ1xcdTAxMGUnLFxyXG4gICAgJ0UnOiAnXFx1MDExYScsXHJcbiAgICAnUyc6ICdcXHUwMTYwJyxcclxuICAgICdMJzogJ1xcdTAxM2QnLFxyXG4gICAgJ04nOiAnXFx1MDE0NycsXHJcbiAgICAnUic6ICdcXHUwMTU4JyxcclxuICAgICdUJzogJ1xcdTAxNjQnLFxyXG4gICAgJ1UnOiAnXFx1MDFkMycsXHJcbiAgICAnWic6ICdcXHUwMTdEJyxcclxuICAgICdcXHUwMGRjJzogJ1xcdTAxZDknXHJcbiAgfSxcclxuICAnXFx1MDJkOCc6IHsgLy8gUm9tYW5pYW4gYW5kIFR1cmtpc2ggYnJldmVcclxuICAgICdhJzogJ1xcdTAxMDMnLCAnZyc6ICdcXHUwMTFmJyxcclxuICAgICdBJzogJ1xcdTAxMDInLCAnRyc6ICdcXHUwMTFlJ1xyXG4gIH0sXHJcbiAgJy0nOiB7IC8vIE1hY3JvblxyXG4gICAgJ2EnOiAnXFx1MDEwMScsXHJcbiAgICAnZSc6ICdcXHUwMTEzJyxcclxuICAgICdpJzogJ1xcdTAxMmInLFxyXG4gICAgJ28nOiAnXFx1MDE0ZCcsXHJcbiAgICAndSc6ICdcXHUwMTZCJyxcclxuICAgICd5JzogJ1xcdTAyMzMnLFxyXG4gICAgJ1xcdTAwZmMnOiAnXFx1MDFkNicsXHJcbiAgICAnQSc6ICdcXHUwMTAwJyxcclxuICAgICdFJzogJ1xcdTAxMTInLFxyXG4gICAgJ0knOiAnXFx1MDEyYScsXHJcbiAgICAnTyc6ICdcXHUwMTRjJyxcclxuICAgICdVJzogJ1xcdTAxNkEnLFxyXG4gICAgJ1knOiAnXFx1MDIzMicsXHJcbiAgICAnXFx1MDBkYyc6ICdcXHUwMWQ1J1xyXG4gIH0sXHJcbiAgJ2AnOiB7IC8vIEdyYXZlXHJcbiAgICAnYSc6ICdcXHUwMGUwJywgJ2UnOiAnXFx1MDBlOCcsICdpJzogJ1xcdTAwZWMnLCAnbyc6ICdcXHUwMGYyJywgJ3UnOiAnXFx1MDBmOScsICdcXHUwMGZjJzogJ1xcdTAxZGMnLFxyXG4gICAgJ0EnOiAnXFx1MDBjMCcsICdFJzogJ1xcdTAwYzgnLCAnSSc6ICdcXHUwMGNjJywgJ08nOiAnXFx1MDBkMicsICdVJzogJ1xcdTAwZDknLCAnXFx1MDBkYyc6ICdcXHUwMWRiJ1xyXG4gIH0sXHJcbiAgJ1xcJyc6IHsgLy8gQWN1dGUgLyBHcmVlayBUb25vc1xyXG4gICAgJ2EnOiAnXFx1MDBlMScsXHJcbiAgICAnZSc6ICdcXHUwMGU5JyxcclxuICAgICdpJzogJ1xcdTAwZWQnLFxyXG4gICAgJ28nOiAnXFx1MDBmMycsXHJcbiAgICAndSc6ICdcXHUwMGZhJyxcclxuICAgICd5JzogJ1xcdTAwZmQnLFxyXG4gICAgJ1xcdTAzYjEnOiAnXFx1MDNhYycsXHJcbiAgICAnXFx1MDNiNSc6ICdcXHUwM2FkJyxcclxuICAgICdcXHUwM2I3JzogJ1xcdTAzYWUnLFxyXG4gICAgJ1xcdTAzYjknOiAnXFx1MDNhZicsXHJcbiAgICAnXFx1MDNiZic6ICdcXHUwM2NjJyxcclxuICAgICdcXHUwM2M1JzogJ1xcdTAzY2QnLFxyXG4gICAgJ1xcdTAzYzknOiAnXFx1MDNjZScsXHJcbiAgICAnXFx1MDBmYyc6ICdcXHUwMWQ4JyxcclxuICAgICdBJzogJ1xcdTAwYzEnLFxyXG4gICAgJ0UnOiAnXFx1MDBjOScsXHJcbiAgICAnSSc6ICdcXHUwMGNkJyxcclxuICAgICdPJzogJ1xcdTAwZDMnLFxyXG4gICAgJ1UnOiAnXFx1MDBkYScsXHJcbiAgICAnWSc6ICdcXHUwMGRkJyxcclxuICAgICdcXHUwMzkxJzogJ1xcdTAzODYnLFxyXG4gICAgJ1xcdTAzOTUnOiAnXFx1MDM4OCcsXHJcbiAgICAnXFx1MDM5Nyc6ICdcXHUwMzg5JyxcclxuICAgICdcXHUwMzk5JzogJ1xcdTAzOGEnLFxyXG4gICAgJ1xcdTAzOWYnOiAnXFx1MDM4YycsXHJcbiAgICAnXFx1MDNhNSc6ICdcXHUwMzhlJyxcclxuICAgICdcXHUwM2E5JzogJ1xcdTAzOGYnLFxyXG4gICAgJ1xcdTAwZGMnOiAnXFx1MDFkNydcclxuICB9LFxyXG4gICdcXHUwMmRkJzogey8vIEh1bmdhcmlhbiBEb3VibGUgQWN1dGUgQWNjZW50XHJcbiAgICAnbyc6ICdcXHUwMTUxJywgJ3UnOiAnXFx1MDE3MScsXHJcbiAgICAnTyc6ICdcXHUwMTUwJywgJ1UnOiAnXFx1MDE3MCdcclxuICB9LFxyXG4gICdcXHUwMzg1JzogeyAvLyBHcmVlayBEaWFseXRpa2EgKyBUb25vc1xyXG4gICAgJ1xcdTAzYjknOiAnXFx1MDM5MCcsICdcXHUwM2M1JzogJ1xcdTAzYjAnXHJcbiAgfSxcclxuICAnXFx1MDBiMCc6IHsgLy8gUmluZ1xyXG4gICAgJ2EnOiAnXFx1MDBlNScsICd1JzogJ1xcdTAxNmYnLFxyXG4gICAgJ0EnOiAnXFx1MDBjNScsICdVJzogJ1xcdTAxNmUnXHJcbiAgfSxcclxuICAnXFx1MDJEQic6IHsgLy8gT2dvbmVrXHJcbiAgICAnYSc6ICdcXHUwMTA2JywgJ2UnOiAnXFx1MDExOScsICdpJzogJ1xcdTAxMmYnLCAnbyc6ICdcXHUwMWViJywgJ3UnOiAnXFx1MDE3MycsICd5JzogJ1xcdTAxNzcnLFxyXG4gICAgJ0EnOiAnXFx1MDEwNScsICdFJzogJ1xcdTAxMTgnLCAnSSc6ICdcXHUwMTJlJywgJ08nOiAnXFx1MDFlYScsICdVJzogJ1xcdTAxNzInLCAnWSc6ICdcXHUwMTc2J1xyXG4gIH0sXHJcbiAgJ1xcdTAyRDknOiB7IC8vIERvdC1hYm92ZVxyXG4gICAgJ2MnOiAnXFx1MDEwQicsICdlJzogJ1xcdTAxMTcnLCAnZyc6ICdcXHUwMTIxJywgJ3onOiAnXFx1MDE3QycsXHJcbiAgICAnQyc6ICdcXHUwMTBBJywgJ0UnOiAnXFx1MDExNicsICdHJzogJ1xcdTAxMjAnLCAnWic6ICdcXHUwMTdCJ1xyXG4gIH0sXHJcbiAgJ1xcdTAwQjgnOiB7IC8vIENlZGlsbGFcclxuICAgICdjJzogJ1xcdTAwZTcnLCAncyc6ICdcXHUwMTVGJyxcclxuICAgICdDJzogJ1xcdTAwYzcnLCAnUyc6ICdcXHUwMTVFJ1xyXG4gIH0sXHJcbiAgLyonLCc6IHsgLy8gQ29tbWFcclxuICAgJ3MnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE1RicgOiAnXFx1MDIxOScsICd0JzogKHRoaXMuVktJX2lzSUVsdDgpID8gJ1xcdTAxNjMnIDogJ1xcdTAyMUInLFxyXG4gICAnUyc6ICh0aGlzLlZLSV9pc0lFbHQ4KSA/ICdcXHUwMTVFJyA6ICdcXHUwMjE4JywgJ1QnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE2MicgOiAnXFx1MDIxQSdcclxuICAgfSwqL1xyXG4gICdcXHUzMDAyJzogeyAvLyBIaXJhZ2FuYS9LYXRha2FuYSBQb2ludFxyXG4gICAgJ1xcdTMwNmYnOiAnXFx1MzA3MScsICdcXHUzMDcyJzogJ1xcdTMwNzQnLCAnXFx1MzA3NSc6ICdcXHUzMDc3JywgJ1xcdTMwNzgnOiAnXFx1MzA3YScsICdcXHUzMDdiJzogJ1xcdTMwN2QnLFxyXG4gICAgJ1xcdTMwY2YnOiAnXFx1MzBkMScsICdcXHUzMGQyJzogJ1xcdTMwZDQnLCAnXFx1MzBkNSc6ICdcXHUzMGQ3JywgJ1xcdTMwZDgnOiAnXFx1MzBkYScsICdcXHUzMGRiJzogJ1xcdTMwZGQnXHJcbiAgfVxyXG59O1xyXG5cclxuLy8gYWxpYXNlc1xyXG4vLyBNYWNyb25cclxua2V5Ym9hcmREZWFka2V5c1snXFx1MDBhZiddID0ga2V5Ym9hcmREZWFka2V5c1snLSddO1xyXG4vLyBVbWxhdXQgLyBEaWFlcmVzaXMgLyBHcmVlayBEaWFseXRpa2EgLyBIaXJhZ2FuYS9LYXRha2FuYSBWb2ljZWQgU291bmQgTWFya1xyXG5rZXlib2FyZERlYWRrZXlzWydcXHUwMGE4J10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUzMDlCJ10gPSBrZXlib2FyZERlYWRrZXlzWydcIiddO1xyXG4vLyBBY3V0ZSAvIEdyZWVrIFRvbm9zXHJcbmtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYjQnXSA9IGtleWJvYXJkRGVhZGtleXNbJ1xcdTAzODQnXSA9IGtleWJvYXJkRGVhZGtleXNbJ1xcJyddO1xyXG4vLyBSaW5nXHJcbmtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYmEnXSA9IGtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYjAnXTtcclxua2V5Ym9hcmREZWFka2V5c1snXFx1MjAxYSddID0ga2V5Ym9hcmREZWFka2V5c1snXFx1MDBCOCddO1xyXG5cclxuZXhwb3J0IHsgSUtleWJvYXJkRGVhZGtleXMsIE1BVF9LRVlCT0FSRF9ERUFES0VZUywga2V5Ym9hcmREZWFka2V5cyB9O1xyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleS5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw2REFBNkQ7QUFDN0QsZ0VBQWdFO0FBQ2hFLHVDQUF1QztBQUN2QyxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLG1FQUFtRTtBQUNuRSxFQUFFO0FBQ0YsaUVBQWlFO0FBQ2pFLGlFQUFpRTtBQUNqRSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxJQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFvQix5QkFBeUIsQ0FBQyxDQUFDO0FBQy9GLElBQU0sZ0JBQWdCLEdBQXNCO0lBQzFDLEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDMUQsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDM0Q7SUFDRCxHQUFHLEVBQUU7UUFDSCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN2RyxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUN4RztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixRQUFRLEVBQUUsUUFBUTtLQUNuQjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELEdBQUcsRUFBRTtRQUNILEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRO1FBQzdGLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUM5RjtJQUNELElBQUksRUFBRTtRQUNKLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLEdBQUcsRUFBRSxRQUFRO1FBQ2IsR0FBRyxFQUFFLFFBQVE7UUFDYixHQUFHLEVBQUUsUUFBUTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFFBQVEsRUFBRSxRQUFRO0tBQ25CO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUM1QixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRO0tBQzdCO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUN2QztJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUN4RixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7S0FDekY7SUFDRCxRQUFRLEVBQUU7UUFDUixHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtRQUMxRCxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUMzRDtJQUNELFFBQVEsRUFBRTtRQUNSLEdBQUcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVE7UUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUTtLQUM3QjtJQUNEOzs7U0FHSztJQUNMLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVE7UUFDbEcsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtLQUNuRztDQUNGLENBQUM7QUFFRixVQUFVO0FBQ1YsU0FBUztBQUNULGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25ELDZFQUE2RTtBQUM3RSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoRixzQkFBc0I7QUFDdEIsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDakYsT0FBTztBQUNQLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3hELGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXhELE9BQU8sRUFBcUIscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0gTGF5IG91dCBlYWNoIGRlYWQga2V5IHNldCBhcyBhbiBvYmplY3Qgb2YgcHJvcGVydHkvdmFsdWVcbi8vICAgcGFpcnMuICBUaGUgcm93cyBiZWxvdyBhcmUgd3JhcHBlZCBzbyB1cHBlcmNhc2UgbGV0dGVycyBhcmVcbi8vICAgYmVsb3cgdGhlaXIgbG93ZXJjYXNlIGVxdWl2YWxlbnRzLlxuLy9cbi8vIC0gVGhlIHByb3BlcnR5IG5hbWUgaXMgdGhlIGxldHRlciBwcmVzc2VkIGFmdGVyIHRoZSBkaWFjcml0aWMuXG4vLyAgIFRoZSBwcm9wZXJ0eSB2YWx1ZSBpcyB0aGUgbGV0dGVyIHRoaXMga2V5LWNvbWJvIHdpbGwgZ2VuZXJhdGUuXG4vL1xuLy8gLSBOb3RlIHRoYXQgaWYgeW91IGhhdmUgY3JlYXRlZCBhIG5ldyBrZXlib2FyZCBsYXlvdXQgYW5kIHdhbnRcbi8vICAgaXQgaW5jbHVkZWQgaW4gdGhlIGRpc3RyaWJ1dGVkIHNjcmlwdCwgUExFQVNFIFRFTEwgTUUgaWYgeW91XG4vLyAgIGhhdmUgYWRkZWQgYWRkaXRpb25hbCBkZWFkIGtleXMgdG8gdGhlIG9uZXMgYmVsb3cuXG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUtleWJvYXJkRGVhZGtleXMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWRlYWRrZXlzLmludGVyZmFjZSc7XG5cbmNvbnN0IE1BVF9LRVlCT0FSRF9ERUFES0VZUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJS2V5Ym9hcmREZWFka2V5cz4oJ2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJyk7XG5jb25zdCBrZXlib2FyZERlYWRrZXlzOiBJS2V5Ym9hcmREZWFka2V5cyA9IHtcbiAgJ1wiJzoge1xuICAgICdhJzogJ1xcdTAwZTQnLFxuICAgICdlJzogJ1xcdTAwZWInLFxuICAgICdpJzogJ1xcdTAwZWYnLFxuICAgICdvJzogJ1xcdTAwZjYnLFxuICAgICd1JzogJ1xcdTAwZmMnLFxuICAgICd5JzogJ1xcdTAwZmYnLFxuICAgICdcXHUwM2I5JzogJ1xcdTAzY2EnLFxuICAgICdcXHUwM2M1JzogJ1xcdTAzY2InLFxuICAgICdcXHUwMTZCJzogJ1xcdTAxRDYnLFxuICAgICdcXHUwMEZBJzogJ1xcdTAxRDgnLFxuICAgICdcXHUwMUQ0JzogJ1xcdTAxREEnLFxuICAgICdcXHUwMEY5JzogJ1xcdTAxREMnLFxuICAgICdBJzogJ1xcdTAwYzQnLFxuICAgICdFJzogJ1xcdTAwY2InLFxuICAgICdJJzogJ1xcdTAwY2YnLFxuICAgICdPJzogJ1xcdTAwZDYnLFxuICAgICdVJzogJ1xcdTAwZGMnLFxuICAgICdZJzogJ1xcdTAxNzgnLFxuICAgICdcXHUwMzk5JzogJ1xcdTAzYWEnLFxuICAgICdcXHUwM2E1JzogJ1xcdTAzYWInLFxuICAgICdcXHUwMTZBJzogJ1xcdTAxRDUnLFxuICAgICdcXHUwMERBJzogJ1xcdTAxRDcnLFxuICAgICdcXHUwMUQzJzogJ1xcdTAxRDknLFxuICAgICdcXHUwMEQ5JzogJ1xcdTAxREInLFxuICAgICdcXHUzMDRiJzogJ1xcdTMwNGMnLFxuICAgICdcXHUzMDRkJzogJ1xcdTMwNGUnLFxuICAgICdcXHUzMDRmJzogJ1xcdTMwNTAnLFxuICAgICdcXHUzMDUxJzogJ1xcdTMwNTInLFxuICAgICdcXHUzMDUzJzogJ1xcdTMwNTQnLFxuICAgICdcXHUzMDVmJzogJ1xcdTMwNjAnLFxuICAgICdcXHUzMDYxJzogJ1xcdTMwNjInLFxuICAgICdcXHUzMDY0JzogJ1xcdTMwNjUnLFxuICAgICdcXHUzMDY2JzogJ1xcdTMwNjcnLFxuICAgICdcXHUzMDY4JzogJ1xcdTMwNjknLFxuICAgICdcXHUzMDU1JzogJ1xcdTMwNTYnLFxuICAgICdcXHUzMDU3JzogJ1xcdTMwNTgnLFxuICAgICdcXHUzMDU5JzogJ1xcdTMwNWEnLFxuICAgICdcXHUzMDViJzogJ1xcdTMwNWMnLFxuICAgICdcXHUzMDVkJzogJ1xcdTMwNWUnLFxuICAgICdcXHUzMDZmJzogJ1xcdTMwNzAnLFxuICAgICdcXHUzMDcyJzogJ1xcdTMwNzMnLFxuICAgICdcXHUzMDc1JzogJ1xcdTMwNzYnLFxuICAgICdcXHUzMDc4JzogJ1xcdTMwNzknLFxuICAgICdcXHUzMDdiJzogJ1xcdTMwN2MnLFxuICAgICdcXHUzMGFiJzogJ1xcdTMwYWMnLFxuICAgICdcXHUzMGFkJzogJ1xcdTMwYWUnLFxuICAgICdcXHUzMGFmJzogJ1xcdTMwYjAnLFxuICAgICdcXHUzMGIxJzogJ1xcdTMwYjInLFxuICAgICdcXHUzMGIzJzogJ1xcdTMwYjQnLFxuICAgICdcXHUzMGJmJzogJ1xcdTMwYzAnLFxuICAgICdcXHUzMGMxJzogJ1xcdTMwYzInLFxuICAgICdcXHUzMGM0JzogJ1xcdTMwYzUnLFxuICAgICdcXHUzMGM2JzogJ1xcdTMwYzcnLFxuICAgICdcXHUzMGM4JzogJ1xcdTMwYzknLFxuICAgICdcXHUzMGI1JzogJ1xcdTMwYjYnLFxuICAgICdcXHUzMGI3JzogJ1xcdTMwYjgnLFxuICAgICdcXHUzMGI5JzogJ1xcdTMwYmEnLFxuICAgICdcXHUzMGJiJzogJ1xcdTMwYmMnLFxuICAgICdcXHUzMGJkJzogJ1xcdTMwYmUnLFxuICAgICdcXHUzMGNmJzogJ1xcdTMwZDAnLFxuICAgICdcXHUzMGQyJzogJ1xcdTMwZDMnLFxuICAgICdcXHUzMGQ1JzogJ1xcdTMwZDYnLFxuICAgICdcXHUzMGQ4JzogJ1xcdTMwZDknLFxuICAgICdcXHUzMGRiJzogJ1xcdTMwZGMnXG4gIH0sXG4gICd+JzogeyAvLyBUaWxkZSAvIFN0cm9rZVxuICAgICdhJzogJ1xcdTAwZTMnLCAnbCc6ICdcXHUwMTQyJywgJ24nOiAnXFx1MDBmMScsICdvJzogJ1xcdTAwZjUnLFxuICAgICdBJzogJ1xcdTAwYzMnLCAnTCc6ICdcXHUwMTQxJywgJ04nOiAnXFx1MDBkMScsICdPJzogJ1xcdTAwZDUnXG4gIH0sXG4gICdeJzogeyAvLyBDaXJjdW1mbGV4XG4gICAgJ2EnOiAnXFx1MDBlMicsICdlJzogJ1xcdTAwZWEnLCAnaSc6ICdcXHUwMGVlJywgJ28nOiAnXFx1MDBmNCcsICd1JzogJ1xcdTAwZmInLCAndyc6ICdcXHUwMTc1JywgJ3knOiAnXFx1MDE3NycsXG4gICAgJ0EnOiAnXFx1MDBjMicsICdFJzogJ1xcdTAwY2EnLCAnSSc6ICdcXHUwMGNlJywgJ08nOiAnXFx1MDBkNCcsICdVJzogJ1xcdTAwZGInLCAnVyc6ICdcXHUwMTc0JywgJ1knOiAnXFx1MDE3NidcbiAgfSxcbiAgJ1xcdTAyYzcnOiB7IC8vIEJhbHRpYyBjYXJvblxuICAgICdjJzogJ1xcdTAxMEQnLFxuICAgICdkJzogJ1xcdTAxMGYnLFxuICAgICdlJzogJ1xcdTAxMWInLFxuICAgICdzJzogJ1xcdTAxNjEnLFxuICAgICdsJzogJ1xcdTAxM2UnLFxuICAgICduJzogJ1xcdTAxNDgnLFxuICAgICdyJzogJ1xcdTAxNTknLFxuICAgICd0JzogJ1xcdTAxNjUnLFxuICAgICd1JzogJ1xcdTAxZDQnLFxuICAgICd6JzogJ1xcdTAxN0UnLFxuICAgICdcXHUwMGZjJzogJ1xcdTAxZGEnLFxuICAgICdDJzogJ1xcdTAxMEMnLFxuICAgICdEJzogJ1xcdTAxMGUnLFxuICAgICdFJzogJ1xcdTAxMWEnLFxuICAgICdTJzogJ1xcdTAxNjAnLFxuICAgICdMJzogJ1xcdTAxM2QnLFxuICAgICdOJzogJ1xcdTAxNDcnLFxuICAgICdSJzogJ1xcdTAxNTgnLFxuICAgICdUJzogJ1xcdTAxNjQnLFxuICAgICdVJzogJ1xcdTAxZDMnLFxuICAgICdaJzogJ1xcdTAxN0QnLFxuICAgICdcXHUwMGRjJzogJ1xcdTAxZDknXG4gIH0sXG4gICdcXHUwMmQ4JzogeyAvLyBSb21hbmlhbiBhbmQgVHVya2lzaCBicmV2ZVxuICAgICdhJzogJ1xcdTAxMDMnLCAnZyc6ICdcXHUwMTFmJyxcbiAgICAnQSc6ICdcXHUwMTAyJywgJ0cnOiAnXFx1MDExZSdcbiAgfSxcbiAgJy0nOiB7IC8vIE1hY3JvblxuICAgICdhJzogJ1xcdTAxMDEnLFxuICAgICdlJzogJ1xcdTAxMTMnLFxuICAgICdpJzogJ1xcdTAxMmInLFxuICAgICdvJzogJ1xcdTAxNGQnLFxuICAgICd1JzogJ1xcdTAxNkInLFxuICAgICd5JzogJ1xcdTAyMzMnLFxuICAgICdcXHUwMGZjJzogJ1xcdTAxZDYnLFxuICAgICdBJzogJ1xcdTAxMDAnLFxuICAgICdFJzogJ1xcdTAxMTInLFxuICAgICdJJzogJ1xcdTAxMmEnLFxuICAgICdPJzogJ1xcdTAxNGMnLFxuICAgICdVJzogJ1xcdTAxNkEnLFxuICAgICdZJzogJ1xcdTAyMzInLFxuICAgICdcXHUwMGRjJzogJ1xcdTAxZDUnXG4gIH0sXG4gICdgJzogeyAvLyBHcmF2ZVxuICAgICdhJzogJ1xcdTAwZTAnLCAnZSc6ICdcXHUwMGU4JywgJ2knOiAnXFx1MDBlYycsICdvJzogJ1xcdTAwZjInLCAndSc6ICdcXHUwMGY5JywgJ1xcdTAwZmMnOiAnXFx1MDFkYycsXG4gICAgJ0EnOiAnXFx1MDBjMCcsICdFJzogJ1xcdTAwYzgnLCAnSSc6ICdcXHUwMGNjJywgJ08nOiAnXFx1MDBkMicsICdVJzogJ1xcdTAwZDknLCAnXFx1MDBkYyc6ICdcXHUwMWRiJ1xuICB9LFxuICAnXFwnJzogeyAvLyBBY3V0ZSAvIEdyZWVrIFRvbm9zXG4gICAgJ2EnOiAnXFx1MDBlMScsXG4gICAgJ2UnOiAnXFx1MDBlOScsXG4gICAgJ2knOiAnXFx1MDBlZCcsXG4gICAgJ28nOiAnXFx1MDBmMycsXG4gICAgJ3UnOiAnXFx1MDBmYScsXG4gICAgJ3knOiAnXFx1MDBmZCcsXG4gICAgJ1xcdTAzYjEnOiAnXFx1MDNhYycsXG4gICAgJ1xcdTAzYjUnOiAnXFx1MDNhZCcsXG4gICAgJ1xcdTAzYjcnOiAnXFx1MDNhZScsXG4gICAgJ1xcdTAzYjknOiAnXFx1MDNhZicsXG4gICAgJ1xcdTAzYmYnOiAnXFx1MDNjYycsXG4gICAgJ1xcdTAzYzUnOiAnXFx1MDNjZCcsXG4gICAgJ1xcdTAzYzknOiAnXFx1MDNjZScsXG4gICAgJ1xcdTAwZmMnOiAnXFx1MDFkOCcsXG4gICAgJ0EnOiAnXFx1MDBjMScsXG4gICAgJ0UnOiAnXFx1MDBjOScsXG4gICAgJ0knOiAnXFx1MDBjZCcsXG4gICAgJ08nOiAnXFx1MDBkMycsXG4gICAgJ1UnOiAnXFx1MDBkYScsXG4gICAgJ1knOiAnXFx1MDBkZCcsXG4gICAgJ1xcdTAzOTEnOiAnXFx1MDM4NicsXG4gICAgJ1xcdTAzOTUnOiAnXFx1MDM4OCcsXG4gICAgJ1xcdTAzOTcnOiAnXFx1MDM4OScsXG4gICAgJ1xcdTAzOTknOiAnXFx1MDM4YScsXG4gICAgJ1xcdTAzOWYnOiAnXFx1MDM4YycsXG4gICAgJ1xcdTAzYTUnOiAnXFx1MDM4ZScsXG4gICAgJ1xcdTAzYTknOiAnXFx1MDM4ZicsXG4gICAgJ1xcdTAwZGMnOiAnXFx1MDFkNydcbiAgfSxcbiAgJ1xcdTAyZGQnOiB7Ly8gSHVuZ2FyaWFuIERvdWJsZSBBY3V0ZSBBY2NlbnRcbiAgICAnbyc6ICdcXHUwMTUxJywgJ3UnOiAnXFx1MDE3MScsXG4gICAgJ08nOiAnXFx1MDE1MCcsICdVJzogJ1xcdTAxNzAnXG4gIH0sXG4gICdcXHUwMzg1JzogeyAvLyBHcmVlayBEaWFseXRpa2EgKyBUb25vc1xuICAgICdcXHUwM2I5JzogJ1xcdTAzOTAnLCAnXFx1MDNjNSc6ICdcXHUwM2IwJ1xuICB9LFxuICAnXFx1MDBiMCc6IHsgLy8gUmluZ1xuICAgICdhJzogJ1xcdTAwZTUnLCAndSc6ICdcXHUwMTZmJyxcbiAgICAnQSc6ICdcXHUwMGM1JywgJ1UnOiAnXFx1MDE2ZSdcbiAgfSxcbiAgJ1xcdTAyREInOiB7IC8vIE9nb25la1xuICAgICdhJzogJ1xcdTAxMDYnLCAnZSc6ICdcXHUwMTE5JywgJ2knOiAnXFx1MDEyZicsICdvJzogJ1xcdTAxZWInLCAndSc6ICdcXHUwMTczJywgJ3knOiAnXFx1MDE3NycsXG4gICAgJ0EnOiAnXFx1MDEwNScsICdFJzogJ1xcdTAxMTgnLCAnSSc6ICdcXHUwMTJlJywgJ08nOiAnXFx1MDFlYScsICdVJzogJ1xcdTAxNzInLCAnWSc6ICdcXHUwMTc2J1xuICB9LFxuICAnXFx1MDJEOSc6IHsgLy8gRG90LWFib3ZlXG4gICAgJ2MnOiAnXFx1MDEwQicsICdlJzogJ1xcdTAxMTcnLCAnZyc6ICdcXHUwMTIxJywgJ3onOiAnXFx1MDE3QycsXG4gICAgJ0MnOiAnXFx1MDEwQScsICdFJzogJ1xcdTAxMTYnLCAnRyc6ICdcXHUwMTIwJywgJ1onOiAnXFx1MDE3QidcbiAgfSxcbiAgJ1xcdTAwQjgnOiB7IC8vIENlZGlsbGFcbiAgICAnYyc6ICdcXHUwMGU3JywgJ3MnOiAnXFx1MDE1RicsXG4gICAgJ0MnOiAnXFx1MDBjNycsICdTJzogJ1xcdTAxNUUnXG4gIH0sXG4gIC8qJywnOiB7IC8vIENvbW1hXG4gICAncyc6ICh0aGlzLlZLSV9pc0lFbHQ4KSA/ICdcXHUwMTVGJyA6ICdcXHUwMjE5JywgJ3QnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE2MycgOiAnXFx1MDIxQicsXG4gICAnUyc6ICh0aGlzLlZLSV9pc0lFbHQ4KSA/ICdcXHUwMTVFJyA6ICdcXHUwMjE4JywgJ1QnOiAodGhpcy5WS0lfaXNJRWx0OCkgPyAnXFx1MDE2MicgOiAnXFx1MDIxQSdcbiAgIH0sKi9cbiAgJ1xcdTMwMDInOiB7IC8vIEhpcmFnYW5hL0thdGFrYW5hIFBvaW50XG4gICAgJ1xcdTMwNmYnOiAnXFx1MzA3MScsICdcXHUzMDcyJzogJ1xcdTMwNzQnLCAnXFx1MzA3NSc6ICdcXHUzMDc3JywgJ1xcdTMwNzgnOiAnXFx1MzA3YScsICdcXHUzMDdiJzogJ1xcdTMwN2QnLFxuICAgICdcXHUzMGNmJzogJ1xcdTMwZDEnLCAnXFx1MzBkMic6ICdcXHUzMGQ0JywgJ1xcdTMwZDUnOiAnXFx1MzBkNycsICdcXHUzMGQ4JzogJ1xcdTMwZGEnLCAnXFx1MzBkYic6ICdcXHUzMGRkJ1xuICB9XG59O1xuXG4vLyBhbGlhc2VzXG4vLyBNYWNyb25cbmtleWJvYXJkRGVhZGtleXNbJ1xcdTAwYWYnXSA9IGtleWJvYXJkRGVhZGtleXNbJy0nXTtcbi8vIFVtbGF1dCAvIERpYWVyZXNpcyAvIEdyZWVrIERpYWx5dGlrYSAvIEhpcmFnYW5hL0thdGFrYW5hIFZvaWNlZCBTb3VuZCBNYXJrXG5rZXlib2FyZERlYWRrZXlzWydcXHUwMGE4J10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUzMDlCJ10gPSBrZXlib2FyZERlYWRrZXlzWydcIiddO1xuLy8gQWN1dGUgLyBHcmVlayBUb25vc1xua2V5Ym9hcmREZWFka2V5c1snXFx1MDBiNCddID0ga2V5Ym9hcmREZWFka2V5c1snXFx1MDM4NCddID0ga2V5Ym9hcmREZWFka2V5c1snXFwnJ107XG4vLyBSaW5nXG5rZXlib2FyZERlYWRrZXlzWydcXHUwMGJhJ10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUwMGIwJ107XG5rZXlib2FyZERlYWRrZXlzWydcXHUyMDFhJ10gPSBrZXlib2FyZERlYWRrZXlzWydcXHUwMEI4J107XG5cbmV4cG9ydCB7IElLZXlib2FyZERlYWRrZXlzLCBNQVRfS0VZQk9BUkRfREVBREtFWVMsIGtleWJvYXJkRGVhZGtleXMgfTtcbiJdfQ==

@@ -11,2 +11,2 @@ var _a;

_a);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUdwRSxNQUFNLENBQUMsSUFBTSxjQUFjO0lBQ3pCLEdBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFHLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixFQUFDO0lBQ3RELEdBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFHLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO0lBQ3RELEdBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFHLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFO0lBQ3JELEdBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFHLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO0lBQ3ZELEdBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtJQUN2QyxHQUFDLGdCQUFnQixDQUFDLEdBQUcsSUFBRyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUU7T0FDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XHJcbmltcG9ydCB7IElLZXlib2FyZEljb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNvbnN0IEtFWUJPQVJEX0lDT05TOiBJS2V5Ym9hcmRJY29ucyA9IHtcclxuICBbS2V5Ym9hcmRDbGFzc0tleS5Ca3NwXTogeyBuYW1lOiAna2V5Ym9hcmRfYmFja3NwYWNlJ30sXHJcbiAgW0tleWJvYXJkQ2xhc3NLZXkuQ2Fwc106IHsgbmFtZTogJ2tleWJvYXJkX2NhcHNsb2NrJyB9LFxyXG4gIFtLZXlib2FyZENsYXNzS2V5LkVudGVyXTogeyBuYW1lOiAna2V5Ym9hcmRfcmV0dXJuJyB9LFxyXG4gIFtLZXlib2FyZENsYXNzS2V5LlNoaWZ0XTogeyBuYW1lOiAna2V5Ym9hcmRfYXJyb3dfdXAnIH0sXHJcbiAgW0tleWJvYXJkQ2xhc3NLZXkuU3BhY2VdOiB7IG5hbWU6ICcgJyB9LFxyXG4gIFtLZXlib2FyZENsYXNzS2V5LlRhYl06IHsgbmFtZTogJ2tleWJvYXJkX3RhYicgfVxyXG59O1xyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUdwRSxNQUFNLENBQUMsSUFBTSxjQUFjO0lBQ3pCLEdBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFHLEVBQUUsSUFBSSxFQUFFLG9CQUFvQixFQUFDO0lBQ3RELEdBQUMsZ0JBQWdCLENBQUMsSUFBSSxJQUFHLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO0lBQ3RELEdBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFHLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFO0lBQ3JELEdBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFHLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO0lBQ3ZELEdBQUMsZ0JBQWdCLENBQUMsS0FBSyxJQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtJQUN2QyxHQUFDLGdCQUFnQixDQUFDLEdBQUcsSUFBRyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUU7T0FDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XG5pbXBvcnQgeyBJS2V5Ym9hcmRJY29ucyB9IGZyb20gJy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IEtFWUJPQVJEX0lDT05TOiBJS2V5Ym9hcmRJY29ucyA9IHtcbiAgW0tleWJvYXJkQ2xhc3NLZXkuQmtzcF06IHsgbmFtZTogJ2tleWJvYXJkX2JhY2tzcGFjZSd9LFxuICBbS2V5Ym9hcmRDbGFzc0tleS5DYXBzXTogeyBuYW1lOiAna2V5Ym9hcmRfY2Fwc2xvY2snIH0sXG4gIFtLZXlib2FyZENsYXNzS2V5LkVudGVyXTogeyBuYW1lOiAna2V5Ym9hcmRfcmV0dXJuJyB9LFxuICBbS2V5Ym9hcmRDbGFzc0tleS5TaGlmdF06IHsgbmFtZTogJ2tleWJvYXJkX2Fycm93X3VwJyB9LFxuICBbS2V5Ym9hcmRDbGFzc0tleS5TcGFjZV06IHsgbmFtZTogJyAnIH0sXG4gIFtLZXlib2FyZENsYXNzS2V5LlRhYl06IHsgbmFtZTogJ2tleWJvYXJkX3RhYicgfVxufTtcbiJdfQ==

@@ -21,2 +21,2 @@ var MatKeyboardConfig = /** @class */ (function () {

export { MatKeyboardConfig };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBO0lBQUE7UUFDRSxzRUFBc0U7UUFDdEUsZUFBVSxHQUF3QixXQUFXLENBQUM7UUFFOUMsMERBQTBEO1FBQzFELHdCQUFtQixHQUFJLEVBQUUsQ0FBQztRQUUxQixxRUFBcUU7UUFDckUscUJBQWdCLEdBQXNCLElBQUksQ0FBQztRQUUzQywwR0FBMEc7UUFDMUcsYUFBUSxHQUFJLENBQUMsQ0FBQztRQUVkLDZCQUE2QjtRQUM3QixjQUFTLEdBQUksSUFBSSxDQUFDO1FBRWxCLDRCQUE0QjtRQUM1QixZQUFPLEdBQUksS0FBSyxDQUFDO1FBS2pCLDRCQUE0QjtRQUM1QixnQkFBVyxHQUFvQixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUFELHdCQUFDO0FBQUQsQ0FBQyxBQXhCRCxJQXdCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFyaWFMaXZlUG9saXRlbmVzcyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcclxuaW1wb3J0IHsgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IElLZXlib2FyZEljb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1hdEtleWJvYXJkQ29uZmlnIHtcclxuICAvKiogVGhlIHBvbGl0ZW5lc3MgbGV2ZWwgZm9yIHRoZSBNYXRBcmlhTGl2ZUFubm91bmNlciBhbm5vdW5jZW1lbnQuICovXHJcbiAgcG9saXRlbmVzcz86IEFyaWFMaXZlUG9saXRlbmVzcyA9ICdhc3NlcnRpdmUnO1xyXG5cclxuICAvKiogTWVzc2FnZSB0byBiZSBhbm5vdW5jZWQgYnkgdGhlIE1hdEFyaWFMaXZlQW5ub3VuY2VyICovXHJcbiAgYW5ub3VuY2VtZW50TWVzc2FnZT8gPSAnJztcclxuXHJcbiAgLyoqIFRoZSB2aWV3IGNvbnRhaW5lciB0byBwbGFjZSB0aGUgb3ZlcmxheSBmb3IgdGhlIGtleWJvYXJkIGludG8uICovXHJcbiAgdmlld0NvbnRhaW5lclJlZj86IFZpZXdDb250YWluZXJSZWYgPSBudWxsO1xyXG5cclxuICAvKiogVGhlIGxlbmd0aCBvZiB0aW1lIGluIG1pbGxpc2Vjb25kcyB0byB3YWl0IGJlZm9yZSBhdXRvbWF0aWNhbGx5IGRpc21pc3NpbmcgdGhlIGtleWJvYXJkIGFmdGVyIGJsdXIuICovXHJcbiAgZHVyYXRpb24/ID0gMDtcclxuXHJcbiAgLyoqIEVuYWJsZSBhIGRhcmsga2V5Ym9hcmQgKi9cclxuICBkYXJrVGhlbWU/ID0gbnVsbDtcclxuXHJcbiAgLyoqIEVuYWJsZSB0aGUgZGVidWcgdmlldyAqL1xyXG4gIGlzRGVidWc/ID0gZmFsc2U7XHJcblxyXG4gIC8qKiBFbmFibGUgdGhlIGRlYnVnIHZpZXcgKi9cclxuICBuZ0NvbnRyb2w/OiBOZ0NvbnRyb2w7XHJcblxyXG4gIC8qKiBDdXN0b20gaWNvbiBvdmVycmlkZXMgKi9cclxuICBjdXN0b21JY29ucz86IElLZXlib2FyZEljb25zID0ge307XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImNvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBO0lBQUE7UUFDRSxzRUFBc0U7UUFDdEUsZUFBVSxHQUF3QixXQUFXLENBQUM7UUFFOUMsMERBQTBEO1FBQzFELHdCQUFtQixHQUFJLEVBQUUsQ0FBQztRQUUxQixxRUFBcUU7UUFDckUscUJBQWdCLEdBQXNCLElBQUksQ0FBQztRQUUzQywwR0FBMEc7UUFDMUcsYUFBUSxHQUFJLENBQUMsQ0FBQztRQUVkLDZCQUE2QjtRQUM3QixjQUFTLEdBQUksSUFBSSxDQUFDO1FBRWxCLDRCQUE0QjtRQUM1QixZQUFPLEdBQUksS0FBSyxDQUFDO1FBS2pCLDRCQUE0QjtRQUM1QixnQkFBVyxHQUFvQixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUFELHdCQUFDO0FBQUQsQ0FBQyxBQXhCRCxJQXdCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFyaWFMaXZlUG9saXRlbmVzcyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElLZXlib2FyZEljb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1pY29ucy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmRDb25maWcge1xuICAvKiogVGhlIHBvbGl0ZW5lc3MgbGV2ZWwgZm9yIHRoZSBNYXRBcmlhTGl2ZUFubm91bmNlciBhbm5vdW5jZW1lbnQuICovXG4gIHBvbGl0ZW5lc3M/OiBBcmlhTGl2ZVBvbGl0ZW5lc3MgPSAnYXNzZXJ0aXZlJztcblxuICAvKiogTWVzc2FnZSB0byBiZSBhbm5vdW5jZWQgYnkgdGhlIE1hdEFyaWFMaXZlQW5ub3VuY2VyICovXG4gIGFubm91bmNlbWVudE1lc3NhZ2U/ID0gJyc7XG5cbiAgLyoqIFRoZSB2aWV3IGNvbnRhaW5lciB0byBwbGFjZSB0aGUgb3ZlcmxheSBmb3IgdGhlIGtleWJvYXJkIGludG8uICovXG4gIHZpZXdDb250YWluZXJSZWY/OiBWaWV3Q29udGFpbmVyUmVmID0gbnVsbDtcblxuICAvKiogVGhlIGxlbmd0aCBvZiB0aW1lIGluIG1pbGxpc2Vjb25kcyB0byB3YWl0IGJlZm9yZSBhdXRvbWF0aWNhbGx5IGRpc21pc3NpbmcgdGhlIGtleWJvYXJkIGFmdGVyIGJsdXIuICovXG4gIGR1cmF0aW9uPyA9IDA7XG5cbiAgLyoqIEVuYWJsZSBhIGRhcmsga2V5Ym9hcmQgKi9cbiAgZGFya1RoZW1lPyA9IG51bGw7XG5cbiAgLyoqIEVuYWJsZSB0aGUgZGVidWcgdmlldyAqL1xuICBpc0RlYnVnPyA9IGZhbHNlO1xuXG4gIC8qKiBFbmFibGUgdGhlIGRlYnVnIHZpZXcgKi9cbiAgbmdDb250cm9sPzogTmdDb250cm9sO1xuXG4gIC8qKiBDdXN0b20gaWNvbiBvdmVycmlkZXMgKi9cbiAgY3VzdG9tSWNvbnM/OiBJS2V5Ym9hcmRJY29ucyA9IHt9O1xufVxuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { Directive, ElementRef, EventEmitter, HostListener, Input, OnDestroy, Optional, Output, Self } from '@angular/core';

@@ -47,37 +47,37 @@ import { NgControl } from '@angular/forms';

]; };
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "matKeyboard", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "darkTheme", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "duration", void 0);
tslib_1.__decorate([
__decorate([
Input()
], MatKeyboardDirective.prototype, "isDebug", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "enterClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "capsClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "altClick", void 0);
tslib_1.__decorate([
__decorate([
Output()
], MatKeyboardDirective.prototype, "shiftClick", void 0);
tslib_1.__decorate([
__decorate([
HostListener('focus', ['$event'])
], MatKeyboardDirective.prototype, "showKeyboard", null);
tslib_1.__decorate([
__decorate([
HostListener('blur', ['$event'])
], MatKeyboardDirective.prototype, "hideKeyboard", null);
MatKeyboardDirective = tslib_1.__decorate([
MatKeyboardDirective = __decorate([
Directive({
selector: 'input[matKeyboard], textarea[matKeyboard]'
}),
tslib_1.__param(2, Optional()), tslib_1.__param(2, Self())
__param(2, Optional()), __param(2, Self())
], MatKeyboardDirective);

@@ -87,2 +87,2 @@ return MatKeyboardDirective;

export { MatKeyboardDirective };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImRpcmVjdGl2ZXMva2V5Ym9hcmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBS2xFO0lBb0JFLDhCQUFvQixXQUF1QixFQUN2QixnQkFBb0MsRUFDaEIsUUFBb0I7UUFGeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBVmxELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUxRCxjQUFTLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFekQsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXhELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUlMLENBQUM7SUFFaEUsMENBQVcsR0FBWDtRQUNFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBR00sMkNBQVksR0FBbkI7UUFEQSxpQkFxQkM7UUFuQkMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDL0QsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FBQyxDQUFDO1FBRUgsOEJBQThCO1FBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU5RCxtREFBbUQ7UUFDbkQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ2pFO1FBRUQsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQXRCLENBQXNCLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxFQUFyQixDQUFxQixDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxjQUFNLE9BQUEsS0FBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBcEIsQ0FBb0IsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQXRCLENBQXNCLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBR00sMkNBQVksR0FBbkI7UUFDRSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7O2dCQXBDZ0MsVUFBVTtnQkFDTCxrQkFBa0I7Z0JBQ0wsU0FBUyx1QkFBL0MsUUFBUSxZQUFJLElBQUk7O0lBbEJwQjtRQUFSLEtBQUssRUFBRTs2REFBcUI7SUFFcEI7UUFBUixLQUFLLEVBQUU7MkRBQW9CO0lBRW5CO1FBQVIsS0FBSyxFQUFFOzBEQUFrQjtJQUVqQjtRQUFSLEtBQUssRUFBRTt5REFBa0I7SUFFaEI7UUFBVCxNQUFNLEVBQUU7NERBQTJEO0lBRTFEO1FBQVQsTUFBTSxFQUFFOzJEQUEwRDtJQUV6RDtRQUFULE1BQU0sRUFBRTswREFBeUQ7SUFFeEQ7UUFBVCxNQUFNLEVBQUU7NERBQTJEO0lBV3BFO1FBREMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzREQXFCakM7SUFHRDtRQURDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs0REFLaEM7SUF4RFUsb0JBQW9CO1FBSGhDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSwyQ0FBMkM7U0FDdEQsQ0FBQztRQXVCYSxtQkFBQSxRQUFRLEVBQUUsQ0FBQSxFQUFFLG1CQUFBLElBQUksRUFBRSxDQUFBO09BdEJwQixvQkFBb0IsQ0EwRGhDO0lBQUQsMkJBQUM7Q0FBQSxBQTFERCxJQTBEQztTQTFEWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25EZXN0cm95LCBPcHRpb25hbCwgT3V0cHV0LCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IE1hdEtleWJvYXJkUmVmIH0gZnJvbSAnLi4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ2lucHV0W21hdEtleWJvYXJkXSwgdGV4dGFyZWFbbWF0S2V5Ym9hcmRdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0S2V5Ym9hcmREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG5cclxuICBwcml2YXRlIF9rZXlib2FyZFJlZjogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+O1xyXG5cclxuICBASW5wdXQoKSBtYXRLZXlib2FyZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBkYXJrVGhlbWU6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpIGR1cmF0aW9uOiBudW1iZXI7XHJcblxyXG4gIEBJbnB1dCgpIGlzRGVidWc6IGJvb2xlYW47XHJcblxyXG4gIEBPdXRwdXQoKSBlbnRlckNsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBjYXBzQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgQE91dHB1dCgpIGFsdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBzaGlmdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfa2V5Ym9hcmRTZXJ2aWNlOiBNYXRLZXlib2FyZFNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIF9jb250cm9sPzogTmdDb250cm9sKSB7fVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuaGlkZUtleWJvYXJkKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdmb2N1cycsIFsnJGV2ZW50J10pXHJcbiAgcHVibGljIHNob3dLZXlib2FyZCgpIHtcclxuICAgIHRoaXMuX2tleWJvYXJkUmVmID0gdGhpcy5fa2V5Ym9hcmRTZXJ2aWNlLm9wZW4odGhpcy5tYXRLZXlib2FyZCwge1xyXG4gICAgICBkYXJrVGhlbWU6IHRoaXMuZGFya1RoZW1lLFxyXG4gICAgICBkdXJhdGlvbjogdGhpcy5kdXJhdGlvbixcclxuICAgICAgaXNEZWJ1ZzogdGhpcy5pc0RlYnVnXHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyByZWZlcmVuY2UgdGhlIGlucHV0IGVsZW1lbnRcclxuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLnNldElucHV0SW5zdGFuY2UodGhpcy5fZWxlbWVudFJlZik7XHJcblxyXG4gICAgLy8gc2V0IGNvbnRyb2wgaWYgZ2l2ZW4sIGNhc3QgdG8gc210aC4gbm9uLWFic3RyYWN0XHJcbiAgICBpZiAodGhpcy5fY29udHJvbCkge1xyXG4gICAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5hdHRhY2hDb250cm9sKHRoaXMuX2NvbnRyb2wuY29udHJvbCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gY29ubmVjdCBvdXRwdXRzXHJcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5lbnRlckNsaWNrLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVudGVyQ2xpY2submV4dCgpKTtcclxuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLmNhcHNDbGljay5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYXBzQ2xpY2submV4dCgpKTtcclxuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLmFsdENsaWNrLnN1YnNjcmliZSgoKSA9PiB0aGlzLmFsdENsaWNrLm5leHQoKSk7XHJcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5zaGlmdENsaWNrLnN1YnNjcmliZSgoKSA9PiB0aGlzLnNoaWZ0Q2xpY2submV4dCgpKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBoaWRlS2V5Ym9hcmQoKSB7XHJcbiAgICBpZiAodGhpcy5fa2V5Ym9hcmRSZWYpIHtcclxuICAgICAgdGhpcy5fa2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImRpcmVjdGl2ZXMva2V5Ym9hcmQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBS2xFO0lBb0JFLDhCQUFvQixXQUF1QixFQUN2QixnQkFBb0MsRUFDaEIsUUFBb0I7UUFGeEMsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBVmxELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUUxRCxjQUFTLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFFekQsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXhELGVBQVUsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUlMLENBQUM7SUFFaEUsMENBQVcsR0FBWDtRQUNFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBR00sMkNBQVksR0FBbkI7UUFEQSxpQkFxQkM7UUFuQkMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDL0QsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FBQyxDQUFDO1FBRUgsOEJBQThCO1FBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU5RCxtREFBbUQ7UUFDbkQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ2pFO1FBRUQsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQXRCLENBQXNCLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxFQUFyQixDQUFxQixDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxjQUFNLE9BQUEsS0FBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBcEIsQ0FBb0IsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQXRCLENBQXNCLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBR00sMkNBQVksR0FBbkI7UUFDRSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7O2dCQXBDZ0MsVUFBVTtnQkFDTCxrQkFBa0I7Z0JBQ0wsU0FBUyx1QkFBL0MsUUFBUSxZQUFJLElBQUk7O0lBbEJwQjtRQUFSLEtBQUssRUFBRTs2REFBcUI7SUFFcEI7UUFBUixLQUFLLEVBQUU7MkRBQW9CO0lBRW5CO1FBQVIsS0FBSyxFQUFFOzBEQUFrQjtJQUVqQjtRQUFSLEtBQUssRUFBRTt5REFBa0I7SUFFaEI7UUFBVCxNQUFNLEVBQUU7NERBQTJEO0lBRTFEO1FBQVQsTUFBTSxFQUFFOzJEQUEwRDtJQUV6RDtRQUFULE1BQU0sRUFBRTswREFBeUQ7SUFFeEQ7UUFBVCxNQUFNLEVBQUU7NERBQTJEO0lBV3BFO1FBREMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDOzREQXFCakM7SUFHRDtRQURDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs0REFLaEM7SUF4RFUsb0JBQW9CO1FBSGhDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSwyQ0FBMkM7U0FDdEQsQ0FBQztRQXVCYSxXQUFBLFFBQVEsRUFBRSxDQUFBLEVBQUUsV0FBQSxJQUFJLEVBQUUsQ0FBQTtPQXRCcEIsb0JBQW9CLENBMERoQztJQUFELDJCQUFDO0NBQUEsQUExREQsSUEwREM7U0ExRFksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwsIE91dHB1dCwgU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBNYXRLZXlib2FyZFJlZiB9IGZyb20gJy4uL2NsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzJztcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9rZXlib2FyZC9rZXlib2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W21hdEtleWJvYXJkXSwgdGV4dGFyZWFbbWF0S2V5Ym9hcmRdJ1xufSlcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfa2V5Ym9hcmRSZWY6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PjtcblxuICBASW5wdXQoKSBtYXRLZXlib2FyZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGRhcmtUaGVtZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBkdXJhdGlvbjogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIGlzRGVidWc6IGJvb2xlYW47XG5cbiAgQE91dHB1dCgpIGVudGVyQ2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KCkgY2Fwc0NsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpIGFsdENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpIHNoaWZ0Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICAgICAgICBwcml2YXRlIF9rZXlib2FyZFNlcnZpY2U6IE1hdEtleWJvYXJkU2VydmljZSxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIF9jb250cm9sPzogTmdDb250cm9sKSB7fVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuaGlkZUtleWJvYXJkKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdmb2N1cycsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBzaG93S2V5Ym9hcmQoKSB7XG4gICAgdGhpcy5fa2V5Ym9hcmRSZWYgPSB0aGlzLl9rZXlib2FyZFNlcnZpY2Uub3Blbih0aGlzLm1hdEtleWJvYXJkLCB7XG4gICAgICBkYXJrVGhlbWU6IHRoaXMuZGFya1RoZW1lLFxuICAgICAgZHVyYXRpb246IHRoaXMuZHVyYXRpb24sXG4gICAgICBpc0RlYnVnOiB0aGlzLmlzRGVidWdcbiAgICB9KTtcblxuICAgIC8vIHJlZmVyZW5jZSB0aGUgaW5wdXQgZWxlbWVudFxuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLnNldElucHV0SW5zdGFuY2UodGhpcy5fZWxlbWVudFJlZik7XG5cbiAgICAvLyBzZXQgY29udHJvbCBpZiBnaXZlbiwgY2FzdCB0byBzbXRoLiBub24tYWJzdHJhY3RcbiAgICBpZiAodGhpcy5fY29udHJvbCkge1xuICAgICAgdGhpcy5fa2V5Ym9hcmRSZWYuaW5zdGFuY2UuYXR0YWNoQ29udHJvbCh0aGlzLl9jb250cm9sLmNvbnRyb2wpO1xuICAgIH1cblxuICAgIC8vIGNvbm5lY3Qgb3V0cHV0c1xuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLmVudGVyQ2xpY2suc3Vic2NyaWJlKCgpID0+IHRoaXMuZW50ZXJDbGljay5uZXh0KCkpO1xuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLmNhcHNDbGljay5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYXBzQ2xpY2submV4dCgpKTtcbiAgICB0aGlzLl9rZXlib2FyZFJlZi5pbnN0YW5jZS5hbHRDbGljay5zdWJzY3JpYmUoKCkgPT4gdGhpcy5hbHRDbGljay5uZXh0KCkpO1xuICAgIHRoaXMuX2tleWJvYXJkUmVmLmluc3RhbmNlLnNoaWZ0Q2xpY2suc3Vic2NyaWJlKCgpID0+IHRoaXMuc2hpZnRDbGljay5uZXh0KCkpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBoaWRlS2V5Ym9hcmQoKSB7XG4gICAgaWYgKHRoaXMuX2tleWJvYXJkUmVmKSB7XG4gICAgICB0aGlzLl9rZXlib2FyZFJlZi5kaXNtaXNzKCk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==

@@ -7,2 +7,2 @@ export var KeyboardAnimationState;

})(KeyboardAnimationState || (KeyboardAnimationState = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksc0JBSVg7QUFKRCxXQUFZLHNCQUFzQjtJQUNoQyx1Q0FBYSxDQUFBO0lBQ2IsNkNBQW1CLENBQUE7SUFDbkIsMkNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFJakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBLZXlib2FyZEFuaW1hdGlvblN0YXRlIHtcclxuICBWb2lkID0gJ3ZvaWQnLFxyXG4gIFZpc2libGUgPSAndmlzaWJsZScsXHJcbiAgSGlkZGVuID0gJ2hpZGRlbidcclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXN0YXRlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksc0JBSVg7QUFKRCxXQUFZLHNCQUFzQjtJQUNoQyx1Q0FBYSxDQUFBO0lBQ2IsNkNBQW1CLENBQUE7SUFDbkIsMkNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFJakMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBLZXlib2FyZEFuaW1hdGlvblN0YXRlIHtcbiAgVm9pZCA9ICd2b2lkJyxcbiAgVmlzaWJsZSA9ICd2aXNpYmxlJyxcbiAgSGlkZGVuID0gJ2hpZGRlbidcbn1cbiJdfQ==

@@ -12,2 +12,2 @@ // import { KeyboardAnimationState } from './keyboard-animation-state.enum';

})(KeyboardAnimationTransition || (KeyboardAnimationTransition = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1hbmltYXRpb24tdHJhbnNpdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRFQUE0RTtBQUM1RSxFQUFFO0FBQ0YsNENBQTRDO0FBQzVDLG9GQUFvRjtBQUNwRixpRkFBaUY7QUFDakYsSUFBSTtBQUVKLE1BQU0sQ0FBTixJQUFZLDJCQUdYO0FBSEQsV0FBWSwyQkFBMkI7SUFDckMseURBQTBCLENBQUE7SUFDMUIsdURBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQUhXLDJCQUEyQixLQUEzQiwyQkFBMkIsUUFHdEMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlib2FyZEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi9rZXlib2FyZC1hbmltYXRpb24tc3RhdGUuZW51bSc7XHJcbi8vXHJcbi8vIGV4cG9ydCBlbnVtIEtleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbiB7XHJcbi8vICAgSGlkZSA9IGAke0tleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZX0gPT4gJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbn1gLFxyXG4vLyAgIFNob3cgPSBgJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLlZvaWR9ID0+ICR7S2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5WaXNpYmxlfWBcclxuLy8gfVxyXG5cclxuZXhwb3J0IGVudW0gS2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uIHtcclxuICBIaWRlID0gJ3Zpc2libGUgPT4gaGlkZGVuJyxcclxuICBTaG93ID0gJ3ZvaWQgPT4gdmlzaWJsZSdcclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1hbmltYXRpb24tdHJhbnNpdGlvbi5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRFQUE0RTtBQUM1RSxFQUFFO0FBQ0YsNENBQTRDO0FBQzVDLG9GQUFvRjtBQUNwRixpRkFBaUY7QUFDakYsSUFBSTtBQUVKLE1BQU0sQ0FBTixJQUFZLDJCQUdYO0FBSEQsV0FBWSwyQkFBMkI7SUFDckMseURBQTBCLENBQUE7SUFDMUIsdURBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQUhXLDJCQUEyQixLQUEzQiwyQkFBMkIsUUFHdEMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgeyBLZXlib2FyZEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi9rZXlib2FyZC1hbmltYXRpb24tc3RhdGUuZW51bSc7XG4vL1xuLy8gZXhwb3J0IGVudW0gS2V5Ym9hcmRBbmltYXRpb25UcmFuc2l0aW9uIHtcbi8vICAgSGlkZSA9IGAke0tleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZX0gPT4gJHtLZXlib2FyZEFuaW1hdGlvblN0YXRlLkhpZGRlbn1gLFxuLy8gICBTaG93ID0gYCR7S2V5Ym9hcmRBbmltYXRpb25TdGF0ZS5Wb2lkfSA9PiAke0tleWJvYXJkQW5pbWF0aW9uU3RhdGUuVmlzaWJsZX1gXG4vLyB9XG5cbmV4cG9ydCBlbnVtIEtleWJvYXJkQW5pbWF0aW9uVHJhbnNpdGlvbiB7XG4gIEhpZGUgPSAndmlzaWJsZSA9PiBoaWRkZW4nLFxuICBTaG93ID0gJ3ZvaWQgPT4gdmlzaWJsZSdcbn1cbiJdfQ==

@@ -16,2 +16,2 @@ // TODO: use real string based enums (available sine typescript 1.4) if

})(KeyboardClassKey || (KeyboardClassKey = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUVBQXVFO0FBQ3ZFLDhFQUE4RTtBQUM5RSx1RUFBdUU7QUFDdkUsTUFBTSxDQUFOLElBQVksZ0JBVVg7QUFWRCxXQUFZLGdCQUFnQjtJQUMxQiwrQkFBVyxDQUFBO0lBQ1gsc0NBQWtCLENBQUE7SUFDbEIsbUNBQWUsQ0FBQTtJQUNmLHNDQUFrQixDQUFBO0lBQ2xCLHFDQUFpQixDQUFBO0lBQ2pCLG1DQUFlLENBQUE7SUFDZixtQ0FBZSxDQUFBO0lBQ2YsK0JBQVcsQ0FBQTtJQUNYLCtCQUFXLENBQUE7QUFDYixDQUFDLEVBVlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQVUzQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IHVzZSByZWFsIHN0cmluZyBiYXNlZCBlbnVtcyAoYXZhaWxhYmxlIHNpbmUgdHlwZXNjcmlwdCAxLjQpIGlmXHJcbi8vIFt0c2xpbnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9wYWxhbnRpci90c2xpbnQvaXNzdWVzLzI5OTMpIGFuZCBtb3JlIGltcG9ydGFudFxyXG4vLyBbcm9sbHVwXShodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNzUxNikgc3VwcG9ydCBpdFxyXG5leHBvcnQgZW51bSBLZXlib2FyZENsYXNzS2V5IHtcclxuICBBbHQgPSAnQWx0JyxcclxuICBBbHRHciA9ICdBbHRHcmFwaCcsXHJcbiAgQWx0TGsgPSAnQWx0TGsnLFxyXG4gIEJrc3AgPSAnQmFja3NwYWNlJyxcclxuICBDYXBzID0gJ0NhcHNMb2NrJyxcclxuICBFbnRlciA9ICdFbnRlcicsXHJcbiAgU2hpZnQgPSAnU2hpZnQnLFxyXG4gIFNwYWNlID0gJyAnLFxyXG4gIFRhYiA9ICdUYWInXHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUVBQXVFO0FBQ3ZFLDhFQUE4RTtBQUM5RSx1RUFBdUU7QUFDdkUsTUFBTSxDQUFOLElBQVksZ0JBVVg7QUFWRCxXQUFZLGdCQUFnQjtJQUMxQiwrQkFBVyxDQUFBO0lBQ1gsc0NBQWtCLENBQUE7SUFDbEIsbUNBQWUsQ0FBQTtJQUNmLHNDQUFrQixDQUFBO0lBQ2xCLHFDQUFpQixDQUFBO0lBQ2pCLG1DQUFlLENBQUE7SUFDZixtQ0FBZSxDQUFBO0lBQ2YsK0JBQVcsQ0FBQTtJQUNYLCtCQUFXLENBQUE7QUFDYixDQUFDLEVBVlcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQVUzQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IHVzZSByZWFsIHN0cmluZyBiYXNlZCBlbnVtcyAoYXZhaWxhYmxlIHNpbmUgdHlwZXNjcmlwdCAxLjQpIGlmXG4vLyBbdHNsaW50XShodHRwczovL2dpdGh1Yi5jb20vcGFsYW50aXIvdHNsaW50L2lzc3Vlcy8yOTkzKSBhbmQgbW9yZSBpbXBvcnRhbnRcbi8vIFtyb2xsdXBdKGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzE3NTE2KSBzdXBwb3J0IGl0XG5leHBvcnQgZW51bSBLZXlib2FyZENsYXNzS2V5IHtcbiAgQWx0ID0gJ0FsdCcsXG4gIEFsdEdyID0gJ0FsdEdyYXBoJyxcbiAgQWx0TGsgPSAnQWx0TGsnLFxuICBCa3NwID0gJ0JhY2tzcGFjZScsXG4gIENhcHMgPSAnQ2Fwc0xvY2snLFxuICBFbnRlciA9ICdFbnRlcicsXG4gIFNoaWZ0ID0gJ1NoaWZ0JyxcbiAgU3BhY2UgPSAnICcsXG4gIFRhYiA9ICdUYWInXG59XG4iXX0=

@@ -10,2 +10,2 @@ // this enum index has to be number based because it is used

})(KeyboardModifier || (KeyboardModifier = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbW9kaWZpZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1tb2RpZmllci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDREQUE0RDtBQUM1RCw0REFBNEQ7QUFDNUQsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUMxQix1REFBSSxDQUFBO0lBQ0oseURBQUssQ0FBQTtJQUNMLHFEQUFHLENBQUE7SUFDSCwrREFBUSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFLM0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0aGlzIGVudW0gaW5kZXggaGFzIHRvIGJlIG51bWJlciBiYXNlZCBiZWNhdXNlIGl0IGlzIHVzZWRcclxuLy8gdG8gYWNjZXNzIHRoZSBrZXlib2FyZCBjb25maWdzIGFsdGVybmF0aXZlIGtleSBhc3NpZ25tZW50XHJcbmV4cG9ydCBlbnVtIEtleWJvYXJkTW9kaWZpZXIge1xyXG4gIE5vbmUsXHJcbiAgU2hpZnQsXHJcbiAgQWx0LFxyXG4gIFNoaWZ0QWx0XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbW9kaWZpZXIuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJlbnVtcy9rZXlib2FyZC1tb2RpZmllci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDREQUE0RDtBQUM1RCw0REFBNEQ7QUFDNUQsTUFBTSxDQUFOLElBQVksZ0JBS1g7QUFMRCxXQUFZLGdCQUFnQjtJQUMxQix1REFBSSxDQUFBO0lBQ0oseURBQUssQ0FBQTtJQUNMLHFEQUFHLENBQUE7SUFDSCwrREFBUSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFLM0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0aGlzIGVudW0gaW5kZXggaGFzIHRvIGJlIG51bWJlciBiYXNlZCBiZWNhdXNlIGl0IGlzIHVzZWRcbi8vIHRvIGFjY2VzcyB0aGUga2V5Ym9hcmQgY29uZmlncyBhbHRlcm5hdGl2ZSBrZXkgYXNzaWdubWVudFxuZXhwb3J0IGVudW0gS2V5Ym9hcmRNb2RpZmllciB7XG4gIE5vbmUsXG4gIFNoaWZ0LFxuICBBbHQsXG4gIFNoaWZ0QWx0XG59XG4iXX0=

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElLZXlib2FyZERlYWRrZXlzIHtcclxuICBbZGVhZGtleTogc3RyaW5nXToge1xyXG4gICAgW3RhcmdldDogc3RyaW5nXTogc3RyaW5nO1xyXG4gIH07XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtZGVhZGtleXMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElLZXlib2FyZERlYWRrZXlzIHtcbiAgW2RlYWRrZXk6IHN0cmluZ106IHtcbiAgICBbdGFyZ2V0OiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG59XG4iXX0=

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgSUtleWJvYXJkSWNvbnMge1xyXG4gIFtrZXk6IHN0cmluZ106IElNYXRJY29uO1xyXG59XHJcblxyXG5pbnRlcmZhY2UgSU1hdEljb24ge1xyXG4gIG5hbWU/OiBzdHJpbmc7XHJcbiAgZm9udFNldD86IHN0cmluZztcclxuICBmb250SWNvbj86IHN0cmluZztcclxuICBzdmdJY29uPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgeyBJS2V5Ym9hcmRJY29ucywgSU1hdEljb24gfTtcclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgSUtleWJvYXJkSWNvbnMge1xuICBba2V5OiBzdHJpbmddOiBJTWF0SWNvbjtcbn1cblxuaW50ZXJmYWNlIElNYXRJY29uIHtcbiAgbmFtZT86IHN0cmluZztcbiAgZm9udFNldD86IHN0cmluZztcbiAgZm9udEljb24/OiBzdHJpbmc7XG4gIHN2Z0ljb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB7IElLZXlib2FyZEljb25zLCBJTWF0SWNvbiB9O1xuIl19

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJpbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElLZXlib2FyZExheW91dCB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIGtleXM6IChzdHJpbmcgfCBLZXlib2FyZENsYXNzS2V5KVtdW11bXTtcclxuICBsYW5nPzogc3RyaW5nW107XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJpbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleWJvYXJkQ2xhc3NLZXkgfSBmcm9tICcuLi9lbnVtcy9rZXlib2FyZC1jbGFzcy1rZXkuZW51bSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUtleWJvYXJkTGF5b3V0IHtcbiAgbmFtZTogc3RyaW5nO1xuICBrZXlzOiAoc3RyaW5nIHwgS2V5Ym9hcmRDbGFzc0tleSlbXVtdW107XG4gIGxhbmc/OiBzdHJpbmdbXTtcbn1cbiJdfQ==

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0IH0gZnJvbSAnLi9rZXlib2FyZC1sYXlvdXQuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUtleWJvYXJkTGF5b3V0cyB7XHJcbiAgW2xheW91dDogc3RyaW5nXTogSUtleWJvYXJkTGF5b3V0O1xyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0IH0gZnJvbSAnLi9rZXlib2FyZC1sYXlvdXQuaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBJS2V5Ym9hcmRMYXlvdXRzIHtcbiAgW2xheW91dDogc3RyaW5nXTogSUtleWJvYXJkTGF5b3V0O1xufVxuIl19

@@ -1,1 +0,1 @@

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLW1hcC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9sb2NhbGUtbWFwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJTG9jYWxlTWFwIHtcclxuICBbbG9jYWxlOiBzdHJpbmddOiBzdHJpbmc7XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLW1hcC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsiaW50ZXJmYWNlcy9sb2NhbGUtbWFwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJTG9jYWxlTWFwIHtcbiAgW2xvY2FsZTogc3RyaW5nXTogc3RyaW5nO1xufVxuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate } from "tslib";
// External modules

@@ -6,3 +6,2 @@ import { CommonModule } from '@angular/common';

// Angular CDK
import { LIVE_ANNOUNCER_PROVIDER } from '@angular/cdk/a11y';
import { OverlayModule } from '@angular/cdk/overlay';

@@ -30,3 +29,3 @@ import { PortalModule } from '@angular/cdk/portal';

}
MatKeyboardModule = tslib_1.__decorate([
MatKeyboardModule = __decorate([
NgModule({

@@ -65,3 +64,2 @@ imports: [

MatKeyboardService,
LIVE_ANNOUNCER_PROVIDER,
{ provide: MAT_KEYBOARD_DEADKEYS, useValue: ɵ0 },

@@ -76,2 +74,2 @@ { provide: MAT_KEYBOARD_LAYOUTS, useValue: ɵ1 }

export { ɵ0, ɵ1 };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImtleWJvYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsbUJBQW1CO0FBQ25CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLGNBQWM7QUFDZCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELG1CQUFtQjtBQUNuQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsVUFBVTtBQUNWLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRiw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDN0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsWUFBWTtBQUNaLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO1NBc0NqQixnQkFBZ0IsT0FDakIsZUFBZTtBQUc5RDtJQUFBO0lBQWdDLENBQUM7SUFBcEIsaUJBQWlCO1FBeEM3QixRQUFRLENBQUM7WUFDUixPQUFPLEVBQUU7Z0JBQ1Asa0JBQWtCO2dCQUNsQixZQUFZO2dCQUNaLGFBQWE7Z0JBRWIsY0FBYztnQkFDZCxZQUFZO2dCQUVaLG1CQUFtQjtnQkFDbkIsZUFBZTtnQkFDZixlQUFlO2dCQUNmLGFBQWE7Z0JBQ2IsY0FBYzthQUNmO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLG9CQUFvQjtnQkFDcEIsNkJBQTZCO2dCQUM3Qix1QkFBdUI7Z0JBQ3ZCLG9CQUFvQjthQUNyQjtZQUNELFlBQVksRUFBRTtnQkFDWix3QkFBd0I7Z0JBQ3hCLG9CQUFvQjtnQkFDcEIsNkJBQTZCO2dCQUM3Qix1QkFBdUI7Z0JBQ3ZCLG9CQUFvQjthQUNyQjtZQUNELGVBQWUsRUFBRTtnQkFDZixvQkFBb0I7Z0JBQ3BCLDZCQUE2QjtnQkFDN0IsdUJBQXVCO2FBQ3hCO1lBQ0QsU0FBUyxFQUFFO2dCQUNULGtCQUFrQjtnQkFDbEIsdUJBQXVCO2dCQUN2QixFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLElBQWtCLEVBQUU7Z0JBQzlELEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFFBQVEsSUFBaUIsRUFBRTthQUM3RDtTQUNGLENBQUM7T0FDVyxpQkFBaUIsQ0FBRztJQUFELHdCQUFDO0NBQUEsQUFBakMsSUFBaUM7U0FBcEIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRXh0ZXJuYWwgbW9kdWxlc1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG4vLyBBbmd1bGFyIENES1xyXG5pbXBvcnQgeyBMSVZFX0FOTk9VTkNFUl9QUk9WSURFUiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcclxuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbi8vIEFuZ3VsYXIgbWF0ZXJpYWxcclxuaW1wb3J0IHsgTWF0Q29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbi8vIENvbmZpZ3NcclxuaW1wb3J0IHsga2V5Ym9hcmREZWFka2V5cywgTUFUX0tFWUJPQVJEX0RFQURLRVlTIH0gZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJztcclxuaW1wb3J0IHsga2V5Ym9hcmRMYXlvdXRzLCBNQVRfS0VZQk9BUkRfTEFZT1VUUyB9IGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XHJcbi8vIENvbXBvbmVudHMgYW5kIGRpcmVjdGl2ZXNcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZEtleUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1rZXkva2V5Ym9hcmQta2V5LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2tleWJvYXJkLmRpcmVjdGl2ZSc7XHJcbi8vIFByb3ZpZGVyc1xyXG5pbXBvcnQgeyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgfSBmcm9tICcuL3BpcGVzL2tlYmFiLWNhc2UucGlwZSc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIC8vIEFuZ3VsYXIgbW9kdWxlc1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgT3ZlcmxheU1vZHVsZSxcclxuXHJcbiAgICAvLyBDZGsgbW9kdWxlc1xyXG4gICAgUG9ydGFsTW9kdWxlLFxyXG5cclxuICAgIC8vIE1hdGVyaWFsIG1vZHVsZXNcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdENvbW1vbk1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50LFxyXG4gICAgTWF0S2V5Ym9hcmREaXJlY3RpdmVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgTWF0S2V5Ym9hcmRLZWJhYkNhc2VQaXBlLFxyXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50LFxyXG4gICAgTWF0S2V5Ym9hcmREaXJlY3RpdmVcclxuICBdLFxyXG4gIGVudHJ5Q29tcG9uZW50czogW1xyXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXHJcbiAgICBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50XHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIE1hdEtleWJvYXJkU2VydmljZSxcclxuICAgIExJVkVfQU5OT1VOQ0VSX1BST1ZJREVSLFxyXG4gICAgeyBwcm92aWRlOiBNQVRfS0VZQk9BUkRfREVBREtFWVMsIHVzZVZhbHVlOiBrZXlib2FyZERlYWRrZXlzIH0sXHJcbiAgICB7IHByb3ZpZGU6IE1BVF9LRVlCT0FSRF9MQVlPVVRTLCB1c2VWYWx1ZToga2V5Ym9hcmRMYXlvdXRzIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZE1vZHVsZSB7fVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbImtleWJvYXJkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsbUJBQW1CO0FBQ25CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLGNBQWM7QUFDZCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELG1CQUFtQjtBQUNuQixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsVUFBVTtBQUNWLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRiw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDN0csT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsWUFBWTtBQUNaLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO1NBcUNqQixnQkFBZ0IsT0FDakIsZUFBZTtBQUc5RDtJQUFBO0lBQWdDLENBQUM7SUFBcEIsaUJBQWlCO1FBdkM3QixRQUFRLENBQUM7WUFDUixPQUFPLEVBQUU7Z0JBQ1Asa0JBQWtCO2dCQUNsQixZQUFZO2dCQUNaLGFBQWE7Z0JBRWIsY0FBYztnQkFDZCxZQUFZO2dCQUVaLG1CQUFtQjtnQkFDbkIsZUFBZTtnQkFDZixlQUFlO2dCQUNmLGFBQWE7Z0JBQ2IsY0FBYzthQUNmO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLG9CQUFvQjtnQkFDcEIsNkJBQTZCO2dCQUM3Qix1QkFBdUI7Z0JBQ3ZCLG9CQUFvQjthQUNyQjtZQUNELFlBQVksRUFBRTtnQkFDWix3QkFBd0I7Z0JBQ3hCLG9CQUFvQjtnQkFDcEIsNkJBQTZCO2dCQUM3Qix1QkFBdUI7Z0JBQ3ZCLG9CQUFvQjthQUNyQjtZQUNELGVBQWUsRUFBRTtnQkFDZixvQkFBb0I7Z0JBQ3BCLDZCQUE2QjtnQkFDN0IsdUJBQXVCO2FBQ3hCO1lBQ0QsU0FBUyxFQUFFO2dCQUNULGtCQUFrQjtnQkFDbEIsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxJQUFrQixFQUFFO2dCQUM5RCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxRQUFRLElBQWlCLEVBQUU7YUFDN0Q7U0FDRixDQUFDO09BQ1csaUJBQWlCLENBQUc7SUFBRCx3QkFBQztDQUFBLEFBQWpDLElBQWlDO1NBQXBCLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEV4dGVybmFsIG1vZHVsZXNcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8gQW5ndWxhciBDREtcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbi8vIEFuZ3VsYXIgbWF0ZXJpYWxcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuLy8gQ29uZmlnc1xuaW1wb3J0IHsga2V5Ym9hcmREZWFka2V5cywgTUFUX0tFWUJPQVJEX0RFQURLRVlTIH0gZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJztcbmltcG9ydCB7IGtleWJvYXJkTGF5b3V0cywgTUFUX0tFWUJPQVJEX0xBWU9VVFMgfSBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQtbGF5b3V0cy5jb25maWcnO1xuLy8gQ29tcG9uZW50cyBhbmQgZGlyZWN0aXZlc1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQta2V5L2tleWJvYXJkLWtleS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEtleWJvYXJkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2tleWJvYXJkLmRpcmVjdGl2ZSc7XG4vLyBQcm92aWRlcnNcbmltcG9ydCB7IE1hdEtleWJvYXJkS2ViYWJDYXNlUGlwZSB9IGZyb20gJy4vcGlwZXMva2ViYWItY2FzZS5waXBlJztcbmltcG9ydCB7IE1hdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMva2V5Ym9hcmQuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICAvLyBBbmd1bGFyIG1vZHVsZXNcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgT3ZlcmxheU1vZHVsZSxcblxuICAgIC8vIENkayBtb2R1bGVzXG4gICAgUG9ydGFsTW9kdWxlLFxuXG4gICAgLy8gTWF0ZXJpYWwgbW9kdWxlc1xuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRDb21tb25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWF0S2V5Ym9hcmRDb21wb25lbnQsXG4gICAgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQsXG4gICAgTWF0S2V5Ym9hcmRLZXlDb21wb25lbnQsXG4gICAgTWF0S2V5Ym9hcmREaXJlY3RpdmVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWF0S2V5Ym9hcmRLZWJhYkNhc2VQaXBlLFxuICAgIE1hdEtleWJvYXJkQ29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkRGlyZWN0aXZlXG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW1xuICAgIE1hdEtleWJvYXJkQ29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1hdEtleWJvYXJkS2V5Q29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIE1hdEtleWJvYXJkU2VydmljZSxcbiAgICB7IHByb3ZpZGU6IE1BVF9LRVlCT0FSRF9ERUFES0VZUywgdXNlVmFsdWU6IGtleWJvYXJkRGVhZGtleXMgfSxcbiAgICB7IHByb3ZpZGU6IE1BVF9LRVlCT0FSRF9MQVlPVVRTLCB1c2VWYWx1ZToga2V5Ym9hcmRMYXlvdXRzIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZE1vZHVsZSB7fVxuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate } from "tslib";
import { Pipe } from '@angular/core';

@@ -11,3 +11,3 @@ var MatKeyboardKebabCasePipe = /** @class */ (function () {

};
MatKeyboardKebabCasePipe = tslib_1.__decorate([
MatKeyboardKebabCasePipe = __decorate([
Pipe({

@@ -21,2 +21,2 @@ name: 'matKeyboardKebabCase',

export { MatKeyboardKebabCasePipe };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2ViYWItY2FzZS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbInBpcGVzL2tlYmFiLWNhc2UucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFNcEQ7SUFBQTtJQVFBLENBQUM7SUFOQyw0Q0FBUyxHQUFULFVBQVUsS0FBYTtRQUNyQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDO2FBQzdDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDO2FBQ3BCLFdBQVcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFOVSx3QkFBd0I7UUFKcEMsSUFBSSxDQUFDO1lBQ0osSUFBSSxFQUFFLHNCQUFzQjtZQUM1QixJQUFJLEVBQUUsS0FBSztTQUNaLENBQUM7T0FDVyx3QkFBd0IsQ0FRcEM7SUFBRCwrQkFBQztDQUFBLEFBUkQsSUFRQztTQVJZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnbWF0S2V5Ym9hcmRLZWJhYkNhc2UnLFxyXG4gIHB1cmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMS0kMicpXHJcbiAgICAgIC5yZXBsYWNlKC9cXHMrL2csICctJylcclxuICAgICAgLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2ViYWItY2FzZS5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1vbnNjcmVlbi1tYXRlcmlhbC1rZXlib2FyZC8iLCJzb3VyY2VzIjpbInBpcGVzL2tlYmFiLWNhc2UucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFNcEQ7SUFBQTtJQVFBLENBQUM7SUFOQyw0Q0FBUyxHQUFULFVBQVUsS0FBYTtRQUNyQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDO2FBQzdDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDO2FBQ3BCLFdBQVcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFOVSx3QkFBd0I7UUFKcEMsSUFBSSxDQUFDO1lBQ0osSUFBSSxFQUFFLHNCQUFzQjtZQUM1QixJQUFJLEVBQUUsS0FBSztTQUNaLENBQUM7T0FDVyx3QkFBd0IsQ0FRcEM7SUFBRCwrQkFBQztDQUFBLEFBUkQsSUFRQztTQVJZLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbWF0S2V5Ym9hcmRLZWJhYkNhc2UnLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZEtlYmFiQ2FzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMS0kMicpXG4gICAgICAucmVwbGFjZSgvXFxzKy9nLCAnLScpXG4gICAgICAudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG59XG4iXX0=

@@ -18,2 +18,2 @@ export * from './classes/keyboard-ref.class';

export * from './keyboard.module';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0RBQWtELENBQUM7QUFFakUsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNENBQTRDLENBQUM7QUFRM0QsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsd0JBQXdCLENBQUM7QUFFdkMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1jb250YWluZXIva2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1rZXkva2V5Ym9hcmQta2V5LmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWRlYWRrZXkuY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb25maWdzL2tleWJvYXJkLWljb25zLmNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMva2V5Ym9hcmQuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMva2V5Ym9hcmQtY2xhc3Mta2V5LmVudW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLW1vZGlmaWVyLmVudW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLWFuaW1hdGlvbi1zdGF0ZS5lbnVtJztcclxuZXhwb3J0ICogZnJvbSAnLi9lbnVtcy9rZXlib2FyZC1hbmltYXRpb24tdHJhbnNpdGlvbi5lbnVtJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtaWNvbnMuaW50ZXJmYWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMvbG9jYWxlLW1hcC5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9rZWJhYi1jYXNlLnBpcGUnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMva2V5Ym9hcmQudXRpbHMnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9rZXlib2FyZC5tb2R1bGUnO1xyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFFN0MsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0RBQWtELENBQUM7QUFFakUsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLGlDQUFpQyxDQUFDO0FBRWhELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNENBQTRDLENBQUM7QUFRM0QsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsd0JBQXdCLENBQUM7QUFFdkMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2xhc3Nlcy9rZXlib2FyZC1yZWYuY2xhc3MnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQva2V5Ym9hcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9rZXlib2FyZC1jb250YWluZXIva2V5Ym9hcmQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMva2V5Ym9hcmQta2V5L2tleWJvYXJkLWtleS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1kZWFka2V5LmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZ3Mva2V5Ym9hcmQtaWNvbnMuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9rZXlib2FyZC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLWNsYXNzLWtleS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMva2V5Ym9hcmQtbW9kaWZpZXIuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1zL2tleWJvYXJkLWFuaW1hdGlvbi1zdGF0ZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bXMva2V5Ym9hcmQtYW5pbWF0aW9uLXRyYW5zaXRpb24uZW51bSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9rZXlib2FyZC1kZWFka2V5cy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2tleWJvYXJkLWljb25zLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL2xvY2FsZS1tYXAuaW50ZXJmYWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9waXBlcy9rZWJhYi1jYXNlLnBpcGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2tleWJvYXJkLnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL2tleWJvYXJkLnV0aWxzJztcblxuZXhwb3J0ICogZnJvbSAnLi9rZXlib2FyZC5tb2R1bGUnO1xuIl19

@@ -1,2 +0,2 @@

import * as tslib_1 from "tslib";
import { __decorate, __param } from "tslib";
import { LiveAnnouncer } from '@angular/cdk/a11y';

@@ -209,7 +209,7 @@ import { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';

]; };
MatKeyboardService = tslib_1.__decorate([
MatKeyboardService = __decorate([
Injectable(),
tslib_1.__param(2, Inject(LOCALE_ID)),
tslib_1.__param(3, Inject(MAT_KEYBOARD_LAYOUTS)),
tslib_1.__param(4, Optional()), tslib_1.__param(4, SkipSelf())
__param(2, Inject(LOCALE_ID)),
__param(3, Inject(MAT_KEYBOARD_LAYOUTS)),
__param(4, Optional()), __param(4, SkipSelf())
], MatKeyboardService);

@@ -219,2 +219,2 @@ return MatKeyboardService;

export { MatKeyboardService };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJzZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBZ0IsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDOUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFLMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkY7O0dBRUc7QUFFSDtJQWdDRSw0QkFBb0IsUUFBaUIsRUFDakIsS0FBb0IsRUFDRCxjQUFzQixFQUNYLFFBQTBCLEVBQ2hDLGVBQW1DO1FBSjNELGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUNELG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBbkMvRTs7OztXQUlHO1FBQ0ssNEJBQXVCLEdBQWdELElBQUksQ0FBQztRQUU1RSxzQkFBaUIs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QUM7UUFDekQsSUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNELE9BQU8sSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUF5QyxDQUFDO0lBQ2hILENBQUM7SUFFRDs7T0FFRztJQUNLLDJDQUFjLEdBQXRCO1FBQ0UsSUFBTSxLQUFLLEdBQUcsSUFBSSxhQUFhLENBQUM7WUFDOUIsS0FBSyxFQUFFLE1BQU07U0FDZCxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDbkMsUUFBUSxFQUFFO2FBQ1YsTUFBTSxFQUFFO2FBQ1Isa0JBQWtCLEVBQUU7YUFDcEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDOztnQkF4SzZCLE9BQU87Z0JBQ1YsYUFBYTs2Q0FDM0IsTUFBTSxTQUFDLFNBQVM7Z0RBQ2hCLE1BQU0sU0FBQyxvQkFBb0I7Z0JBQ3FCLGtCQUFrQix1QkFBbEUsUUFBUSxZQUFJLFFBQVE7O0lBcEN0QixrQkFBa0I7UUFEOUIsVUFBVSxFQUFFO1FBbUNFLG1CQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNqQixtQkFBQSxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtRQUM1QixtQkFBQSxRQUFRLEVBQUUsQ0FBQSxFQUFFLG1CQUFBLFFBQVEsRUFBRSxDQUFBO09BcEN4QixrQkFBa0IsQ0F5TTlCO0lBQUQseUJBQUM7Q0FBQSxBQXpNRCxJQXlNQztTQXpNWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXZlQW5ub3VuY2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xyXG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBJbmplY3QsIEluamVjdGFibGUsIExPQ0FMRV9JRCwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBNYXRLZXlib2FyZFJlZiB9IGZyb20gJy4uL2NsYXNzZXMva2V5Ym9hcmQtcmVmLmNsYXNzJztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkLWNvbnRhaW5lci9rZXlib2FyZC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1BVF9LRVlCT0FSRF9MQVlPVVRTIH0gZnJvbSAnLi4vY29uZmlncy9rZXlib2FyZC1sYXlvdXRzLmNvbmZpZyc7XHJcbmltcG9ydCB7IE1hdEtleWJvYXJkQ29uZmlnIH0gZnJvbSAnLi4vY29uZmlncy9rZXlib2FyZC5jb25maWcnO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXRzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElMb2NhbGVNYXAgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2xvY2FsZS1tYXAuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgX2FwcGx5QXZhaWxhYmxlTGF5b3V0cywgX2FwcGx5Q29uZmlnRGVmYXVsdHMgfSBmcm9tICcuLi91dGlscy9rZXlib2FyZC51dGlscyc7XHJcblxyXG4vKipcclxuICogU2VydmljZSB0byBkaXNwYXRjaCBNYXRlcmlhbCBEZXNpZ24ga2V5Ym9hcmQuXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZFNlcnZpY2Uge1xyXG4gIC8qKlxyXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgY3VycmVudCBrZXlib2FyZCBpbiB0aGUgdmlldyAqYXQgdGhpcyBsZXZlbCogKGluIHRoZSBBbmd1bGFyIGluamVjdG9yIHRyZWUpLlxyXG4gICAqIElmIHRoZXJlIGlzIGEgcGFyZW50IGtleWJvYXJkIHNlcnZpY2UsIGFsbCBvcGVyYXRpb25zIHNob3VsZCBkZWxlZ2F0ZSB0byB0aGF0IHBhcmVudFxyXG4gICAqIHZpYSBgX29wZW5lZEtleWJvYXJkUmVmYC5cclxuICAgKi9cclxuICBwcml2YXRlIF9rZXlib2FyZFJlZkF0VGhpc0xldmVsOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBfYXZhaWxhYmxlTG9jYWxlczogSUxvY2FsZU1hcCA9IHt9O1xyXG5cclxuICAvKiogUmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50bHkgb3BlbmVkIGtleWJvYXJkIGF0ICphbnkqIGxldmVsLiAqL1xyXG4gIHByaXZhdGUgZ2V0IF9vcGVuZWRLZXlib2FyZFJlZigpOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gfCBudWxsIHtcclxuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMuX3BhcmVudEtleWJvYXJkO1xyXG4gICAgcmV0dXJuIHBhcmVudCA/IHBhcmVudC5fb3BlbmVkS2V5Ym9hcmRSZWYgOiB0aGlzLl9rZXlib2FyZFJlZkF0VGhpc0xldmVsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXQgX29wZW5lZEtleWJvYXJkUmVmKHZhbHVlOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4pIHtcclxuICAgIGlmICh0aGlzLl9wYXJlbnRLZXlib2FyZCkge1xyXG4gICAgICB0aGlzLl9wYXJlbnRLZXlib2FyZC5fb3BlbmVkS2V5Ym9hcmRSZWYgPSB2YWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2tleWJvYXJkUmVmQXRUaGlzTGV2ZWwgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBhdmFpbGFibGVMb2NhbGVzKCk6IElMb2NhbGVNYXAge1xyXG4gICAgcmV0dXJuIHRoaXMuX2F2YWlsYWJsZUxvY2FsZXM7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNPcGVuZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLl9vcGVuZWRLZXlib2FyZFJlZjtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbGl2ZTogTGl2ZUFubm91bmNlcixcclxuICAgICAgICAgICAgICBASW5qZWN0KExPQ0FMRV9JRCkgcHJpdmF0ZSBfZGVmYXVsdExvY2FsZTogc3RyaW5nLFxyXG4gICAgICAgICAgICAgIEBJbmplY3QoTUFUX0tFWUJPQVJEX0xBWU9VVFMpIHByaXZhdGUgX2xheW91dHM6IElLZXlib2FyZExheW91dHMsXHJcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSBfcGFyZW50S2V5Ym9hcmQ6IE1hdEtleWJvYXJkU2VydmljZSkge1xyXG4gICAgLy8gcHJlcGFyZSBhdmFpbGFibGUgbGF5b3V0cyBtYXBwaW5nXHJcbiAgICB0aGlzLl9hdmFpbGFibGVMb2NhbGVzID0gX2FwcGx5QXZhaWxhYmxlTGF5b3V0cyhfbGF5b3V0cyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGFuZCBkaXNwYXRjaGVzIGEga2V5Ym9hcmQgd2l0aCBhIGN1c3RvbSBjb21wb25lbnQgZm9yIHRoZSBjb250ZW50LCByZW1vdmluZyBhbnlcclxuICAgKiBjdXJyZW50bHkgb3BlbmVkIGtleWJvYXJkcy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBsYXlvdXRPckxvY2FsZSBsYXlvdXQgb3IgbG9jYWxlIHRvIHVzZS5cclxuICAgKiBAcGFyYW0gY29uZmlnIEV4dHJhIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBrZXlib2FyZC5cclxuICAgKi9cclxuICBvcGVuRnJvbUNvbXBvbmVudChsYXlvdXRPckxvY2FsZTogc3RyaW5nLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+IHtcclxuICAgIGNvbnN0IGtleWJvYXJkUmVmOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gPSB0aGlzLl9hdHRhY2hLZXlib2FyZENvbnRlbnQoY29uZmlnKTtcclxuXHJcbiAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5kYXJrVGhlbWUgPSBjb25maWcuZGFya1RoZW1lO1xyXG4gICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UuaXNEZWJ1ZyA9IGNvbmZpZy5pc0RlYnVnO1xyXG5cclxuICAgIC8vIGEgbG9jYWxlIGlzIHByb3ZpZGVkXHJcbiAgICBpZiAodGhpcy5hdmFpbGFibGVMb2NhbGVzW2xheW91dE9yTG9jYWxlXSkge1xyXG4gICAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5sb2NhbGUgPSBsYXlvdXRPckxvY2FsZTtcclxuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubGF5b3V0ID0gdGhpcy5nZXRMYXlvdXRGb3JMb2NhbGUobGF5b3V0T3JMb2NhbGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGEgbGF5b3V0IG5hbWUgaXMgcHJvdmlkZWRcclxuICAgIGlmICh0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXSkge1xyXG4gICAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5sYXlvdXQgPSB0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXTtcclxuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubG9jYWxlID0gdGhpcy5fbGF5b3V0c1tsYXlvdXRPckxvY2FsZV0ubGFuZyAmJiB0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXS5sYW5nLnBvcCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb25maWcuY3VzdG9tSWNvbnMpIHtcclxuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UuaWNvbnMgPSBjb25maWcuY3VzdG9tSWNvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gV2hlbiB0aGUga2V5Ym9hcmQgaXMgZGlzbWlzc2VkLCBsb3dlciB0aGUga2V5Ym9hcmQgY291bnRlci5cclxuICAgIGtleWJvYXJkUmVmXHJcbiAgICAgIC5hZnRlckRpc21pc3NlZCgpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIC8vIENsZWFyIHRoZSBrZXlib2FyZCByZWYgaWYgaXQgaGFzbid0IGFscmVhZHkgYmVlbiByZXBsYWNlZCBieSBhIG5ld2VyIGtleWJvYXJkLlxyXG4gICAgICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZiA9PT0ga2V5Ym9hcmRSZWYpIHtcclxuICAgICAgICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZikge1xyXG4gICAgICAvLyBJZiBhIGtleWJvYXJkIGlzIGFscmVhZHkgaW4gdmlldywgZGlzbWlzcyBpdCBhbmQgZW50ZXIgdGhlXHJcbiAgICAgIC8vIG5ldyBrZXlib2FyZCBhZnRlciBleGl0IGFuaW1hdGlvbiBpcyBjb21wbGV0ZS5cclxuICAgICAgdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWZcclxuICAgICAgICAuYWZ0ZXJEaXNtaXNzZWQoKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAga2V5Ym9hcmRSZWYuY29udGFpbmVySW5zdGFuY2UuZW50ZXIoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gSWYgbm8ga2V5Ym9hcmQgaXMgaW4gdmlldywgZW50ZXIgdGhlIG5ldyBrZXlib2FyZC5cclxuICAgICAga2V5Ym9hcmRSZWYuY29udGFpbmVySW5zdGFuY2UuZW50ZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBJZiBhIGRpc21pc3MgdGltZW91dCBpcyBwcm92aWRlZCwgc2V0IHVwIGRpc21pc3MgYmFzZWQgb24gYWZ0ZXIgdGhlIGtleWJvYXJkIGlzIG9wZW5lZC5cclxuICAgIC8vIGlmIChjb25maWdzLmR1cmF0aW9uID4gMCkge1xyXG4gICAgLy8gICBrZXlib2FyZFJlZi5hZnRlck9wZW5lZCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAvLyAgICAgc2V0VGltZW91dCgoKSA9PiBrZXlib2FyZFJlZi5kaXNtaXNzKCksIGNvbmZpZ3MuZHVyYXRpb24pO1xyXG4gICAgLy8gICB9KTtcclxuICAgIC8vIH1cclxuXHJcbiAgICBpZiAoY29uZmlnLmFubm91bmNlbWVudE1lc3NhZ2UpIHtcclxuICAgICAgdGhpcy5fbGl2ZS5hbm5vdW5jZShjb25maWcuYW5ub3VuY2VtZW50TWVzc2FnZSwgY29uZmlnLnBvbGl0ZW5lc3MpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmID0ga2V5Ym9hcmRSZWY7XHJcbiAgICByZXR1cm4gdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWY7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPcGVucyBhIGtleWJvYXJkIHdpdGggYSBtZXNzYWdlIGFuZCBhbiBvcHRpb25hbCBhY3Rpb24uXHJcbiAgICogQHBhcmFtIGxheW91dE9yTG9jYWxlIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgbG9jYWxlIG9yIHRoZSBsYXlvdXQgbmFtZSB0byBiZSB1c2VkLlxyXG4gICAqIEBwYXJhbSBjb25maWcgQWRkaXRpb25hbCBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBrZXlib2FyZC5cclxuICAgKi9cclxuICBvcGVuKGxheW91dE9yTG9jYWxlOiBzdHJpbmcgPSB0aGlzLl9kZWZhdWx0TG9jYWxlLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnID0ge30pOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4ge1xyXG4gICAgY29uc3QgX2NvbmZpZyA9IF9hcHBseUNvbmZpZ0RlZmF1bHRzKGNvbmZpZyk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMub3BlbkZyb21Db21wb25lbnQobGF5b3V0T3JMb2NhbGUsIF9jb25maWcpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGlzbWlzc2VzIHRoZSBjdXJyZW50bHktdmlzaWJsZSBrZXlib2FyZC5cclxuICAgKi9cclxuICBkaXNtaXNzKCkge1xyXG4gICAgaWYgKHRoaXMuX29wZW5lZEtleWJvYXJkUmVmKSB7XHJcbiAgICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmLmRpc21pc3MoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBhIGdpdmVuIGxvY2FsZSB0byBhIGxheW91dCBuYW1lLlxyXG4gICAqIEBwYXJhbSBsb2NhbGUgVGhlIGxheW91dCBuYW1lXHJcbiAgICovXHJcbiAgbWFwTG9jYWxlKGxvY2FsZTogc3RyaW5nID0gdGhpcy5fZGVmYXVsdExvY2FsZSk6IHN0cmluZyB7XHJcbiAgICBsZXQgbGF5b3V0OiBzdHJpbmc7XHJcbiAgICBjb25zdCBjb3VudHJ5ID0gbG9jYWxlXHJcbiAgICAgIC5zcGxpdCgnLScpXHJcbiAgICAgIC5zaGlmdCgpO1xyXG5cclxuICAgIC8vIHNlYXJjaCBmb3IgbGF5b3V0IG1hdGNoaW5nIHRoZVxyXG4gICAgLy8gZmlyc3QgcGFydCwgdGhlIGNvdW50cnkgY29kZVxyXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTG9jYWxlc1tjb3VudHJ5XSkge1xyXG4gICAgICBsYXlvdXQgPSB0aGlzLmF2YWlsYWJsZUxvY2FsZXNbbG9jYWxlXTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBsb29rIGlmIHRoZSBkZXRhaWxlZCBsb2NhbGUgbWF0Y2hlcyBhbnkgbGF5b3V0XHJcbiAgICBpZiAodGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV0pIHtcclxuICAgICAgbGF5b3V0ID0gdGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV07XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFsYXlvdXQpIHtcclxuICAgICAgdGhyb3cgRXJyb3IoYE5vIGxheW91dCBmb3VuZCBmb3IgbG9jYWxlICR7bG9jYWxlfWApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBsYXlvdXQ7XHJcbiAgfVxyXG5cclxuICBnZXRMYXlvdXRGb3JMb2NhbGUobG9jYWxlOiBzdHJpbmcpOiBJS2V5Ym9hcmRMYXlvdXQge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xheW91dHNbdGhpcy5tYXBMb2NhbGUobG9jYWxlKV07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBdHRhY2hlcyB0aGUga2V5Ym9hcmQgY29udGFpbmVyIGNvbXBvbmVudCB0byB0aGUgb3ZlcmxheS5cclxuICAgKi9cclxuICBwcml2YXRlIF9hdHRhY2hLZXlib2FyZENvbnRhaW5lcihvdmVybGF5UmVmOiBPdmVybGF5UmVmLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQge1xyXG4gICAgY29uc3QgY29udGFpbmVyUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCwgY29uZmlnLnZpZXdDb250YWluZXJSZWYpO1xyXG4gICAgY29uc3QgY29udGFpbmVyUmVmOiBDb21wb25lbnRSZWY8TWF0S2V5Ym9hcmRDb250YWluZXJDb21wb25lbnQ+ID0gb3ZlcmxheVJlZi5hdHRhY2goY29udGFpbmVyUG9ydGFsKTtcclxuXHJcbiAgICAvLyBzZXQgY29uZmlnXHJcbiAgICBjb250YWluZXJSZWYuaW5zdGFuY2Uua2V5Ym9hcmRDb25maWcgPSBjb25maWc7XHJcblxyXG4gICAgcmV0dXJuIGNvbnRhaW5lclJlZi5pbnN0YW5jZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFBsYWNlcyBhIG5ldyBjb21wb25lbnQgYXMgdGhlIGNvbnRlbnQgb2YgdGhlIGtleWJvYXJkIGNvbnRhaW5lci5cclxuICAgKi9cclxuICBwcml2YXRlIF9hdHRhY2hLZXlib2FyZENvbnRlbnQoY29uZmlnOiBNYXRLZXlib2FyZENvbmZpZyk6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PiB7XHJcbiAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy5fY3JlYXRlT3ZlcmxheSgpO1xyXG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5fYXR0YWNoS2V5Ym9hcmRDb250YWluZXIob3ZlcmxheVJlZiwgY29uZmlnKTtcclxuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoTWF0S2V5Ym9hcmRDb21wb25lbnQpO1xyXG4gICAgY29uc3QgY29udGVudFJlZiA9IGNvbnRhaW5lci5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcclxuICAgIHJldHVybiBuZXcgTWF0S2V5Ym9hcmRSZWYoY29udGVudFJlZi5pbnN0YW5jZSwgY29udGFpbmVyLCBvdmVybGF5UmVmKSBhcyBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD47XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGEgbmV3IG92ZXJsYXkgYW5kIHBsYWNlcyBpdCBpbiB0aGUgY29ycmVjdCBsb2NhdGlvbi5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVPdmVybGF5KCk6IE92ZXJsYXlSZWYge1xyXG4gICAgY29uc3Qgc3RhdGUgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XHJcbiAgICAgIHdpZHRoOiAnMTAwJSdcclxuICAgIH0pO1xyXG5cclxuICAgIHN0YXRlLnBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5XHJcbiAgICAgIC5wb3NpdGlvbigpXHJcbiAgICAgIC5nbG9iYWwoKVxyXG4gICAgICAuY2VudGVySG9yaXpvbnRhbGx5KClcclxuICAgICAgLmJvdHRvbSgnMCcpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLl9vdmVybGF5LmNyZWF0ZShzdGF0ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItb25zY3JlZW4tbWF0ZXJpYWwta2V5Ym9hcmQvIiwic291cmNlcyI6WyJzZXJ2aWNlcy9rZXlib2FyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBZ0IsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDOUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFLMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkY7O0dBRUc7QUFFSDtJQWdDRSw0QkFBb0IsUUFBaUIsRUFDakIsS0FBb0IsRUFDRCxjQUFzQixFQUNYLFFBQTBCLEVBQ2hDLGVBQW1DO1FBSjNELGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUNELG1CQUFjLEdBQWQsY0FBYyxDQUFRO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBbkMvRTs7OztXQUlHO1FBQ0ssNEJBQXVCLEdBQWdELElBQUksQ0FBQztRQUU1RSxzQkFBaUIs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QUM7UUFDekQsSUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNELE9BQU8sSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUF5QyxDQUFDO0lBQ2hILENBQUM7SUFFRDs7T0FFRztJQUNLLDJDQUFjLEdBQXRCO1FBQ0UsSUFBTSxLQUFLLEdBQUcsSUFBSSxhQUFhLENBQUM7WUFDOUIsS0FBSyxFQUFFLE1BQU07U0FDZCxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDbkMsUUFBUSxFQUFFO2FBQ1YsTUFBTSxFQUFFO2FBQ1Isa0JBQWtCLEVBQUU7YUFDcEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDOztnQkF4SzZCLE9BQU87Z0JBQ1YsYUFBYTs2Q0FDM0IsTUFBTSxTQUFDLFNBQVM7Z0RBQ2hCLE1BQU0sU0FBQyxvQkFBb0I7Z0JBQ3FCLGtCQUFrQix1QkFBbEUsUUFBUSxZQUFJLFFBQVE7O0lBcEN0QixrQkFBa0I7UUFEOUIsVUFBVSxFQUFFO1FBbUNFLFdBQUEsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2pCLFdBQUEsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7UUFDNUIsV0FBQSxRQUFRLEVBQUUsQ0FBQSxFQUFFLFdBQUEsUUFBUSxFQUFFLENBQUE7T0FwQ3hCLGtCQUFrQixDQXlNOUI7SUFBRCx5QkFBQztDQUFBLEFBek1ELElBeU1DO1NBek1ZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpdmVBbm5vdW5jZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdCwgSW5qZWN0YWJsZSwgTE9DQUxFX0lELCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTWF0S2V5Ym9hcmRSZWYgfSBmcm9tICcuLi9jbGFzc2VzL2tleWJvYXJkLXJlZi5jbGFzcyc7XG5pbXBvcnQgeyBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMva2V5Ym9hcmQtY29udGFpbmVyL2tleWJvYXJkLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNQVRfS0VZQk9BUkRfTEFZT1VUUyB9IGZyb20gJy4uL2NvbmZpZ3Mva2V5Ym9hcmQtbGF5b3V0cy5jb25maWcnO1xuaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUtleWJvYXJkTGF5b3V0cyB9IGZyb20gJy4uL2ludGVyZmFjZXMva2V5Ym9hcmQtbGF5b3V0cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUxvY2FsZU1hcCB9IGZyb20gJy4uL2ludGVyZmFjZXMvbG9jYWxlLW1hcC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgX2FwcGx5QXZhaWxhYmxlTGF5b3V0cywgX2FwcGx5Q29uZmlnRGVmYXVsdHMgfSBmcm9tICcuLi91dGlscy9rZXlib2FyZC51dGlscyc7XG5cbi8qKlxuICogU2VydmljZSB0byBkaXNwYXRjaCBNYXRlcmlhbCBEZXNpZ24ga2V5Ym9hcmQuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXRLZXlib2FyZFNlcnZpY2Uge1xuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50IGtleWJvYXJkIGluIHRoZSB2aWV3ICphdCB0aGlzIGxldmVsKiAoaW4gdGhlIEFuZ3VsYXIgaW5qZWN0b3IgdHJlZSkuXG4gICAqIElmIHRoZXJlIGlzIGEgcGFyZW50IGtleWJvYXJkIHNlcnZpY2UsIGFsbCBvcGVyYXRpb25zIHNob3VsZCBkZWxlZ2F0ZSB0byB0aGF0IHBhcmVudFxuICAgKiB2aWEgYF9vcGVuZWRLZXlib2FyZFJlZmAuXG4gICAqL1xuICBwcml2YXRlIF9rZXlib2FyZFJlZkF0VGhpc0xldmVsOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4gfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIF9hdmFpbGFibGVMb2NhbGVzOiBJTG9jYWxlTWFwID0ge307XG5cbiAgLyoqIFJlZmVyZW5jZSB0byB0aGUgY3VycmVudGx5IG9wZW5lZCBrZXlib2FyZCBhdCAqYW55KiBsZXZlbC4gKi9cbiAgcHJpdmF0ZSBnZXQgX29wZW5lZEtleWJvYXJkUmVmKCk6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PiB8IG51bGwge1xuICAgIGNvbnN0IHBhcmVudCA9IHRoaXMuX3BhcmVudEtleWJvYXJkO1xuICAgIHJldHVybiBwYXJlbnQgPyBwYXJlbnQuX29wZW5lZEtleWJvYXJkUmVmIDogdGhpcy5fa2V5Ym9hcmRSZWZBdFRoaXNMZXZlbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0IF9vcGVuZWRLZXlib2FyZFJlZih2YWx1ZTogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+KSB7XG4gICAgaWYgKHRoaXMuX3BhcmVudEtleWJvYXJkKSB7XG4gICAgICB0aGlzLl9wYXJlbnRLZXlib2FyZC5fb3BlbmVkS2V5Ym9hcmRSZWYgPSB2YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fa2V5Ym9hcmRSZWZBdFRoaXNMZXZlbCA9IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIGdldCBhdmFpbGFibGVMb2NhbGVzKCk6IElMb2NhbGVNYXAge1xuICAgIHJldHVybiB0aGlzLl9hdmFpbGFibGVMb2NhbGVzO1xuICB9XG5cbiAgZ2V0IGlzT3BlbmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuX29wZW5lZEtleWJvYXJkUmVmO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbGl2ZTogTGl2ZUFubm91bmNlcixcbiAgICAgICAgICAgICAgQEluamVjdChMT0NBTEVfSUQpIHByaXZhdGUgX2RlZmF1bHRMb2NhbGU6IHN0cmluZyxcbiAgICAgICAgICAgICAgQEluamVjdChNQVRfS0VZQk9BUkRfTEFZT1VUUykgcHJpdmF0ZSBfbGF5b3V0czogSUtleWJvYXJkTGF5b3V0cyxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSBfcGFyZW50S2V5Ym9hcmQ6IE1hdEtleWJvYXJkU2VydmljZSkge1xuICAgIC8vIHByZXBhcmUgYXZhaWxhYmxlIGxheW91dHMgbWFwcGluZ1xuICAgIHRoaXMuX2F2YWlsYWJsZUxvY2FsZXMgPSBfYXBwbHlBdmFpbGFibGVMYXlvdXRzKF9sYXlvdXRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuZCBkaXNwYXRjaGVzIGEga2V5Ym9hcmQgd2l0aCBhIGN1c3RvbSBjb21wb25lbnQgZm9yIHRoZSBjb250ZW50LCByZW1vdmluZyBhbnlcbiAgICogY3VycmVudGx5IG9wZW5lZCBrZXlib2FyZHMuXG4gICAqXG4gICAqIEBwYXJhbSBsYXlvdXRPckxvY2FsZSBsYXlvdXQgb3IgbG9jYWxlIHRvIHVzZS5cbiAgICogQHBhcmFtIGNvbmZpZyBFeHRyYSBjb25maWd1cmF0aW9uIGZvciB0aGUga2V5Ym9hcmQuXG4gICAqL1xuICBvcGVuRnJvbUNvbXBvbmVudChsYXlvdXRPckxvY2FsZTogc3RyaW5nLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnKTogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+IHtcbiAgICBjb25zdCBrZXlib2FyZFJlZjogTWF0S2V5Ym9hcmRSZWY8TWF0S2V5Ym9hcmRDb21wb25lbnQ+ID0gdGhpcy5fYXR0YWNoS2V5Ym9hcmRDb250ZW50KGNvbmZpZyk7XG5cbiAgICBrZXlib2FyZFJlZi5pbnN0YW5jZS5kYXJrVGhlbWUgPSBjb25maWcuZGFya1RoZW1lO1xuICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmlzRGVidWcgPSBjb25maWcuaXNEZWJ1ZztcblxuICAgIC8vIGEgbG9jYWxlIGlzIHByb3ZpZGVkXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTG9jYWxlc1tsYXlvdXRPckxvY2FsZV0pIHtcbiAgICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmxvY2FsZSA9IGxheW91dE9yTG9jYWxlO1xuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubGF5b3V0ID0gdGhpcy5nZXRMYXlvdXRGb3JMb2NhbGUobGF5b3V0T3JMb2NhbGUpO1xuICAgIH1cblxuICAgIC8vIGEgbGF5b3V0IG5hbWUgaXMgcHJvdmlkZWRcbiAgICBpZiAodGhpcy5fbGF5b3V0c1tsYXlvdXRPckxvY2FsZV0pIHtcbiAgICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmxheW91dCA9IHRoaXMuX2xheW91dHNbbGF5b3V0T3JMb2NhbGVdO1xuICAgICAga2V5Ym9hcmRSZWYuaW5zdGFuY2UubG9jYWxlID0gdGhpcy5fbGF5b3V0c1tsYXlvdXRPckxvY2FsZV0ubGFuZyAmJiB0aGlzLl9sYXlvdXRzW2xheW91dE9yTG9jYWxlXS5sYW5nLnBvcCgpO1xuICAgIH1cblxuICAgIGlmIChjb25maWcuY3VzdG9tSWNvbnMpIHtcbiAgICAgIGtleWJvYXJkUmVmLmluc3RhbmNlLmljb25zID0gY29uZmlnLmN1c3RvbUljb25zO1xuICAgIH1cblxuICAgIC8vIFdoZW4gdGhlIGtleWJvYXJkIGlzIGRpc21pc3NlZCwgbG93ZXIgdGhlIGtleWJvYXJkIGNvdW50ZXIuXG4gICAga2V5Ym9hcmRSZWZcbiAgICAgIC5hZnRlckRpc21pc3NlZCgpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLy8gQ2xlYXIgdGhlIGtleWJvYXJkIHJlZiBpZiBpdCBoYXNuJ3QgYWxyZWFkeSBiZWVuIHJlcGxhY2VkIGJ5IGEgbmV3ZXIga2V5Ym9hcmQuXG4gICAgICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZiA9PT0ga2V5Ym9hcmRSZWYpIHtcbiAgICAgICAgICB0aGlzLl9vcGVuZWRLZXlib2FyZFJlZiA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuX29wZW5lZEtleWJvYXJkUmVmKSB7XG4gICAgICAvLyBJZiBhIGtleWJvYXJkIGlzIGFscmVhZHkgaW4gdmlldywgZGlzbWlzcyBpdCBhbmQgZW50ZXIgdGhlXG4gICAgICAvLyBuZXcga2V5Ym9hcmQgYWZ0ZXIgZXhpdCBhbmltYXRpb24gaXMgY29tcGxldGUuXG4gICAgICB0aGlzLl9vcGVuZWRLZXlib2FyZFJlZlxuICAgICAgICAuYWZ0ZXJEaXNtaXNzZWQoKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBrZXlib2FyZFJlZi5jb250YWluZXJJbnN0YW5jZS5lbnRlcigpO1xuICAgICAgICB9KTtcbiAgICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmLmRpc21pc3MoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSWYgbm8ga2V5Ym9hcmQgaXMgaW4gdmlldywgZW50ZXIgdGhlIG5ldyBrZXlib2FyZC5cbiAgICAgIGtleWJvYXJkUmVmLmNvbnRhaW5lckluc3RhbmNlLmVudGVyKCk7XG4gICAgfVxuXG4gICAgLy8gSWYgYSBkaXNtaXNzIHRpbWVvdXQgaXMgcHJvdmlkZWQsIHNldCB1cCBkaXNtaXNzIGJhc2VkIG9uIGFmdGVyIHRoZSBrZXlib2FyZCBpcyBvcGVuZWQuXG4gICAgLy8gaWYgKGNvbmZpZ3MuZHVyYXRpb24gPiAwKSB7XG4gICAgLy8gICBrZXlib2FyZFJlZi5hZnRlck9wZW5lZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgLy8gICAgIHNldFRpbWVvdXQoKCkgPT4ga2V5Ym9hcmRSZWYuZGlzbWlzcygpLCBjb25maWdzLmR1cmF0aW9uKTtcbiAgICAvLyAgIH0pO1xuICAgIC8vIH1cblxuICAgIGlmIChjb25maWcuYW5ub3VuY2VtZW50TWVzc2FnZSkge1xuICAgICAgdGhpcy5fbGl2ZS5hbm5vdW5jZShjb25maWcuYW5ub3VuY2VtZW50TWVzc2FnZSwgY29uZmlnLnBvbGl0ZW5lc3MpO1xuICAgIH1cblxuICAgIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmID0ga2V5Ym9hcmRSZWY7XG4gICAgcmV0dXJuIHRoaXMuX29wZW5lZEtleWJvYXJkUmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEga2V5Ym9hcmQgd2l0aCBhIG1lc3NhZ2UgYW5kIGFuIG9wdGlvbmFsIGFjdGlvbi5cbiAgICogQHBhcmFtIGxheW91dE9yTG9jYWxlIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgbG9jYWxlIG9yIHRoZSBsYXlvdXQgbmFtZSB0byBiZSB1c2VkLlxuICAgKiBAcGFyYW0gY29uZmlnIEFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUga2V5Ym9hcmQuXG4gICAqL1xuICBvcGVuKGxheW91dE9yTG9jYWxlOiBzdHJpbmcgPSB0aGlzLl9kZWZhdWx0TG9jYWxlLCBjb25maWc6IE1hdEtleWJvYXJkQ29uZmlnID0ge30pOiBNYXRLZXlib2FyZFJlZjxNYXRLZXlib2FyZENvbXBvbmVudD4ge1xuICAgIGNvbnN0IF9jb25maWcgPSBfYXBwbHlDb25maWdEZWZhdWx0cyhjb25maWcpO1xuXG4gICAgcmV0dXJuIHRoaXMub3BlbkZyb21Db21wb25lbnQobGF5b3V0T3JMb2NhbGUsIF9jb25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc21pc3NlcyB0aGUgY3VycmVudGx5LXZpc2libGUga2V5Ym9hcmQuXG4gICAqL1xuICBkaXNtaXNzKCkge1xuICAgIGlmICh0aGlzLl9vcGVuZWRLZXlib2FyZFJlZikge1xuICAgICAgdGhpcy5fb3BlbmVkS2V5Ym9hcmRSZWYuZGlzbWlzcygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNYXAgYSBnaXZlbiBsb2NhbGUgdG8gYSBsYXlvdXQgbmFtZS5cbiAgICogQHBhcmFtIGxvY2FsZSBUaGUgbGF5b3V0IG5hbWVcbiAgICovXG4gIG1hcExvY2FsZShsb2NhbGU6IHN0cmluZyA9IHRoaXMuX2RlZmF1bHRMb2NhbGUpOiBzdHJpbmcge1xuICAgIGxldCBsYXlvdXQ6IHN0cmluZztcbiAgICBjb25zdCBjb3VudHJ5ID0gbG9jYWxlXG4gICAgICAuc3BsaXQoJy0nKVxuICAgICAgLnNoaWZ0KCk7XG5cbiAgICAvLyBzZWFyY2ggZm9yIGxheW91dCBtYXRjaGluZyB0aGVcbiAgICAvLyBmaXJzdCBwYXJ0LCB0aGUgY291bnRyeSBjb2RlXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTG9jYWxlc1tjb3VudHJ5XSkge1xuICAgICAgbGF5b3V0ID0gdGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV07XG4gICAgfVxuXG4gICAgLy8gbG9vayBpZiB0aGUgZGV0YWlsZWQgbG9jYWxlIG1hdGNoZXMgYW55IGxheW91dFxuICAgIGlmICh0aGlzLmF2YWlsYWJsZUxvY2FsZXNbbG9jYWxlXSkge1xuICAgICAgbGF5b3V0ID0gdGhpcy5hdmFpbGFibGVMb2NhbGVzW2xvY2FsZV07XG4gICAgfVxuXG4gICAgaWYgKCFsYXlvdXQpIHtcbiAgICAgIHRocm93IEVycm9yKGBObyBsYXlvdXQgZm91bmQgZm9yIGxvY2FsZSAke2xvY2FsZX1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGF5b3V0O1xuICB9XG5cbiAgZ2V0TGF5b3V0Rm9yTG9jYWxlKGxvY2FsZTogc3RyaW5nKTogSUtleWJvYXJkTGF5b3V0IHtcbiAgICByZXR1cm4gdGhpcy5fbGF5b3V0c1t0aGlzLm1hcExvY2FsZShsb2NhbGUpXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2hlcyB0aGUga2V5Ym9hcmQgY29udGFpbmVyIGNvbXBvbmVudCB0byB0aGUgb3ZlcmxheS5cbiAgICovXG4gIHByaXZhdGUgX2F0dGFjaEtleWJvYXJkQ29udGFpbmVyKG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsIGNvbmZpZzogTWF0S2V5Ym9hcmRDb25maWcpOiBNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCB7XG4gICAgY29uc3QgY29udGFpbmVyUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChNYXRLZXlib2FyZENvbnRhaW5lckNvbXBvbmVudCwgY29uZmlnLnZpZXdDb250YWluZXJSZWYpO1xuICAgIGNvbnN0IGNvbnRhaW5lclJlZjogQ29tcG9uZW50UmVmPE1hdEtleWJvYXJkQ29udGFpbmVyQ29tcG9uZW50PiA9IG92ZXJsYXlSZWYuYXR0YWNoKGNvbnRhaW5lclBvcnRhbCk7XG5cbiAgICAvLyBzZXQgY29uZmlnXG4gICAgY29udGFpbmVyUmVmLmluc3RhbmNlLmtleWJvYXJkQ29uZmlnID0gY29uZmlnO1xuXG4gICAgcmV0dXJuIGNvbnRhaW5lclJlZi5pbnN0YW5jZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQbGFjZXMgYSBuZXcgY29tcG9uZW50IGFzIHRoZSBjb250ZW50IG9mIHRoZSBrZXlib2FyZCBjb250YWluZXIuXG4gICAqL1xuICBwcml2YXRlIF9hdHRhY2hLZXlib2FyZENvbnRlbnQoY29uZmlnOiBNYXRLZXlib2FyZENvbmZpZyk6IE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PiB7XG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuX2NyZWF0ZU92ZXJsYXkoKTtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9hdHRhY2hLZXlib2FyZENvbnRhaW5lcihvdmVybGF5UmVmLCBjb25maWcpO1xuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoTWF0S2V5Ym9hcmRDb21wb25lbnQpO1xuICAgIGNvbnN0IGNvbnRlbnRSZWYgPSBjb250YWluZXIuYXR0YWNoQ29tcG9uZW50UG9ydGFsKHBvcnRhbCk7XG4gICAgcmV0dXJuIG5ldyBNYXRLZXlib2FyZFJlZihjb250ZW50UmVmLmluc3RhbmNlLCBjb250YWluZXIsIG92ZXJsYXlSZWYpIGFzIE1hdEtleWJvYXJkUmVmPE1hdEtleWJvYXJkQ29tcG9uZW50PjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG92ZXJsYXkgYW5kIHBsYWNlcyBpdCBpbiB0aGUgY29ycmVjdCBsb2NhdGlvbi5cbiAgICovXG4gIHByaXZhdGUgX2NyZWF0ZU92ZXJsYXkoKTogT3ZlcmxheVJlZiB7XG4gICAgY29uc3Qgc3RhdGUgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICB3aWR0aDogJzEwMCUnXG4gICAgfSk7XG5cbiAgICBzdGF0ZS5wb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheVxuICAgICAgLnBvc2l0aW9uKClcbiAgICAgIC5nbG9iYWwoKVxuICAgICAgLmNlbnRlckhvcml6b250YWxseSgpXG4gICAgICAuYm90dG9tKCcwJyk7XG5cbiAgICByZXR1cm4gdGhpcy5fb3ZlcmxheS5jcmVhdGUoc3RhdGUpO1xuICB9XG59XG4iXX0=

@@ -26,2 +26,2 @@ import { MatKeyboardConfig } from '../configs/keyboard.config';

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQudXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsidXRpbHMva2V5Ym9hcmQudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJL0Q7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUF5QjtJQUM1RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsT0FBeUI7SUFDOUQsSUFBTSxpQkFBaUIsR0FBZSxFQUFFLENBQUM7SUFFekMsTUFBTTtTQUNILElBQUksQ0FBQyxPQUFPLENBQUM7U0FDYixNQUFNLENBQUMsVUFBQyxNQUFjLElBQUssT0FBQSxNQUFNLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUF6QixDQUF5QixDQUFDO1NBQ3JELE9BQU8sQ0FBQyxVQUFDLE1BQWM7UUFDdEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFZO1lBQ3hDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUwsT0FBTyxpQkFBaUIsQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XHJcbmltcG9ydCB7IElLZXlib2FyZExheW91dHMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2tleWJvYXJkLWxheW91dHMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSUxvY2FsZU1hcCB9IGZyb20gJy4uL2ludGVyZmFjZXMvbG9jYWxlLW1hcC5pbnRlcmZhY2UnO1xyXG5cclxuLyoqXHJcbiAqIEFwcGxpZXMgZGVmYXVsdCBvcHRpb25zIHRvIHRoZSBrZXlib2FyZCBjb25maWdzLlxyXG4gKiBAcGFyYW0gY29uZmlnIFRoZSBjb25maWd1cmF0aW9uIHRvIHdoaWNoIHRoZSBkZWZhdWx0cyB3aWxsIGJlIGFwcGxpZWQuXHJcbiAqIEByZXR1cm5zIFRoZSBuZXcgY29uZmlndXJhdGlvbiBvYmplY3Qgd2l0aCBkZWZhdWx0cyBhcHBsaWVkLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIF9hcHBseUNvbmZpZ0RlZmF1bHRzKGNvbmZpZzogTWF0S2V5Ym9hcmRDb25maWcpOiBNYXRLZXlib2FyZENvbmZpZyB7XHJcbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IE1hdEtleWJvYXJkQ29uZmlnKCksIGNvbmZpZyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBcHBsaWVzIGF2YWlsYWJsZSBsYXlvdXRzLlxyXG4gKiBAcGFyYW0gbGF5b3V0c1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIF9hcHBseUF2YWlsYWJsZUxheW91dHMobGF5b3V0czogSUtleWJvYXJkTGF5b3V0cyk6IElMb2NhbGVNYXAge1xyXG4gIGNvbnN0IF9hdmFpbGFibGVMb2NhbGVzOiBJTG9jYWxlTWFwID0ge307XHJcblxyXG4gIE9iamVjdFxyXG4gICAgLmtleXMobGF5b3V0cylcclxuICAgIC5maWx0ZXIoKGxheW91dDogc3RyaW5nKSA9PiAnbGFuZycgaW4gbGF5b3V0c1tsYXlvdXRdKVxyXG4gICAgLmZvckVhY2goKGxheW91dDogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGxheW91dHNbbGF5b3V0XS5sYW5nLmZvckVhY2goKGxhbmc6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIF9hdmFpbGFibGVMb2NhbGVzW2xhbmddID0gbGF5b3V0O1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG5cclxuICByZXR1cm4gX2F2YWlsYWJsZUxvY2FsZXM7XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Ym9hcmQudXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLW9uc2NyZWVuLW1hdGVyaWFsLWtleWJvYXJkLyIsInNvdXJjZXMiOlsidXRpbHMva2V5Ym9hcmQudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJL0Q7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxNQUF5QjtJQUM1RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsT0FBeUI7SUFDOUQsSUFBTSxpQkFBaUIsR0FBZSxFQUFFLENBQUM7SUFFekMsTUFBTTtTQUNILElBQUksQ0FBQyxPQUFPLENBQUM7U0FDYixNQUFNLENBQUMsVUFBQyxNQUFjLElBQUssT0FBQSxNQUFNLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUF6QixDQUF5QixDQUFDO1NBQ3JELE9BQU8sQ0FBQyxVQUFDLE1BQWM7UUFDdEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFZO1lBQ3hDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUwsT0FBTyxpQkFBaUIsQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0S2V5Ym9hcmRDb25maWcgfSBmcm9tICcuLi9jb25maWdzL2tleWJvYXJkLmNvbmZpZyc7XG5pbXBvcnQgeyBJS2V5Ym9hcmRMYXlvdXRzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9rZXlib2FyZC1sYXlvdXRzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJTG9jYWxlTWFwIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9sb2NhbGUtbWFwLmludGVyZmFjZSc7XG5cbi8qKlxuICogQXBwbGllcyBkZWZhdWx0IG9wdGlvbnMgdG8gdGhlIGtleWJvYXJkIGNvbmZpZ3MuXG4gKiBAcGFyYW0gY29uZmlnIFRoZSBjb25maWd1cmF0aW9uIHRvIHdoaWNoIHRoZSBkZWZhdWx0cyB3aWxsIGJlIGFwcGxpZWQuXG4gKiBAcmV0dXJucyBUaGUgbmV3IGNvbmZpZ3VyYXRpb24gb2JqZWN0IHdpdGggZGVmYXVsdHMgYXBwbGllZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIF9hcHBseUNvbmZpZ0RlZmF1bHRzKGNvbmZpZzogTWF0S2V5Ym9hcmRDb25maWcpOiBNYXRLZXlib2FyZENvbmZpZyB7XG4gIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBNYXRLZXlib2FyZENvbmZpZygpLCBjb25maWcpO1xufVxuXG4vKipcbiAqIEFwcGxpZXMgYXZhaWxhYmxlIGxheW91dHMuXG4gKiBAcGFyYW0gbGF5b3V0c1xuICovXG5leHBvcnQgZnVuY3Rpb24gX2FwcGx5QXZhaWxhYmxlTGF5b3V0cyhsYXlvdXRzOiBJS2V5Ym9hcmRMYXlvdXRzKTogSUxvY2FsZU1hcCB7XG4gIGNvbnN0IF9hdmFpbGFibGVMb2NhbGVzOiBJTG9jYWxlTWFwID0ge307XG5cbiAgT2JqZWN0XG4gICAgLmtleXMobGF5b3V0cylcbiAgICAuZmlsdGVyKChsYXlvdXQ6IHN0cmluZykgPT4gJ2xhbmcnIGluIGxheW91dHNbbGF5b3V0XSlcbiAgICAuZm9yRWFjaCgobGF5b3V0OiBzdHJpbmcpID0+IHtcbiAgICAgIGxheW91dHNbbGF5b3V0XS5sYW5nLmZvckVhY2goKGxhbmc6IHN0cmluZykgPT4ge1xuICAgICAgICBfYXZhaWxhYmxlTG9jYWxlc1tsYW5nXSA9IGxheW91dDtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gIHJldHVybiBfYXZhaWxhYmxlTG9jYWxlcztcbn1cbiJdfQ==

@@ -0,0 +0,0 @@ export interface IKeyboardDeadkeys {

@@ -0,0 +0,0 @@ interface IKeyboardIcons {

@@ -0,0 +0,0 @@ import { KeyboardClassKey } from '../enums/keyboard-class-key.enum';

@@ -0,0 +0,0 @@ import { IKeyboardLayout } from './keyboard-layout.interface';

export interface ILocaleMap {
[locale: string]: string;
}
export declare class MatKeyboardModule {
}
{
"$schema": "../../node_modules/ng-packagr/package.schema.json",
"name": "angular-onscreen-material-keyboard",
"version": "0.3.1",
"version": "0.4.0",
"description": "This package is forked from ngx-material-keyboard with bug fixes and additional features",

@@ -20,9 +20,10 @@ "repository": {

"peerDependencies": {
"@angular/animations": "^8.0.0",
"@angular/cdk": "^8.0.0",
"@angular/common": "^8.0.0",
"@angular/core": "^8.0.0",
"@angular/forms": "^8.0.0",
"@angular/material": "^8.0.0",
"rxjs": "6.5.2"
"@angular/animations": "^8.0.0 || ^9.0.0",
"@angular/cdk": "^8.0.0 || ^9.0.0",
"@angular/common": "^8.0.0 || ^9.0.0",
"@angular/core": "^8.0.0 || ^9.0.0",
"@angular/forms": "^8.0.0 || ^9.0.0",
"@angular/material": "^8.0.0 || ^9.0.0",
"rxjs": "^6.5.2",
"tslib": "^1.10.0"
},

@@ -47,6 +48,3 @@ "keywords": [

"metadata": "angular-onscreen-material-keyboard.metadata.json",
"sideEffects": false,
"dependencies": {
"tslib": "^1.9.0"
}
"sideEffects": false
}

@@ -0,0 +0,0 @@ import { PipeTransform } from '@angular/core';

@@ -0,0 +0,0 @@ export * from './classes/keyboard-ref.class';

@@ -0,0 +0,0 @@ # angular-onscreen-material-keyboard

@@ -26,5 +26,6 @@ import { LiveAnnouncer } from '@angular/cdk/a11y';

/** Reference to the currently opened keyboard at *any* level. */
private _openedKeyboardRef;
readonly availableLocales: ILocaleMap;
readonly isOpened: boolean;
private get _openedKeyboardRef();
private set _openedKeyboardRef(value);
get availableLocales(): ILocaleMap;
get isOpened(): boolean;
constructor(_overlay: Overlay, _live: LiveAnnouncer, _defaultLocale: string, _layouts: IKeyboardLayouts, _parentKeyboard: MatKeyboardService);

@@ -31,0 +32,0 @@ /**

@@ -0,0 +0,0 @@ import { MatKeyboardConfig } from '../configs/keyboard.config';

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc