Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

angular8-yandex-maps

Package Overview
Dependencies
Maintainers
1
Versions
95
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular8-yandex-maps - npm Package Compare versions

Comparing version 12.1.0 to 12.1.1

esm2015/lib/typings/ya-event.js

2

angular8-yandex-maps.metadata.json

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

{"__symbolic":"module","version":4,"metadata":{"AngularYandexMapsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"YaClustererComponent"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoObjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaDirective"},{"__symbolic":"reference","name":"YaPlacemarkDirective"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":23,"character":12}],"exports":[{"__symbolic":"reference","name":"YaClustererComponent"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoObjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaDirective"},{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"AngularYandexMapsModule"},"providers":[{"provide":{"__symbolic":"reference","name":"YA_CONFIG"},"useValue":{"__symbolic":"reference","name":"config"}}]}}}},"YA_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":5,"character":29},"arguments":["YA_CONFIG"]},"YaConfig":{"__symbolic":"interface"},"YaApiLoaderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":53,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":64,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":17},"arguments":[{"__symbolic":"reference","name":"YA_CONFIG"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":65,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":65,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"error","message":"Could not resolve type","line":65,"character":50,"context":{"typeName":"Document"},"module":"./lib/services/ya-api-loader/ya-api-loader.service"}]}],"load":[{"__symbolic":"method"}],"_getScriptSource":[{"__symbolic":"method"}],"_convertConfigIntoQueryParams":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"YaGeocoderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":20,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":25,"character":30},{"__symbolic":"reference","name":"YaApiLoaderService"}]}],"geocode":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"YaClustererComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":42,"character":1},"arguments":[{"selector":"ya-clusterer","template":"<ng-content></ng-content>","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":45,"character":19},"member":"OnPush"}}]}],"members":{"_placemarks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":48,"character":3},"arguments":[{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"_geoObjects":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":51,"character":3},"arguments":[{"__symbolic":"reference","name":"YaGeoObjectDirective"}]}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":69,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":76,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":88,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":94,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":100,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":103,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createClusterer":[{"__symbolic":"method"}],"_watchForContentChanges":[{"__symbolic":"method"}],"_getDifference":[{"__symbolic":"method"}],"_getInternalPlacemarks":[{"__symbolic":"method"}],"_getInternalGeoObjects":[{"__symbolic":"method"}]}},"YaControlType":{"__symbolic":"interface"},"YaControlDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":44,"character":1},"arguments":[{"selector":"ya-control"}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3}}]}],"parameters":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":67,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaGeoObjectDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":29,"character":1},"arguments":[{"selector":"ya-geoobject"}]}],"members":{"feature":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":61,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":73,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":79,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":85,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":91,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":97,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":103,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":109,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":115,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":121,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":127,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":133,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":139,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":145,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":151,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":157,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":163,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":169,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":175,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":181,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":187,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":193,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":199,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":205,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":211,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":217,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":223,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":226,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setFeature":[{"__symbolic":"method"}],"_createGeoObject":[{"__symbolic":"method"}]}},"YaMapComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":35,"character":1},"arguments":[{"selector":"ya-map","template":"<div #container></div>","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":38,"character":19},"member":"OnPush"}}]}],"members":{"container":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":41,"character":3},"arguments":["container"]}]}],"center":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":56,"character":3}}]}],"zoom":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":63,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":69,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"actionbegin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":87,"character":3}}]}],"actionbreak":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":93,"character":3}}]}],"actionend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":99,"character":3}}]}],"actiontick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":105,"character":3}}]}],"actiontickcomplete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":111,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":117,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":123,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":129,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":135,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":140,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":146,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":152,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":157,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":163,"character":3}}]}],"marginchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":169,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":175,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":181,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":187,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":193,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":199,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":205,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":211,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":217,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":223,"character":3}}]}],"sizechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":229,"character":3}}]}],"typechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":235,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":241,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":246,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":246,"character":12}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":244,"character":30},{"__symbolic":"reference","name":"YaApiLoaderService"},{"__symbolic":"reference","name":"Object"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setState":[{"__symbolic":"method"}],"_createMap":[{"__symbolic":"method"}],"_combineState":[{"__symbolic":"method"}]}},"YaMultirouteDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":33,"character":1},"arguments":[{"selector":"ya-multiroute"}]}],"members":{"referencePoints":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":48,"character":3}}]}],"model":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":54,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":62,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"activeroutechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":74,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":86,"character":3}}]}],"boundsautoapply":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":92,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":98,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":104,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":116,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":122,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":128,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":134,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":140,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":146,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":152,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":158,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":164,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":170,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":176,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":182,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":188,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":194,"character":3}}]}],"pixelboundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":200,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":206,"character":3}}]}],"update":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":212,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":218,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":221,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setModel":[{"__symbolic":"method"}],"_createMultiroute":[{"__symbolic":"method"}],"_combineModel":[{"__symbolic":"method"}]}},"YaPanoramaDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":26,"character":1},"arguments":[{"selector":"ya-panorama"}]}],"members":{"point":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":3}}]}],"layer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":64,"character":3}}]}],"directionchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":3}}]}],"yaerror":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":76,"character":3}}]}],"fullscreenenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"fullscreenexit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":88,"character":3}}]}],"markercollapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":94,"character":3}}]}],"markerexpand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":100,"character":3}}]}],"markermouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":106,"character":3}}]}],"markermouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":112,"character":3}}]}],"panoramachange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":118,"character":3}}]}],"spanchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":124,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":127,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setOptions":[{"__symbolic":"method"}],"_createPanorama":[{"__symbolic":"method"}]}},"YaPlacemarkDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":27,"character":1},"arguments":[{"selector":"ya-placemark"}]}],"members":{"geometry":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":3}}]}],"properties":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":53,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":58,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":83,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":89,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":101,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":107,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":113,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":119,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":125,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":131,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":137,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":143,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":149,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":155,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":161,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":167,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":173,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":179,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":185,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":191,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":197,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":203,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":209,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":215,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":221,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":227,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":230,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createPlacemark":[{"__symbolic":"method"}]}}},"origins":{"AngularYandexMapsModule":"./lib/angular-yandex-maps.module","YA_CONFIG":"./lib/services/ya-api-loader/ya-api-loader.service","YaConfig":"./lib/services/ya-api-loader/ya-api-loader.service","YaApiLoaderService":"./lib/services/ya-api-loader/ya-api-loader.service","YaGeocoderService":"./lib/services/ya-geocoder/ya-geocoder.service","YaClustererComponent":"./lib/components/ya-clusterer/ya-clusterer.component","YaControlType":"./lib/components/ya-control/ya-control.directive","YaControlDirective":"./lib/components/ya-control/ya-control.directive","YaGeoObjectDirective":"./lib/components/ya-geoobject/ya-geoobject.directive","YaMapComponent":"./lib/components/ya-map/ya-map.component","YaMultirouteDirective":"./lib/components/ya-multiroute/ya-multiroute.directive","YaPanoramaDirective":"./lib/components/ya-panorama/ya-panorama.directive","YaPlacemarkDirective":"./lib/components/ya-placemark/ya-placemark.directive"},"importAs":"angular8-yandex-maps"}
{"__symbolic":"module","version":4,"metadata":{"AngularYandexMapsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"YaClustererComponent"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoObjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaDirective"},{"__symbolic":"reference","name":"YaPlacemarkDirective"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":23,"character":12}],"exports":[{"__symbolic":"reference","name":"YaClustererComponent"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoObjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaDirective"},{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["config"],"value":{"ngModule":{"__symbolic":"reference","name":"AngularYandexMapsModule"},"providers":[{"provide":{"__symbolic":"reference","name":"YA_CONFIG"},"useValue":{"__symbolic":"reference","name":"config"}}]}}}},"YA_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":5,"character":29},"arguments":["YA_CONFIG"]},"YaConfig":{"__symbolic":"interface"},"YaApiLoaderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":53,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":64,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":64,"character":17},"arguments":[{"__symbolic":"reference","name":"YA_CONFIG"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":65,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":65,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"any"},{"__symbolic":"error","message":"Could not resolve type","line":65,"character":50,"context":{"typeName":"Document"},"module":"./lib/services/ya-api-loader/ya-api-loader.service"}]}],"load":[{"__symbolic":"method"}],"_getScriptSource":[{"__symbolic":"method"}],"_convertConfigIntoQueryParams":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"YaGeocoderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":18,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":23,"character":30},{"__symbolic":"reference","name":"YaApiLoaderService"}]}],"geocode":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"YaEvent":{"__symbolic":"interface"},"YaReadyEvent":{"__symbolic":"interface"},"YaClustererComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":44,"character":1},"arguments":[{"selector":"ya-clusterer","template":"<ng-content></ng-content>","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":47,"character":19},"member":"OnPush"}}]}],"members":{"_placemarks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":50,"character":3},"arguments":[{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"_geoObjects":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":53,"character":3},"arguments":[{"__symbolic":"reference","name":"YaGeoObjectDirective"}]}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":66,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":78,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":84,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":90,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":96,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":102,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":105,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createClusterer":[{"__symbolic":"method"}],"_watchForContentChanges":[{"__symbolic":"method"}],"_getDifference":[{"__symbolic":"method"}],"_getInternalPlacemarks":[{"__symbolic":"method"}],"_getInternalGeoObjects":[{"__symbolic":"method"}]}},"YaControlType":{"__symbolic":"interface"},"YaControlDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":44,"character":1},"arguments":[{"selector":"ya-control"}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3}}]}],"parameters":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":67,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaGeoObjectDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":31,"character":1},"arguments":[{"selector":"ya-geoobject"}]}],"members":{"feature":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":56,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":63,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":69,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":75,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":87,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":93,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":99,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":105,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":111,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":117,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":123,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":129,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":135,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":141,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":147,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":153,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":159,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":165,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":177,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":183,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":189,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":195,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":201,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":207,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":213,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":219,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":225,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":228,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setFeature":[{"__symbolic":"method"}],"_createGeoObject":[{"__symbolic":"method"}]}},"YaMapComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":37,"character":1},"arguments":[{"selector":"ya-map","template":"<div #container></div>","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":40,"character":19},"member":"OnPush"}}]}],"members":{"container":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":43,"character":3},"arguments":["container"]}]}],"center":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"zoom":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":71,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":77,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"actionbegin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":89,"character":3}}]}],"actionbreak":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"actionend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":101,"character":3}}]}],"actiontick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":107,"character":3}}]}],"actiontickcomplete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":113,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":119,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":125,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":131,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":137,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":142,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":148,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":154,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":159,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":165,"character":3}}]}],"marginchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":177,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":183,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":189,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":195,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":201,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":207,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":213,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":219,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":225,"character":3}}]}],"sizechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":231,"character":3}}]}],"typechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":237,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":243,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":248,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":248,"character":12}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":246,"character":30},{"__symbolic":"reference","name":"YaApiLoaderService"},{"__symbolic":"reference","name":"Object"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setState":[{"__symbolic":"method"}],"_createMap":[{"__symbolic":"method"}],"_combineState":[{"__symbolic":"method"}]}},"YaMultirouteDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":37,"character":1},"arguments":[{"selector":"ya-multiroute"}]}],"members":{"referencePoints":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3}}]}],"model":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":66,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":3}}]}],"activeroutechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":78,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":84,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":90,"character":3}}]}],"boundsautoapply":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":96,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":102,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":108,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":114,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":120,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":126,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":132,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":138,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":144,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":150,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":156,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":162,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":168,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":174,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":180,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":186,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":192,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":198,"character":3}}]}],"pixelboundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":204,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":210,"character":3}}]}],"update":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":216,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":222,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":225,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setModel":[{"__symbolic":"method"}],"_createMultiroute":[{"__symbolic":"method"}],"_combineModel":[{"__symbolic":"method"}]}},"YaPanoramaDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":30,"character":1},"arguments":[{"selector":"ya-panorama"}]}],"members":{"point":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":44,"character":3}}]}],"layer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":56,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":61,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":68,"character":3}}]}],"directionchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":74,"character":3}}]}],"yaerror":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"fullscreenenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":86,"character":3}}]}],"fullscreenexit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":92,"character":3}}]}],"markercollapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":98,"character":3}}]}],"markerexpand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":104,"character":3}}]}],"markermouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3}}]}],"markermouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":116,"character":3}}]}],"panoramachange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":122,"character":3}}]}],"spanchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":128,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":131,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_setOptions":[{"__symbolic":"method"}],"_createPanorama":[{"__symbolic":"method"}]}},"YaPlacemarkDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":29,"character":1},"arguments":[{"selector":"ya-placemark"}]}],"members":{"geometry":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3}}]}],"properties":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":60,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":73,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":79,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":85,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":91,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":97,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":103,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":109,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":115,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":121,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":127,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":133,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":139,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":145,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":151,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":157,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":163,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":169,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":175,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":181,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":187,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":193,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":199,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":205,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":211,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":217,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":223,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":229,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":232,"character":40},{"__symbolic":"reference","name":"YaMapComponent"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"_createPlacemark":[{"__symbolic":"method"}]}}},"origins":{"AngularYandexMapsModule":"./lib/angular-yandex-maps.module","YA_CONFIG":"./lib/services/ya-api-loader/ya-api-loader.service","YaConfig":"./lib/services/ya-api-loader/ya-api-loader.service","YaApiLoaderService":"./lib/services/ya-api-loader/ya-api-loader.service","YaGeocoderService":"./lib/services/ya-geocoder/ya-geocoder.service","YaEvent":"./lib/typings/ya-event","YaReadyEvent":"./lib/typings/ya-ready-event","YaClustererComponent":"./lib/components/ya-clusterer/ya-clusterer.component","YaControlType":"./lib/components/ya-control/ya-control.directive","YaControlDirective":"./lib/components/ya-control/ya-control.directive","YaGeoObjectDirective":"./lib/components/ya-geoobject/ya-geoobject.directive","YaMapComponent":"./lib/components/ya-map/ya-map.component","YaMultirouteDirective":"./lib/components/ya-multiroute/ya-multiroute.directive","YaPanoramaDirective":"./lib/components/ya-panorama/ya-panorama.directive","YaPlacemarkDirective":"./lib/components/ya-placemark/ya-placemark.directive"},"importAs":"angular8-yandex-maps"}

@@ -12,3 +12,3 @@ import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Input, NgZone, Output, } from '@angular/core';

*
* <example-url>https://placemark-clusterer.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/placemark-clusterer?embed=1</example-url>
*

@@ -193,2 +193,2 @@ * @example

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY2x1c3RlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBR04sTUFBTSxHQUdQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQXlCLE1BQU0sMkJBQTJCLENBQUM7QUFFaEY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCRztBQU1ILE1BQU0sT0FBTyxvQkFBb0I7SUF3RC9CLFlBQTZCLE9BQWUsRUFBbUIsZUFBK0I7UUFBakUsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFtQixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFqRDdFLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBVWhFOztXQUVHO1FBQ08sVUFBSyxHQUFnRCxJQUFJLFlBQVksRUFFNUUsQ0FBQztRQUVKOztXQUVHO1FBQ08sY0FBUyxHQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVqRDs7V0FFRztRQUNPLGFB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QUFDOzs7WUE1TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2dCQUN4QixRQUFRLEVBQUUsMkJBQTJCO2dCQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTthQUNoRDs7O1lBdkNDLE1BQU07WUFTQyxjQUFjOzs7MEJBZ0NwQixlQUFlLFNBQUMsb0JBQW9COzBCQUdwQyxlQUFlLFNBQUMsb0JBQW9CO3NCQWFwQyxLQUFLO29CQUtMLE1BQU07d0JBT04sTUFBTTt1QkFNTixNQUFNO3dCQU1OLE1BQU07NEJBTU4sTUFBTTsyQkFNTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlckNvbnRlbnRJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE91dHB1dCxcclxuICBRdWVyeUxpc3QsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFlhR2VvT2JqZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi4veWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBZYU1hcENvbXBvbmVudCB9IGZyb20gJy4uL3lhLW1hcC95YS1tYXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWWFQbGFjZW1hcmtEaXJlY3RpdmUgfSBmcm9tICcuLi95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvZXZlbnQtbWFuYWdlcic7XHJcblxyXG4vKipcclxuICogVGhlIGB5YS1jbHVzdGVyZXJgIGNvbXBvbmVudCB3cmFwcyBgeW1hcHMuQ2x1c3RlcmVyYCBjbGFzcyBmcm9tIHRoZSBZYW5kZXggTWFwcyBBUEkuXHJcbiAqIFlvdSBjYW4gY29uZmlndXJlIGl0IHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBFdmVudHMgY2FuIGJlIGJvdW5kIHVzaW5nIHRoZSBvdXRwdXRzIG9mIHRoZSBjb21wb25lbnQuXHJcbiAqXHJcbiAqIDxleGFtcGxlLXVybD5odHRwczovL3BsYWNlbWFyay1jbHVzdGVyZXIuc3RhY2tibGl0ei5pby88L2V4YW1wbGUtdXJsPlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiA8eWEtbWFwIFtjZW50ZXJdPVwiWzU1Ljc2MTk1MiwgMzcuNjIwNzM5XVwiPlxyXG4gKiAgICAgICAgICAgICAgPHlhLWNsdXN0ZXJlciBbb3B0aW9uc109XCJ7IG1pbkNsdXN0ZXJTaXplOiA1IH1cIj5cclxuICogICAgICAgICAgICAgICAgPHlhLXBsYWNlbWFyayBbZ2VvbWV0cnldPVwiWzU1Ljc0LCAzNy41XVwiPjwveWEtcGxhY2VtYXJrPlxyXG4gKiAgICAgICAgICAgICAgICA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNjQsIDM3LjQ2XVwiPjwveWEtcGxhY2VtYXJrPlxyXG4gKiAgICAgICAgICAgICAgICA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNzUsIDM3LjM4XVwiPjwveWEtcGxhY2VtYXJrPlxyXG4gKiAgICAgICAgICAgICAgICA8eWEtZ2Vvb2JqZWN0XHJcbiAqICAgICAgICAgICAgICAgICAgW2ZlYXR1cmVdPVwieyBnZW9tZXRyeTogeyB0eXBlOiAnUG9pbnQnLCBjb29yZGluYXRlczogWzU1LjgxLCAzNy40XSB9IH1cIlxyXG4gKiAgICAgICAgICAgICAgICAgPjwveWEtZ2Vvb2JqZWN0PlxyXG4gKiAgICAgICAgICAgICAgICA8eWEtZ2Vvb2JqZWN0XHJcbiAqICAgICAgICAgICAgICAgICAgW2ZlYXR1cmVdPVwieyBnZW9tZXRyeTogeyB0eXBlOiAnUG9pbnQnLCBjb29yZGluYXRlczogWzU1LjcsIDM3LjM5XSB9IH1cIlxyXG4gKiAgICAgICAgICAgICAgICAgPjwveWEtZ2Vvb2JqZWN0PlxyXG4gKiAgICAgICAgICAgICAgPC95YS1jbHVzdGVyZXI+XHJcbiAqIDwveWEtbWFwPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd5YS1jbHVzdGVyZXInLFxyXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYUNsdXN0ZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBAQ29udGVudENoaWxkcmVuKFlhUGxhY2VtYXJrRGlyZWN0aXZlKVxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3BsYWNlbWFya3M6IFF1ZXJ5TGlzdDxZYVBsYWNlbWFya0RpcmVjdGl2ZT47XHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oWWFHZW9PYmplY3REaXJlY3RpdmUpXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZ2VvT2JqZWN0czogUXVlcnlMaXN0PFlhR2VvT2JqZWN0RGlyZWN0aXZlPjtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudE1hbmFnZXIgPSBuZXcgRXZlbnRNYW5hZ2VyKHRoaXMuX25nWm9uZSk7XHJcblxyXG4gIHByaXZhdGUgX2NsdXN0ZXJlcj86IHltYXBzLkNsdXN0ZXJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9ucyBmb3IgdGhlIGNsdXN0ZXJlci5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9DbHVzdGVyZXIuaHRtbCNDbHVzdGVyZXJfX3BhcmFtLW9wdGlvbnN9XHJcbiAgICovXHJcbiAgQElucHV0KCkgb3B0aW9uczogeW1hcHMuSUNsdXN0ZXJlck9wdGlvbnM7XHJcblxyXG4gIC8qKlxyXG4gICAqIENsdXN0ZXJlciBpbnN0YW5jZSBpcyBhZGRlZCBpbiBhIE1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcmVhZHk6IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ8eW1hcHMuQ2x1c3RlcmVyPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxyXG4gICAgWWFSZWFkeUV2ZW50PHltYXBzLkNsdXN0ZXJlcj5cclxuICA+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGhpbnRjbG9zZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkNsdXN0ZXJlcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignaGludGNsb3NlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZW5pbmcgYSBoaW50IG9uIGEgbWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBoaW50b3BlbjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkNsdXN0ZXJlcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignaGludG9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTWFwIHJlZmVyZW5jZSBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXBjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5DbHVzdGVyZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIG9iamVjdCBvcHRpb25zLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvcHRpb25zY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuQ2x1c3RlcmVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvcHRpb25zY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwYXJlbnQgb2JqZWN0IHJlZmVyZW5jZSBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwYXJlbnRjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5DbHVzdGVyZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3BhcmVudGNoYW5nZScpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSByZWFkb25seSBfeWFNYXBDb21wb25lbnQ6IFlhTWFwQ29tcG9uZW50KSB7fVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHBhc3NlcyB0aGVtIGluIEFQSS5cclxuICAgKiBAcGFyYW0gY2hhbmdlc1xyXG4gICAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IGNsdXN0ZXJlciA9IHRoaXMuX2NsdXN0ZXJlcjtcclxuXHJcbiAgICBpZiAoY2x1c3RlcmVyKSB7XHJcbiAgICAgIGNvbnN0IHsgb3B0aW9ucyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgY2x1c3RlcmVyLm9wdGlvbnMuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3lhTWFwQ29tcG9uZW50LmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnN1YnNjcmliZSgobWFwKSA9PiB7XHJcbiAgICAgICAgaWYgKG1hcCkge1xyXG4gICAgICAgICAgY29uc3QgY2x1c3RlcmVyID0gdGhpcy5fY3JlYXRlQ2x1c3RlcmVyKCk7XHJcbiAgICAgICAgICB0aGlzLl9jbHVzdGVyZXIgPSBjbHVzdGVyZXI7XHJcblxyXG4gICAgICAgICAgLyoqXHJcbiAgICAgICAgICAgKiBUeXBpbmdzIHNlZW1zIG9rLCBidWcgaW4gWWFuZGV4Lk1hcHMgQVBJIGRvY3VtZW50YXRpb25cclxuICAgICAgICAgICAqL1xyXG4gICAgICAgICAgbWFwLmdlb09iamVjdHMuYWRkKGNsdXN0ZXJlciBhcyBhbnkpO1xyXG4gICAgICAgICAgdGhpcy5fZXZlbnRNYW5hZ2VyLnNldFRhcmdldChjbHVzdGVyZXIpO1xyXG4gICAgICAgICAgdGhpcy5fd2F0Y2hGb3JDb250ZW50Q2hhbmdlcyhjbHVzdGVyZXIpO1xyXG4gICAgICAgICAgdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogY2x1c3RlcmVyIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5kZXN0cm95KCk7XHJcbiAgICB0aGlzLl9zdWIudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgQ2x1c3RlcmVyLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NyZWF0ZUNsdXN0ZXJlcigpOiB5bWFwcy5DbHVzdGVyZXIge1xyXG4gICAgcmV0dXJuIG5ldyB5bWFwcy5DbHVzdGVyZXIodGhpcy5vcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3dhdGNoRm9yQ29udGVudENoYW5nZXMoY2x1c3RlcmVyOiB5bWFwcy5DbHVzdGVyZXIpOiB2b2lkIHtcclxuICAgIC8qKlxyXG4gICAgICogQWRkcyBuZXcgUGxhY2VtYXJrcyB0byB0aGUgY2x1c3RlcmVyIG9uIGNoYW5nZXMuXHJcbiAgICAgKi9cclxuICAgIGNvbnN0IGN1cnJlbnRQbGFjZW1hcmtzID0gbmV3IFNldDx5bWFwcy5QbGFjZW1hcms+KCk7XHJcblxyXG4gICAgdGhpcy5fZ2V0SW50ZXJuYWxQbGFjZW1hcmtzKHRoaXMuX3BsYWNlbWFya3MudG9BcnJheSgpKS5mb3JFYWNoKChwbGFjZW1hcmspID0+IHtcclxuICAgICAgY3VycmVudFBsYWNlbWFya3MuYWRkKHBsYWNlbWFyayk7XHJcbiAgICAgIGNsdXN0ZXJlci5hZGQocGxhY2VtYXJrKTtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IHBsYWNlbWFya3NTdWIgPSB0aGlzLl9wbGFjZW1hcmtzLmNoYW5nZXMuc3Vic2NyaWJlKFxyXG4gICAgICAocGxhY2VtYXJrRGlyZWN0aXZlczogWWFQbGFjZW1hcmtEaXJlY3RpdmVbXSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG5ld1BsYWNlbWFya3MgPSBuZXcgU2V0PHltYXBzLlBsYWNlbWFyaz4oXHJcbiAgICAgICAgICB0aGlzLl9nZXRJbnRlcm5hbFBsYWNlbWFya3MocGxhY2VtYXJrRGlyZWN0aXZlcyksXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgY29uc3QgZGlmZmVyZW5jZSA9IHRoaXMuX2dldERpZmZlcmVuY2U8eW1hcHMuUGxhY2VtYXJrPihuZXdQbGFjZW1hcmtzLCBjdXJyZW50UGxhY2VtYXJrcyk7XHJcblxyXG4gICAgICAgIGNsdXN0ZXJlci5hZGQoZGlmZmVyZW5jZS50b0FkZCk7XHJcbiAgICAgICAgY2x1c3RlcmVyLnJlbW92ZShkaWZmZXJlbmNlLnRvUmVtb3ZlKTtcclxuICAgICAgfSxcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5fc3ViLmFkZChwbGFjZW1hcmtzU3ViKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEFkZHMgbmV3IEdlb09iamVjdHMgdG8gdGhlIGNsdXN0ZXJlciBvbiBjaGFuZ2VzLlxyXG4gICAgICovXHJcbiAgICBjb25zdCBjdXJyZW50R2VvT2JqZWN0cyA9IG5ldyBTZXQ8eW1hcHMuR2VvT2JqZWN0PigpO1xyXG5cclxuICAgIHRoaXMuX2dldEludGVybmFsR2VvT2JqZWN0cyh0aGlzLl9nZW9PYmplY3RzLnRvQXJyYXkoKSkuZm9yRWFjaCgoZ2VvT2JqZWN0KSA9PiB7XHJcbiAgICAgIGN1cnJlbnRHZW9PYmplY3RzLmFkZChnZW9PYmplY3QpO1xyXG4gICAgICBjbHVzdGVyZXIuYWRkKGdlb09iamVjdCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBnZW9PYmplY3RzU3ViID0gdGhpcy5fZ2VvT2JqZWN0cy5jaGFuZ2VzLnN1YnNjcmliZShcclxuICAgICAgKGdlb09iamVjdERpcmVjdGl2ZXM6IFlhR2VvT2JqZWN0RGlyZWN0aXZlW10pID0+IHtcclxuICAgICAgICBjb25zdCBuZXdHZW9PYmplY3RzID0gbmV3IFNldDx5bWFwcy5HZW9PYmplY3Q+KFxyXG4gICAgICAgICAgdGhpcy5fZ2V0SW50ZXJuYWxHZW9PYmplY3RzKGdlb09iamVjdERpcmVjdGl2ZXMpLFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGNvbnN0IGRpZmZlcmVuY2UgPSB0aGlzLl9nZXREaWZmZXJlbmNlPHltYXBzLkdlb09iamVjdD4obmV3R2VvT2JqZWN0cywgY3VycmVudEdlb09iamVjdHMpO1xyXG5cclxuICAgICAgICBjbHVzdGVyZXIuYWRkKGRpZmZlcmVuY2UudG9BZGQpO1xyXG4gICAgICAgIGNsdXN0ZXJlci5yZW1vdmUoZGlmZmVyZW5jZS50b1JlbW92ZSk7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuX3N1Yi5hZGQoZ2VvT2JqZWN0c1N1Yik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXRlcm1pbmVzIHdoYXQgc2hvdWxkIGJlIGFkZGVkL3JlbW92ZWQgaW4gY3VycmVudCBzZXQgdG8gZXF1YWwgbmV3IHNldFxyXG4gICAqXHJcbiAgICogQHBhcmFtIG5ld1NldFxyXG4gICAqIEBwYXJhbSBjdXJyZW50U2V0XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfZ2V0RGlmZmVyZW5jZTxUPihuZXdTZXQ6IFNldDxUPiwgY3VycmVudFNldDogU2V0PFQ+KSB7XHJcbiAgICBjb25zdCB0b0FkZDogVFtdID0gW107XHJcbiAgICBjb25zdCB0b1JlbW92ZTogVFtdID0gW107XHJcblxyXG4gICAgbmV3U2V0LmZvckVhY2goKGNvbXBvbmVudCkgPT4ge1xyXG4gICAgICBpZiAoIWN1cnJlbnRTZXQuaGFzKGNvbXBvbmVudCkpIHtcclxuICAgICAgICB0b0FkZC5wdXNoKGNvbXBvbmVudCk7XHJcbiAgICAgICAgY3VycmVudFNldC5hZGQoY29tcG9uZW50KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgY3VycmVudFNldC5mb3JFYWNoKChjb21wb25lbnQpID0+IHtcclxuICAgICAgaWYgKCFuZXdTZXQuaGFzKGNvbXBvbmVudCkpIHtcclxuICAgICAgICB0b1JlbW92ZS5wdXNoKGNvbXBvbmVudCk7XHJcbiAgICAgICAgY3VycmVudFNldC5kZWxldGUoY29tcG9uZW50KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgdG9BZGQsXHJcbiAgICAgIHRvUmVtb3ZlLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldEludGVybmFsUGxhY2VtYXJrcyhwbGFjZW1hcmtzOiBZYVBsYWNlbWFya0RpcmVjdGl2ZVtdKTogeW1hcHMuUGxhY2VtYXJrW10ge1xyXG4gICAgcmV0dXJuIHBsYWNlbWFya3NcclxuICAgICAgLmZpbHRlcigoY29tcG9uZW50KSA9PiAhIWNvbXBvbmVudC5wbGFjZW1hcmspXHJcbiAgICAgIC5tYXAoKGNvbXBvbmVudCkgPT4gY29tcG9uZW50LnBsYWNlbWFyayEpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0SW50ZXJuYWxHZW9PYmplY3RzKGdlb09iamVjdHM6IFlhR2VvT2JqZWN0RGlyZWN0aXZlW10pOiB5bWFwcy5HZW9PYmplY3RbXSB7XHJcbiAgICByZXR1cm4gZ2VvT2JqZWN0c1xyXG4gICAgICAuZmlsdGVyKChjb21wb25lbnQpID0+ICEhY29tcG9uZW50Lmdlb09iamVjdClcclxuICAgICAgLm1hcCgoY29tcG9uZW50KSA9PiBjb21wb25lbnQuZ2VvT2JqZWN0ISk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY2x1c3RlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBR04sTUFBTSxHQUdQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBYyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUl6RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBTUgsTUFBTSxPQUFPLG9CQUFvQjtJQXdEL0IsWUFBNkIsT0FBZSxFQUFtQixlQUErQjtRQUFqRSxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQW1CLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQWpEN0UsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUIsa0JBQWEsR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFVaEU7O1dBRUc7UUFDTyxVQUFLLEdBQWdELElBQUksWUFBWSxFQUU1RSxDQUFDO1FBRUo7O1dBRUc7UUFDTyxjQUFTLEdBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWpEOztXQUVHO1FBQ08sYUFB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QUM7OztZQTVNRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGNBQWM7Z0JBQ3hCLFFBQVEsRUFBRSwyQkFBMkI7Z0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEOzs7WUF6Q0MsTUFBTTtZQVNDLGNBQWM7OzswQkFrQ3BCLGVBQWUsU0FBQyxvQkFBb0I7MEJBR3BDLGVBQWUsU0FBQyxvQkFBb0I7c0JBYXBDLEtBQUs7b0JBS0wsTUFBTTt3QkFPTixNQUFNO3VCQU1OLE1BQU07d0JBTU4sTUFBTTs0QkFNTixNQUFNOzJCQU1OLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyQ29udGVudEluaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbnRlbnRDaGlsZHJlbixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgTmdab25lLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT3V0cHV0LFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgWWFHZW9PYmplY3REaXJlY3RpdmUgfSBmcm9tICcuLi95YS1nZW9vYmplY3QveWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFlhTWFwQ29tcG9uZW50IH0gZnJvbSAnLi4veWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBZYVBsYWNlbWFya0RpcmVjdGl2ZSB9IGZyb20gJy4uL3lhLXBsYWNlbWFyay95YS1wbGFjZW1hcmsuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRXZlbnRNYW5hZ2VyIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXZlbnQtbWFuYWdlcic7XHJcbmltcG9ydCB7IFlhUmVhZHlFdmVudCB9IGZyb20gJy4uLy4uL3R5cGluZ3MveWEtcmVhZHktZXZlbnQnO1xyXG5pbXBvcnQgeyBZYUV2ZW50IH0gZnJvbSAnLi4vLi4vdHlwaW5ncy95YS1ldmVudCc7XHJcblxyXG4vKipcclxuICogVGhlIGB5YS1jbHVzdGVyZXJgIGNvbXBvbmVudCB3cmFwcyBgeW1hcHMuQ2x1c3RlcmVyYCBjbGFzcyBmcm9tIHRoZSBZYW5kZXggTWFwcyBBUEkuXHJcbiAqIFlvdSBjYW4gY29uZmlndXJlIGl0IHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBFdmVudHMgY2FuIGJlIGJvdW5kIHVzaW5nIHRoZSBvdXRwdXRzIG9mIHRoZSBjb21wb25lbnQuXHJcbiAqXHJcbiAqIDxleGFtcGxlLXVybD5odHRwczovL3N0YWNrYmxpdHouY29tL2VkaXQvcGxhY2VtYXJrLWNsdXN0ZXJlcj9lbWJlZD0xPC9leGFtcGxlLXVybD5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogPHlhLW1hcCBbY2VudGVyXT1cIls1NS43NjE5NTIsIDM3LjYyMDczOV1cIj5cclxuICogICAgICAgICAgICAgIDx5YS1jbHVzdGVyZXIgW29wdGlvbnNdPVwieyBtaW5DbHVzdGVyU2l6ZTogNSB9XCI+XHJcbiAqICAgICAgICAgICAgICAgIDx5YS1wbGFjZW1hcmsgW2dlb21ldHJ5XT1cIls1NS43NCwgMzcuNV1cIj48L3lhLXBsYWNlbWFyaz5cclxuICogICAgICAgICAgICAgICAgPHlhLXBsYWNlbWFyayBbZ2VvbWV0cnldPVwiWzU1LjY0LCAzNy40Nl1cIj48L3lhLXBsYWNlbWFyaz5cclxuICogICAgICAgICAgICAgICAgPHlhLXBsYWNlbWFyayBbZ2VvbWV0cnldPVwiWzU1Ljc1LCAzNy4zOF1cIj48L3lhLXBsYWNlbWFyaz5cclxuICogICAgICAgICAgICAgICAgPHlhLWdlb29iamVjdFxyXG4gKiAgICAgICAgICAgICAgICAgIFtmZWF0dXJlXT1cInsgZ2VvbWV0cnk6IHsgdHlwZTogJ1BvaW50JywgY29vcmRpbmF0ZXM6IFs1NS44MSwgMzcuNF0gfSB9XCJcclxuICogICAgICAgICAgICAgICAgID48L3lhLWdlb29iamVjdD5cclxuICogICAgICAgICAgICAgICAgPHlhLWdlb29iamVjdFxyXG4gKiAgICAgICAgICAgICAgICAgIFtmZWF0dXJlXT1cInsgZ2VvbWV0cnk6IHsgdHlwZTogJ1BvaW50JywgY29vcmRpbmF0ZXM6IFs1NS43LCAzNy4zOV0gfSB9XCJcclxuICogICAgICAgICAgICAgICAgID48L3lhLWdlb29iamVjdD5cclxuICogICAgICAgICAgICAgIDwveWEtY2x1c3RlcmVyPlxyXG4gKiA8L3lhLW1hcD5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAneWEtY2x1c3RlcmVyJyxcclxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWWFDbHVzdGVyZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgQENvbnRlbnRDaGlsZHJlbihZYVBsYWNlbWFya0RpcmVjdGl2ZSlcclxuICBwcml2YXRlIHJlYWRvbmx5IF9wbGFjZW1hcmtzOiBRdWVyeUxpc3Q8WWFQbGFjZW1hcmtEaXJlY3RpdmU+O1xyXG5cclxuICBAQ29udGVudENoaWxkcmVuKFlhR2VvT2JqZWN0RGlyZWN0aXZlKVxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2dlb09iamVjdHM6IFF1ZXJ5TGlzdDxZYUdlb09iamVjdERpcmVjdGl2ZT47XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZXZlbnRNYW5hZ2VyID0gbmV3IEV2ZW50TWFuYWdlcih0aGlzLl9uZ1pvbmUpO1xyXG5cclxuICBwcml2YXRlIF9jbHVzdGVyZXI/OiB5bWFwcy5DbHVzdGVyZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBjbHVzdGVyZXIuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvQ2x1c3RlcmVyLmh0bWwjQ2x1c3RlcmVyX19wYXJhbS1vcHRpb25zfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IHltYXBzLklDbHVzdGVyZXJPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBDbHVzdGVyZXIgaW5zdGFuY2UgaXMgYWRkZWQgaW4gYSBNYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHJlYWR5OiBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PHltYXBzLkNsdXN0ZXJlcj4+ID0gbmV3IEV2ZW50RW1pdHRlcjxcclxuICAgIFlhUmVhZHlFdmVudDx5bWFwcy5DbHVzdGVyZXI+XHJcbiAgPigpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBoaW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBoaW50Y2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5DbHVzdGVyZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2hpbnRjbG9zZScpO1xyXG5cclxuICAvKipcclxuICAgKiBPcGVuaW5nIGEgaGludCBvbiBhIG1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgaGludG9wZW46IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5DbHVzdGVyZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2hpbnRvcGVuJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCByZWZlcmVuY2UgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbWFwY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuQ2x1c3RlcmVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtYXBjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlIHRvIHRoZSBvYmplY3Qgb3B0aW9ucy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgb3B0aW9uc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkNsdXN0ZXJlcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignb3B0aW9uc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGFyZW50Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuQ2x1c3RlcmVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdwYXJlbnRjaGFuZ2UnKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgcmVhZG9ubHkgX3lhTWFwQ29tcG9uZW50OiBZYU1hcENvbXBvbmVudCkge31cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwYXNzZXMgdGhlbSBpbiBBUEkuXHJcbiAgICogQHBhcmFtIGNoYW5nZXNcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCBjbHVzdGVyZXIgPSB0aGlzLl9jbHVzdGVyZXI7XHJcblxyXG4gICAgaWYgKGNsdXN0ZXJlcikge1xyXG4gICAgICBjb25zdCB7IG9wdGlvbnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgICBpZiAob3B0aW9ucykge1xyXG4gICAgICAgIGNsdXN0ZXJlci5vcHRpb25zLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl95YU1hcENvbXBvbmVudC5pc0Jyb3dzZXIpIHtcclxuICAgICAgY29uc3Qgc3ViID0gdGhpcy5feWFNYXBDb21wb25lbnQubWFwJC5zdWJzY3JpYmUoKG1hcCkgPT4ge1xyXG4gICAgICAgIGlmIChtYXApIHtcclxuICAgICAgICAgIGNvbnN0IGNsdXN0ZXJlciA9IHRoaXMuX2NyZWF0ZUNsdXN0ZXJlcigpO1xyXG4gICAgICAgICAgdGhpcy5fY2x1c3RlcmVyID0gY2x1c3RlcmVyO1xyXG5cclxuICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICogVHlwaW5ncyBzZWVtcyBvaywgYnVnIGluIFlhbmRleC5NYXBzIEFQSSBkb2N1bWVudGF0aW9uXHJcbiAgICAgICAgICAgKi9cclxuICAgICAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChjbHVzdGVyZXIgYXMgYW55KTtcclxuICAgICAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5zZXRUYXJnZXQoY2x1c3RlcmVyKTtcclxuICAgICAgICAgIHRoaXMuX3dhdGNoRm9yQ29udGVudENoYW5nZXMoY2x1c3RlcmVyKTtcclxuICAgICAgICAgIHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IGNsdXN0ZXJlciB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5fc3ViLmFkZChzdWIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZGVzdHJveSgpO1xyXG4gICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIENsdXN0ZXJlci5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVDbHVzdGVyZXIoKTogeW1hcHMuQ2x1c3RlcmVyIHtcclxuICAgIHJldHVybiBuZXcgeW1hcHMuQ2x1c3RlcmVyKHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF93YXRjaEZvckNvbnRlbnRDaGFuZ2VzKGNsdXN0ZXJlcjogeW1hcHMuQ2x1c3RlcmVyKTogdm9pZCB7XHJcbiAgICAvKipcclxuICAgICAqIEFkZHMgbmV3IFBsYWNlbWFya3MgdG8gdGhlIGNsdXN0ZXJlciBvbiBjaGFuZ2VzLlxyXG4gICAgICovXHJcbiAgICBjb25zdCBjdXJyZW50UGxhY2VtYXJrcyA9IG5ldyBTZXQ8eW1hcHMuUGxhY2VtYXJrPigpO1xyXG5cclxuICAgIHRoaXMuX2dldEludGVybmFsUGxhY2VtYXJrcyh0aGlzLl9wbGFjZW1hcmtzLnRvQXJyYXkoKSkuZm9yRWFjaCgocGxhY2VtYXJrKSA9PiB7XHJcbiAgICAgIGN1cnJlbnRQbGFjZW1hcmtzLmFkZChwbGFjZW1hcmspO1xyXG4gICAgICBjbHVzdGVyZXIuYWRkKHBsYWNlbWFyayk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBwbGFjZW1hcmtzU3ViID0gdGhpcy5fcGxhY2VtYXJrcy5jaGFuZ2VzLnN1YnNjcmliZShcclxuICAgICAgKHBsYWNlbWFya0RpcmVjdGl2ZXM6IFlhUGxhY2VtYXJrRGlyZWN0aXZlW10pID0+IHtcclxuICAgICAgICBjb25zdCBuZXdQbGFjZW1hcmtzID0gbmV3IFNldDx5bWFwcy5QbGFjZW1hcms+KFxyXG4gICAgICAgICAgdGhpcy5fZ2V0SW50ZXJuYWxQbGFjZW1hcmtzKHBsYWNlbWFya0RpcmVjdGl2ZXMpLFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGNvbnN0IGRpZmZlcmVuY2UgPSB0aGlzLl9nZXREaWZmZXJlbmNlPHltYXBzLlBsYWNlbWFyaz4obmV3UGxhY2VtYXJrcywgY3VycmVudFBsYWNlbWFya3MpO1xyXG5cclxuICAgICAgICBjbHVzdGVyZXIuYWRkKGRpZmZlcmVuY2UudG9BZGQpO1xyXG4gICAgICAgIGNsdXN0ZXJlci5yZW1vdmUoZGlmZmVyZW5jZS50b1JlbW92ZSk7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuX3N1Yi5hZGQocGxhY2VtYXJrc1N1Yik7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGRzIG5ldyBHZW9PYmplY3RzIHRvIHRoZSBjbHVzdGVyZXIgb24gY2hhbmdlcy5cclxuICAgICAqL1xyXG4gICAgY29uc3QgY3VycmVudEdlb09iamVjdHMgPSBuZXcgU2V0PHltYXBzLkdlb09iamVjdD4oKTtcclxuXHJcbiAgICB0aGlzLl9nZXRJbnRlcm5hbEdlb09iamVjdHModGhpcy5fZ2VvT2JqZWN0cy50b0FycmF5KCkpLmZvckVhY2goKGdlb09iamVjdCkgPT4ge1xyXG4gICAgICBjdXJyZW50R2VvT2JqZWN0cy5hZGQoZ2VvT2JqZWN0KTtcclxuICAgICAgY2x1c3RlcmVyLmFkZChnZW9PYmplY3QpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgY29uc3QgZ2VvT2JqZWN0c1N1YiA9IHRoaXMuX2dlb09iamVjdHMuY2hhbmdlcy5zdWJzY3JpYmUoXHJcbiAgICAgIChnZW9PYmplY3REaXJlY3RpdmVzOiBZYUdlb09iamVjdERpcmVjdGl2ZVtdKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbmV3R2VvT2JqZWN0cyA9IG5ldyBTZXQ8eW1hcHMuR2VvT2JqZWN0PihcclxuICAgICAgICAgIHRoaXMuX2dldEludGVybmFsR2VvT2JqZWN0cyhnZW9PYmplY3REaXJlY3RpdmVzKSxcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBjb25zdCBkaWZmZXJlbmNlID0gdGhpcy5fZ2V0RGlmZmVyZW5jZTx5bWFwcy5HZW9PYmplY3Q+KG5ld0dlb09iamVjdHMsIGN1cnJlbnRHZW9PYmplY3RzKTtcclxuXHJcbiAgICAgICAgY2x1c3RlcmVyLmFkZChkaWZmZXJlbmNlLnRvQWRkKTtcclxuICAgICAgICBjbHVzdGVyZXIucmVtb3ZlKGRpZmZlcmVuY2UudG9SZW1vdmUpO1xyXG4gICAgICB9LFxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLl9zdWIuYWRkKGdlb09iamVjdHNTdWIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGV0ZXJtaW5lcyB3aGF0IHNob3VsZCBiZSBhZGRlZC9yZW1vdmVkIGluIGN1cnJlbnQgc2V0IHRvIGVxdWFsIG5ldyBzZXRcclxuICAgKlxyXG4gICAqIEBwYXJhbSBuZXdTZXRcclxuICAgKiBAcGFyYW0gY3VycmVudFNldFxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2dldERpZmZlcmVuY2U8VD4obmV3U2V0OiBTZXQ8VD4sIGN1cnJlbnRTZXQ6IFNldDxUPikge1xyXG4gICAgY29uc3QgdG9BZGQ6IFRbXSA9IFtdO1xyXG4gICAgY29uc3QgdG9SZW1vdmU6IFRbXSA9IFtdO1xyXG5cclxuICAgIG5ld1NldC5mb3JFYWNoKChjb21wb25lbnQpID0+IHtcclxuICAgICAgaWYgKCFjdXJyZW50U2V0Lmhhcyhjb21wb25lbnQpKSB7XHJcbiAgICAgICAgdG9BZGQucHVzaChjb21wb25lbnQpO1xyXG4gICAgICAgIGN1cnJlbnRTZXQuYWRkKGNvbXBvbmVudCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGN1cnJlbnRTZXQuZm9yRWFjaCgoY29tcG9uZW50KSA9PiB7XHJcbiAgICAgIGlmICghbmV3U2V0Lmhhcyhjb21wb25lbnQpKSB7XHJcbiAgICAgICAgdG9SZW1vdmUucHVzaChjb21wb25lbnQpO1xyXG4gICAgICAgIGN1cnJlbnRTZXQuZGVsZXRlKGNvbXBvbmVudCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIHRvQWRkLFxyXG4gICAgICB0b1JlbW92ZSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9nZXRJbnRlcm5hbFBsYWNlbWFya3MocGxhY2VtYXJrczogWWFQbGFjZW1hcmtEaXJlY3RpdmVbXSk6IHltYXBzLlBsYWNlbWFya1tdIHtcclxuICAgIHJldHVybiBwbGFjZW1hcmtzXHJcbiAgICAgIC5maWx0ZXIoKGNvbXBvbmVudCkgPT4gISFjb21wb25lbnQucGxhY2VtYXJrKVxyXG4gICAgICAubWFwKChjb21wb25lbnQpID0+IGNvbXBvbmVudC5wbGFjZW1hcmshKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldEludGVybmFsR2VvT2JqZWN0cyhnZW9PYmplY3RzOiBZYUdlb09iamVjdERpcmVjdGl2ZVtdKTogeW1hcHMuR2VvT2JqZWN0W10ge1xyXG4gICAgcmV0dXJuIGdlb09iamVjdHNcclxuICAgICAgLmZpbHRlcigoY29tcG9uZW50KSA9PiAhIWNvbXBvbmVudC5nZW9PYmplY3QpXHJcbiAgICAgIC5tYXAoKGNvbXBvbmVudCkgPT4gY29tcG9uZW50Lmdlb09iamVjdCEpO1xyXG4gIH1cclxufVxyXG4iXX0=

@@ -9,3 +9,3 @@ import { Directive, EventEmitter, Input, NgZone, Output, } from '@angular/core';

*
* <example-url>https://searchcontrol.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/searchcontrol?embed=1</example-url>
*

@@ -80,2 +80,2 @@ * @example

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY29udHJvbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2NvbXBvbmVudHMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQWlCNUQ7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFJSCxNQUFNLE9BQU8sa0JBQWtCO0lBb0I3QixZQUE2QixPQUFlLEVBQW1CLGVBQStCO1FBQWpFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBbUIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBbkI3RSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQWMzQzs7V0FFRztRQUNPLFVBQUssR0FBb0MsSUFBSSxZQUFZLEVBQXFCLENBQUM7SUFFUSxDQUFDO0lBRWxHLFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxDQUFDLElBQUksQ0FDVix5SUFBeUksQ0FDMUksQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFO1lBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEdBQUcsRUFBRTtvQkFDUCxNQUFNLE9BQU8sR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDOUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7b0JBRXhCOzt1QkFFRztvQkFDSCxJQUNFLE9BQU8sWUFBWSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVU7d0JBQzNDLElBQUksQ0FBQyxVQUFVO3dCQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUNyQjt3QkFDQTs7MkJBRUc7d0JBQ0YsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFhLENBQUMsR0FBRyxtQkFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRyxDQUFDO3FCQUNyRTtvQkFFRCxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7aUJBQzdDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFRCxXQUFXOztRQUNULElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixNQUFBLE1BQUEsSUFBSSxDQUFDLGVBQWUsMENBQUUsSUFBSSxDQUFDLEtBQUssMENBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDOzs7WUFuRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2FBQ3ZCOzs7WUExQ0MsTUFBTTtZQVFDLGNBQWM7OzttQkEyQ3BCLEtBQUs7eUJBS0wsS0FBSztvQkFLTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFlhUmVhZHlFdmVudCB9IGZyb20gJy4uLy4uL3V0aWxzL2V2ZW50LW1hbmFnZXInO1xuaW1wb3J0IHsgWWFNYXBDb21wb25lbnQgfSBmcm9tICcuLi95YS1tYXAveWEtbWFwLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIFlhQ29udHJvbFR5cGUgPVxuICB8ICdCdXR0b24nXG4gIHwgJ0Z1bGxzY3JlZW5Db250cm9sJ1xuICB8ICdHZW9sb2NhdGlvbkNvbnRyb2wnXG4gIHwgJ0xpc3RCb3gnXG4gIHwgJ0xpc3RCb3hJdGVtJ1xuICB8ICdSb3V0ZUJ1dHRvbidcbiAgfCAnUm91dGVFZGl0b3InXG4gIHwgJ1JvdXRlUGFuZWwnXG4gIHwgJ1J1bGVyQ29udHJvbCdcbiAgfCAnU2VhcmNoQ29udHJvbCdcbiAgfCAnVHJhZmZpY0NvbnRyb2wnXG4gIHwgJ1R5cGVTZWxlY3RvcidcbiAgfCAnWm9vbUNvbnRyb2wnO1xuXG4vKipcbiAqIFRoZSBgeWEtY29udHJvbGAgY29tcG9uZW50IHdyYXBzIGB5bWFwcy5jb250cm9sW1lhQ29udHJvbFR5cGVdYCBjbGFzc2VzIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cbiAqIFlvdSBjYW4gY29uZmlndXJlIGB5bWFwcy5jb250cm9sW1lhQ29udHJvbFR5cGVdYCB2aWEgdGhlIGNvbXBvbmVudCdzIGlucHV0cy5cbiAqIEFQSSBFdmVudHMgY2FuIGJlIGJvdW5kIG9ubHkgbWFudWFsbHkuIFlvdSBjYW4gdXNlIGByZWFkeWAgZXZlbnQgdG8gZ2V0IGFuIGluc3RhbmNlLlxuICpcbiAqIDxleGFtcGxlLXVybD5odHRwczovL3NlYXJjaGNvbnRyb2wuc3RhY2tibGl0ei5pby88L2V4YW1wbGUtdXJsPlxuICpcbiAqIEBleGFtcGxlXG4gKiA8eWEtbWFwIFtjZW50ZXJdPVwiWzU1Ljc2MTk1MiwgMzcuNjIwNzM5XVwiPlxuICogICAgICAgICAgICAgIDx5YS1jb250cm9sXG4gKiAgICAgICAgICAgICAgICB0eXBlPVwiUm91dGVQYW5lbFwiXG4gKiAgICAgICAgICAgICAgICBbcGFyYW1ldGVyc109XCJ7IG9wdGlvbnM6IHsgZmxvYXQ6ICdyaWdodCcgfSB9XCJcbiAqICAgICAgICAgICAgICA+PC95YS1jb250cm9sPlxuICogPC95YS1tYXA+XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3lhLWNvbnRyb2wnLFxufSlcbmV4cG9ydCBjbGFzcyBZYUNvbnRyb2xEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIHByaXZhdGUgX2NvbnRyb2w/OiBhbnk7XG5cbiAgLyoqXG4gICAqIENvbnRyb2wgdHlwZS5cbiAgICovXG4gIEBJbnB1dCgpIHR5cGU6IFlhQ29udHJvbFR5cGU7XG5cbiAgLyoqXG4gICAqIFBhcmFtZXRlcnMgZm9yIHRoZSBDb250cm9sLlxuICAgKi9cbiAgQElucHV0KCkgcGFyYW1ldGVyczogYW55O1xuXG4gIC8qKlxuICAgKiBDb250cm9sIGluc3RhbmNlIGlzIGFkZGVkIGluIGEgTWFwLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWR5OiBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ8YW55Pj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSByZWFkb25seSBfeWFNYXBDb21wb25lbnQ6IFlhTWFwQ29tcG9uZW50KSB7fVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9jb250cm9sKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdDb250cm9sIGRvZXMgbm90IHN1cHBvcnQgZHluYW1pYyBjb25maWd1cmF0aW9uLiBZb3UgY2FuIGNvbmZpZyBpdCBtYW51YWxseSB1c2luZyB5bWFwcyBvciByZWNyZWF0ZSB0aGUgY29tcG9uZW50IHdpdGggbmV3IGNvbmZpZ3VyYXRpb24nLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5feWFNYXBDb21wb25lbnQuaXNCcm93c2VyKSB7XG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnN1YnNjcmliZSgobWFwKSA9PiB7XG4gICAgICAgIGlmIChtYXApIHtcbiAgICAgICAgICBjb25zdCBjb250cm9sID0gbmV3IHltYXBzLmNvbnRyb2xbdGhpcy50eXBlXSh0aGlzLnBhcmFtZXRlcnMpO1xuICAgICAgICAgIHRoaXMuX2NvbnRyb2wgPSBjb250cm9sO1xuXG4gICAgICAgICAgLyoqXG4gICAgICAgICAgICogUm91dGVQYW5lbCBpZ25vcmVzIHN0YXRlIGluIHBhcmFtZXRlcnMuIEFQSSBidWdcbiAgICAgICAgICAgKi9cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBjb250cm9sIGluc3RhbmNlb2YgeW1hcHMuY29udHJvbC5Sb3V0ZVBhbmVsICYmXG4gICAgICAgICAgICB0aGlzLnBhcmFtZXRlcnMgJiZcbiAgICAgICAgICAgIHRoaXMucGFyYW1ldGVycy5zdGF0ZVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBUeXBpbmdzIHNlZW1zIG9rLCBidWcgaW4gWWFuZGV4Lk1hcHMgQVBJIGRvY3VtZW50YXRpb25cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgKGNvbnRyb2wucm91dGVQYW5lbC5zdGF0ZSBhcyBhbnkpLnNldCh7IC4uLnRoaXMucGFyYW1ldGVycy5zdGF0ZSB9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBtYXAuY29udHJvbHMuYWRkKGNvbnRyb2wpO1xuICAgICAgICAgIHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IGNvbnRyb2wgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2NvbnRyb2wpIHtcbiAgICAgIHRoaXMuX3lhTWFwQ29tcG9uZW50Py5tYXAkLnZhbHVlPy5jb250cm9scy5yZW1vdmUodGhpcy5fY29udHJvbCk7XG4gICAgfVxuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY29udHJvbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2NvbXBvbmVudHMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQWtCNUQ7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFJSCxNQUFNLE9BQU8sa0JBQWtCO0lBb0I3QixZQUE2QixPQUFlLEVBQW1CLGVBQStCO1FBQWpFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBbUIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBbkI3RSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQWMzQzs7V0FFRztRQUNPLFVBQUssR0FBb0MsSUFBSSxZQUFZLEVBQXFCLENBQUM7SUFFUSxDQUFDO0lBRWxHLFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxDQUFDLElBQUksQ0FDVix5SUFBeUksQ0FDMUksQ0FBQztTQUNIO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFO1lBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEdBQUcsRUFBRTtvQkFDUCxNQUFNLE9BQU8sR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDOUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7b0JBRXhCOzt1QkFFRztvQkFDSCxJQUNFLE9BQU8sWUFBWSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVU7d0JBQzNDLElBQUksQ0FBQyxVQUFVO3dCQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUNyQjt3QkFDQTs7MkJBRUc7d0JBQ0YsT0FBTyxDQUFDLFVBQVUsQ0FBQyxLQUFhLENBQUMsR0FBRyxtQkFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRyxDQUFDO3FCQUNyRTtvQkFFRCxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7aUJBQzdDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFRCxXQUFXOztRQUNULElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixNQUFBLE1BQUEsSUFBSSxDQUFDLGVBQWUsMENBQUUsSUFBSSxDQUFDLEtBQUssMENBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDOzs7WUFuRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2FBQ3ZCOzs7WUExQ0MsTUFBTTtZQU9DLGNBQWM7OzttQkE0Q3BCLEtBQUs7eUJBS0wsS0FBSztvQkFLTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBZYU1hcENvbXBvbmVudCB9IGZyb20gJy4uL3lhLW1hcC95YS1tYXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vdHlwaW5ncy95YS1yZWFkeS1ldmVudCc7XHJcblxyXG5leHBvcnQgdHlwZSBZYUNvbnRyb2xUeXBlID1cclxuICB8ICdCdXR0b24nXHJcbiAgfCAnRnVsbHNjcmVlbkNvbnRyb2wnXHJcbiAgfCAnR2VvbG9jYXRpb25Db250cm9sJ1xyXG4gIHwgJ0xpc3RCb3gnXHJcbiAgfCAnTGlzdEJveEl0ZW0nXHJcbiAgfCAnUm91dGVCdXR0b24nXHJcbiAgfCAnUm91dGVFZGl0b3InXHJcbiAgfCAnUm91dGVQYW5lbCdcclxuICB8ICdSdWxlckNvbnRyb2wnXHJcbiAgfCAnU2VhcmNoQ29udHJvbCdcclxuICB8ICdUcmFmZmljQ29udHJvbCdcclxuICB8ICdUeXBlU2VsZWN0b3InXHJcbiAgfCAnWm9vbUNvbnRyb2wnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtY29udHJvbGAgY29tcG9uZW50IHdyYXBzIGB5bWFwcy5jb250cm9sW1lhQ29udHJvbFR5cGVdYCBjbGFzc2VzIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cclxuICogWW91IGNhbiBjb25maWd1cmUgYHltYXBzLmNvbnRyb2xbWWFDb250cm9sVHlwZV1gIHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBBUEkgRXZlbnRzIGNhbiBiZSBib3VuZCBvbmx5IG1hbnVhbGx5LiBZb3UgY2FuIHVzZSBgcmVhZHlgIGV2ZW50IHRvIGdldCBhbiBpbnN0YW5jZS5cclxuICpcclxuICogPGV4YW1wbGUtdXJsPmh0dHBzOi8vc3RhY2tibGl0ei5jb20vZWRpdC9zZWFyY2hjb250cm9sP2VtYmVkPTE8L2V4YW1wbGUtdXJsPlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiA8eWEtbWFwIFtjZW50ZXJdPVwiWzU1Ljc2MTk1MiwgMzcuNjIwNzM5XVwiPlxyXG4gKiAgICAgICAgICAgICAgPHlhLWNvbnRyb2xcclxuICogICAgICAgICAgICAgICAgdHlwZT1cIlJvdXRlUGFuZWxcIlxyXG4gKiAgICAgICAgICAgICAgICBbcGFyYW1ldGVyc109XCJ7IG9wdGlvbnM6IHsgZmxvYXQ6ICdyaWdodCcgfSB9XCJcclxuICogICAgICAgICAgICAgID48L3lhLWNvbnRyb2w+XHJcbiAqIDwveWEtbWFwPlxyXG4gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICd5YS1jb250cm9sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFlhQ29udHJvbERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuXHJcbiAgcHJpdmF0ZSBfY29udHJvbD86IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29udHJvbCB0eXBlLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHR5cGU6IFlhQ29udHJvbFR5cGU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhcmFtZXRlcnMgZm9yIHRoZSBDb250cm9sLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHBhcmFtZXRlcnM6IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29udHJvbCBpbnN0YW5jZSBpcyBhZGRlZCBpbiBhIE1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcmVhZHk6IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudDxhbnk+PigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSByZWFkb25seSBfeWFNYXBDb21wb25lbnQ6IFlhTWFwQ29tcG9uZW50KSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9jb250cm9sKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihcclxuICAgICAgICAnQ29udHJvbCBkb2VzIG5vdCBzdXBwb3J0IGR5bmFtaWMgY29uZmlndXJhdGlvbi4gWW91IGNhbiBjb25maWcgaXQgbWFudWFsbHkgdXNpbmcgeW1hcHMgb3IgcmVjcmVhdGUgdGhlIGNvbXBvbmVudCB3aXRoIG5ldyBjb25maWd1cmF0aW9uJyxcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3lhTWFwQ29tcG9uZW50LmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnN1YnNjcmliZSgobWFwKSA9PiB7XHJcbiAgICAgICAgaWYgKG1hcCkge1xyXG4gICAgICAgICAgY29uc3QgY29udHJvbCA9IG5ldyB5bWFwcy5jb250cm9sW3RoaXMudHlwZV0odGhpcy5wYXJhbWV0ZXJzKTtcclxuICAgICAgICAgIHRoaXMuX2NvbnRyb2wgPSBjb250cm9sO1xyXG5cclxuICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICogUm91dGVQYW5lbCBpZ25vcmVzIHN0YXRlIGluIHBhcmFtZXRlcnMuIEFQSSBidWdcclxuICAgICAgICAgICAqL1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICBjb250cm9sIGluc3RhbmNlb2YgeW1hcHMuY29udHJvbC5Sb3V0ZVBhbmVsICYmXHJcbiAgICAgICAgICAgIHRoaXMucGFyYW1ldGVycyAmJlxyXG4gICAgICAgICAgICB0aGlzLnBhcmFtZXRlcnMuc3RhdGVcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAvKipcclxuICAgICAgICAgICAgICogVHlwaW5ncyBzZWVtcyBvaywgYnVnIGluIFlhbmRleC5NYXBzIEFQSSBkb2N1bWVudGF0aW9uXHJcbiAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICAoY29udHJvbC5yb3V0ZVBhbmVsLnN0YXRlIGFzIGFueSkuc2V0KHsgLi4udGhpcy5wYXJhbWV0ZXJzLnN0YXRlIH0pO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIG1hcC5jb250cm9scy5hZGQoY29udHJvbCk7XHJcbiAgICAgICAgICB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBjb250cm9sIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9jb250cm9sKSB7XHJcbiAgICAgIHRoaXMuX3lhTWFwQ29tcG9uZW50Py5tYXAkLnZhbHVlPy5jb250cm9scy5yZW1vdmUodGhpcy5fY29udHJvbCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==

@@ -10,3 +10,3 @@ import { Directive, EventEmitter, Input, NgZone, Output, } from '@angular/core';

*
* <example-url>https://geoobject-polygon.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/geoobject-polygon?embed=1</example-url>
*

@@ -247,2 +247,2 @@ * @example

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1nZW9vYmplY3QveWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQXlCLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBa00vQixZQUE2QixPQUFlLEVBQW1CLGVBQStCO1FBQWpFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBbUIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBak03RSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQixrQkFBYSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQWdCaEU7O1dBRUc7UUFDTyxVQUFLLEdBQWdELElBQUksWUFBWSxFQUU1RSxDQUFDO1FBRUo7O1dBRUc7UUFDTyxpQkFBWSxHQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVwRDs7V0FFRztRQUNPLGdCQUFXLEdBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRW5EOztXQUVHO1FBQ08sZUFBVSxHQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENB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QU07d0JBTU4sTUFBTTswQkFNTixNQUFNOzJCQU1OLE1BQU07MkJBTU4sTUFBTTswQkFNTixNQUFNO3dCQU1OLE1BQU07NEJBTU4sTUFBTTs2QkFNTixNQUFNOzhCQU1OLE1BQU07NEJBTU4sTUFBTTs0QkFNTixNQUFNOzJCQU1OLE1BQU07K0JBTU4sTUFBTTtzQkFNTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvZXZlbnQtbWFuYWdlcic7XHJcbmltcG9ydCB7IFlhTWFwQ29tcG9uZW50IH0gZnJvbSAnLi4veWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtZ2Vvb2JqZWN0YCBjb21wb25lbnQgd3JhcHMgYHltYXBzLkdlb09iamVjdGAgY2xhc3MgZnJvbSB0aGUgWWFuZGV4IE1hcHMgQVBJLlxyXG4gKiBZb3UgY2FuIGNvbmZpZ3VyZSBpdCB2aWEgdGhlIGNvbXBvbmVudCdzIGlucHV0cy5cclxuICogRXZlbnRzIGNhbiBiZSBib3VuZCB1c2luZyB0aGUgb3V0cHV0cyBvZiB0aGUgY29tcG9uZW50LlxyXG4gKlxyXG4gKiA8ZXhhbXBsZS11cmw+aHR0cHM6Ly9nZW9vYmplY3QtcG9seWdvbi5zdGFja2JsaXR6LmlvLzwvZXhhbXBsZS11cmw+XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDx5YS1tYXAgW2NlbnRlcl09XCJbNTUuNzYxOTUyLCAzNy42MjA3MzldXCI+XHJcbiAqICAgICAgICAgICAgICA8eWEtZ2Vvb2JqZWN0XHJcbiAqICAgICAgICAgICAgICAgIFtmZWF0dXJlXT1cInsgZ2VvbWV0cnk6IHsgdHlwZTogJ1JlY3RhbmdsZScsIGNvb3JkaW5hdGVzOiBbWzU1LjY2NSwgMzcuNjZdLCBbNTUuNjQsMzcuNTNdXSB9IH1cIlxyXG4gKiAgICAgICAgICAgICAgPjwveWEtZ2Vvb2JqZWN0PlxyXG4gKiA8L3lhLW1hcD5cclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAneWEtZ2Vvb2JqZWN0JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFlhR2VvT2JqZWN0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudE1hbmFnZXIgPSBuZXcgRXZlbnRNYW5hZ2VyKHRoaXMuX25nWm9uZSk7XHJcblxyXG4gIGdlb09iamVjdD86IHltYXBzLkdlb09iamVjdDtcclxuXHJcbiAgLyoqXHJcbiAgICogRmVhdHVyZSBmb3IgdGhlIEdlb09iamVjdC5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9HZW9PYmplY3QuaHRtbCNHZW9PYmplY3RwYXJhbS1mZWF0dXJlfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGZlYXR1cmU6IHltYXBzLklHZW9PYmplY3RGZWF0dXJlO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25zIGZvciB0aGUgR2VvT2JqZWN0LlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0dlb09iamVjdC5odG1sI0dlb09iamVjdHBhcmFtLW9wdGlvbnN9XHJcbiAgICovXHJcbiAgQElucHV0KCkgb3B0aW9uczogeW1hcHMuSUdlb09iamVjdE9wdGlvbnM7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdlb09iamVjdCBpbnN0YW5jZSBpcyBhZGRlZCBpbiBhIE1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcmVhZHk6IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxyXG4gICAgWWFSZWFkeUV2ZW50PHltYXBzLkdlb09iamVjdD5cclxuICA+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENsb3NpbmcgdGhlIGJhbGxvb24uXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJhbGxvb25jbG9zZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmFsbG9vbmNsb3NlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZW5pbmcgYSBiYWxsb29uIG9uIGEgbWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29ub3BlbjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmFsbG9vbm9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgcHJlY2VkaW5nIHRoZSBcImRyYWdcIiBldmVudC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYmVmb3JlZHJhZzogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmVmb3JlZHJhZycpO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ3N0YXJ0XCIgZXZlbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJlZm9yZWRyYWdzdGFydDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmVmb3JlZHJhZ3N0YXJ0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNpbmdsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhY2xpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2NsaWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxzIHRoZSBlbGVtZW50J3MgY29udGV4dCBtZW51LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNvbnRleHRtZW51OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdjb250ZXh0bWVudScpO1xyXG5cclxuICAvKipcclxuICAgKiBEb3VibGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRiY2xpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RiY2xpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRHJhZ2dpbmcgYSBnZW8gb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRyYWc6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RyYWcnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRW5kIG9mIGdlbyBvYmplY3QgZHJhZ2dpbmcuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhZHJhZ2VuZDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZHJhZ2VuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBTdGFydCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRyYWdzdGFydDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZHJhZ3N0YXJ0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSBpbiB0aGUgc3RhdGUgb2YgdGhlIGVkaXRvciBmb3IgdGhlIGdlbyBvYmplY3QncyBnZW9tZXRyeS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZWRpdG9yc3RhdGVjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2VkaXRvcnN0YXRlY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBnZW9tZXRyeVxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBnZW9tZXRyeWNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZ2VvbWV0cnljaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2xvc2luZyB0aGUgaGludC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgaGludGNsb3NlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdoaW50Y2xvc2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGhpbnRvcGVuOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdoaW50b3BlbicpO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcGNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbWFwY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByZXNzaW5nIHRoZSBtb3VzZSBidXR0b24gb3ZlciB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlZG93bjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2Vkb3duJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBvaW50aW5nIHRoZSBjdXJzb3IgYXQgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWVudGVyOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWVudGVyJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG9mZiBvZiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlbGVhdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlbGVhdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlbW92ZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2Vtb3ZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIExldHRpbmcgZ28gb2YgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIGFuIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZXVwOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZXVwJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoZW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtdWx0aXRvdWNoZW5kJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlcGVhdGluZyBldmVudCBkdXJpbmcgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaG1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ211bHRpdG91Y2htb3ZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0YXJ0IG9mIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2hzdGFydDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaHN0YXJ0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9wdGlvbnNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ29wdGlvbnNjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlIHRvIHRoZSBnZW8gb2JqZWN0IG92ZXJsYXkuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG92ZXJsYXljaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ292ZXJsYXljaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBhcmVudCBvYmplY3QgcmVmZXJlbmNlIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHBhcmVudGNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcigncGFyZW50Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBkYXRhLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwcm9wZXJ0aWVzY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdwcm9wZXJ0aWVzY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdXNlIHdoZWVsIHNjcm9sbGluZy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWF3aGVlbDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignd2hlZWwnKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgcmVhZG9ubHkgX3lhTWFwQ29tcG9uZW50OiBZYU1hcENvbXBvbmVudCkge31cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwYXNzZXMgdGhlbSBpbiBBUEkuXHJcbiAgICogQHBhcmFtIGNoYW5nZXNcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IGdlb09iamVjdCB9ID0gdGhpcztcclxuXHJcbiAgICBpZiAoZ2VvT2JqZWN0KSB7XHJcbiAgICAgIGNvbnN0IHsgZmVhdHVyZSwgb3B0aW9ucyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICAgIGlmIChmZWF0dXJlKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0RmVhdHVyZShmZWF0dXJlLmN1cnJlbnRWYWx1ZSwgZ2VvT2JqZWN0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgICBnZW9PYmplY3Qub3B0aW9ucy5zZXQob3B0aW9ucy5jdXJyZW50VmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl95YU1hcENvbXBvbmVudC5pc0Jyb3dzZXIpIHtcclxuICAgICAgY29uc3Qgc3ViID0gdGhpcy5feWFNYXBDb21wb25lbnQubWFwJC5zdWJzY3JpYmUoKG1hcCkgPT4ge1xyXG4gICAgICAgIGlmIChtYXApIHtcclxuICAgICAgICAgIGNvbnN0IGdlb09iamVjdCA9IHRoaXMuX2NyZWF0ZUdlb09iamVjdCgpO1xyXG4gICAgICAgICAgdGhpcy5nZW9PYmplY3QgPSBnZW9PYmplY3Q7XHJcblxyXG4gICAgICAgICAgbWFwLmdlb09iamVjdHMuYWRkKGdlb09iamVjdCk7XHJcbiAgICAgICAgICB0aGlzLl9ldmVudE1hbmFnZXIuc2V0VGFyZ2V0KGdlb09iamVjdCk7XHJcbiAgICAgICAgICB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBnZW9PYmplY3QgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMuX3N1Yi5hZGQoc3ViKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZ2VvT2JqZWN0KSB7XHJcbiAgICAgIHRoaXMuX3lhTWFwQ29tcG9uZW50Py5tYXAkLnZhbHVlPy5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLmdlb09iamVjdCk7XHJcbiAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5kZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXN0cnVjdHMgZmVhdHVyZSBhbmQgcGFzc2VzIGl0IGluIEFQSS5cclxuICAgKiBAcGFyYW0gZmVhdHVyZVxyXG4gICAqIEBwYXJhbSBnZW9PYmplY3RcclxuICAgKi9cclxuICBwcml2YXRlIF9zZXRGZWF0dXJlKGZlYXR1cmU6IHltYXBzLklHZW9PYmplY3RGZWF0dXJlLCBnZW9PYmplY3Q6IHltYXBzLkdlb09iamVjdCk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBnZW9tZXRyeSwgcHJvcGVydGllcyB9ID0gZmVhdHVyZTtcclxuXHJcbiAgICBpZiAoZ2VvbWV0cnkpIHtcclxuICAgICAgY29uc29sZS53YXJuKFxyXG4gICAgICAgICdUaGUgZ2VvbWV0cnkgY2FuIG5vdCBiZSBjaGFuZ2VkIGFmdGVyIGVudGl0eSBpbml0LiBUbyBzZXQgaXQsIHlvdSBzaG91bGQgcmVjcmVhdGUgYSBHZW9PYmplY3Qgd2l0aCBuZXcgZmVhdHVyZS5nZW9tZXRyeScsXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHByb3BlcnRpZXMpIHtcclxuICAgICAgLyoqXHJcbiAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxyXG4gICAgICAgKi9cclxuICAgICAgKGdlb09iamVjdC5wcm9wZXJ0aWVzIGFzIGFueSkuc2V0KHByb3BlcnRpZXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlcyBHZW9PYmplY3QuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY3JlYXRlR2VvT2JqZWN0KCk6IHltYXBzLkdlb09iamVjdCB7XHJcbiAgICByZXR1cm4gbmV3IHltYXBzLkdlb09iamVjdCh0aGlzLmZlYXR1cmUsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1nZW9vYmplY3QveWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFJNUQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFrTS9CLFlBQTZCLE9BQWUsRUFBbUIsZUFBK0I7UUFBakUsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFtQixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUFqTTdFLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBZ0JoRTs7V0FFRztRQUNPLFVBQUssR0FBZ0QsSUFBSSxZQUFZLEVBRTVFLENBQUM7UUFFSjs7V0FFRztRQUNPLGlCQUFZLEdBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRXBEOztXQUVHO1FBQ08sZ0JBQVcsR0FDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFbkQ7O1dBRUc7UUFDTyxlQUFVLEdBQ2xCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FB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TTt3QkFNTixNQUFNOzBCQU1OLE1BQU07MkJBTU4sTUFBTTsyQkFNTixNQUFNOzBCQU1OLE1BQU07d0JBTU4sTUFBTTs0QkFNTixNQUFNOzZCQU1OLE1BQU07OEJBTU4sTUFBTTs0QkFNTixNQUFNOzRCQU1OLE1BQU07MkJBTU4sTUFBTTsrQkFNTixNQUFNO3NCQU1OLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIERpcmVjdGl2ZSxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgTmdab25lLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRXZlbnRNYW5hZ2VyIH0gZnJvbSAnLi4vLi4vdXRpbHMvZXZlbnQtbWFuYWdlcic7XHJcbmltcG9ydCB7IFlhTWFwQ29tcG9uZW50IH0gZnJvbSAnLi4veWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBZYVJlYWR5RXZlbnQgfSBmcm9tICcuLi8uLi90eXBpbmdzL3lhLXJlYWR5LWV2ZW50JztcclxuaW1wb3J0IHsgWWFFdmVudCB9IGZyb20gJy4uLy4uL3R5cGluZ3MveWEtZXZlbnQnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtZ2Vvb2JqZWN0YCBjb21wb25lbnQgd3JhcHMgYHltYXBzLkdlb09iamVjdGAgY2xhc3MgZnJvbSB0aGUgWWFuZGV4IE1hcHMgQVBJLlxyXG4gKiBZb3UgY2FuIGNvbmZpZ3VyZSBpdCB2aWEgdGhlIGNvbXBvbmVudCdzIGlucHV0cy5cclxuICogRXZlbnRzIGNhbiBiZSBib3VuZCB1c2luZyB0aGUgb3V0cHV0cyBvZiB0aGUgY29tcG9uZW50LlxyXG4gKlxyXG4gKiA8ZXhhbXBsZS11cmw+aHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9lZGl0L2dlb29iamVjdC1wb2x5Z29uP2VtYmVkPTE8L2V4YW1wbGUtdXJsPlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiA8eWEtbWFwIFtjZW50ZXJdPVwiWzU1Ljc2MTk1MiwgMzcuNjIwNzM5XVwiPlxyXG4gKiAgICAgICAgICAgICAgPHlhLWdlb29iamVjdFxyXG4gKiAgICAgICAgICAgICAgICBbZmVhdHVyZV09XCJ7IGdlb21ldHJ5OiB7IHR5cGU6ICdSZWN0YW5nbGUnLCBjb29yZGluYXRlczogW1s1NS42NjUsIDM3LjY2XSwgWzU1LjY0LDM3LjUzXV0gfSB9XCJcclxuICogICAgICAgICAgICAgID48L3lhLWdlb29iamVjdD5cclxuICogPC95YS1tYXA+XHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ3lhLWdlb29iamVjdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYUdlb09iamVjdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZXZlbnRNYW5hZ2VyID0gbmV3IEV2ZW50TWFuYWdlcih0aGlzLl9uZ1pvbmUpO1xyXG5cclxuICBnZW9PYmplY3Q/OiB5bWFwcy5HZW9PYmplY3Q7XHJcblxyXG4gIC8qKlxyXG4gICAqIEZlYXR1cmUgZm9yIHRoZSBHZW9PYmplY3QuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvR2VvT2JqZWN0Lmh0bWwjR2VvT2JqZWN0cGFyYW0tZmVhdHVyZX1cclxuICAgKi9cclxuICBASW5wdXQoKSBmZWF0dXJlOiB5bWFwcy5JR2VvT2JqZWN0RmVhdHVyZTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9ucyBmb3IgdGhlIEdlb09iamVjdC5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9HZW9PYmplY3QuaHRtbCNHZW9PYmplY3RwYXJhbS1vcHRpb25zfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IHltYXBzLklHZW9PYmplY3RPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBHZW9PYmplY3QgaW5zdGFuY2UgaXMgYWRkZWQgaW4gYSBNYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHJlYWR5OiBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxcclxuICAgIFlhUmVhZHlFdmVudDx5bWFwcy5HZW9PYmplY3Q+XHJcbiAgPigpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29uY2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JhbGxvb25jbG9zZScpO1xyXG5cclxuICAvKipcclxuICAgKiBPcGVuaW5nIGEgYmFsbG9vbiBvbiBhIG1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYmFsbG9vbm9wZW46IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JhbGxvb25vcGVuJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IHByZWNlZGluZyB0aGUgXCJkcmFnXCIgZXZlbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJlZm9yZWRyYWc6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JlZm9yZWRyYWcnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgcHJlY2VkaW5nIHRoZSBcImRyYWdzdGFydFwiIGV2ZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiZWZvcmVkcmFnc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JlZm9yZWRyYWdzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBTaW5nbGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdjbGljaycpO1xyXG5cclxuICAvKipcclxuICAgKiBDYWxscyB0aGUgZWxlbWVudCdzIGNvbnRleHQgbWVudS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFjb250ZXh0bWVudTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignY29udGV4dG1lbnUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRG91YmxlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkYmNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkYmNsaWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERyYWdnaW5nIGEgZ2VvIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkcmFnOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkcmFnJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuZCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRyYWdlbmQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RyYWdlbmQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RhcnQgb2YgZ2VvIG9iamVjdCBkcmFnZ2luZy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkcmFnc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RyYWdzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgaW4gdGhlIHN0YXRlIG9mIHRoZSBlZGl0b3IgZm9yIHRoZSBnZW8gb2JqZWN0J3MgZ2VvbWV0cnkuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGVkaXRvcnN0YXRlY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdlZGl0b3JzdGF0ZWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnlcclxuICAgKi9cclxuICBAT3V0cHV0KCkgZ2VvbWV0cnljaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2dlb21ldHJ5Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGhpbnRjbG9zZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignaGludGNsb3NlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZW5pbmcgYSBoaW50IG9uIGEgbWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBoaW50b3BlbjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignaGludG9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTWFwIHJlZmVyZW5jZSBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXBjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWRvd246IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlZG93bicpO1xyXG5cclxuICAvKipcclxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2VlbnRlcjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2VlbnRlcicpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvZmYgb2YgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWxlYXZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWxlYXZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZW1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlbW92ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBMZXR0aW5nIGdvIG9mIHRoZSBtb3VzZSBidXR0b24gb3ZlciBhbiBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2V1cDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2V1cCcpO1xyXG5cclxuICAvKipcclxuICAgKiBFbmQgb2YgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaGVuZDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaGVuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2htb3ZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtdWx0aXRvdWNobW92ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ211bHRpdG91Y2hzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIG9iamVjdCBvcHRpb25zLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvcHRpb25zY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvcHRpb25zY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvdmVybGF5Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuR2VvT2JqZWN0Pj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvdmVybGF5Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwYXJlbnQgb2JqZWN0IHJlZmVyZW5jZSBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwYXJlbnRjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3BhcmVudGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcHJvcGVydGllc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLkdlb09iamVjdD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcigncHJvcGVydGllc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3VzZSB3aGVlbCBzY3JvbGxpbmcuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhd2hlZWw6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5HZW9PYmplY3Q+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3doZWVsJyk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX25nWm9uZTogTmdab25lLCBwcml2YXRlIHJlYWRvbmx5IF95YU1hcENvbXBvbmVudDogWWFNYXBDb21wb25lbnQpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcGFzc2VzIHRoZW0gaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBjaGFuZ2VzXHJcbiAgICovXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBnZW9PYmplY3QgfSA9IHRoaXM7XHJcblxyXG4gICAgaWYgKGdlb09iamVjdCkge1xyXG4gICAgICBjb25zdCB7IGZlYXR1cmUsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgICBpZiAoZmVhdHVyZSkge1xyXG4gICAgICAgIHRoaXMuX3NldEZlYXR1cmUoZmVhdHVyZS5jdXJyZW50VmFsdWUsIGdlb09iamVjdCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgZ2VvT2JqZWN0Lm9wdGlvbnMuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5feWFNYXBDb21wb25lbnQuaXNCcm93c2VyKSB7XHJcbiAgICAgIGNvbnN0IHN1YiA9IHRoaXMuX3lhTWFwQ29tcG9uZW50Lm1hcCQuc3Vic2NyaWJlKChtYXApID0+IHtcclxuICAgICAgICBpZiAobWFwKSB7XHJcbiAgICAgICAgICBjb25zdCBnZW9PYmplY3QgPSB0aGlzLl9jcmVhdGVHZW9PYmplY3QoKTtcclxuICAgICAgICAgIHRoaXMuZ2VvT2JqZWN0ID0gZ2VvT2JqZWN0O1xyXG5cclxuICAgICAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChnZW9PYmplY3QpO1xyXG4gICAgICAgICAgdGhpcy5fZXZlbnRNYW5hZ2VyLnNldFRhcmdldChnZW9PYmplY3QpO1xyXG4gICAgICAgICAgdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogZ2VvT2JqZWN0IH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmdlb09iamVjdCkge1xyXG4gICAgICB0aGlzLl95YU1hcENvbXBvbmVudD8ubWFwJC52YWx1ZT8uZ2VvT2JqZWN0cy5yZW1vdmUodGhpcy5nZW9PYmplY3QpO1xyXG4gICAgICB0aGlzLl9ldmVudE1hbmFnZXIuZGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVzdHJ1Y3RzIGZlYXR1cmUgYW5kIHBhc3NlcyBpdCBpbiBBUEkuXHJcbiAgICogQHBhcmFtIGZlYXR1cmVcclxuICAgKiBAcGFyYW0gZ2VvT2JqZWN0XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfc2V0RmVhdHVyZShmZWF0dXJlOiB5bWFwcy5JR2VvT2JqZWN0RmVhdHVyZSwgZ2VvT2JqZWN0OiB5bWFwcy5HZW9PYmplY3QpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgZ2VvbWV0cnksIHByb3BlcnRpZXMgfSA9IGZlYXR1cmU7XHJcblxyXG4gICAgaWYgKGdlb21ldHJ5KSB7XHJcbiAgICAgIGNvbnNvbGUud2FybihcclxuICAgICAgICAnVGhlIGdlb21ldHJ5IGNhbiBub3QgYmUgY2hhbmdlZCBhZnRlciBlbnRpdHkgaW5pdC4gVG8gc2V0IGl0LCB5b3Ugc2hvdWxkIHJlY3JlYXRlIGEgR2VvT2JqZWN0IHdpdGggbmV3IGZlYXR1cmUuZ2VvbWV0cnknLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwcm9wZXJ0aWVzKSB7XHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cclxuICAgICAgICovXHJcbiAgICAgIChnZW9PYmplY3QucHJvcGVydGllcyBhcyBhbnkpLnNldChwcm9wZXJ0aWVzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgR2VvT2JqZWN0LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NyZWF0ZUdlb09iamVjdCgpOiB5bWFwcy5HZW9PYmplY3Qge1xyXG4gICAgcmV0dXJuIG5ldyB5bWFwcy5HZW9PYmplY3QodGhpcy5mZWF0dXJlLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxufVxyXG4iXX0=

@@ -12,3 +12,3 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, NgZone, Output, PLATFORM_ID, ViewChild, } from '@angular/core';

*
* <example-url>https://map-onload-event.stackblitz.io</example-url>
* <example-url>https://stackblitz.com/edit/map-onload-event?embed=1</example-url>
*

@@ -278,2 +278,2 @@ * @example

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1tYXAveWEtbWFwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBR04sTUFBTSxFQUNOLFdBQVcsRUFFWCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBYyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBeUIsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUV4Rjs7Ozs7Ozs7Ozs7O0dBWUc7QUFNSCxNQUFNLE9BQU8sY0FBYztJQTJNekIsWUFDbUIsT0FBZSxFQUNmLG1CQUF1QyxFQUNuQyxVQUFrQjtRQUZ0QixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2Ysd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQTFNekMsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUIsa0JBQWEsR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFaEUsU0FBSSxHQUFHLElBQUksZUFBZSxDQUF3QixTQUFTLENBQUMsQ0FBQztRQThCN0Q7O1dBRUc7UUFDTyxVQUFLLEdBQTBDLElBQUksWUFBWSxFQUV0RSxDQUFDO1FBRUo7O1dBRUc7UUFDTyxnQkFBVyxHQUNu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QVE7Z0JBQ2xCLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEOzs7WUEvQkMsTUFBTTtZQVlDLGtCQUFrQjtZQWtPVSxNQUFNLHVCQUF0QyxNQUFNLFNBQUMsV0FBVzs7O3dCQTdNcEIsU0FBUyxTQUFDLFdBQVc7cUJBZXJCLEtBQUs7bUJBT0wsS0FBSztvQkFNTCxLQUFLO3NCQU1MLEtBQUs7b0JBS0wsTUFBTTswQkFPTixNQUFNOzBCQU1OLE1BQU07d0JBTU4sTUFBTTt5QkFNTixNQUFNO2lDQU1OLE1BQU07MkJBTU4sTUFBTTswQkFNTixNQUFNOzJCQU1OLE1BQU07c0JBTU4sTUFBTTs0QkFLTixNQUFNO3dCQU1OLE1BQU07c0JBTU4sTUFBTTt3QkFLTixNQUFNO3VCQU1OLE1BQU07MkJBTU4sTUFBTTswQkFNTixNQUFNOzJCQU1OLE1BQU07MkJBTU4sTUFBTTswQkFNTixNQUFNO3dCQU1OLE1BQU07NEJBTU4sTUFBTTs2QkFNTixNQUFNOzhCQU1OLE1BQU07NEJBTU4sTUFBTTt5QkFNTixNQUFNO3lCQU1OLE1BQU07c0JBTU4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0LFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE91dHB1dCxcclxuICBQTEFURk9STV9JRCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBFdmVudE1hbmFnZXIsIFlhRXZlbnQsIFlhUmVhZHlFdmVudCB9IGZyb20gJy4uLy4uL3V0aWxzL2V2ZW50LW1hbmFnZXInO1xyXG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGUtcmFuZG9tLWlkJztcclxuaW1wb3J0IHsgWWFBcGlMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMveWEtYXBpLWxvYWRlci95YS1hcGktbG9hZGVyLnNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtbWFwYCBjb21wb25lbnQgd3JhcHMgYHltYXBzLk1hcGAgY2xhc3MgZnJvbSB0aGUgWWFuZGV4IE1hcHMgQVBJLlxyXG4gKiBZb3UgY2FuIGNvbmZpZ3VyZSB0aGUgbWFwIHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBFdmVudHMgY2FuIGJlIGJvdW5kIHVzaW5nIHRoZSBvdXRwdXRzIG9mIHRoZSBjb21wb25lbnQuXHJcbiAqXHJcbiAqIDxleGFtcGxlLXVybD5odHRwczovL21hcC1vbmxvYWQtZXZlbnQuc3RhY2tibGl0ei5pbzwvZXhhbXBsZS11cmw+XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDx5YS1tYXBcclxuICogICAgICAgICAgICAgIFtjZW50ZXJdPVwiWzU1Ljc1MTk1MiwgMzcuNjAwNzM5XVwiXHJcbiAqICAgICAgICAgICAgICBbc3RhdGVdPVwie3R5cGU6ICd5YW5kZXgjc2F0ZWxsaXRlJ31cIlxyXG4gKiA+PC95YS1tYXA+XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3lhLW1hcCcsXHJcbiAgdGVtcGxhdGU6ICc8ZGl2ICNjb250YWluZXI+PC9kaXY+JyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFlhTWFwQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicpIGNvbnRhaW5lcjogRWxlbWVudFJlZjtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudE1hbmFnZXIgPSBuZXcgRXZlbnRNYW5hZ2VyKHRoaXMuX25nWm9uZSk7XHJcblxyXG4gIG1hcCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHltYXBzLk1hcCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuXHJcbiAgaXNCcm93c2VyOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgY2VudGVyIGdlb2Nvb3JkaW5hdGVzLiBEZWZhdWx0IGlzIFswLCAwXS5cclxuICAgKiBTaG9ydGhhbmQgZm9yIFtzdGF0ZV09XCJ7IGNlbnRlcjogWzAsIDBdIH1cIi5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9NYXAuaHRtbCNNYXBfX3BhcmFtLXN0YXRlLmNlbnRlcn1cclxuICAgKi9cclxuICBASW5wdXQoKSBjZW50ZXI6IG51bWJlcltdO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgem9vbSBsZXZlbC4gRGVmYXVsdCBsZXZlbCBpcyAxMC5cclxuICAgKiBTaG9ydGhhbmQgZm9yIFtzdGF0ZV09XCJ7IHpvb206IDEwIH1cIi5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9NYXAuaHRtbCNNYXBfX3BhcmFtLXN0YXRlLnpvb219XHJcbiAgICovXHJcbiAgQElucHV0KCkgem9vbTogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBTdGF0ZXMgZm9yIHRoZSBtYXAuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvTWFwLmh0bWwjTWFwcGFyYW0tc3RhdGV9XHJcbiAgICovXHJcbiAgQElucHV0KCkgc3RhdGU6IHltYXBzLklNYXBTdGF0ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9ucyBmb3IgdGhlIG1hcC5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9NYXAuaHRtbCNNYXBwYXJhbS1vcHRpb25zfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IHltYXBzLklNYXBPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgaW5zdGFuY2UgaXMgY3JlYXRlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcmVhZHk6IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ8eW1hcHMuTWFwPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxyXG4gICAgWWFSZWFkeUV2ZW50PHltYXBzLk1hcD5cclxuICA+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBzdGFydCBvZiBhIG5ldyBzbW9vdGggbWFwIG1vdmVtZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3Rpb25iZWdpbjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYWN0aW9uYmVnaW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgdGhhdCBvY2N1cnMgd2hlbiBhbiBhY3Rpb24gc3RlcCB3YXMgcHJlbWF0dXJlbHkgc3RvcHBlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYWN0aW9uYnJlYWs6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2FjdGlvbmJyZWFrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBlbmQgb2Ygc21vb3RoIG1hcCBtb3ZlbWVudC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYWN0aW9uZW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdhY3Rpb25lbmQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHN0YXJ0IG9mIGEgbmV3IHN0ZXAgb2Ygc21vb3RoIG1vdmVtZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3Rpb250aWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdhY3Rpb250aWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBlbmQgb2YgcGVyZm9ybWluZyBhIHN0ZXAgb2Ygc21vb3RoIG1vdmVtZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3Rpb250aWNrY29tcGxldGU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2FjdGlvbnRpY2tjb21wbGV0ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29uY2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JhbGxvb25jbG9zZScpO1xyXG5cclxuICAvKipcclxuICAgKiBPcGVuaW5nIGEgYmFsbG9vbiBvbiBhIG1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYmFsbG9vbm9wZW46IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JhbGxvb25vcGVuJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGZvciBhIGNoYW5nZSB0byB0aGUgbWFwIHZpZXdwb3J0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBib3VuZHNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JvdW5kc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBTaW5nbGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPSB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2NsaWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxzIHRoZSBlbGVtZW50J3MgY29udGV4dCBtZW51LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNvbnRleHRtZW51OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdjb250ZXh0bWVudScpO1xyXG5cclxuICAvKipcclxuICAgKiBEb3VibGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRiY2xpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RiY2xpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIG1hcCB3YXMgZGVzdHJveWVkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBkZXN0cm95OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPSB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2Rlc3Ryb3knKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2xvc2luZyB0aGUgaGludC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgaGludGNsb3NlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdoaW50Y2xvc2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGhpbnRvcGVuOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdoaW50b3BlbicpO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgbWFyZ2lucyBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXJnaW5jaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcmdpbmNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWRvd246IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlZG93bicpO1xyXG5cclxuICAvKipcclxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2VlbnRlcjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2VlbnRlcicpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvZmYgb2YgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWxlYXZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWxlYXZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZW1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlbW92ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBMZXR0aW5nIGdvIG9mIHRoZSBtb3VzZSBidXR0b24gb3ZlciBhbiBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2V1cDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2V1cCcpO1xyXG5cclxuICAvKipcclxuICAgKiBFbmQgb2YgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaGVuZDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaGVuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2htb3ZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtdWx0aXRvdWNobW92ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ211bHRpdG91Y2hzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgb3B0aW9ucyBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvcHRpb25zY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvcHRpb25zY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBzaXplIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHNpemVjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3NpemVjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIG1hcCB0eXBlIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHR5cGVjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3R5cGVjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YXdoZWVsOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPSB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3doZWVsJyk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF95YUFwaUxvYWRlclNlcnZpY2U6IFlhQXBpTG9hZGVyU2VydmljZSxcclxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHBsYXRmb3JtSWQ6IE9iamVjdCxcclxuICApIHtcclxuICAgIHRoaXMuaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHBhc3NlcyB0aGVtIGluIEFQSS5cclxuICAgKiBAcGFyYW0gY2hhbmdlc1xyXG4gICAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IG1hcCA9IHRoaXMubWFwJC52YWx1ZTtcclxuXHJcbiAgICBpZiAobWFwKSB7XHJcbiAgICAgIGNvbnN0IHsgY2VudGVyLCB6b29tLCBzdGF0ZSwgb3B0aW9ucyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICAgIGlmIChzdGF0ZSkge1xyXG4gICAgICAgIHRoaXMuX3NldFN0YXRlKHRoaXMuX2NvbWJpbmVTdGF0ZSgpLCBtYXApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY2VudGVyKSB7XHJcbiAgICAgICAgbWFwLnNldENlbnRlcihjZW50ZXIuY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHpvb20pIHtcclxuICAgICAgICBtYXAuc2V0Wm9vbSh6b29tLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgbWFwLm9wdGlvbnMuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgLyoqXHJcbiAgICAgKiBJdCBzaG91bGQgYmUgYSBub29wIGR1cmluZyBzZXJ2ZXItc2lkZSByZW5kZXJpbmcuXHJcbiAgICAgKi9cclxuICAgIGlmICh0aGlzLmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YUFwaUxvYWRlclNlcnZpY2UubG9hZCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgaWQgPSBnZW5lcmF0ZVJhbmRvbUlkKCk7XHJcbiAgICAgICAgY29uc3QgbWFwID0gdGhpcy5fY3JlYXRlTWFwKGlkKTtcclxuXHJcbiAgICAgICAgdGhpcy5tYXAkLm5leHQobWFwKTtcclxuICAgICAgICB0aGlzLl9ldmVudE1hbmFnZXIuc2V0VGFyZ2V0KG1hcCk7XHJcbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBtYXAgfSkpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMuX3N1Yi5hZGQoc3ViKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmRlc3Ryb3koKTtcclxuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVzdHJ1Y3RzIHN0YXRlIGFuZCBwYXNzZXMgaXQgaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBzdGF0ZVxyXG4gICAqIEBwYXJhbSBtYXBcclxuICAgKi9cclxuICBwcml2YXRlIF9zZXRTdGF0ZShzdGF0ZTogeW1hcHMuSU1hcFN0YXRlLCBtYXA6IHltYXBzLk1hcCk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBiZWhhdmlvcnMsIGJvdW5kcywgY2VudGVyLCBjb250cm9scywgbWFyZ2luLCB0eXBlLCB6b29tIH0gPSBzdGF0ZTtcclxuXHJcbiAgICBpZiAoYmVoYXZpb3JzKSB7XHJcbiAgICAgIG1hcC5iZWhhdmlvcnMuZW5hYmxlKGJlaGF2aW9ycyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGJvdW5kcykge1xyXG4gICAgICBtYXAuc2V0Qm91bmRzKGJvdW5kcyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNlbnRlcikge1xyXG4gICAgICBtYXAuc2V0Q2VudGVyKGNlbnRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbnRyb2xzKSB7XHJcbiAgICAgIGNvbnRyb2xzLmZvckVhY2goKGNvbnRyb2wpID0+IG1hcC5jb250cm9scy5hZGQoY29udHJvbCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChtYXJnaW4pIHtcclxuICAgICAgbWFwLm1hcmdpbi5zZXREZWZhdWx0TWFyZ2luKG1hcmdpbik7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHR5cGUpIHtcclxuICAgICAgbWFwLnNldFR5cGUodHlwZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHpvb20pIHtcclxuICAgICAgbWFwLnNldFpvb20oem9vbSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGVzIGEgbWFwLlxyXG4gICAqIEBwYXJhbSBpZCBJRCB3aGljaCB3aWxsIGJlIHNldCB0byB0aGUgbWFwIGNvbnRhaW5lci5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVNYXAoaWQ6IHN0cmluZyk6IHltYXBzLk1hcCB7XHJcbiAgICBjb25zdCBjb250YWluZXJFbGVtOiBIVE1MRWxlbWVudCA9IHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb250YWluZXJFbGVtLnNldEF0dHJpYnV0ZSgnaWQnLCBpZCk7XHJcbiAgICBjb250YWluZXJFbGVtLnN0eWxlLmNzc1RleHQgPSAnd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsnO1xyXG5cclxuICAgIHJldHVybiBuZXcgeW1hcHMuTWFwKGlkLCB0aGlzLl9jb21iaW5lU3RhdGUoKSwgdGhpcy5vcHRpb25zIHx8IHt9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbWJpbmVzIHRoZSBjZW50ZXIgYW5kIHpvb20gaW50byBzaW5nbGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NvbWJpbmVTdGF0ZSgpOiB5bWFwcy5JTWFwU3RhdGUge1xyXG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLnN0YXRlIHx8IHt9O1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIC4uLnN0YXRlLFxyXG4gICAgICBjZW50ZXI6IHRoaXMuY2VudGVyIHx8IHN0YXRlLmNlbnRlciB8fCBbMCwgMF0sXHJcbiAgICAgIHpvb206IHRoaXMuem9vbSA/PyBzdGF0ZS56b29tID8/IDEwLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1tYXAveWEtbWFwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBR04sTUFBTSxFQUNOLFdBQVcsRUFFWCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBYyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBSXhGOzs7Ozs7Ozs7Ozs7R0FZRztBQU1ILE1BQU0sT0FBTyxjQUFjO0lBMk16QixZQUNtQixPQUFlLEVBQ2YsbUJBQXVDLEVBQ25DLFVBQWtCO1FBRnRCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQW9CO1FBMU16QyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQixrQkFBYSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVoRSxTQUFJLEdBQUcsSUFBSSxlQUFlLENBQXdCLFNBQVMsQ0FBQyxDQUFDO1FBOEI3RDs7V0FFRztRQUNPLFVBQUssR0FBMEMsSUFBSSxZQUFZLEVBRXRFLENBQUM7UUFFSjs7V0FFRztRQUNPLGdCQUFXLEdBQ25C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UTtnQkFDbEIsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7OztZQWpDQyxNQUFNO1lBWUMsa0JBQWtCO1lBb09VLE1BQU0sdUJBQXRDLE1BQU0sU0FBQyxXQUFXOzs7d0JBN01wQixTQUFTLFNBQUMsV0FBVztxQkFlckIsS0FBSzttQkFPTCxLQUFLO29CQU1MLEtBQUs7c0JBTUwsS0FBSztvQkFLTCxNQUFNOzBCQU9OLE1BQU07MEJBTU4sTUFBTTt3QkFNTixNQUFNO3lCQU1OLE1BQU07aUNBTU4sTUFBTTsyQkFNTixNQUFNOzBCQU1OLE1BQU07MkJBTU4sTUFBTTtzQkFNTixNQUFNOzRCQUtOLE1BQU07d0JBTU4sTUFBTTtzQkFNTixNQUFNO3dCQUtOLE1BQU07dUJBTU4sTUFBTTsyQkFNTixNQUFNOzBCQU1OLE1BQU07MkJBTU4sTUFBTTsyQkFNTixNQUFNOzBCQU1OLE1BQU07d0JBTU4sTUFBTTs0QkFNTixNQUFNOzZCQU1OLE1BQU07OEJBTU4sTUFBTTs0QkFNTixNQUFNO3lCQU1OLE1BQU07eUJBTU4sTUFBTTtzQkFNTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3QsXHJcbiAgSW5wdXQsXHJcbiAgTmdab25lLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT3V0cHV0LFxyXG4gIFBMQVRGT1JNX0lELFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEV2ZW50TWFuYWdlciB9IGZyb20gJy4uLy4uL3V0aWxzL2V2ZW50LW1hbmFnZXInO1xyXG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGUtcmFuZG9tLWlkJztcclxuaW1wb3J0IHsgWWFBcGlMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMveWEtYXBpLWxvYWRlci95YS1hcGktbG9hZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBZYVJlYWR5RXZlbnQgfSBmcm9tICcuLi8uLi90eXBpbmdzL3lhLXJlYWR5LWV2ZW50JztcclxuaW1wb3J0IHsgWWFFdmVudCB9IGZyb20gJy4uLy4uL3R5cGluZ3MveWEtZXZlbnQnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtbWFwYCBjb21wb25lbnQgd3JhcHMgYHltYXBzLk1hcGAgY2xhc3MgZnJvbSB0aGUgWWFuZGV4IE1hcHMgQVBJLlxyXG4gKiBZb3UgY2FuIGNvbmZpZ3VyZSB0aGUgbWFwIHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBFdmVudHMgY2FuIGJlIGJvdW5kIHVzaW5nIHRoZSBvdXRwdXRzIG9mIHRoZSBjb21wb25lbnQuXHJcbiAqXHJcbiAqIDxleGFtcGxlLXVybD5odHRwczovL3N0YWNrYmxpdHouY29tL2VkaXQvbWFwLW9ubG9hZC1ldmVudD9lbWJlZD0xPC9leGFtcGxlLXVybD5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogPHlhLW1hcFxyXG4gKiAgICAgICAgICAgICAgW2NlbnRlcl09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCJcclxuICogICAgICAgICAgICAgIFtzdGF0ZV09XCJ7dHlwZTogJ3lhbmRleCNzYXRlbGxpdGUnfVwiXHJcbiAqID48L3lhLW1hcD5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAneWEtbWFwJyxcclxuICB0ZW1wbGF0ZTogJzxkaXYgI2NvbnRhaW5lcj48L2Rpdj4nLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWWFNYXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJykgY29udGFpbmVyOiBFbGVtZW50UmVmO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50TWFuYWdlciA9IG5ldyBFdmVudE1hbmFnZXIodGhpcy5fbmdab25lKTtcclxuXHJcbiAgbWFwJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eW1hcHMuTWFwIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuICBpc0Jyb3dzZXI6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBjZW50ZXIgZ2VvY29vcmRpbmF0ZXMuIERlZmF1bHQgaXMgWzAsIDBdLlxyXG4gICAqIFNob3J0aGFuZCBmb3IgW3N0YXRlXT1cInsgY2VudGVyOiBbMCwgMF0gfVwiLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL01hcC5odG1sI01hcF9fcGFyYW0tc3RhdGUuY2VudGVyfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNlbnRlcjogbnVtYmVyW107XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCB6b29tIGxldmVsLiBEZWZhdWx0IGxldmVsIGlzIDEwLlxyXG4gICAqIFNob3J0aGFuZCBmb3IgW3N0YXRlXT1cInsgem9vbTogMTAgfVwiLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL01hcC5odG1sI01hcF9fcGFyYW0tc3RhdGUuem9vbX1cclxuICAgKi9cclxuICBASW5wdXQoKSB6b29tOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0YXRlcyBmb3IgdGhlIG1hcC5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9NYXAuaHRtbCNNYXBwYXJhbS1zdGF0ZX1cclxuICAgKi9cclxuICBASW5wdXQoKSBzdGF0ZTogeW1hcHMuSU1hcFN0YXRlO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25zIGZvciB0aGUgbWFwLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL01hcC5odG1sI01hcHBhcmFtLW9wdGlvbnN9XHJcbiAgICovXHJcbiAgQElucHV0KCkgb3B0aW9uczogeW1hcHMuSU1hcE9wdGlvbnM7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBpbnN0YW5jZSBpcyBjcmVhdGVkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSByZWFkeTogRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudDx5bWFwcy5NYXA+PiA9IG5ldyBFdmVudEVtaXR0ZXI8XHJcbiAgICBZYVJlYWR5RXZlbnQ8eW1hcHMuTWFwPlxyXG4gID4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHN0YXJ0IG9mIGEgbmV3IHNtb290aCBtYXAgbW92ZW1lbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGFjdGlvbmJlZ2luOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdhY3Rpb25iZWdpbicpO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudCB0aGF0IG9jY3VycyB3aGVuIGFuIGFjdGlvbiBzdGVwIHdhcyBwcmVtYXR1cmVseSBzdG9wcGVkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3Rpb25icmVhazogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYWN0aW9uYnJlYWsnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGVuZCBvZiBzbW9vdGggbWFwIG1vdmVtZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3Rpb25lbmQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2FjdGlvbmVuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgc3RhcnQgb2YgYSBuZXcgc3RlcCBvZiBzbW9vdGggbW92ZW1lbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGFjdGlvbnRpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2FjdGlvbnRpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGVuZCBvZiBwZXJmb3JtaW5nIGEgc3RlcCBvZiBzbW9vdGggbW92ZW1lbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGFjdGlvbnRpY2tjb21wbGV0ZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYWN0aW9udGlja2NvbXBsZXRlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENsb3NpbmcgdGhlIGJhbGxvb24uXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJhbGxvb25jbG9zZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmFsbG9vbmNsb3NlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZW5pbmcgYSBiYWxsb29uIG9uIGEgbWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29ub3BlbjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmFsbG9vbm9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZm9yIGEgY2hhbmdlIHRvIHRoZSBtYXAgdmlld3BvcnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJvdW5kc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYm91bmRzY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNpbmdsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhY2xpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9IHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignY2xpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhY29udGV4dG1lbnU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2NvbnRleHRtZW51Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhZGJjbGljazogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZGJjbGljaycpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgbWFwIHdhcyBkZXN0cm95ZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGRlc3Ryb3k6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9IHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZGVzdHJveScpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBoaW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBoaW50Y2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2hpbnRjbG9zZScpO1xyXG5cclxuICAvKipcclxuICAgKiBPcGVuaW5nIGEgaGludCBvbiBhIG1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgaGludG9wZW46IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2hpbnRvcGVuJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBtYXJnaW5zIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcmdpbmNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbWFyZ2luY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByZXNzaW5nIHRoZSBtb3VzZSBidXR0b24gb3ZlciB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlZG93bjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2Vkb3duJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFBvaW50aW5nIHRoZSBjdXJzb3IgYXQgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWVudGVyOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWVudGVyJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG9mZiBvZiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlbGVhdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlbGVhdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlbW92ZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2Vtb3ZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIExldHRpbmcgZ28gb2YgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIGFuIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZXVwOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZXVwJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoZW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuTWFwPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtdWx0aXRvdWNoZW5kJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlcGVhdGluZyBldmVudCBkdXJpbmcgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaG1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ211bHRpdG91Y2htb3ZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0YXJ0IG9mIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2hzdGFydDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaHN0YXJ0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCBvcHRpb25zIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9wdGlvbnNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ29wdGlvbnNjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTWFwIHNpemUgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgc2l6ZWNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignc2l6ZWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgbWFwIHR5cGUgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgdHlwZWNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLk1hcD4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcigndHlwZWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3VzZSB3aGVlbCBzY3JvbGxpbmcuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhd2hlZWw6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5NYXA+PiA9IHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignd2hlZWwnKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3lhQXBpTG9hZGVyU2VydmljZTogWWFBcGlMb2FkZXJTZXJ2aWNlLFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0LFxyXG4gICkge1xyXG4gICAgdGhpcy5pc0Jyb3dzZXIgPSBpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybUlkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcGFzc2VzIHRoZW0gaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBjaGFuZ2VzXHJcbiAgICovXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgbWFwID0gdGhpcy5tYXAkLnZhbHVlO1xyXG5cclxuICAgIGlmIChtYXApIHtcclxuICAgICAgY29uc3QgeyBjZW50ZXIsIHpvb20sIHN0YXRlLCBvcHRpb25zIH0gPSBjaGFuZ2VzO1xyXG5cclxuICAgICAgaWYgKHN0YXRlKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0U3RhdGUodGhpcy5fY29tYmluZVN0YXRlKCksIG1hcCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChjZW50ZXIpIHtcclxuICAgICAgICBtYXAuc2V0Q2VudGVyKGNlbnRlci5jdXJyZW50VmFsdWUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoem9vbSkge1xyXG4gICAgICAgIG1hcC5zZXRab29tKHpvb20uY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgICBtYXAub3B0aW9ucy5zZXQob3B0aW9ucy5jdXJyZW50VmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAvKipcclxuICAgICAqIEl0IHNob3VsZCBiZSBhIG5vb3AgZHVyaW5nIHNlcnZlci1zaWRlIHJlbmRlcmluZy5cclxuICAgICAqL1xyXG4gICAgaWYgKHRoaXMuaXNCcm93c2VyKSB7XHJcbiAgICAgIGNvbnN0IHN1YiA9IHRoaXMuX3lhQXBpTG9hZGVyU2VydmljZS5sb2FkKCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBjb25zdCBpZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcclxuICAgICAgICBjb25zdCBtYXAgPSB0aGlzLl9jcmVhdGVNYXAoaWQpO1xyXG5cclxuICAgICAgICB0aGlzLm1hcCQubmV4dChtYXApO1xyXG4gICAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5zZXRUYXJnZXQobWFwKTtcclxuICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IG1hcCB9KSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5fc3ViLmFkZChzdWIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZGVzdHJveSgpO1xyXG4gICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXN0cnVjdHMgc3RhdGUgYW5kIHBhc3NlcyBpdCBpbiBBUEkuXHJcbiAgICogQHBhcmFtIHN0YXRlXHJcbiAgICogQHBhcmFtIG1hcFxyXG4gICAqL1xyXG4gIHByaXZhdGUgX3NldFN0YXRlKHN0YXRlOiB5bWFwcy5JTWFwU3RhdGUsIG1hcDogeW1hcHMuTWFwKTogdm9pZCB7XHJcbiAgICBjb25zdCB7IGJlaGF2aW9ycywgYm91bmRzLCBjZW50ZXIsIGNvbnRyb2xzLCBtYXJnaW4sIHR5cGUsIHpvb20gfSA9IHN0YXRlO1xyXG5cclxuICAgIGlmIChiZWhhdmlvcnMpIHtcclxuICAgICAgbWFwLmJlaGF2aW9ycy5lbmFibGUoYmVoYXZpb3JzKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYm91bmRzKSB7XHJcbiAgICAgIG1hcC5zZXRCb3VuZHMoYm91bmRzKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY2VudGVyKSB7XHJcbiAgICAgIG1hcC5zZXRDZW50ZXIoY2VudGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29udHJvbHMpIHtcclxuICAgICAgY29udHJvbHMuZm9yRWFjaCgoY29udHJvbCkgPT4gbWFwLmNvbnRyb2xzLmFkZChjb250cm9sKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG1hcmdpbikge1xyXG4gICAgICBtYXAubWFyZ2luLnNldERlZmF1bHRNYXJnaW4obWFyZ2luKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZSkge1xyXG4gICAgICBtYXAuc2V0VHlwZSh0eXBlKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoem9vbSkge1xyXG4gICAgICBtYXAuc2V0Wm9vbSh6b29tKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgYSBtYXAuXHJcbiAgICogQHBhcmFtIGlkIElEIHdoaWNoIHdpbGwgYmUgc2V0IHRvIHRoZSBtYXAgY29udGFpbmVyLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NyZWF0ZU1hcChpZDogc3RyaW5nKTogeW1hcHMuTWFwIHtcclxuICAgIGNvbnN0IGNvbnRhaW5lckVsZW06IEhUTUxFbGVtZW50ID0gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudDtcclxuICAgIGNvbnRhaW5lckVsZW0uc2V0QXR0cmlidXRlKCdpZCcsIGlkKTtcclxuICAgIGNvbnRhaW5lckVsZW0uc3R5bGUuY3NzVGV4dCA9ICd3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyc7XHJcblxyXG4gICAgcmV0dXJuIG5ldyB5bWFwcy5NYXAoaWQsIHRoaXMuX2NvbWJpbmVTdGF0ZSgpLCB0aGlzLm9wdGlvbnMgfHwge30pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29tYmluZXMgdGhlIGNlbnRlciBhbmQgem9vbSBpbnRvIHNpbmdsZSBvYmplY3QuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY29tYmluZVN0YXRlKCk6IHltYXBzLklNYXBTdGF0ZSB7XHJcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMuc3RhdGUgfHwge307XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgLi4uc3RhdGUsXHJcbiAgICAgIGNlbnRlcjogdGhpcy5jZW50ZXIgfHwgc3RhdGUuY2VudGVyIHx8IFswLCAwXSxcclxuICAgICAgem9vbTogdGhpcy56b29tID8/IHN0YXRlLnpvb20gPz8gMTAsXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=

@@ -10,2 +10,4 @@ import { Directive, EventEmitter, Input, NgZone, Output, } from '@angular/core';

*
* <example-url>https://stackblitz.com/edit/multiroute-pedestrian?embed=1</example-url>
*
* @example

@@ -242,2 +244,2 @@ * <ya-map [center]="[55.761952, 37.620739]">

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbXVsdGlyb3V0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2NvbXBvbmVudHMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQXlCLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBTzVEOzs7Ozs7Ozs7Ozs7R0FZRztBQUlILE1BQU0sT0FBTyxxQkFBcUI7SUF5TGhDLFlBQTZCLE9BQWUsRUFBbUIsZUFBK0I7UUFBakUsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFtQixvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUF4TDdFLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTFCLGtCQUFhLEdBQUcsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBeUJoRTs7V0FFRztRQUNPLFVBQUssR0FBNkQsSUFBSSxZQUFZLEVBRXpGLENBQUM7UUFFSjs7V0FFRztRQUNPLHNCQUFpQixHQUN6QixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRXpEOztXQUVHO1FBQ08saUJBQVksR0FDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFcEQ7O1dBRUc7UUFDTyxnQkFBVyxHQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxh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TixNQUFNOzRCQU1OLE1BQU07d0JBTU4sTUFBTTs2QkFNTixNQUFNO3dCQU1OLE1BQU07MEJBTU4sTUFBTTsyQkFNTixNQUFNOzJCQU1OLE1BQU07MEJBTU4sTUFBTTt3QkFNTixNQUFNOzRCQU1OLE1BQU07NkJBTU4sTUFBTTs4QkFNTixNQUFNOzRCQU1OLE1BQU07NEJBTU4sTUFBTTsyQkFNTixNQUFNO2dDQU1OLE1BQU07K0JBTU4sTUFBTTtxQkFNTixNQUFNO3NCQU1OLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIERpcmVjdGl2ZSxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgTmdab25lLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRXZlbnRNYW5hZ2VyLCBZYUV2ZW50LCBZYVJlYWR5RXZlbnQgfSBmcm9tICcuLi8uLi91dGlscy9ldmVudC1tYW5hZ2VyJztcclxuaW1wb3J0IHsgWWFNYXBDb21wb25lbnQgfSBmcm9tICcuLi95YS1tYXAveWEtbWFwLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQGludGVybmFsXHJcbiAqL1xyXG50eXBlIE9wdGlvbmFsPFQsIEsgZXh0ZW5kcyBrZXlvZiBUPiA9IFBpY2s8UGFydGlhbDxUPiwgSz4gJiBPbWl0PFQsIEs+O1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtbXVsdGlyb3V0ZWAgY29tcG9uZW50IHdyYXBzIGB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlYCBjbGFzcyBmcm9tIHRoZSBZYW5kZXggTWFwcyBBUEkuXHJcbiAqIFlvdSBjYW4gY29uZmlndXJlIGl0IHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBFdmVudHMgY2FuIGJlIGJvdW5kIHVzaW5nIHRoZSBvdXRwdXRzIG9mIHRoZSBjb21wb25lbnQuXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDx5YS1tYXAgW2NlbnRlcl09XCJbNTUuNzYxOTUyLCAzNy42MjA3MzldXCI+XHJcbiAqICAgICAgICAgICAgICA8eWEtbXVsdGlyb3V0ZVxyXG4gKiAgICAgICAgICAgICAgICBbcmVmZXJlbmNlUG9pbnRzXT1cIltbNTUuNzUxOTUyLCAzNy42MDA3MzldLCAn0JrRgNCw0YHQvdGL0LUg0LLQvtGA0L7RgtCwLCDQnNC+0YHQutCy0LAnXVwiXHJcbiAqICAgICAgICAgICAgICAgIFttb2RlbF09XCJ7IHBhcmFtczogeyByb3V0aW5nTW9kZTogJ3BlZGVzdHJpYW4nIH0gfVwiXHJcbiAqICAgICAgICAgICAgICA+PC95YS1tdWx0aXJvdXRlPlxyXG4gKiA8L3lhLW1hcD5cclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAneWEtbXVsdGlyb3V0ZScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYU11bHRpcm91dGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50TWFuYWdlciA9IG5ldyBFdmVudE1hbmFnZXIodGhpcy5fbmdab25lKTtcclxuXHJcbiAgcHJpdmF0ZSBfbXVsdGlyb3V0ZT86IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZmVyZW5jZSBwb2ludHMgZm9yIHRoZSBtdWx0aXJvdXRlLlxyXG4gICAqIFNob3J0aGFuZCBmb3IgW21vZGVsXT1cInsgcmVmZXJlbmNlUG9pbnRzOiBbMCwgMF0gfVwiLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0lNdWx0aVJvdXRlUmVmZXJlbmNlUG9pbnQuaHRtbH1cclxuICAgKi9cclxuICBASW5wdXQoKSByZWZlcmVuY2VQb2ludHM6IHltYXBzLklNdWx0aVJvdXRlUmVmZXJlbmNlUG9pbnRbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW9kZWwgZGVzY3JpcHRpb24gb2JqZWN0IG9mIGEgbXVsdGlyb3V0ZS5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9JTXVsdGlSb3V0ZU1vZGVsSnNvbi5odG1sfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG1vZGVsOlxyXG4gICAgfCB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlTW9kZWxcclxuICAgIHwgT3B0aW9uYWw8eW1hcHMuSU11bHRpUm91dGVNb2RlbEpzb24sICdyZWZlcmVuY2VQb2ludHMnPjtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9ucyBmb3IgdGhlIG11bHRpcm91dGUuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvbXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZS5odG1sI211bHRpUm91dGVyLk11bHRpUm91dGVfX3BhcmFtLW9wdGlvbnN9XHJcbiAgICovXHJcbiAgQElucHV0KCkgb3B0aW9uczogeW1hcHMubXVsdGlSb3V0ZXIuSU11bHRpUm91dGVPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBNdWx0aXJvdXRlIGluc3RhbmNlIGlzIGFkZGVkIGluIGEgTWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSByZWFkeTogRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxyXG4gICAgWWFSZWFkeUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+XHJcbiAgPigpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGFjdGl2ZSByb3V0ZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYWN0aXZlcm91dGVjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdhY3RpdmVyb3V0ZWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29uY2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdiYWxsb29uY2xvc2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJhbGxvb25vcGVuOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmFsbG9vbm9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGV2ZW50IG9jY3VycyBhdCB0aGUgdGltZSBvZiBzZXR0aW5nIHRoZSBtYXAgY2VudGVyIGFuZCBpdHMgem9vbSBsZXZlbCBmb3Igb3B0aW1hbCBkaXNwbGF5IG9mIHRoZSBtdWx0aS1yb3V0ZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYm91bmRzYXV0b2FwcGx5OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYm91bmRzYXV0b2FwcGx5Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5naW5nIGNvb3JkaW5hdGVzIG9mIHRoZSBnZW9ncmFwaGljYWwgYXJlYSBjb3ZlcmluZyB0aGUgbXVsdGktcm91dGUuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJvdW5kc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JvdW5kc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBTaW5nbGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignY2xpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhY29udGV4dG1lbnU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdjb250ZXh0bWVudScpO1xyXG5cclxuICAvKipcclxuICAgKiBEb3VibGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRiY2xpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkYmNsaWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBnZW9tZXRyeS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZ2VvbWV0cnljaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdnZW9tZXRyeWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcGNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWRvd246IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWRvd24nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUG9pbnRpbmcgdGhlIGN1cnNvciBhdCB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlZW50ZXI6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWVudGVyJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG9mZiBvZiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlbGVhdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWxlYXZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZW1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZW1vdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNldXA6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZXVwJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoZW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaGVuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2htb3ZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaG1vdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RhcnQgb2YgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaHN0YXJ0OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaHN0YXJ0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9wdGlvbnNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvcHRpb25zY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvdmVybGF5Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignb3ZlcmxheWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGFyZW50Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcigncGFyZW50Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5naW5nIHBpeGVsIGNvb3JkaW5hdGVzIG9mIHRoZSBhcmVhIGNvdmVyaW5nIHRoZSBtdWx0aS1yb3V0ZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGl4ZWxib3VuZHNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdwaXhlbGJvdW5kc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcHJvcGVydGllc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3Byb3BlcnRpZXNjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRpbmcgdGhlIG11bHRpLXJvdXRlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB1cGRhdGU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCd1cGRhdGUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YXdoZWVsOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignd2hlZWwnKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgcmVhZG9ubHkgX3lhTWFwQ29tcG9uZW50OiBZYU1hcENvbXBvbmVudCkge31cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwYXNzZXMgdGhlbSBpbiBBUEkuXHJcbiAgICogQHBhcmFtIGNoYW5nZXNcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCBtdWx0aXJvdXRlID0gdGhpcy5fbXVsdGlyb3V0ZTtcclxuXHJcbiAgICBpZiAobXVsdGlyb3V0ZSkge1xyXG4gICAgICBjb25zdCB7IHJlZmVyZW5jZVBvaW50cywgbW9kZWwsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgICBpZiAobW9kZWwpIHtcclxuICAgICAgICB0aGlzLl9zZXRNb2RlbChtb2RlbC5jdXJyZW50VmFsdWUsIG11bHRpcm91dGUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocmVmZXJlbmNlUG9pbnRzKSB7XHJcbiAgICAgICAgbXVsdGlyb3V0ZS5tb2RlbC5zZXRSZWZlcmVuY2VQb2ludHMocmVmZXJlbmNlUG9pbnRzLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgKG11bHRpcm91dGUub3B0aW9ucyBhcyBhbnkpLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3lhTWFwQ29tcG9uZW50LmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnN1YnNjcmliZSgobWFwKSA9PiB7XHJcbiAgICAgICAgaWYgKG1hcCkge1xyXG4gICAgICAgICAgY29uc3QgbXVsdGlyb3V0ZSA9IHRoaXMuX2NyZWF0ZU11bHRpcm91dGUoKTtcclxuICAgICAgICAgIHRoaXMuX211bHRpcm91dGUgPSBtdWx0aXJvdXRlO1xyXG5cclxuICAgICAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChtdWx0aXJvdXRlKTtcclxuICAgICAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5zZXRUYXJnZXQobXVsdGlyb3V0ZSk7XHJcbiAgICAgICAgICB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBtdWx0aXJvdXRlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9tdWx0aXJvdXRlKSB7XHJcbiAgICAgIHRoaXMuX3lhTWFwQ29tcG9uZW50Py5tYXAkLnZhbHVlPy5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLl9tdWx0aXJvdXRlKTtcclxuICAgICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmRlc3Ryb3koKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9zdWIudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlc3RydWN0cyBzdGF0ZSBhbmQgcGFzc2VzIHRoZW0gaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBtb2RlbFxyXG4gICAqIEBwYXJhbSBtdWx0aXJvdXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfc2V0TW9kZWwoXHJcbiAgICBtb2RlbDogeW1hcHMuSU11bHRpUm91dGVNb2RlbEpzb24sXHJcbiAgICBtdWx0aXJvdXRlOiB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlLFxyXG4gICk6IHZvaWQge1xyXG4gICAgY29uc3QgeyByZWZlcmVuY2VQb2ludHMsIHBhcmFtcyB9ID0gbW9kZWw7XHJcblxyXG4gICAgaWYgKHJlZmVyZW5jZVBvaW50cykge1xyXG4gICAgICBtdWx0aXJvdXRlLm1vZGVsLnNldFJlZmVyZW5jZVBvaW50cyhyZWZlcmVuY2VQb2ludHMpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXJhbXMpIHtcclxuICAgICAgbXVsdGlyb3V0ZS5tb2RlbC5zZXRQYXJhbXMocGFyYW1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgTXVsdGlyb3V0ZS5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVNdWx0aXJvdXRlKCk6IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGUge1xyXG4gICAgcmV0dXJuIG5ldyB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlKHRoaXMuX2NvbWJpbmVNb2RlbCgpLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29tYmluZXMgdGhlIG1vZGVsIGFuZCByZWZlcmVuY2UgcG9pbnRzIGludG8gc2luZ2xlIG9iamVjdFxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NvbWJpbmVNb2RlbCgpOiB5bWFwcy5JTXVsdGlSb3V0ZU1vZGVsSnNvbiB7XHJcbiAgICBjb25zdCBtb2RlbCA9ICh0aGlzLm1vZGVsIHx8IHt9KSBhcyB5bWFwcy5JTXVsdGlSb3V0ZU1vZGVsSnNvbjtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAuLi5tb2RlbCxcclxuICAgICAgcmVmZXJlbmNlUG9pbnRzOiB0aGlzLnJlZmVyZW5jZVBvaW50cyB8fCBtb2RlbC5yZWZlcmVuY2VQb2ludHMsXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbXVsdGlyb3V0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2NvbXBvbmVudHMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFTNUQ7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFJSCxNQUFNLE9BQU8scUJBQXFCO0lBeUxoQyxZQUE2QixPQUFlLEVBQW1CLGVBQStCO1FBQWpFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBbUIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBeEw3RSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQixrQkFBYSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQXlCaEU7O1dBRUc7UUFDTyxVQUFLLEdBQTZELElBQUksWUFBWSxFQUV6RixDQUFDO1FBRUo7O1dBRUc7UUFDTyxzQkFBaUIsR0FDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUV6RDs7V0FFRztRQUNPLGlCQUFZLEdBQ3BCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRXBEOztXQUVHO1FBQ08sZ0JBQVcsR0FDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFbkQ7O1dBRUc7UUFDTyxvQkFBZSxHQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXZEOztXQUVHO1FBQ08saUJBQVksR0FDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFcEQ7O1dBRUc7UUFDTyxZQUFPLEdBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFN0M7O1dBRUc7UUFDTyxrQkFBYSxHQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUVuRDs7V0FFRztRQUNPLGNBQVMsR0FDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFL0M7O1dBRUc7UUFDTyxtQkFBYyxHQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXREOztXQUVHO1FBQ08sY0FBUyxHQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVqRDs7V0FFRztRQUNPLGdCQUFXLEdBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWpEOztXQUVHO1FBQ08saUJBQVksR0FDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFbEQ7O1dBRUc7UUFDTyxpQkFBWSxHQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVsRDs7V0FFRztRQUNPLGdCQUFXLEdBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWpEOztXQUVHO1FBQ08sY0FBUyxHQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUUvQzs7V0FFRztRQUNPLGtCQUFhLEdBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXJEOztXQUVHO1FBQ08sbUJBQWMsR0FDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV0RDs7V0FFRztRQUNPLG9CQUFlLEdBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFdkQ7O1dBRUc7UUFDTyxrQkFBYSxHQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVyRDs7V0FFRztRQUNPLGtCQUFhLEdBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXJEOztXQUVHO1FBQ08saUJBQVksR0FDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFcEQ7O1dBRUc7UUFDTyxzQkFBaUIsR0FDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUV6RDs7V0FFRztRQUNPLHFCQUFnQixHQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXhEOztXQUVHO1FBQ08sV0FBTSxHQUNkLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTlDOztXQUVHO1FBQ08sWUFBTyxHQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRW9ELENBQUM7SUFFbEc7OztPQUdHO0lBQ0gsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFFcEMsSUFBSSxVQUFVLEVBQUU7WUFDZCxNQUFNLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUM7WUFFcEQsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO2FBQ2hEO1lBRUQsSUFBSSxlQUFlLEVBQUU7Z0JBQ25CLFVBQVUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ25FO1lBRUQsSUFBSSxPQUFPLEVBQUU7Z0JBQ1g7O21CQUVHO2dCQUNGLFVBQVUsQ0FBQyxPQUFlLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUN2RDtTQUNGO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFO1lBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUN0RCxJQUFJLEdBQUcsRUFBRTtvQkFDUCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztvQkFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7b0JBRTlCLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7aUJBQ2hEO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFRCxXQUFXOztRQUNULElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixNQUFBLE1BQUEsSUFBSSxDQUFDLGVBQWUsMENBQUUsSUFBSSxDQUFDLEtBQUssMENBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDdEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxTQUFTLENBQ2YsS0FBaUMsRUFDakMsVUFBd0M7UUFFeEMsTUFBTSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFFMUMsSUFBSSxlQUFlLEVBQUU7WUFDbkIsVUFBVSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUN0RDtRQUVELElBQUksTUFBTSxFQUFFO1lBQ1YsVUFBVSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxpQkFBaUI7UUFDdkIsT0FBTyxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVEOztPQUVHO0lBQ0ssYUFBYTtRQUNuQixNQUFNLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUErQixDQUFDO1FBRS9ELHVDQUNLLEtBQUssS0FDUixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWUsSUFBSSxLQUFLLENBQUMsZUFBZSxJQUM5RDtJQUNKLENBQUM7OztZQXhSRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7YUFDMUI7OztZQW5DQyxNQUFNO1lBU0MsY0FBYzs7OzhCQXVDcEIsS0FBSztvQkFNTCxLQUFLO3NCQVFMLEtBQUs7b0JBS0wsTUFBTTtnQ0FPTixNQUFNOzJCQU1OLE1BQU07MEJBTU4sTUFBTTs4QkFNTixNQUFNOzJCQU1OLE1BQU07c0JBTU4sTUFBTTs0QkFNTixNQUFNO3dCQU1OLE1BQU07NkJBTU4sTUFBTTt3QkFNTixNQUFNOzBCQU1OLE1BQU07MkJBTU4sTUFBTTsyQkFNTixNQUFNOzBCQU1OLE1BQU07d0JBTU4sTUFBTTs0QkFNTixNQUFNOzZCQU1OLE1BQU07OEJBTU4sTUFBTTs0QkFNTixNQUFNOzRCQU1OLE1BQU07MkJBTU4sTUFBTTtnQ0FNTixNQUFNOytCQU1OLE1BQU07cUJBTU4sTUFBTTtzQkFNTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEV2ZW50TWFuYWdlciB9IGZyb20gJy4uLy4uL3V0aWxzL2V2ZW50LW1hbmFnZXInO1xyXG5pbXBvcnQgeyBZYU1hcENvbXBvbmVudCB9IGZyb20gJy4uL3lhLW1hcC95YS1tYXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vdHlwaW5ncy95YS1yZWFkeS1ldmVudCc7XHJcbmltcG9ydCB7IFlhRXZlbnQgfSBmcm9tICcuLi8uLi90eXBpbmdzL3lhLWV2ZW50JztcclxuXHJcbi8qKlxyXG4gKiBAaW50ZXJuYWxcclxuICovXHJcbnR5cGUgT3B0aW9uYWw8VCwgSyBleHRlbmRzIGtleW9mIFQ+ID0gUGljazxQYXJ0aWFsPFQ+LCBLPiAmIE9taXQ8VCwgSz47XHJcblxyXG4vKipcclxuICogVGhlIGB5YS1tdWx0aXJvdXRlYCBjb21wb25lbnQgd3JhcHMgYHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGVgIGNsYXNzIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cclxuICogWW91IGNhbiBjb25maWd1cmUgaXQgdmlhIHRoZSBjb21wb25lbnQncyBpbnB1dHMuXHJcbiAqIEV2ZW50cyBjYW4gYmUgYm91bmQgdXNpbmcgdGhlIG91dHB1dHMgb2YgdGhlIGNvbXBvbmVudC5cclxuICpcclxuICogPGV4YW1wbGUtdXJsPmh0dHBzOi8vc3RhY2tibGl0ei5jb20vZWRpdC9tdWx0aXJvdXRlLXBlZGVzdHJpYW4/ZW1iZWQ9MTwvZXhhbXBsZS11cmw+XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDx5YS1tYXAgW2NlbnRlcl09XCJbNTUuNzYxOTUyLCAzNy42MjA3MzldXCI+XHJcbiAqICAgICAgICAgICAgICA8eWEtbXVsdGlyb3V0ZVxyXG4gKiAgICAgICAgICAgICAgICBbcmVmZXJlbmNlUG9pbnRzXT1cIltbNTUuNzUxOTUyLCAzNy42MDA3MzldLCAn0JrRgNCw0YHQvdGL0LUg0LLQvtGA0L7RgtCwLCDQnNC+0YHQutCy0LAnXVwiXHJcbiAqICAgICAgICAgICAgICAgIFttb2RlbF09XCJ7IHBhcmFtczogeyByb3V0aW5nTW9kZTogJ3BlZGVzdHJpYW4nIH0gfVwiXHJcbiAqICAgICAgICAgICAgICA+PC95YS1tdWx0aXJvdXRlPlxyXG4gKiA8L3lhLW1hcD5cclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAneWEtbXVsdGlyb3V0ZScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYU11bHRpcm91dGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50TWFuYWdlciA9IG5ldyBFdmVudE1hbmFnZXIodGhpcy5fbmdab25lKTtcclxuXHJcbiAgcHJpdmF0ZSBfbXVsdGlyb3V0ZT86IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZmVyZW5jZSBwb2ludHMgZm9yIHRoZSBtdWx0aXJvdXRlLlxyXG4gICAqIFNob3J0aGFuZCBmb3IgW21vZGVsXT1cInsgcmVmZXJlbmNlUG9pbnRzOiBbMCwgMF0gfVwiLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0lNdWx0aVJvdXRlUmVmZXJlbmNlUG9pbnQuaHRtbH1cclxuICAgKi9cclxuICBASW5wdXQoKSByZWZlcmVuY2VQb2ludHM6IHltYXBzLklNdWx0aVJvdXRlUmVmZXJlbmNlUG9pbnRbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW9kZWwgZGVzY3JpcHRpb24gb2JqZWN0IG9mIGEgbXVsdGlyb3V0ZS5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9JTXVsdGlSb3V0ZU1vZGVsSnNvbi5odG1sfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG1vZGVsOlxyXG4gICAgfCB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlTW9kZWxcclxuICAgIHwgT3B0aW9uYWw8eW1hcHMuSU11bHRpUm91dGVNb2RlbEpzb24sICdyZWZlcmVuY2VQb2ludHMnPjtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9ucyBmb3IgdGhlIG11bHRpcm91dGUuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvbXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZS5odG1sI211bHRpUm91dGVyLk11bHRpUm91dGVfX3BhcmFtLW9wdGlvbnN9XHJcbiAgICovXHJcbiAgQElucHV0KCkgb3B0aW9uczogeW1hcHMubXVsdGlSb3V0ZXIuSU11bHRpUm91dGVPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBNdWx0aXJvdXRlIGluc3RhbmNlIGlzIGFkZGVkIGluIGEgTWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSByZWFkeTogRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxyXG4gICAgWWFSZWFkeUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+XHJcbiAgPigpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGFjdGl2ZSByb3V0ZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYWN0aXZlcm91dGVjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdhY3RpdmVyb3V0ZWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29uY2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdiYWxsb29uY2xvc2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJhbGxvb25vcGVuOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYmFsbG9vbm9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGV2ZW50IG9jY3VycyBhdCB0aGUgdGltZSBvZiBzZXR0aW5nIHRoZSBtYXAgY2VudGVyIGFuZCBpdHMgem9vbSBsZXZlbCBmb3Igb3B0aW1hbCBkaXNwbGF5IG9mIHRoZSBtdWx0aS1yb3V0ZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYm91bmRzYXV0b2FwcGx5OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignYm91bmRzYXV0b2FwcGx5Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5naW5nIGNvb3JkaW5hdGVzIG9mIHRoZSBnZW9ncmFwaGljYWwgYXJlYSBjb3ZlcmluZyB0aGUgbXVsdGktcm91dGUuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJvdW5kc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JvdW5kc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBTaW5nbGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignY2xpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhY29udGV4dG1lbnU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdjb250ZXh0bWVudScpO1xyXG5cclxuICAvKipcclxuICAgKiBEb3VibGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRiY2xpY2s6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkYmNsaWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBnZW9tZXRyeS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZ2VvbWV0cnljaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdnZW9tZXRyeWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcGNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWRvd246IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWRvd24nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUG9pbnRpbmcgdGhlIGN1cnNvciBhdCB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlZW50ZXI6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWVudGVyJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG9mZiBvZiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlbGVhdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWxlYXZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZW1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZW1vdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNldXA6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZXVwJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoZW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaGVuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2htb3ZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaG1vdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RhcnQgb2YgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaHN0YXJ0OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaHN0YXJ0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9wdGlvbnNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvcHRpb25zY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvdmVybGF5Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignb3ZlcmxheWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGFyZW50Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcigncGFyZW50Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5naW5nIHBpeGVsIGNvb3JkaW5hdGVzIG9mIHRoZSBhcmVhIGNvdmVyaW5nIHRoZSBtdWx0aS1yb3V0ZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGl4ZWxib3VuZHNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdwaXhlbGJvdW5kc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcHJvcGVydGllc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3Byb3BlcnRpZXNjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRpbmcgdGhlIG11bHRpLXJvdXRlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB1cGRhdGU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCd1cGRhdGUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YXdoZWVsOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZT4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignd2hlZWwnKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfbmdab25lOiBOZ1pvbmUsIHByaXZhdGUgcmVhZG9ubHkgX3lhTWFwQ29tcG9uZW50OiBZYU1hcENvbXBvbmVudCkge31cclxuXHJcbiAgLyoqXHJcbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwYXNzZXMgdGhlbSBpbiBBUEkuXHJcbiAgICogQHBhcmFtIGNoYW5nZXNcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBjb25zdCBtdWx0aXJvdXRlID0gdGhpcy5fbXVsdGlyb3V0ZTtcclxuXHJcbiAgICBpZiAobXVsdGlyb3V0ZSkge1xyXG4gICAgICBjb25zdCB7IHJlZmVyZW5jZVBvaW50cywgbW9kZWwsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgICBpZiAobW9kZWwpIHtcclxuICAgICAgICB0aGlzLl9zZXRNb2RlbChtb2RlbC5jdXJyZW50VmFsdWUsIG11bHRpcm91dGUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocmVmZXJlbmNlUG9pbnRzKSB7XHJcbiAgICAgICAgbXVsdGlyb3V0ZS5tb2RlbC5zZXRSZWZlcmVuY2VQb2ludHMocmVmZXJlbmNlUG9pbnRzLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgKG11bHRpcm91dGUub3B0aW9ucyBhcyBhbnkpLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3lhTWFwQ29tcG9uZW50LmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnN1YnNjcmliZSgobWFwKSA9PiB7XHJcbiAgICAgICAgaWYgKG1hcCkge1xyXG4gICAgICAgICAgY29uc3QgbXVsdGlyb3V0ZSA9IHRoaXMuX2NyZWF0ZU11bHRpcm91dGUoKTtcclxuICAgICAgICAgIHRoaXMuX211bHRpcm91dGUgPSBtdWx0aXJvdXRlO1xyXG5cclxuICAgICAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChtdWx0aXJvdXRlKTtcclxuICAgICAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5zZXRUYXJnZXQobXVsdGlyb3V0ZSk7XHJcbiAgICAgICAgICB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBtdWx0aXJvdXRlIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9tdWx0aXJvdXRlKSB7XHJcbiAgICAgIHRoaXMuX3lhTWFwQ29tcG9uZW50Py5tYXAkLnZhbHVlPy5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLl9tdWx0aXJvdXRlKTtcclxuICAgICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmRlc3Ryb3koKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9zdWIudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlc3RydWN0cyBzdGF0ZSBhbmQgcGFzc2VzIHRoZW0gaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBtb2RlbFxyXG4gICAqIEBwYXJhbSBtdWx0aXJvdXRlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfc2V0TW9kZWwoXHJcbiAgICBtb2RlbDogeW1hcHMuSU11bHRpUm91dGVNb2RlbEpzb24sXHJcbiAgICBtdWx0aXJvdXRlOiB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlLFxyXG4gICk6IHZvaWQge1xyXG4gICAgY29uc3QgeyByZWZlcmVuY2VQb2ludHMsIHBhcmFtcyB9ID0gbW9kZWw7XHJcblxyXG4gICAgaWYgKHJlZmVyZW5jZVBvaW50cykge1xyXG4gICAgICBtdWx0aXJvdXRlLm1vZGVsLnNldFJlZmVyZW5jZVBvaW50cyhyZWZlcmVuY2VQb2ludHMpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXJhbXMpIHtcclxuICAgICAgbXVsdGlyb3V0ZS5tb2RlbC5zZXRQYXJhbXMocGFyYW1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgTXVsdGlyb3V0ZS5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVNdWx0aXJvdXRlKCk6IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGUge1xyXG4gICAgcmV0dXJuIG5ldyB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlKHRoaXMuX2NvbWJpbmVNb2RlbCgpLCB0aGlzLm9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29tYmluZXMgdGhlIG1vZGVsIGFuZCByZWZlcmVuY2UgcG9pbnRzIGludG8gc2luZ2xlIG9iamVjdFxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NvbWJpbmVNb2RlbCgpOiB5bWFwcy5JTXVsdGlSb3V0ZU1vZGVsSnNvbiB7XHJcbiAgICBjb25zdCBtb2RlbCA9ICh0aGlzLm1vZGVsIHx8IHt9KSBhcyB5bWFwcy5JTXVsdGlSb3V0ZU1vZGVsSnNvbjtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAuLi5tb2RlbCxcclxuICAgICAgcmVmZXJlbmNlUG9pbnRzOiB0aGlzLnJlZmVyZW5jZVBvaW50cyB8fCBtb2RlbC5yZWZlcmVuY2VQb2ludHMsXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=

@@ -11,2 +11,4 @@ import { Directive, EventEmitter, Input, NgZone, Output, } from '@angular/core';

*
* <example-url>https://stackblitz.com/edit/panorama?embed=1</example-url>
*
* @example

@@ -172,2 +174,2 @@ * <ya-map>

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGFub3JhbWEuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjL2xpYi9jb21wb25lbnRzL3lhLXBhbm9yYW1hL3lhLXBhbm9yYW1hLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFjLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUF5QixNQUFNLDJCQUEyQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU1RDs7Ozs7Ozs7O0dBU0c7QUFJSCxNQUFNLE9BQU8sbUJBQW1CO0lBa0c5QixZQUE2QixPQUFlLEVBQW1CLGVBQStCO1FBQWpFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBbUIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBakc3RSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQixrQkFBYSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQXNCaEU7O1dBRUc7UUFDTyxVQUFLLEdBQXNELElBQUksWUFBWSxFQUVsRixDQUFDO1FBRUo7O1dBRUc7UUFDTyxZQUFPLEdBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFL0M7O1dBRUc7UUFDTyxvQkFBZSxHQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFD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QyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3hFLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2pDLENBQUM7SUFDSixDQUFDOzs7WUE5TUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2FBQ3hCOzs7WUF4QkMsTUFBTTtZQVVDLGNBQWM7OztvQkEwQnBCLEtBQUs7b0JBTUwsS0FBSztzQkFNTCxLQUFLO29CQUtMLE1BQU07c0JBT04sTUFBTTs4QkFNTixNQUFNO3NCQU1OLE1BQU07OEJBTU4sTUFBTTs2QkFNTixNQUFNOzZCQU1OLE1BQU07MkJBTU4sTUFBTTsrQkFNTixNQUFNOytCQU1OLE1BQU07NkJBTU4sTUFBTTt5QkFNTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvZXZlbnQtbWFuYWdlcic7XHJcbmltcG9ydCB7IFlhTWFwQ29tcG9uZW50IH0gZnJvbSAnLi4veWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgeWEtcGFub3JhbWFgIGNvbXBvbmVudCB3cmFwcyBgeW1hcHMucGFub3JhbWEuUGxheWVyYCBjbGFzcyBmcm9tIHRoZSBZYW5kZXggTWFwcyBBUEkuXHJcbiAqIFlvdSBjYW4gY29uZmlndXJlIGl0IHZpYSB0aGUgY29tcG9uZW50J3MgaW5wdXRzLlxyXG4gKiBFdmVudHMgY2FuIGJlIGJvdW5kIHVzaW5nIHRoZSBvdXRwdXRzIG9mIHRoZSBjb21wb25lbnQuXHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDx5YS1tYXA+XHJcbiAqICAgICAgICAgICAgICA8eWEtcGFub3JhbWEgW3BvaW50XT1cIls1OS45Mzg1NTcsIDMwLjMxNjE5OF1cIiBsYXllcj1cInlhbmRleCNhaXJQYW5vcmFtYVwiPjwveWEtcGFub3JhbWE+XHJcbiAqIDwveWEtbWFwPlxyXG4gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICd5YS1wYW5vcmFtYScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYVBhbm9yYW1hRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudE1hbmFnZXIgPSBuZXcgRXZlbnRNYW5hZ2VyKHRoaXMuX25nWm9uZSk7XHJcblxyXG4gIHByaXZhdGUgX3BsYXllcj86IHltYXBzLnBhbm9yYW1hLlBsYXllcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBvaW50IGZvciBzZWFyY2hpbmcgZm9yIG5lYXJieSBwYW5vcmFtYXMuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvcGFub3JhbWEubG9jYXRlLmh0bWwjcGFub3JhbWEubG9jYXRlX19wYXJhbS1wb2ludH1cclxuICAgKi9cclxuICBASW5wdXQoKSBwb2ludDogbnVtYmVyW107XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBsYXllciB0byBzZWFyY2ggZm9yIHBhbm9yYW1hcy5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9wYW5vcmFtYS5sb2NhdGUuaHRtbCNwYW5vcmFtYS5sb2NhdGVfX3BhcmFtLW9wdGlvbnMubGF5ZXJ9XHJcbiAgICovXHJcbiAgQElucHV0KCkgbGF5ZXI6IHltYXBzLnBhbm9yYW1hLkxheWVyO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25zIGZvciB0aGUgcGxheWVyLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL3Bhbm9yYW1hLlBsYXllci5odG1sI3Bhbm9yYW1hLlBsYXllcl9fcGFyYW0tb3B0aW9uc31cclxuICAgKi9cclxuICBASW5wdXQoKSBvcHRpb25zOiB5bWFwcy5wYW5vcmFtYS5JUGxheWVyT3B0aW9ucztcclxuXHJcbiAgLyoqXHJcbiAgICogUGFub3JhbWEgaW5zdGFuY2UgaXMgY3JlYXRlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcmVhZHk6IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPSBuZXcgRXZlbnRFbWl0dGVyPFxyXG4gICAgWWFSZWFkeUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj5cclxuICA+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwbGF5ZXIgd2FzIGNsb3NlZCBieSB0aGUgdXNlciBvciBkZXN0cm95ZWQgdXNpbmcgdGhlIHBhbm9yYW1hLlBsYXllci5kZXN0cm95IG1ldGhvZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZGVzdHJveTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZGVzdHJveScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgdmlldyBkaXJlY3Rpb24gY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZGlyZWN0aW9uY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkaXJlY3Rpb25jaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIG9wZXJhdGlvbiBvZiB0aGUgcGxheWVyLiBUaGUgdXNlciB3aWxsIGJlIHNob3duIHRoZSBhcHByb3ByaWF0ZSBzY3JlZW4uXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhZXJyb3I6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2Vycm9yJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwYW5vcmFtYSBwbGF5ZXIgc3dpdGNoZWQgdG8gZnVsbC1zY3JlZW4gbW9kZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZnVsbHNjcmVlbmVudGVyOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdmdWxsc2NyZWVuZW50ZXInKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBhbm9yYW1hIHBsYXllciBleGl0ZWQgZnVsbC1zY3JlZW4gbW9kZS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgZnVsbHNjcmVlbmV4aXQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2Z1bGxzY3JlZW5leGl0Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB1c2VyIGNsaWNrZWQgb24gYW4gZXhwYW5kZWQgbWFya2VyLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXJrZXJjb2xsYXBzZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbWFya2VyY29sbGFwc2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHVzZXIgY2xpY2tlZCBvbiBhIGNvbGxhcHNlZCBtYXJrZXIuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcmtlcmV4cGFuZDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbWFya2VyZXhwYW5kJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB1c2VyJ3MgY3Vyc29yIGhvdmVyZWQgb3ZlciBhIG1hcmtlci5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbWFya2VybW91c2VlbnRlcjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbWFya2VybW91c2VlbnRlcicpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgdXNlcidzIGN1cnNvciBsZWZ0IGEgbWFya2VyLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXJrZXJtb3VzZWxlYXZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtYXJrZXJtb3VzZWxlYXZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBvcGVuIHBhbm9yYW1hIGNoYW5nZWQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHBhbm9yYW1hY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdwYW5vcmFtYWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgdmlld3BvcnQgaGFzIGJlZW4gY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgc3BhbmNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignc3BhbmNoYW5nZScpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSByZWFkb25seSBfeWFNYXBDb21wb25lbnQ6IFlhTWFwQ29tcG9uZW50KSB7fVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHBhc3NlcyB0aGVtIGluIEFQSS5cclxuICAgKiBAcGFyYW0gY2hhbmdlc1xyXG4gICAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBsYXllciA9IHRoaXMuX3BsYXllcjtcclxuXHJcbiAgICBpZiAocGxheWVyKSB7XHJcbiAgICAgIGNvbnN0IHsgcG9pbnQsIGxheWVyLCBvcHRpb25zIH0gPSBjaGFuZ2VzO1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIHBsYXllci5tb3ZlVG8gcmVzZXRzIHZhbHVlcyB0byBkZWZhdWx0IGlmIGFueSBvZiB0aGVtIGlzbid0IHBhc3NlZC5cclxuICAgICAgICogVGhhdCdzIHdoeSB3ZSB1c2UgdmFsdWUgZnJvbSBjdXJyZW50VmFsdWUgT1IgcHJldmlvdXMgdmFsdWUgZnJvbSBpbnB1dC5cclxuICAgICAgICogV2l0aCB0aGF0IGxvZ2ljIGl0J3MgcG9zc2libGUgdG8gcGFzcyBvbmx5IHBvaW50LCBsYXllciBvciBvcHRpb25zLlxyXG4gICAgICAgKi9cclxuICAgICAgaWYgKHBvaW50IHx8IGxheWVyKSB7XHJcbiAgICAgICAgY29uc3QgY29tYmluZWRQb2ludDogbnVtYmVyW10gPSBwb2ludD8uY3VycmVudFZhbHVlIHx8IHRoaXMucG9pbnQ7XHJcbiAgICAgICAgY29uc3QgY29tYmluZWRMYXllcjogeW1hcHMucGFub3JhbWEuTGF5ZXIgPSBsYXllcj8uY3VycmVudFZhbHVlIHx8IHRoaXMubGF5ZXI7XHJcblxyXG4gICAgICAgIHBsYXllci5tb3ZlVG8oY29tYmluZWRQb2ludCwgeyBsYXllcjogY29tYmluZWRMYXllciB9KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKG9wdGlvbnMpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb25zKG9wdGlvbnMuY3VycmVudFZhbHVlLCBwbGF5ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl95YU1hcENvbXBvbmVudC5pc0Jyb3dzZXIpIHtcclxuICAgICAgY29uc3QgcGFub3JhbWEkID0gdGhpcy5feWFNYXBDb21wb25lbnQubWFwJC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigobSk6IG0gaXMgeW1hcHMuTWFwID0+IEJvb2xlYW4obSkpLFxyXG4gICAgICAgIHN3aXRjaE1hcCgobTogeW1hcHMuTWFwKSA9PiB7XHJcbiAgICAgICAgICAvKipcclxuICAgICAgICAgICAqIE1hcCBhbmQgcGFub3JhbWEgdXNlIHRoZSBzYW1lIGNvbnRhaW5lciwgc28gbmVlZCB0byBkZXN0cm95L3JlbW92ZSBtYXBcclxuICAgICAgICAgICAqL1xyXG4gICAgICAgICAgbS5kZXN0cm95KCk7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5fY3JlYXRlUGFub3JhbWEoKTtcclxuICAgICAgICB9KSxcclxuICAgICAgKTtcclxuXHJcbiAgICAgIGNvbnN0IHN1YiA9IHBhbm9yYW1hJC5zdWJzY3JpYmUoKHBhbm9yYW1hKSA9PiB7XHJcbiAgICAgICAgY29uc3QgeyBpZCB9ID0gdGhpcy5feWFNYXBDb21wb25lbnQuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgY29uc3QgcGxheWVyID0gbmV3IHltYXBzLnBhbm9yYW1hLlBsYXllcihpZCwgcGFub3JhbWEsIHRoaXMub3B0aW9ucyk7XHJcbiAgICAgICAgdGhpcy5fcGxheWVyID0gcGxheWVyO1xyXG5cclxuICAgICAgICB0aGlzLl9ldmVudE1hbmFnZXIuc2V0VGFyZ2V0KHBsYXllcik7XHJcbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBwbGF5ZXIgfSkpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMuX3N1Yi5hZGQoc3ViKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmRlc3Ryb3koKTtcclxuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVzdHJ1Y3RzIHN0YXRlIGFuZCBwYXNzZXMgaXQgaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBvcHRpb25zXHJcbiAgICogQHBhcmFtIHBsYXllclxyXG4gICAqL1xyXG4gIHByaXZhdGUgX3NldE9wdGlvbnMob3B0aW9uczogeW1hcHMucGFub3JhbWEuSVBsYXllck9wdGlvbnMsIHBsYXllcjogeW1hcHMucGFub3JhbWEuUGxheWVyKTogdm9pZCB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGF1dG9GaXRUb1ZpZXdwb3J0LFxyXG4gICAgICBjb250cm9scyxcclxuICAgICAgZGlyZWN0aW9uLFxyXG4gICAgICBob3RrZXlzRW5hYmxlZCxcclxuICAgICAgc3BhbixcclxuICAgICAgc2Nyb2xsWm9vbUJlaGF2aW9yLFxyXG4gICAgICBzdXBwcmVzc01hcE9wZW5CbG9jayxcclxuICAgIH0gPSBvcHRpb25zO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgYXV0b0ZpdFRvVmlld3BvcnQgfHxcclxuICAgICAgY29udHJvbHMgfHxcclxuICAgICAgaG90a2V5c0VuYWJsZWQgfHxcclxuICAgICAgc2Nyb2xsWm9vbUJlaGF2aW9yIHx8XHJcbiAgICAgIHN1cHByZXNzTWFwT3BlbkJsb2NrXHJcbiAgICApIHtcclxuICAgICAgY29uc29sZS53YXJuKFxyXG4gICAgICAgICdPbmx5IGRpcmVjdGlvbiBhbmQgc3BhbiBjYW4gYmUgc2V0IGFmdGVyIGVudGl0eSBpbml0LiBUbyBzZXQgb3RoZXIgb3B0aW9ucywgeW91IHNob3VsZCByZWNyZWF0ZSBhIFBhbm9yYW1hIHdpdGggbmV3IG9wdGlvbnMnLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkaXJlY3Rpb24pIHtcclxuICAgICAgcGxheWVyLnNldERpcmVjdGlvbihkaXJlY3Rpb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzcGFuKSB7XHJcbiAgICAgIHBsYXllci5zZXRTcGFuKHNwYW4pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU2VhcmNoZXMgZm9yIGEgcGFub3JhbWEgYW5kIHJldHVybnMgZmlyc3RcclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVQYW5vcmFtYSgpOiBPYnNlcnZhYmxlPHltYXBzLklQYW5vcmFtYT4ge1xyXG4gICAgcmV0dXJuIGZyb20oeW1hcHMucGFub3JhbWEubG9jYXRlKHRoaXMucG9pbnQsIHsgbGF5ZXI6IHRoaXMubGF5ZXIgfSkpLnBpcGUoXHJcbiAgICAgIG1hcCgocGFub3JhbWFzKSA9PiBwYW5vcmFtYXNbMF0pLFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGFub3JhbWEuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjL2xpYi9jb21wb25lbnRzL3lhLXBhbm9yYW1hL3lhLXBhbm9yYW1hLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFjLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSTVEOzs7Ozs7Ozs7OztHQVdHO0FBSUgsTUFBTSxPQUFPLG1CQUFtQjtJQWtHOUIsWUFBNkIsT0FBZSxFQUFtQixlQUErQjtRQUFqRSxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQW1CLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQWpHN0UsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUIsa0JBQWEsR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFzQmhFOztXQUVHO1FBQ08sVUFBSyxHQUFzRCxJQUFJLFlBQVksRUFFbEYsQ0FBQztRQUVKOztXQUVHO1FBQ08sWUFBTyxHQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRS9DOztXQUVHO1FBQ08sb0JBQWUsR0FDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsQ0FB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QUMsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN4RSxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNqQyxDQUFDO0lBQ0osQ0FBQzs7O1lBOU1GLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTthQUN4Qjs7O1lBNUJDLE1BQU07WUFVQyxjQUFjOzs7b0JBOEJwQixLQUFLO29CQU1MLEtBQUs7c0JBTUwsS0FBSztvQkFLTCxNQUFNO3NCQU9OLE1BQU07OEJBTU4sTUFBTTtzQkFNTixNQUFNOzhCQU1OLE1BQU07NkJBTU4sTUFBTTs2QkFNTixNQUFNOzJCQU1OLE1BQU07K0JBTU4sTUFBTTsrQkFNTixNQUFNOzZCQU1OLE1BQU07eUJBTU4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgRGlyZWN0aXZlLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBOZ1pvbmUsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBFdmVudE1hbmFnZXIgfSBmcm9tICcuLi8uLi91dGlscy9ldmVudC1tYW5hZ2VyJztcclxuaW1wb3J0IHsgWWFNYXBDb21wb25lbnQgfSBmcm9tICcuLi95YS1tYXAveWEtbWFwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFlhUmVhZHlFdmVudCB9IGZyb20gJy4uLy4uL3R5cGluZ3MveWEtcmVhZHktZXZlbnQnO1xyXG5pbXBvcnQgeyBZYUV2ZW50IH0gZnJvbSAnLi4vLi4vdHlwaW5ncy95YS1ldmVudCc7XHJcblxyXG4vKipcclxuICogVGhlIGB5YS1wYW5vcmFtYWAgY29tcG9uZW50IHdyYXBzIGB5bWFwcy5wYW5vcmFtYS5QbGF5ZXJgIGNsYXNzIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cclxuICogWW91IGNhbiBjb25maWd1cmUgaXQgdmlhIHRoZSBjb21wb25lbnQncyBpbnB1dHMuXHJcbiAqIEV2ZW50cyBjYW4gYmUgYm91bmQgdXNpbmcgdGhlIG91dHB1dHMgb2YgdGhlIGNvbXBvbmVudC5cclxuICpcclxuICogPGV4YW1wbGUtdXJsPmh0dHBzOi8vc3RhY2tibGl0ei5jb20vZWRpdC9wYW5vcmFtYT9lbWJlZD0xPC9leGFtcGxlLXVybD5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogPHlhLW1hcD5cclxuICogICAgICAgICAgICAgIDx5YS1wYW5vcmFtYSBbcG9pbnRdPVwiWzU5LjkzODU1NywgMzAuMzE2MTk4XVwiIGxheWVyPVwieWFuZGV4I2FpclBhbm9yYW1hXCI+PC95YS1wYW5vcmFtYT5cclxuICogPC95YS1tYXA+XHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ3lhLXBhbm9yYW1hJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFlhUGFub3JhbWFEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50TWFuYWdlciA9IG5ldyBFdmVudE1hbmFnZXIodGhpcy5fbmdab25lKTtcclxuXHJcbiAgcHJpdmF0ZSBfcGxheWVyPzogeW1hcHMucGFub3JhbWEuUGxheWVyO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcG9pbnQgZm9yIHNlYXJjaGluZyBmb3IgbmVhcmJ5IHBhbm9yYW1hcy5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9wYW5vcmFtYS5sb2NhdGUuaHRtbCNwYW5vcmFtYS5sb2NhdGVfX3BhcmFtLXBvaW50fVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHBvaW50OiBudW1iZXJbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGxheWVyIHRvIHNlYXJjaCBmb3IgcGFub3JhbWFzLlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL3Bhbm9yYW1hLmxvY2F0ZS5odG1sI3Bhbm9yYW1hLmxvY2F0ZV9fcGFyYW0tb3B0aW9ucy5sYXllcn1cclxuICAgKi9cclxuICBASW5wdXQoKSBsYXllcjogeW1hcHMucGFub3JhbWEuTGF5ZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBwbGF5ZXIuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvcGFub3JhbWEuUGxheWVyLmh0bWwjcGFub3JhbWEuUGxheWVyX19wYXJhbS1vcHRpb25zfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IHltYXBzLnBhbm9yYW1hLklQbGF5ZXJPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBQYW5vcmFtYSBpbnN0YW5jZSBpcyBjcmVhdGVkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSByZWFkeTogRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9IG5ldyBFdmVudEVtaXR0ZXI8XHJcbiAgICBZYVJlYWR5RXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPlxyXG4gID4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBsYXllciB3YXMgY2xvc2VkIGJ5IHRoZSB1c2VyIG9yIGRlc3Ryb3llZCB1c2luZyB0aGUgcGFub3JhbWEuUGxheWVyLmRlc3Ryb3kgbWV0aG9kLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBkZXN0cm95OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkZXN0cm95Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB2aWV3IGRpcmVjdGlvbiBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBkaXJlY3Rpb25jaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RpcmVjdGlvbmNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBBbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgb3BlcmF0aW9uIG9mIHRoZSBwbGF5ZXIuIFRoZSB1c2VyIHdpbGwgYmUgc2hvd24gdGhlIGFwcHJvcHJpYXRlIHNjcmVlbi5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFlcnJvcjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZXJyb3InKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBhbm9yYW1hIHBsYXllciBzd2l0Y2hlZCB0byBmdWxsLXNjcmVlbiBtb2RlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBmdWxsc2NyZWVuZW50ZXI6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2Z1bGxzY3JlZW5lbnRlcicpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcGFub3JhbWEgcGxheWVyIGV4aXRlZCBmdWxsLXNjcmVlbiBtb2RlLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBmdWxsc2NyZWVuZXhpdDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLnBhbm9yYW1hLlBsYXllcj4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZnVsbHNjcmVlbmV4aXQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHVzZXIgY2xpY2tlZCBvbiBhbiBleHBhbmRlZCBtYXJrZXIuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcmtlcmNvbGxhcHNlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtYXJrZXJjb2xsYXBzZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgdXNlciBjbGlja2VkIG9uIGEgY29sbGFwc2VkIG1hcmtlci5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbWFya2VyZXhwYW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtYXJrZXJleHBhbmQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHVzZXIncyBjdXJzb3IgaG92ZXJlZCBvdmVyIGEgbWFya2VyLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXJrZXJtb3VzZWVudGVyOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtYXJrZXJtb3VzZWVudGVyJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB1c2VyJ3MgY3Vyc29yIGxlZnQgYSBtYXJrZXIuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG1hcmtlcm1vdXNlbGVhdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcmtlcm1vdXNlbGVhdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIG9wZW4gcGFub3JhbWEgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGFub3JhbWFjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5wYW5vcmFtYS5QbGF5ZXI+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3Bhbm9yYW1hY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBzaXplIG9mIHRoZSB2aWV3cG9ydCBoYXMgYmVlbiBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBzcGFuY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMucGFub3JhbWEuUGxheWVyPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdzcGFuY2hhbmdlJyk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX25nWm9uZTogTmdab25lLCBwcml2YXRlIHJlYWRvbmx5IF95YU1hcENvbXBvbmVudDogWWFNYXBDb21wb25lbnQpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcGFzc2VzIHRoZW0gaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBjaGFuZ2VzXHJcbiAgICovXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgcGxheWVyID0gdGhpcy5fcGxheWVyO1xyXG5cclxuICAgIGlmIChwbGF5ZXIpIHtcclxuICAgICAgY29uc3QgeyBwb2ludCwgbGF5ZXIsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogcGxheWVyLm1vdmVUbyByZXNldHMgdmFsdWVzIHRvIGRlZmF1bHQgaWYgYW55IG9mIHRoZW0gaXNuJ3QgcGFzc2VkLlxyXG4gICAgICAgKiBUaGF0J3Mgd2h5IHdlIHVzZSB2YWx1ZSBmcm9tIGN1cnJlbnRWYWx1ZSBPUiBwcmV2aW91cyB2YWx1ZSBmcm9tIGlucHV0LlxyXG4gICAgICAgKiBXaXRoIHRoYXQgbG9naWMgaXQncyBwb3NzaWJsZSB0byBwYXNzIG9ubHkgcG9pbnQsIGxheWVyIG9yIG9wdGlvbnMuXHJcbiAgICAgICAqL1xyXG4gICAgICBpZiAocG9pbnQgfHwgbGF5ZXIpIHtcclxuICAgICAgICBjb25zdCBjb21iaW5lZFBvaW50OiBudW1iZXJbXSA9IHBvaW50Py5jdXJyZW50VmFsdWUgfHwgdGhpcy5wb2ludDtcclxuICAgICAgICBjb25zdCBjb21iaW5lZExheWVyOiB5bWFwcy5wYW5vcmFtYS5MYXllciA9IGxheWVyPy5jdXJyZW50VmFsdWUgfHwgdGhpcy5sYXllcjtcclxuXHJcbiAgICAgICAgcGxheWVyLm1vdmVUbyhjb21iaW5lZFBvaW50LCB7IGxheWVyOiBjb21iaW5lZExheWVyIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAob3B0aW9ucykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbnMob3B0aW9ucy5jdXJyZW50VmFsdWUsIHBsYXllcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3lhTWFwQ29tcG9uZW50LmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBwYW5vcmFtYSQgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKChtKTogbSBpcyB5bWFwcy5NYXAgPT4gQm9vbGVhbihtKSksXHJcbiAgICAgICAgc3dpdGNoTWFwKChtOiB5bWFwcy5NYXApID0+IHtcclxuICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICogTWFwIGFuZCBwYW5vcmFtYSB1c2UgdGhlIHNhbWUgY29udGFpbmVyLCBzbyBuZWVkIHRvIGRlc3Ryb3kvcmVtb3ZlIG1hcFxyXG4gICAgICAgICAgICovXHJcbiAgICAgICAgICBtLmRlc3Ryb3koKTtcclxuICAgICAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVQYW5vcmFtYSgpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICApO1xyXG5cclxuICAgICAgY29uc3Qgc3ViID0gcGFub3JhbWEkLnN1YnNjcmliZSgocGFub3JhbWEpID0+IHtcclxuICAgICAgICBjb25zdCB7IGlkIH0gPSB0aGlzLl95YU1hcENvbXBvbmVudC5jb250YWluZXIubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBjb25zdCBwbGF5ZXIgPSBuZXcgeW1hcHMucGFub3JhbWEuUGxheWVyKGlkLCBwYW5vcmFtYSwgdGhpcy5vcHRpb25zKTtcclxuICAgICAgICB0aGlzLl9wbGF5ZXIgPSBwbGF5ZXI7XHJcblxyXG4gICAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5zZXRUYXJnZXQocGxheWVyKTtcclxuICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IHBsYXllciB9KSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5fc3ViLmFkZChzdWIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZGVzdHJveSgpO1xyXG4gICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZXN0cnVjdHMgc3RhdGUgYW5kIHBhc3NlcyBpdCBpbiBBUEkuXHJcbiAgICogQHBhcmFtIG9wdGlvbnNcclxuICAgKiBAcGFyYW0gcGxheWVyXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfc2V0T3B0aW9ucyhvcHRpb25zOiB5bWFwcy5wYW5vcmFtYS5JUGxheWVyT3B0aW9ucywgcGxheWVyOiB5bWFwcy5wYW5vcmFtYS5QbGF5ZXIpOiB2b2lkIHtcclxuICAgIGNvbnN0IHtcclxuICAgICAgYXV0b0ZpdFRvVmlld3BvcnQsXHJcbiAgICAgIGNvbnRyb2xzLFxyXG4gICAgICBkaXJlY3Rpb24sXHJcbiAgICAgIGhvdGtleXNFbmFibGVkLFxyXG4gICAgICBzcGFuLFxyXG4gICAgICBzY3JvbGxab29tQmVoYXZpb3IsXHJcbiAgICAgIHN1cHByZXNzTWFwT3BlbkJsb2NrLFxyXG4gICAgfSA9IG9wdGlvbnM7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICBhdXRvRml0VG9WaWV3cG9ydCB8fFxyXG4gICAgICBjb250cm9scyB8fFxyXG4gICAgICBob3RrZXlzRW5hYmxlZCB8fFxyXG4gICAgICBzY3JvbGxab29tQmVoYXZpb3IgfHxcclxuICAgICAgc3VwcHJlc3NNYXBPcGVuQmxvY2tcclxuICAgICkge1xyXG4gICAgICBjb25zb2xlLndhcm4oXHJcbiAgICAgICAgJ09ubHkgZGlyZWN0aW9uIGFuZCBzcGFuIGNhbiBiZSBzZXQgYWZ0ZXIgZW50aXR5IGluaXQuIFRvIHNldCBvdGhlciBvcHRpb25zLCB5b3Ugc2hvdWxkIHJlY3JlYXRlIGEgUGFub3JhbWEgd2l0aCBuZXcgb3B0aW9ucycsXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGRpcmVjdGlvbikge1xyXG4gICAgICBwbGF5ZXIuc2V0RGlyZWN0aW9uKGRpcmVjdGlvbik7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHNwYW4pIHtcclxuICAgICAgcGxheWVyLnNldFNwYW4oc3Bhbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZWFyY2hlcyBmb3IgYSBwYW5vcmFtYSBhbmQgcmV0dXJucyBmaXJzdFxyXG4gICAqL1xyXG4gIHByaXZhdGUgX2NyZWF0ZVBhbm9yYW1hKCk6IE9ic2VydmFibGU8eW1hcHMuSVBhbm9yYW1hPiB7XHJcbiAgICByZXR1cm4gZnJvbSh5bWFwcy5wYW5vcmFtYS5sb2NhdGUodGhpcy5wb2ludCwgeyBsYXllcjogdGhpcy5sYXllciB9KSkucGlwZShcclxuICAgICAgbWFwKChwYW5vcmFtYXMpID0+IHBhbm9yYW1hc1swXSksXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=

@@ -10,3 +10,3 @@ import { Directive, EventEmitter, Input, NgZone, Output, } from '@angular/core';

*
* <example-url>https://custom-placemark.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/custom-placemark?embed=1</example-url>
*

@@ -236,2 +236,2 @@ * @example

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUF5QixNQUFNLDJCQUEyQixDQUFDO0FBRWhGOzs7Ozs7Ozs7OztHQVdHO0FBSUgsTUFBTSxPQUFPLG9CQUFvQjtJQXdNL0IsWUFBNkIsT0FBZSxFQUFtQixlQUErQjtRQUFqRSxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQW1CLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQXZNN0UsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFMUIsa0JBQWEsR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFzQmhFOztXQUVHO1FBQ08sVUFBSyxHQUFnRCxJQUFJLFlBQVksRUFFNUUsQ0FBQztRQUVKOztXQUVHO1FBQ08saUJBQVksR0FDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFcEQ7O1dBRUc7UUFDTyxnQkFBVyxHQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUVuRDs7V0FFRztRQUNPLGVBQVUsR0FDbEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFD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TU4sTUFBTTsyQkFNTixNQUFNOytCQU1OLE1BQU07c0JBTU4sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgRGlyZWN0aXZlLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBOZ1pvbmUsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBZYU1hcENvbXBvbmVudCB9IGZyb20gJy4uL3lhLW1hcC95YS1tYXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXZlbnRNYW5hZ2VyLCBZYUV2ZW50LCBZYVJlYWR5RXZlbnQgfSBmcm9tICcuLi8uLi91dGlscy9ldmVudC1tYW5hZ2VyJztcclxuXHJcbi8qKlxyXG4gKiBUaGUgYHlhLXBsYWNlbWFya2AgZGlyZWN0aXZlIHdyYXBzIGB5bWFwcy5QbGFjZW1hcmtgIGNsYXNzIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cclxuICogWW91IGNhbiBjb25maWd1cmUgaXQgdmlhIHRoZSBkaXJlY3RpdmUncyBpbnB1dHMuXHJcbiAqIEV2ZW50cyBjYW4gYmUgYm91bmQgdXNpbmcgdGhlIG91dHB1dHMgb2YgdGhlIGRpcmVjdGl2ZS5cclxuICpcclxuICogPGV4YW1wbGUtdXJsPmh0dHBzOi8vY3VzdG9tLXBsYWNlbWFyay5zdGFja2JsaXR6LmlvLzwvZXhhbXBsZS11cmw+XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqIDx5YS1tYXAgW2NlbnRlcl09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCI+XHJcbiAqICAgICAgICAgICAgICA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCI+PC95YS1wbGFjZW1hcms+XHJcbiAqIDwveWEtbWFwPlxyXG4gKi9cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICd5YS1wbGFjZW1hcmsnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWWFQbGFjZW1hcmtEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2V2ZW50TWFuYWdlciA9IG5ldyBFdmVudE1hbmFnZXIodGhpcy5fbmdab25lKTtcclxuXHJcbiAgcGxhY2VtYXJrPzogeW1hcHMuUGxhY2VtYXJrO1xyXG5cclxuICAvKipcclxuICAgKiBDb29yZGluYXRlcyBvZiB0aGUgcGxhY2VtYXJrLCBvciBhIGhhc2ggZGVzY3JpYmluZyB0aGUgZ2VvbWV0cnksIG9yIGEgcmVmZXJlbmNlIHRvIHRoZSBwb2ludCBnZW9tZXRyeSBvYmplY3QuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvUGxhY2VtYXJrLmh0bWwjUGxhY2VtYXJrX19wYXJhbS1nZW9tZXRyeX1cclxuICAgKi9cclxuICBASW5wdXQoKSBnZW9tZXRyeTogbnVtYmVyW10gfCBvYmplY3QgfCB5bWFwcy5JUG9pbnRHZW9tZXRyeTtcclxuXHJcbiAgLyoqXHJcbiAgICogUHJvcGVydGllcyBmb3IgdGhlIHBsYWNlbWFyay5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL1BsYWNlbWFyay1kb2NwYWdlLyNQbGFjZW1hcmtwYXJhbS1wcm9wZXJ0aWVzfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHByb3BlcnRpZXM6IG9iamVjdCB8IHltYXBzLklEYXRhTWFuYWdlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9ucyBmb3IgdGhlIHBsYWNlbWFyay5cclxuICAgKiB7QGxpbmsgaHR0cHM6Ly95YW5kZXguY29tL21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL1BsYWNlbWFyay1kb2NwYWdlLyNQbGFjZW1hcmtwYXJhbS1vcHRpb25zfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM6IHltYXBzLklQbGFjZW1hcmtPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBQbGFjZW1hcmsgaW5zdGFuY2UgaXMgYWRkZWQgaW4gYSBNYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHJlYWR5OiBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID0gbmV3IEV2ZW50RW1pdHRlcjxcclxuICAgIFlhUmVhZHlFdmVudDx5bWFwcy5QbGFjZW1hcms+XHJcbiAgPigpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiYWxsb29uY2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JhbGxvb25jbG9zZScpO1xyXG5cclxuICAvKipcclxuICAgKiBPcGVuaW5nIGEgYmFsbG9vbiBvbiBhIG1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYmFsbG9vbm9wZW46IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JhbGxvb25vcGVuJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IHByZWNlZGluZyB0aGUgXCJkcmFnXCIgZXZlbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJlZm9yZWRyYWc6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JlZm9yZWRyYWcnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgcHJlY2VkaW5nIHRoZSBcImRyYWdzdGFydFwiIGV2ZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiZWZvcmVkcmFnc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2JlZm9yZWRyYWdzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBTaW5nbGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdjbGljaycpO1xyXG5cclxuICAvKipcclxuICAgKiBDYWxscyB0aGUgZWxlbWVudCdzIGNvbnRleHQgbWVudS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFjb250ZXh0bWVudTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignY29udGV4dG1lbnUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRG91YmxlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkYmNsaWNrOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkYmNsaWNrJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERyYWdnaW5nIGEgZ2VvIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkcmFnOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkcmFnJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEVuZCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YWRyYWdlbmQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RyYWdlbmQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RhcnQgb2YgZ2VvIG9iamVjdCBkcmFnZ2luZy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkcmFnc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2RyYWdzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgaW4gdGhlIHN0YXRlIG9mIHRoZSBlZGl0b3IgZm9yIHRoZSBnZW8gb2JqZWN0J3MgZ2VvbWV0cnkuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGVkaXRvcnN0YXRlY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdlZGl0b3JzdGF0ZWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnlcclxuICAgKi9cclxuICBAT3V0cHV0KCkgZ2VvbWV0cnljaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2dlb21ldHJ5Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGhpbnRjbG9zZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignaGludGNsb3NlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wZW5pbmcgYSBoaW50IG9uIGEgbWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBoaW50b3BlbjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignaGludG9wZW4nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTWFwIHJlZmVyZW5jZSBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYXBjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21hcGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWRvd246IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlZG93bicpO1xyXG5cclxuICAvKipcclxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2VlbnRlcjogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2VlbnRlcicpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvZmYgb2YgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZWxlYXZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWxlYXZlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1vdmluZyB0aGUgY3Vyc29yIG92ZXIgdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFtb3VzZW1vdmU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlbW92ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBMZXR0aW5nIGdvIG9mIHRoZSBtb3VzZSBidXR0b24gb3ZlciBhbiBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2V1cDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2V1cCcpO1xyXG5cclxuICAvKipcclxuICAgKiBFbmQgb2YgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaGVuZDogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaGVuZCcpO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2htb3ZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtdWx0aXRvdWNobW92ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNoc3RhcnQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ211bHRpdG91Y2hzdGFydCcpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIG9iamVjdCBvcHRpb25zLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvcHRpb25zY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvcHRpb25zY2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvdmVybGF5Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdvdmVybGF5Y2hhbmdlJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBwYXJlbnQgb2JqZWN0IHJlZmVyZW5jZSBjaGFuZ2VkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwYXJlbnRjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3BhcmVudGNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcHJvcGVydGllc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcigncHJvcGVydGllc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3VzZSB3aGVlbCBzY3JvbGxpbmcuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhd2hlZWw6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3doZWVsJyk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgX25nWm9uZTogTmdab25lLCBwcml2YXRlIHJlYWRvbmx5IF95YU1hcENvbXBvbmVudDogWWFNYXBDb21wb25lbnQpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcGFzc2VzIHRoZW0gaW4gQVBJLlxyXG4gICAqIEBwYXJhbSBjaGFuZ2VzXHJcbiAgICovXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBwbGFjZW1hcmsgfSA9IHRoaXM7XHJcblxyXG4gICAgaWYgKHBsYWNlbWFyaykge1xyXG4gICAgICBjb25zdCB7IGdlb21ldHJ5LCBwcm9wZXJ0aWVzLCBvcHRpb25zIH0gPSBjaGFuZ2VzO1xyXG5cclxuICAgICAgaWYgKGdlb21ldHJ5KSB7XHJcbiAgICAgICAgcGxhY2VtYXJrLmdlb21ldHJ5Py5zZXRDb29yZGluYXRlcyhnZW9tZXRyeS5jdXJyZW50VmFsdWUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocHJvcGVydGllcykge1xyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIChwbGFjZW1hcmsucHJvcGVydGllcyBhcyBhbnkpLnNldChwcm9wZXJ0aWVzLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgcGxhY2VtYXJrLm9wdGlvbnMuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5feWFNYXBDb21wb25lbnQuaXNCcm93c2VyKSB7XHJcbiAgICAgIGNvbnN0IHN1YiA9IHRoaXMuX3lhTWFwQ29tcG9uZW50Lm1hcCQuc3Vic2NyaWJlKChtYXApID0+IHtcclxuICAgICAgICBpZiAobWFwKSB7XHJcbiAgICAgICAgICBjb25zdCBwbGFjZW1hcmsgPSB0aGlzLl9jcmVhdGVQbGFjZW1hcmsoKTtcclxuICAgICAgICAgIHRoaXMucGxhY2VtYXJrID0gcGxhY2VtYXJrO1xyXG5cclxuICAgICAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChwbGFjZW1hcmspO1xyXG4gICAgICAgICAgdGhpcy5fZXZlbnRNYW5hZ2VyLnNldFRhcmdldChwbGFjZW1hcmspO1xyXG4gICAgICAgICAgdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogcGxhY2VtYXJrIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnBsYWNlbWFyaykge1xyXG4gICAgICB0aGlzLl95YU1hcENvbXBvbmVudD8ubWFwJC52YWx1ZT8uZ2VvT2JqZWN0cy5yZW1vdmUodGhpcy5wbGFjZW1hcmspO1xyXG4gICAgICB0aGlzLl9ldmVudE1hbmFnZXIuZGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlcyBhIHBsYWNlbWFyay5cclxuICAgKi9cclxuICBwcml2YXRlIF9jcmVhdGVQbGFjZW1hcmsoKTogeW1hcHMuUGxhY2VtYXJrIHtcclxuICAgIHJldHVybiBuZXcgeW1hcHMuUGxhY2VtYXJrKHRoaXMuZ2VvbWV0cnksIHRoaXMucHJvcGVydGllcywgdGhpcy5vcHRpb25zKTtcclxuICB9XHJcbn1cclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJekQ7Ozs7Ozs7Ozs7O0dBV0c7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBd00vQixZQUE2QixPQUFlLEVBQW1CLGVBQStCO1FBQWpFLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBbUIsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBdk03RSxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUxQixrQkFBYSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQXNCaEU7O1dBRUc7UUFDTyxVQUFLLEdBQWdELElBQUksWUFBWSxFQUU1RSxDQUFDO1FBRUo7O1dBRUc7UUFDTyxpQkFBWSxHQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVwRDs7V0FFRztRQUNPLGdCQUFXLEdBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRW5EOztXQUVHO1FBQ08sZUFBVSxHQUNsQixJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMs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TixNQUFNOzJCQU1OLE1BQU07K0JBTU4sTUFBTTtzQkFNTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE5nWm9uZSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFlhTWFwQ29tcG9uZW50IH0gZnJvbSAnLi4veWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFdmVudE1hbmFnZXIgfSBmcm9tICcuLi8uLi91dGlscy9ldmVudC1tYW5hZ2VyJztcclxuaW1wb3J0IHsgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vdHlwaW5ncy95YS1yZWFkeS1ldmVudCc7XHJcbmltcG9ydCB7IFlhRXZlbnQgfSBmcm9tICcuLi8uLi90eXBpbmdzL3lhLWV2ZW50JztcclxuXHJcbi8qKlxyXG4gKiBUaGUgYHlhLXBsYWNlbWFya2AgZGlyZWN0aXZlIHdyYXBzIGB5bWFwcy5QbGFjZW1hcmtgIGNsYXNzIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cclxuICogWW91IGNhbiBjb25maWd1cmUgaXQgdmlhIHRoZSBkaXJlY3RpdmUncyBpbnB1dHMuXHJcbiAqIEV2ZW50cyBjYW4gYmUgYm91bmQgdXNpbmcgdGhlIG91dHB1dHMgb2YgdGhlIGRpcmVjdGl2ZS5cclxuICpcclxuICogPGV4YW1wbGUtdXJsPmh0dHBzOi8vc3RhY2tibGl0ei5jb20vZWRpdC9jdXN0b20tcGxhY2VtYXJrP2VtYmVkPTE8L2V4YW1wbGUtdXJsPlxyXG4gKlxyXG4gKiBAZXhhbXBsZVxyXG4gKiA8eWEtbWFwIFtjZW50ZXJdPVwiWzU1Ljc1MTk1MiwgMzcuNjAwNzM5XVwiPlxyXG4gKiAgICAgICAgICAgICAgPHlhLXBsYWNlbWFyayBbZ2VvbWV0cnldPVwiWzU1Ljc1MTk1MiwgMzcuNjAwNzM5XVwiPjwveWEtcGxhY2VtYXJrPlxyXG4gKiA8L3lhLW1hcD5cclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAneWEtcGxhY2VtYXJrJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFlhUGxhY2VtYXJrRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudE1hbmFnZXIgPSBuZXcgRXZlbnRNYW5hZ2VyKHRoaXMuX25nWm9uZSk7XHJcblxyXG4gIHBsYWNlbWFyaz86IHltYXBzLlBsYWNlbWFyaztcclxuXHJcbiAgLyoqXHJcbiAgICogQ29vcmRpbmF0ZXMgb2YgdGhlIHBsYWNlbWFyaywgb3IgYSBoYXNoIGRlc2NyaWJpbmcgdGhlIGdlb21ldHJ5LCBvciBhIHJlZmVyZW5jZSB0byB0aGUgcG9pbnQgZ2VvbWV0cnkgb2JqZWN0LlxyXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL1BsYWNlbWFyay5odG1sI1BsYWNlbWFya19fcGFyYW0tZ2VvbWV0cnl9XHJcbiAgICovXHJcbiAgQElucHV0KCkgZ2VvbWV0cnk6IG51bWJlcltdIHwgb2JqZWN0IHwgeW1hcHMuSVBvaW50R2VvbWV0cnk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByb3BlcnRpZXMgZm9yIHRoZSBwbGFjZW1hcmsuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9QbGFjZW1hcmstZG9jcGFnZS8jUGxhY2VtYXJrcGFyYW0tcHJvcGVydGllc31cclxuICAgKi9cclxuICBASW5wdXQoKSBwcm9wZXJ0aWVzOiBvYmplY3QgfCB5bWFwcy5JRGF0YU1hbmFnZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBwbGFjZW1hcmsuXHJcbiAgICoge0BsaW5rIGh0dHBzOi8veWFuZGV4LmNvbS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9QbGFjZW1hcmstZG9jcGFnZS8jUGxhY2VtYXJrcGFyYW0tb3B0aW9uc31cclxuICAgKi9cclxuICBASW5wdXQoKSBvcHRpb25zOiB5bWFwcy5JUGxhY2VtYXJrT3B0aW9ucztcclxuXHJcbiAgLyoqXHJcbiAgICogUGxhY2VtYXJrIGluc3RhbmNlIGlzIGFkZGVkIGluIGEgTWFwLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSByZWFkeTogRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9IG5ldyBFdmVudEVtaXR0ZXI8XHJcbiAgICBZYVJlYWR5RXZlbnQ8eW1hcHMuUGxhY2VtYXJrPlxyXG4gID4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2xvc2luZyB0aGUgYmFsbG9vbi5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYmFsbG9vbmNsb3NlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdiYWxsb29uY2xvc2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGJhbGxvb25vcGVuOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdiYWxsb29ub3BlbicpO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ1wiIGV2ZW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBiZWZvcmVkcmFnOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdiZWZvcmVkcmFnJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IHByZWNlZGluZyB0aGUgXCJkcmFnc3RhcnRcIiBldmVudC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgYmVmb3JlZHJhZ3N0YXJ0OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdiZWZvcmVkcmFnc3RhcnQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFjbGljazogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignY2xpY2snKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhY29udGV4dG1lbnU6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2NvbnRleHRtZW51Jyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhZGJjbGljazogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZGJjbGljaycpO1xyXG5cclxuICAvKipcclxuICAgKiBEcmFnZ2luZyBhIGdlbyBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhZHJhZzogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZHJhZycpO1xyXG5cclxuICAvKipcclxuICAgKiBFbmQgb2YgZ2VvIG9iamVjdCBkcmFnZ2luZy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgeWFkcmFnZW5kOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkcmFnZW5kJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFN0YXJ0IG9mIGdlbyBvYmplY3QgZHJhZ2dpbmcuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhZHJhZ3N0YXJ0OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdkcmFnc3RhcnQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlIGluIHRoZSBzdGF0ZSBvZiB0aGUgZWRpdG9yIGZvciB0aGUgZ2VvIG9iamVjdCdzIGdlb21ldHJ5LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBlZGl0b3JzdGF0ZWNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignZWRpdG9yc3RhdGVjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlIHRvIHRoZSBnZW8gb2JqZWN0IGdlb21ldHJ5XHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGdlb21ldHJ5Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdnZW9tZXRyeWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDbG9zaW5nIHRoZSBoaW50LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBoaW50Y2xvc2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2hpbnRjbG9zZScpO1xyXG5cclxuICAvKipcclxuICAgKiBPcGVuaW5nIGEgaGludCBvbiBhIG1hcC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgaGludG9wZW46IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ2hpbnRvcGVuJyk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1hcCByZWZlcmVuY2UgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbWFwY2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtYXBjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUHJlc3NpbmcgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2Vkb3duOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZWRvd24nKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUG9pbnRpbmcgdGhlIGN1cnNvciBhdCB0aGUgb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNlZW50ZXI6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNlZW50ZXInKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb2ZmIG9mIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2VsZWF2ZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbW91c2VsZWF2ZScpO1xyXG5cclxuICAvKipcclxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvdmVyIHRoZSBvYmplY3QuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHlhbW91c2Vtb3ZlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtb3VzZW1vdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YW1vdXNldXA6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ21vdXNldXAnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRW5kIG9mIG11bHRpdG91Y2guXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG11bHRpdG91Y2hlbmQ6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ211bHRpdG91Y2hlbmQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmVwZWF0aW5nIGV2ZW50IGR1cmluZyBtdWx0aXRvdWNoLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtdWx0aXRvdWNobW92ZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignbXVsdGl0b3VjaG1vdmUnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RhcnQgb2YgbXVsdGl0b3VjaC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgbXVsdGl0b3VjaHN0YXJ0OiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdtdWx0aXRvdWNoc3RhcnQnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlIHRvIHRoZSBvYmplY3Qgb3B0aW9ucy5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgb3B0aW9uc2NoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignb3B0aW9uc2NoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3Qgb3ZlcmxheS5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgb3ZlcmxheWNoYW5nZTogT2JzZXJ2YWJsZTxZYUV2ZW50PHltYXBzLlBsYWNlbWFyaz4+ID1cclxuICAgIHRoaXMuX2V2ZW50TWFuYWdlci5nZXRMYXp5RW1pdHRlcignb3ZlcmxheWNoYW5nZScpO1xyXG5cclxuICAvKipcclxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cclxuICAgKi9cclxuICBAT3V0cHV0KCkgcGFyZW50Y2hhbmdlOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCdwYXJlbnRjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2hhbmdlIHRvIHRoZSBnZW8gb2JqZWN0IGRhdGEuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHByb3BlcnRpZXNjaGFuZ2U6IE9ic2VydmFibGU8WWFFdmVudDx5bWFwcy5QbGFjZW1hcms+PiA9XHJcbiAgICB0aGlzLl9ldmVudE1hbmFnZXIuZ2V0TGF6eUVtaXR0ZXIoJ3Byb3BlcnRpZXNjaGFuZ2UnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSB5YXdoZWVsOiBPYnNlcnZhYmxlPFlhRXZlbnQ8eW1hcHMuUGxhY2VtYXJrPj4gPVxyXG4gICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmdldExhenlFbWl0dGVyKCd3aGVlbCcpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSByZWFkb25seSBfeWFNYXBDb21wb25lbnQ6IFlhTWFwQ29tcG9uZW50KSB7fVxyXG5cclxuICAvKipcclxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHBhc3NlcyB0aGVtIGluIEFQSS5cclxuICAgKiBAcGFyYW0gY2hhbmdlc1xyXG4gICAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgcGxhY2VtYXJrIH0gPSB0aGlzO1xyXG5cclxuICAgIGlmIChwbGFjZW1hcmspIHtcclxuICAgICAgY29uc3QgeyBnZW9tZXRyeSwgcHJvcGVydGllcywgb3B0aW9ucyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICAgIGlmIChnZW9tZXRyeSkge1xyXG4gICAgICAgIHBsYWNlbWFyay5nZW9tZXRyeT8uc2V0Q29vcmRpbmF0ZXMoZ2VvbWV0cnkuY3VycmVudFZhbHVlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHByb3BlcnRpZXMpIHtcclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cclxuICAgICAgICAgKi9cclxuICAgICAgICAocGxhY2VtYXJrLnByb3BlcnRpZXMgYXMgYW55KS5zZXQocHJvcGVydGllcy5jdXJyZW50VmFsdWUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAob3B0aW9ucykge1xyXG4gICAgICAgIHBsYWNlbWFyay5vcHRpb25zLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX3lhTWFwQ29tcG9uZW50LmlzQnJvd3Nlcikge1xyXG4gICAgICBjb25zdCBzdWIgPSB0aGlzLl95YU1hcENvbXBvbmVudC5tYXAkLnN1YnNjcmliZSgobWFwKSA9PiB7XHJcbiAgICAgICAgaWYgKG1hcCkge1xyXG4gICAgICAgICAgY29uc3QgcGxhY2VtYXJrID0gdGhpcy5fY3JlYXRlUGxhY2VtYXJrKCk7XHJcbiAgICAgICAgICB0aGlzLnBsYWNlbWFyayA9IHBsYWNlbWFyaztcclxuXHJcbiAgICAgICAgICBtYXAuZ2VvT2JqZWN0cy5hZGQocGxhY2VtYXJrKTtcclxuICAgICAgICAgIHRoaXMuX2V2ZW50TWFuYWdlci5zZXRUYXJnZXQocGxhY2VtYXJrKTtcclxuICAgICAgICAgIHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IHBsYWNlbWFyayB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5fc3ViLmFkZChzdWIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5wbGFjZW1hcmspIHtcclxuICAgICAgdGhpcy5feWFNYXBDb21wb25lbnQ/Lm1hcCQudmFsdWU/Lmdlb09iamVjdHMucmVtb3ZlKHRoaXMucGxhY2VtYXJrKTtcclxuICAgICAgdGhpcy5fZXZlbnRNYW5hZ2VyLmRlc3Ryb3koKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9zdWIudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgYSBwbGFjZW1hcmsuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY3JlYXRlUGxhY2VtYXJrKCk6IHltYXBzLlBsYWNlbWFyayB7XHJcbiAgICByZXR1cm4gbmV3IHltYXBzLlBsYWNlbWFyayh0aGlzLmdlb21ldHJ5LCB0aGlzLnByb3BlcnRpZXMsIHRoaXMub3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==

@@ -10,4 +10,2 @@ import { Injectable, NgZone } from '@angular/core';

*
* <example-url>https://ymaps-geocoder.stackblitz.io</example-url>
*
* @example

@@ -52,2 +50,2 @@ * import { YaGeocoderService } from 'angular8-yandex-maps';

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtZ2VvY29kZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvc2VydmljZXMveWEtZ2VvY29kZXIveWEtZ2VvY29kZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQUU1RTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUlILE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFDbUIsT0FBZSxFQUNmLG1CQUF1QztRQUR2QyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2Ysd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtJQUN2RCxDQUFDO0lBRUo7Ozs7T0FJRztJQUNILE9BQU8sQ0FBQyxPQUEwQixFQUFFLE9BQStCO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FDekMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQ3RELFNBQVMsQ0FDUCxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQ1QsSUFBSSxVQUFVLENBQVMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BCLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3RCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUNMLENBQ0YsQ0FBQztJQUNKLENBQUM7Ozs7WUEzQkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUF0Qm9CLE1BQU07WUFHbEIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBZYUFwaUxvYWRlclNlcnZpY2UgfSBmcm9tICcuLi95YS1hcGktbG9hZGVyL3lhLWFwaS1sb2FkZXIuc2VydmljZSc7XHJcblxyXG4vKipcclxuICogVGhlIGBZYUdlb2NvZGVyYCBzZXJ2aWNlIHdyYXBzIGB5bWFwcy5nZW9jb2RlYCBzdGF0aWMgZnVuY3Rpb24gZnJvbSB0aGUgWWFuZGV4IE1hcHMgQVBJLlxyXG4gKlxyXG4gKiA8ZXhhbXBsZS11cmw+aHR0cHM6Ly95bWFwcy1nZW9jb2Rlci5zdGFja2JsaXR6LmlvPC9leGFtcGxlLXVybD5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogaW1wb3J0IHsgWWFHZW9jb2RlclNlcnZpY2UgfSBmcm9tICdhbmd1bGFyOC15YW5kZXgtbWFwcyc7XHJcbiAqXHJcbiAqIGV4cG9ydCBjbGFzcyBBcHBDb21wb25lbnQge1xyXG4gKiAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgeWFHZW9jb2RlclNlcnZpY2U6IFlhR2VvY29kZXJTZXJ2aWNlKSB7XHJcbiAqICAgICAgICAgICAgICAgICB0aGlzLnlhR2VvY29kZXJTZXJ2aWNlLmdlb2NvZGUoJ01vc2NvdycpXHJcbiAqICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUodiA9PiBjb25zb2xlLmxvZyh2KSlcclxuICogICAgICAgICAgICAgICB9XHJcbiAqIH1cclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYUdlb2NvZGVyU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3lhQXBpTG9hZGVyU2VydmljZTogWWFBcGlMb2FkZXJTZXJ2aWNlLFxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogUHJvY2Vzc2VzIGdlb2NvZGluZyByZXF1ZXN0c1xyXG4gICAqIEBwYXJhbSByZXF1ZXN0XHJcbiAgICogQHBhcmFtIG9wdGlvbnNcclxuICAgKi9cclxuICBnZW9jb2RlKHJlcXVlc3Q6IHN0cmluZyB8IG51bWJlcltdLCBvcHRpb25zPzogeW1hcHMuSUdlb2NvZGVPcHRpb25zKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLl95YUFwaUxvYWRlclNlcnZpY2UubG9hZCgpLnBpcGUoXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBmcm9tKHltYXBzLmdlb2NvZGUocmVxdWVzdCwgb3B0aW9ucykpKSxcclxuICAgICAgc3dpdGNoTWFwKFxyXG4gICAgICAgIChyZXN1bHQpID0+XHJcbiAgICAgICAgICBuZXcgT2JzZXJ2YWJsZTxvYmplY3Q+KChvYnNlcnZlcikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgKSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtZ2VvY29kZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvc2VydmljZXMveWEtZ2VvY29kZXIveWEtZ2VvY29kZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7OztBQUU1RTs7Ozs7Ozs7Ozs7O0dBWUc7QUFJSCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQ21CLE9BQWUsRUFDZixtQkFBdUM7UUFEdkMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7SUFDdkQsQ0FBQztJQUVKOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsT0FBMEIsRUFBRSxPQUErQjtRQUNqRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQ3pDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUN0RCxTQUFTLENBQ1AsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNULElBQUksVUFBVSxDQUFTLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNwQixRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN0QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDTCxDQUNGLENBQUM7SUFDSixDQUFDOzs7O1lBM0JGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBcEJvQixNQUFNO1lBR2xCLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgWWFBcGlMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4veWEtYXBpLWxvYWRlci95YS1hcGktbG9hZGVyLnNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIFRoZSBgWWFHZW9jb2RlcmAgc2VydmljZSB3cmFwcyBgeW1hcHMuZ2VvY29kZWAgc3RhdGljIGZ1bmN0aW9uIGZyb20gdGhlIFlhbmRleCBNYXBzIEFQSS5cclxuICpcclxuICogQGV4YW1wbGVcclxuICogaW1wb3J0IHsgWWFHZW9jb2RlclNlcnZpY2UgfSBmcm9tICdhbmd1bGFyOC15YW5kZXgtbWFwcyc7XHJcbiAqXHJcbiAqIGV4cG9ydCBjbGFzcyBBcHBDb21wb25lbnQge1xyXG4gKiAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgeWFHZW9jb2RlclNlcnZpY2U6IFlhR2VvY29kZXJTZXJ2aWNlKSB7XHJcbiAqICAgICAgICAgICAgICAgICB0aGlzLnlhR2VvY29kZXJTZXJ2aWNlLmdlb2NvZGUoJ01vc2NvdycpXHJcbiAqICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUodiA9PiBjb25zb2xlLmxvZyh2KSlcclxuICogICAgICAgICAgICAgICB9XHJcbiAqIH1cclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZYUdlb2NvZGVyU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgX3lhQXBpTG9hZGVyU2VydmljZTogWWFBcGlMb2FkZXJTZXJ2aWNlLFxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogUHJvY2Vzc2VzIGdlb2NvZGluZyByZXF1ZXN0c1xyXG4gICAqIEBwYXJhbSByZXF1ZXN0XHJcbiAgICogQHBhcmFtIG9wdGlvbnNcclxuICAgKi9cclxuICBnZW9jb2RlKHJlcXVlc3Q6IHN0cmluZyB8IG51bWJlcltdLCBvcHRpb25zPzogeW1hcHMuSUdlb2NvZGVPcHRpb25zKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLl95YUFwaUxvYWRlclNlcnZpY2UubG9hZCgpLnBpcGUoXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBmcm9tKHltYXBzLmdlb2NvZGUocmVxdWVzdCwgb3B0aW9ucykpKSxcclxuICAgICAgc3dpdGNoTWFwKFxyXG4gICAgICAgIChyZXN1bHQpID0+XHJcbiAgICAgICAgICBuZXcgT2JzZXJ2YWJsZTxvYmplY3Q+KChvYnNlcnZlcikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9KSxcclxuICAgICAgKSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==

@@ -87,2 +87,2 @@ /**

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvdXRpbHMvZXZlbnQtbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFHSCxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUEyQjNDOzs7R0FHRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBaUJ2QixZQUE2QixPQUFlO1FBQWYsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQWhCNUM7O1dBRUc7UUFDSyxhQUFRLEdBR1YsRUFBRSxDQUFDO1FBRUQsZUFBVSxHQUlaLEVBQUUsQ0FBQztRQUVRLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQWlDLFNBQVMsQ0FBQyxDQUFDO0lBRWpELENBQUM7SUFFaEQ7OztPQUdHO0lBQ0gsY0FBYyxDQUFDLElBQVk7UUFDekIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDNUIsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDbkIsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDdEQsMEZBQTBGO2dCQUMxRixJQUFJLENBQUMsTUFBTSxFQUFFO29CQUNYLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7b0JBQzdDLE9BQU8sU0FBUyxDQUFDO2lCQUNsQjtnQkFFRCxNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQWtCLEVBQUUsRUFBRTtvQkFDdEMsTUFBTSxDQUFDLEdBQUc7d0JBQ1IsS0FBSzt3QkFDTCxNQUFNO3dCQUNOLEtBQUs7cUJBQ04sQ0FBQztvQkFFRixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLENBQUMsQ0FBQztnQkFFRixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7Z0JBQ25ELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFFNUQsdUJBQXVCO2dCQUN2QixPQUFPLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFFBQWUsQ0FBQyxDQUFDO1lBQ3RELENBQUMsQ0FBQyxDQUFDO1lBRUgsT0FBTyxVQUFVLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBMEI7UUFDbEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7UUFFL0MsSUFBSSxNQUFNLEtBQUssYUFBYSxFQUFFO1lBQzVCLE9BQU87U0FDUjtRQUVELG9EQUFvRDtRQUNwRCxJQUFJLGFBQWEsRUFBRTtZQUNqQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7U0FDcEI7UUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVoQyxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRTVGLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7O09BRUc7SUFDSyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDbkMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsUUFBUSxDQUFDO1lBQzdDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFFBQWUsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3BpZWQgZnJvbSBhbmd1bGFyL2NvbXBvbmVudHMvZ29vZ2xlLW1hcHMgYW5kIGVkaXRlZCBmb3IgWWFuZGV4IE1hcHMgQVBJLlxuICoge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi9tYXN0ZXIvc3JjL2dvb2dsZS1tYXBzL21hcC1ldmVudC1tYW5hZ2VyLnRzfVxuICovXG5cbmltcG9ydCB7IE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpYmVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgWWFFdmVudDxUID0gYW55PiB7XG4gIC8qKlxuICAgKiBJbnN0YW5jZSBvZiB0YXJnZXRcbiAgICovXG4gIHRhcmdldDogVDtcbiAgLyoqXG4gICAqIEFQSSBnbG9iYWwgb2JqZWN0XG4gICAqL1xuICB5bWFwczogdHlwZW9mIHltYXBzO1xuICAvKipcbiAgICogUHJvdmlkZXMgbWV0aG9kcyBmb3IgYWNjZXNzaW5nIHRoZSBvcmlnaW5hbE9iamVjdCBvYmplY3QncyBmaWVsZHMgYW5kIG1ldGhvZHMsIHdpdGggdGhlIHBvc3NpYmlsaXR5IGZvciByZWRlZmluaW5nIHRoZW0uXG4gICAqIHtAbGluayBodHRwczovL3lhbmRleC5jb20vZGV2L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0V2ZW50Lmh0bWwvfVxuICAgKi9cbiAgZXZlbnQ6IHltYXBzLkV2ZW50PGFueSwgVD47XG59XG5cbmV4cG9ydCB0eXBlIFlhUmVhZHlFdmVudDxUID0gYW55PiA9IE9taXQ8WWFFdmVudDxUPiwgJ2V2ZW50Jz47XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbnR5cGUgRXZlbnRNYW5hZ2VyVGFyZ2V0ID0ge1xuICBldmVudHM6IHltYXBzLklFdmVudE1hbmFnZXI7XG59O1xuXG4vKipcbiAqIE1hbmFnZXMgZXZlbnQgb24gYSBZYW5kZXggTWFwcyBvYmplY3QsIGVuc3VyaW5nIHRoYXQgZXZlbnRzIGFyZSBhZGRlZCBvbmx5IHdoZW4gbmVjZXNzYXJ5LlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBFdmVudE1hbmFnZXIge1xuICAvKipcbiAgICogTGlzdGVuZXJzIHRoYXQgd2VyZSBhZGRlZCBiZWZvcmUgdGhlIHRhcmdldCB3YXMgc2V0LlxuICAgKi9cbiAgcHJpdmF0ZSBfcGVuZGluZzoge1xuICAgIG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55PjtcbiAgICBvYnNlcnZlcjogU3Vic2NyaWJlcjxhbnk+O1xuICB9W10gPSBbXTtcblxuICBwcml2YXRlIF9saXN0ZW5lcnM6IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgY2FsbGJhY2s6IChlOiB5bWFwcy5FdmVudCkgPT4gdm9pZDtcbiAgICBtYW5hZ2VyOiB5bWFwcy5JRXZlbnRNYW5hZ2VyO1xuICB9W10gPSBbXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF90YXJnZXRTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEV2ZW50TWFuYWdlclRhcmdldCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSkge31cblxuICAvKipcbiAgICogR2V0cyBhbiBvYnNlcnZhYmxlIHRoYXQgYWRkcyBhbiBldmVudCBsaXN0ZW5lciB0byB0aGUgbWFwIHdoZW4gYSBjb25zdW1lciBzdWJzY3JpYmVzIHRvIGl0LlxuICAgKiBAcGFyYW0gbmFtZVxuICAgKi9cbiAgZ2V0TGF6eUVtaXR0ZXIobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxZYUV2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuX3RhcmdldFN0cmVhbS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh0YXJnZXQpID0+IHtcbiAgICAgICAgY29uc3Qgb2JzZXJ2YWJsZSA9IG5ldyBPYnNlcnZhYmxlPFlhRXZlbnQ+KChvYnNlcnZlcikgPT4ge1xuICAgICAgICAgIC8vIElmIHRoZSB0YXJnZXQgaGFzbid0IGJlZW4gaW5pdGlhbGl6ZWQgeWV0LCBjYWNoZSB0aGUgb2JzZXJ2ZXIgc28gaXQgY2FuIGJlIGFkZGVkIGxhdGVyLlxuICAgICAgICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICAgICAgICB0aGlzLl9wZW5kaW5nLnB1c2goeyBvYnNlcnZhYmxlLCBvYnNlcnZlciB9KTtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgY2FsbGJhY2sgPSAoZXZlbnQ6IHltYXBzLkV2ZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlID0ge1xuICAgICAgICAgICAgICBldmVudCxcbiAgICAgICAgICAgICAgdGFyZ2V0LFxuICAgICAgICAgICAgICB5bWFwcyxcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gb2JzZXJ2ZXIubmV4dChlKSk7XG4gICAgICAgICAgfTtcblxuICAgICAgICAgIGNvbnN0IGxpc3RlbmVyID0gdGFyZ2V0LmV2ZW50cy5hZGQobmFtZSwgY2FsbGJhY2spO1xuICAgICAgICAgIHRoaXMuX2xpc3RlbmVycy5wdXNoKHsgbmFtZSwgY2FsbGJhY2ssIG1hbmFnZXI6IGxpc3RlbmVyIH0pO1xuXG4gICAgICAgICAgLy8gVW5zdWJzY3JpYmUgZnVuY3Rpb25cbiAgICAgICAgICByZXR1cm4gKCkgPT4gbGlzdGVuZXIucmVtb3ZlKG5hbWUsIGNhbGxiYWNrIGFzIGFueSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBvYnNlcnZhYmxlO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjdXJyZW50IHRhcmdldCB0aGF0IHRoZSBtYW5hZ2VyIHNob3VsZCBiaW5kIGV2ZW50cyB0by5cbiAgICogQHBhcmFtIHRhcmdldFxuICAgKi9cbiAgc2V0VGFyZ2V0KHRhcmdldDogRXZlbnRNYW5hZ2VyVGFyZ2V0KTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFRhcmdldCA9IHRoaXMuX3RhcmdldFN0cmVhbS52YWx1ZTtcblxuICAgIGlmICh0YXJnZXQgPT09IGN1cnJlbnRUYXJnZXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDbGVhciB0aGUgbGlzdGVuZXJzIGZyb20gdGhlIHByZS1leGlzdGluZyB0YXJnZXQuXG4gICAgaWYgKGN1cnJlbnRUYXJnZXQpIHtcbiAgICAgIHRoaXMuX2NsZWFyTGlzdGVuZXJzKCk7XG4gICAgICB0aGlzLl9wZW5kaW5nID0gW107XG4gICAgfVxuXG4gICAgdGhpcy5fdGFyZ2V0U3RyZWFtLm5leHQodGFyZ2V0KTtcblxuICAgIC8vIEFkZCB0aGUgbGlzdGVuZXJzIHRoYXQgd2VyZSBib3VuZCBiZWZvcmUgdGhlIG1hcCB3YXMgaW5pdGlhbGl6ZWQuXG4gICAgdGhpcy5fcGVuZGluZy5mb3JFYWNoKChzdWJzY3JpYmVyKSA9PiBzdWJzY3JpYmVyLm9ic2VydmFibGUuc3Vic2NyaWJlKHN1YnNjcmliZXIub2JzZXJ2ZXIpKTtcblxuICAgIHRoaXMuX3BlbmRpbmcgPSBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cm95cyB0aGUgbWFuYWdlciBhbmQgY2xlYXJzIHRoZSBldmVudCBsaXN0ZW5lcnMuXG4gICAqL1xuICBkZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2NsZWFyTGlzdGVuZXJzKCk7XG4gICAgdGhpcy5fcGVuZGluZyA9IFtdO1xuICAgIHRoaXMuX3RhcmdldFN0cmVhbS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFycyBhbGwgY3VycmVudGx5LXJlZ2lzdGVyZWQgZXZlbnQgbGlzdGVuZXJzLlxuICAgKi9cbiAgcHJpdmF0ZSBfY2xlYXJMaXN0ZW5lcnMoKSB7XG4gICAgdGhpcy5fbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBjb25zdCB7IG5hbWUsIGNhbGxiYWNrLCBtYW5hZ2VyIH0gPSBsaXN0ZW5lcjtcbiAgICAgIG1hbmFnZXIucmVtb3ZlKG5hbWUsIGNhbGxiYWNrIGFzIGFueSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9saXN0ZW5lcnMgPSBbXTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvdXRpbHMvZXZlbnQtbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFHSCxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFVM0M7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQVk7SUFpQnZCLFlBQTZCLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBaEI1Qzs7V0FFRztRQUNLLGFBQVEsR0FHVixFQUFFLENBQUM7UUFFRCxlQUFVLEdBSVosRUFBRSxDQUFDO1FBRVEsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBaUMsU0FBUyxDQUFDLENBQUM7SUFFakQsQ0FBQztJQUVoRDs7O09BR0c7SUFDSCxjQUFjLENBQUMsSUFBWTtRQUN6QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUM1QixTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNuQixNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBVSxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUN0RCwwRkFBMEY7Z0JBQzFGLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ1gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztvQkFDN0MsT0FBTyxTQUFTLENBQUM7aUJBQ2xCO2dCQUVELE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBa0IsRUFBRSxFQUFFO29CQUN0QyxNQUFNLENBQUMsR0FBRzt3QkFDUixLQUFLO3dCQUNMLE1BQU07d0JBQ04sS0FBSztxQkFDTixDQUFDO29CQUVGLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0MsQ0FBQyxDQUFDO2dCQUVGLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUU1RCx1QkFBdUI7Z0JBQ3ZCLE9BQU8sR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsUUFBZSxDQUFDLENBQUM7WUFDdEQsQ0FBQyxDQUFDLENBQUM7WUFFSCxPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxNQUEwQjtRQUNsQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztRQUUvQyxJQUFJLE1BQU0sS0FBSyxhQUFhLEVBQUU7WUFDNUIsT0FBTztTQUNSO1FBRUQsb0RBQW9EO1FBQ3BELElBQUksYUFBYSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztTQUNwQjtRQUVELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWhDLG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFFNUYsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNLLGVBQWU7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNuQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUM7WUFDN0MsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsUUFBZSxDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29waWVkIGZyb20gYW5ndWxhci9jb21wb25lbnRzL2dvb2dsZS1tYXBzIGFuZCBlZGl0ZWQgZm9yIFlhbmRleCBNYXBzIEFQSS5cclxuICoge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi9tYXN0ZXIvc3JjL2dvb2dsZS1tYXBzL21hcC1ldmVudC1tYW5hZ2VyLnRzfVxyXG4gKi9cclxuXHJcbmltcG9ydCB7IE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmliZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBZYUV2ZW50IH0gZnJvbSAnLi4vdHlwaW5ncy95YS1ldmVudCc7XHJcblxyXG4vKipcclxuICogQGludGVybmFsXHJcbiAqL1xyXG50eXBlIEV2ZW50TWFuYWdlclRhcmdldCA9IHtcclxuICBldmVudHM6IHltYXBzLklFdmVudE1hbmFnZXI7XHJcbn07XHJcblxyXG4vKipcclxuICogTWFuYWdlcyBldmVudCBvbiBhIFlhbmRleCBNYXBzIG9iamVjdCwgZW5zdXJpbmcgdGhhdCBldmVudHMgYXJlIGFkZGVkIG9ubHkgd2hlbiBuZWNlc3NhcnkuXHJcbiAqIEBpbnRlcm5hbFxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEV2ZW50TWFuYWdlciB7XHJcbiAgLyoqXHJcbiAgICogTGlzdGVuZXJzIHRoYXQgd2VyZSBhZGRlZCBiZWZvcmUgdGhlIHRhcmdldCB3YXMgc2V0LlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX3BlbmRpbmc6IHtcclxuICAgIG9ic2VydmFibGU6IE9ic2VydmFibGU8YW55PjtcclxuICAgIG9ic2VydmVyOiBTdWJzY3JpYmVyPGFueT47XHJcbiAgfVtdID0gW107XHJcblxyXG4gIHByaXZhdGUgX2xpc3RlbmVyczoge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgY2FsbGJhY2s6IChlOiB5bWFwcy5FdmVudCkgPT4gdm9pZDtcclxuICAgIG1hbmFnZXI6IHltYXBzLklFdmVudE1hbmFnZXI7XHJcbiAgfVtdID0gW107XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3RhcmdldFN0cmVhbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RXZlbnRNYW5hZ2VyVGFyZ2V0IHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IF9uZ1pvbmU6IE5nWm9uZSkge31cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0cyBhbiBvYnNlcnZhYmxlIHRoYXQgYWRkcyBhbiBldmVudCBsaXN0ZW5lciB0byB0aGUgbWFwIHdoZW4gYSBjb25zdW1lciBzdWJzY3JpYmVzIHRvIGl0LlxyXG4gICAqIEBwYXJhbSBuYW1lXHJcbiAgICovXHJcbiAgZ2V0TGF6eUVtaXR0ZXIobmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxZYUV2ZW50PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0U3RyZWFtLnBpcGUoXHJcbiAgICAgIHN3aXRjaE1hcCgodGFyZ2V0KSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2YWJsZSA9IG5ldyBPYnNlcnZhYmxlPFlhRXZlbnQ+KChvYnNlcnZlcikgPT4ge1xyXG4gICAgICAgICAgLy8gSWYgdGhlIHRhcmdldCBoYXNuJ3QgYmVlbiBpbml0aWFsaXplZCB5ZXQsIGNhY2hlIHRoZSBvYnNlcnZlciBzbyBpdCBjYW4gYmUgYWRkZWQgbGF0ZXIuXHJcbiAgICAgICAgICBpZiAoIXRhcmdldCkge1xyXG4gICAgICAgICAgICB0aGlzLl9wZW5kaW5nLnB1c2goeyBvYnNlcnZhYmxlLCBvYnNlcnZlciB9KTtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBjb25zdCBjYWxsYmFjayA9IChldmVudDogeW1hcHMuRXZlbnQpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgZSA9IHtcclxuICAgICAgICAgICAgICBldmVudCxcclxuICAgICAgICAgICAgICB0YXJnZXQsXHJcbiAgICAgICAgICAgICAgeW1hcHMsXHJcbiAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IG9ic2VydmVyLm5leHQoZSkpO1xyXG4gICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICBjb25zdCBsaXN0ZW5lciA9IHRhcmdldC5ldmVudHMuYWRkKG5hbWUsIGNhbGxiYWNrKTtcclxuICAgICAgICAgIHRoaXMuX2xpc3RlbmVycy5wdXNoKHsgbmFtZSwgY2FsbGJhY2ssIG1hbmFnZXI6IGxpc3RlbmVyIH0pO1xyXG5cclxuICAgICAgICAgIC8vIFVuc3Vic2NyaWJlIGZ1bmN0aW9uXHJcbiAgICAgICAgICByZXR1cm4gKCkgPT4gbGlzdGVuZXIucmVtb3ZlKG5hbWUsIGNhbGxiYWNrIGFzIGFueSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBvYnNlcnZhYmxlO1xyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXRzIHRoZSBjdXJyZW50IHRhcmdldCB0aGF0IHRoZSBtYW5hZ2VyIHNob3VsZCBiaW5kIGV2ZW50cyB0by5cclxuICAgKiBAcGFyYW0gdGFyZ2V0XHJcbiAgICovXHJcbiAgc2V0VGFyZ2V0KHRhcmdldDogRXZlbnRNYW5hZ2VyVGFyZ2V0KTogdm9pZCB7XHJcbiAgICBjb25zdCBjdXJyZW50VGFyZ2V0ID0gdGhpcy5fdGFyZ2V0U3RyZWFtLnZhbHVlO1xyXG5cclxuICAgIGlmICh0YXJnZXQgPT09IGN1cnJlbnRUYXJnZXQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIENsZWFyIHRoZSBsaXN0ZW5lcnMgZnJvbSB0aGUgcHJlLWV4aXN0aW5nIHRhcmdldC5cclxuICAgIGlmIChjdXJyZW50VGFyZ2V0KSB7XHJcbiAgICAgIHRoaXMuX2NsZWFyTGlzdGVuZXJzKCk7XHJcbiAgICAgIHRoaXMuX3BlbmRpbmcgPSBbXTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl90YXJnZXRTdHJlYW0ubmV4dCh0YXJnZXQpO1xyXG5cclxuICAgIC8vIEFkZCB0aGUgbGlzdGVuZXJzIHRoYXQgd2VyZSBib3VuZCBiZWZvcmUgdGhlIG1hcCB3YXMgaW5pdGlhbGl6ZWQuXHJcbiAgICB0aGlzLl9wZW5kaW5nLmZvckVhY2goKHN1YnNjcmliZXIpID0+IHN1YnNjcmliZXIub2JzZXJ2YWJsZS5zdWJzY3JpYmUoc3Vic2NyaWJlci5vYnNlcnZlcikpO1xyXG5cclxuICAgIHRoaXMuX3BlbmRpbmcgPSBbXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlc3Ryb3lzIHRoZSBtYW5hZ2VyIGFuZCBjbGVhcnMgdGhlIGV2ZW50IGxpc3RlbmVycy5cclxuICAgKi9cclxuICBkZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fY2xlYXJMaXN0ZW5lcnMoKTtcclxuICAgIHRoaXMuX3BlbmRpbmcgPSBbXTtcclxuICAgIHRoaXMuX3RhcmdldFN0cmVhbS5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXJzIGFsbCBjdXJyZW50bHktcmVnaXN0ZXJlZCBldmVudCBsaXN0ZW5lcnMuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBfY2xlYXJMaXN0ZW5lcnMoKSB7XHJcbiAgICB0aGlzLl9saXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IHtcclxuICAgICAgY29uc3QgeyBuYW1lLCBjYWxsYmFjaywgbWFuYWdlciB9ID0gbGlzdGVuZXI7XHJcbiAgICAgIG1hbmFnZXIucmVtb3ZlKG5hbWUsIGNhbGxiYWNrIGFzIGFueSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLl9saXN0ZW5lcnMgPSBbXTtcclxuICB9XHJcbn1cclxuIl19

@@ -10,2 +10,5 @@ /// <reference path="./lib/typings/yandex-maps/index.ts" />

export * from './lib/services/ya-geocoder/ya-geocoder.service';
// Interfaces
export * from './lib/typings/ya-event';
export * from './lib/typings/ya-ready-event';
// Components

@@ -19,2 +22,2 @@ export * from './lib/components/ya-clusterer/ya-clusterer.component';

export * from './lib/components/ya-placemark/ya-placemark.directive';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJEQUEyRDtBQUUzRDs7R0FFRztBQUVILFNBQVM7QUFDVCxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELFdBQVc7QUFDWCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsZ0RBQWdELENBQUM7QUFFL0QsYUFBYTtBQUNiLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsc0RBQXNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi9saWIvdHlwaW5ncy95YW5kZXgtbWFwcy9pbmRleC50c1wiIC8+XHJcblxyXG4vKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYW5ndWxhcjgteWFuZGV4LW1hcHNcclxuICovXHJcblxyXG4vLyBNb2R1bGVcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYW5ndWxhci15YW5kZXgtbWFwcy5tb2R1bGUnO1xyXG5cclxuLy8gU2VydmljZXNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMveWEtYXBpLWxvYWRlci95YS1hcGktbG9hZGVyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy95YS1nZW9jb2Rlci95YS1nZW9jb2Rlci5zZXJ2aWNlJztcclxuXHJcbi8vIENvbXBvbmVudHNcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3lhLW1hcC95YS1tYXAuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1tdWx0aXJvdXRlL3lhLW11bHRpcm91dGUuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1wYW5vcmFtYS95YS1wYW5vcmFtYS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3lhLXBsYWNlbWFyay95YS1wbGFjZW1hcmsuZGlyZWN0aXZlJztcclxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJEQUEyRDtBQUUzRDs7R0FFRztBQUVILFNBQVM7QUFDVCxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELFdBQVc7QUFDWCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsZ0RBQWdELENBQUM7QUFFL0QsYUFBYTtBQUNiLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxhQUFhO0FBQ2IsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxzREFBc0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL2xpYi90eXBpbmdzL3lhbmRleC1tYXBzL2luZGV4LnRzXCIgLz5cclxuXHJcbi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBhbmd1bGFyOC15YW5kZXgtbWFwc1xyXG4gKi9cclxuXHJcbi8vIE1vZHVsZVxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9hbmd1bGFyLXlhbmRleC1tYXBzLm1vZHVsZSc7XHJcblxyXG4vLyBTZXJ2aWNlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy95YS1hcGktbG9hZGVyL3lhLWFwaS1sb2FkZXIuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3lhLWdlb2NvZGVyL3lhLWdlb2NvZGVyLnNlcnZpY2UnO1xyXG5cclxuLy8gSW50ZXJmYWNlc1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBpbmdzL3lhLWV2ZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwaW5ncy95YS1yZWFkeS1ldmVudCc7XHJcblxyXG4vLyBDb21wb25lbnRzXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtY2x1c3RlcmVyL3lhLWNsdXN0ZXJlci5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3lhLWNvbnRyb2wveWEtY29udHJvbC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3lhLWdlb29iamVjdC95YS1nZW9vYmplY3QuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1tYXAveWEtbWFwLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtcGFub3JhbWEveWEtcGFub3JhbWEuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZSc7XHJcbiJdfQ==

@@ -186,3 +186,3 @@ import * as i1 from '@angular/common';

*
* <example-url>https://map-onload-event.stackblitz.io</example-url>
* <example-url>https://stackblitz.com/edit/map-onload-event?embed=1</example-url>
*

@@ -458,3 +458,3 @@ * @example

*
* <example-url>https://geoobject-polygon.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/geoobject-polygon?embed=1</example-url>
*

@@ -701,3 +701,3 @@ * @example

*
* <example-url>https://custom-placemark.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/custom-placemark?embed=1</example-url>
*

@@ -933,3 +933,3 @@ * @example

*
* <example-url>https://placemark-clusterer.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/placemark-clusterer?embed=1</example-url>
*

@@ -1120,3 +1120,3 @@ * @example

*
* <example-url>https://searchcontrol.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/searchcontrol?embed=1</example-url>
*

@@ -1197,2 +1197,4 @@ * @example

*
* <example-url>https://stackblitz.com/edit/multiroute-pedestrian?embed=1</example-url>
*
* @example

@@ -1435,2 +1437,4 @@ * <ya-map [center]="[55.761952, 37.620739]">

*
* <example-url>https://stackblitz.com/edit/panorama?embed=1</example-url>
*
* @example

@@ -1636,4 +1640,2 @@ * <ya-map>

*
* <example-url>https://ymaps-geocoder.stackblitz.io</example-url>
*
* @example

@@ -1640,0 +1642,0 @@ * import { YaGeocoderService } from 'angular8-yandex-maps';

import { AfterContentInit, EventEmitter, NgZone, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { Observable } from 'rxjs';
import { YaMapComponent } from '../ya-map/ya-map.component';
import { YaEvent, YaReadyEvent } from '../../utils/event-manager';
import { YaReadyEvent } from '../../typings/ya-ready-event';
import { YaEvent } from '../../typings/ya-event';
/**

@@ -10,3 +11,3 @@ * The `ya-clusterer` component wraps `ymaps.Clusterer` class from the Yandex Maps API.

*
* <example-url>https://placemark-clusterer.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/placemark-clusterer?embed=1</example-url>
*

@@ -13,0 +14,0 @@ * @example

import { EventEmitter, NgZone, OnChanges, OnDestroy, OnInit } from '@angular/core';
import { YaReadyEvent } from '../../utils/event-manager';
import { YaMapComponent } from '../ya-map/ya-map.component';
import { YaReadyEvent } from '../../typings/ya-ready-event';
export declare type YaControlType = 'Button' | 'FullscreenControl' | 'GeolocationControl' | 'ListBox' | 'ListBoxItem' | 'RouteButton' | 'RouteEditor' | 'RoutePanel' | 'RulerControl' | 'SearchControl' | 'TrafficControl' | 'TypeSelector' | 'ZoomControl';

@@ -10,3 +10,3 @@ /**

*
* <example-url>https://searchcontrol.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/searchcontrol?embed=1</example-url>
*

@@ -13,0 +13,0 @@ * @example

import { EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { Observable } from 'rxjs';
import { YaEvent, YaReadyEvent } from '../../utils/event-manager';
import { YaMapComponent } from '../ya-map/ya-map.component';
import { YaReadyEvent } from '../../typings/ya-ready-event';
import { YaEvent } from '../../typings/ya-event';
/**

@@ -10,3 +11,3 @@ * The `ya-geoobject` component wraps `ymaps.GeoObject` class from the Yandex Maps API.

*
* <example-url>https://geoobject-polygon.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/geoobject-polygon?embed=1</example-url>
*

@@ -13,0 +14,0 @@ * @example

import { AfterViewInit, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { BehaviorSubject, Observable } from 'rxjs';
import { YaEvent, YaReadyEvent } from '../../utils/event-manager';
import { YaApiLoaderService } from '../../services/ya-api-loader/ya-api-loader.service';
import { YaReadyEvent } from '../../typings/ya-ready-event';
import { YaEvent } from '../../typings/ya-event';
/**

@@ -10,3 +11,3 @@ * The `ya-map` component wraps `ymaps.Map` class from the Yandex Maps API.

*
* <example-url>https://map-onload-event.stackblitz.io</example-url>
* <example-url>https://stackblitz.com/edit/map-onload-event?embed=1</example-url>
*

@@ -13,0 +14,0 @@ * @example

import { EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { Observable } from 'rxjs';
import { YaEvent, YaReadyEvent } from '../../utils/event-manager';
import { YaMapComponent } from '../ya-map/ya-map.component';
import { YaReadyEvent } from '../../typings/ya-ready-event';
import { YaEvent } from '../../typings/ya-event';
/**

@@ -14,2 +15,4 @@ * @internal

*
* <example-url>https://stackblitz.com/edit/multiroute-pedestrian?embed=1</example-url>
*
* @example

@@ -16,0 +19,0 @@ * <ya-map [center]="[55.761952, 37.620739]">

import { EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { Observable } from 'rxjs';
import { YaEvent, YaReadyEvent } from '../../utils/event-manager';
import { YaMapComponent } from '../ya-map/ya-map.component';
import { YaReadyEvent } from '../../typings/ya-ready-event';
import { YaEvent } from '../../typings/ya-event';
/**

@@ -10,2 +11,4 @@ * The `ya-panorama` component wraps `ymaps.panorama.Player` class from the Yandex Maps API.

*
* <example-url>https://stackblitz.com/edit/panorama?embed=1</example-url>
*
* @example

@@ -12,0 +15,0 @@ * <ya-map>

import { EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { Observable } from 'rxjs';
import { YaMapComponent } from '../ya-map/ya-map.component';
import { YaEvent, YaReadyEvent } from '../../utils/event-manager';
import { YaReadyEvent } from '../../typings/ya-ready-event';
import { YaEvent } from '../../typings/ya-event';
/**

@@ -10,3 +11,3 @@ * The `ya-placemark` directive wraps `ymaps.Placemark` class from the Yandex Maps API.

*
* <example-url>https://custom-placemark.stackblitz.io/</example-url>
* <example-url>https://stackblitz.com/edit/custom-placemark?embed=1</example-url>
*

@@ -13,0 +14,0 @@ * @example

@@ -7,4 +7,2 @@ import { NgZone } from '@angular/core';

*
* <example-url>https://ymaps-geocoder.stackblitz.io</example-url>
*
* @example

@@ -11,0 +9,0 @@ * import { YaGeocoderService } from 'angular8-yandex-maps';

@@ -7,18 +7,3 @@ /**

import { Observable } from 'rxjs';
export interface YaEvent<T = any> {
/**
* Instance of target
*/
target: T;
/**
* API global object
*/
ymaps: typeof ymaps;
/**
* Provides methods for accessing the originalObject object's fields and methods, with the possibility for redefining them.
* {@link https://yandex.com/dev/maps/jsapi/doc/2.1/ref/reference/Event.html/}
*/
event: ymaps.Event<any, T>;
}
export declare type YaReadyEvent<T = any> = Omit<YaEvent<T>, 'event'>;
import { YaEvent } from '../typings/ya-event';
/**

@@ -25,0 +10,0 @@ * @internal

{
"name": "angular8-yandex-maps",
"version": "12.1.0",
"version": "12.1.1",
"description": "Angular components for Yandex.Maps",

@@ -5,0 +5,0 @@ "repository": {

@@ -5,2 +5,4 @@ /// <reference path="lib/typings/yandex-maps/index.d.ts" />

export * from './lib/services/ya-geocoder/ya-geocoder.service';
export * from './lib/typings/ya-event';
export * from './lib/typings/ya-ready-event';
export * from './lib/components/ya-clusterer/ya-clusterer.component';

@@ -7,0 +9,0 @@ export * from './lib/components/ya-control/ya-control.directive';

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 not supported yet

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc