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 11.0.0 to 11.0.1

esm2015/lib/utils/optional.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":12,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"YaClustererDirective"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoobjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaComponent"},{"__symbolic":"reference","name":"YaPlacemarkDirective"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":22,"character":12}],"exports":[{"__symbolic":"reference","name":"YaClustererDirective"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoobjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaComponent"},{"__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"}}]}}}},"YaReadyEvent":{"__symbolic":"interface"},"YaEvent":{"__symbolic":"interface"},"YaConfig":{"__symbolic":"interface"},"YaControlType":{"__symbolic":"interface"},"YA_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":3,"character":29},"arguments":["YA_CONFIG"]},"ScriptService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":17,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":28,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":28,"character":17},"arguments":[{"__symbolic":"reference","name":"YA_CONFIG"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":29,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":29,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"YaConfig"},{"__symbolic":"error","message":"Could not resolve type","line":29,"character":41,"context":{"typeName":"Document"},"module":"./lib/services/script/script.service"}]}],"initScript":[{"__symbolic":"method"}],"_getScriptSource":[{"__symbolic":"method"}],"_convertConfigIntoQueryParams":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"YaMapComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":33,"character":1},"arguments":[{"selector":"ya-map","template":"<div #container></div>\n","styles":[""]}]}],"members":{"mapContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":39,"character":3},"arguments":["container"]}]}],"placemarks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":41,"character":3},"arguments":[{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"multiroutes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":44,"character":3},"arguments":[{"__symbolic":"reference","name":"YaMultirouteDirective"}]}]}],"geoObjects":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":47,"character":3},"arguments":[{"__symbolic":"reference","name":"YaGeoobjectDirective"}]}]}],"controls":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":50,"character":3},"arguments":[{"__symbolic":"reference","name":"YaControlDirective"}]}]}],"clusterers":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":53,"character":3},"arguments":[{"__symbolic":"reference","name":"YaClustererDirective"}]}]}],"center":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":59,"character":3}}]}],"zoom":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":3}}]}],"actionbegin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":86,"character":3}}]}],"actionbreak":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":91,"character":3}}]}],"actionend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":96,"character":3}}]}],"actiontick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":101,"character":3}}]}],"actiontickcomplete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":106,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":111,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":116,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":121,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":126,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":131,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":136,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":141,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":146,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":151,"character":3}}]}],"marginchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":156,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":161,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":166,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":176,"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":186,"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":196,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":201,"character":3}}]}],"sizechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":206,"character":3}}]}],"typechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":211,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":216,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":222,"character":31},{"__symbolic":"reference","name":"ScriptService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_updateMap":[{"__symbolic":"method"}],"_setState":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_initScript":[{"__symbolic":"method"}],"_createMap":[{"__symbolic":"method"}],"_addGeoObjects":[{"__symbolic":"method"}],"_addControls":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaPanoramaComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":25,"character":1},"arguments":[{"selector":"ya-panorama","template":"<div #container></div>\n","styles":[""]}]}],"members":{"panoramaContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":31,"character":3},"arguments":["container"]}]}],"point":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"layer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"directionchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"yaerror":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"fullscreenenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":72,"character":3}}]}],"fullscreenexit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"markercollapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"markerexpand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":87,"character":3}}]}],"markermouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":92,"character":3}}]}],"markermouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":97,"character":3}}]}],"panoramachange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":102,"character":3}}]}],"spanchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":107,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":114,"character":31},{"__symbolic":"reference","name":"ScriptService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_updatePanorama":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_initScript":[{"__symbolic":"method"}],"_createPanorama":[{"__symbolic":"method"}],"addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaClustererDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":33,"character":1},"arguments":[{"selector":"ya-clusterer"}]}],"members":{"placemarks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":37,"character":3},"arguments":[{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"geoObjects":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":40,"character":3},"arguments":[{"__symbolic":"reference","name":"YaGeoobjectDirective"}]}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":72,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":84,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updateClusterer":[{"__symbolic":"method"}],"createClusterer":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaControlDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":17,"character":1},"arguments":[{"selector":"ya-control"}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"parameters":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":38,"character":31}]}],"createControl":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}]}},"YaGeoobjectDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":21,"character":1},"arguments":[{"selector":"ya-geoobject"}]}],"members":{"feature":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":50,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":60,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":75,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":85,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":90,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":100,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":105,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":115,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":120,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":125,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":130,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":135,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":140,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":145,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":150,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":155,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":160,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":165,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":170,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":175,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":180,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":191,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updateGeoObject":[{"__symbolic":"method"}],"_setFeature":[{"__symbolic":"method"}],"createGeoObject":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaMultirouteDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":20,"character":1},"arguments":[{"selector":"ya-multiroute"}]}],"members":{"referencePoints":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"model":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3}}]}],"activeroutechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":50,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":60,"character":3}}]}],"boundsautoapply":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":75,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":85,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":90,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":100,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":105,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":115,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":120,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":125,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":130,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":135,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":140,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":145,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":150,"character":3}}]}],"pixelboundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":155,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":160,"character":3}}]}],"update":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":165,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":170,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":179,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updateMultiroute":[{"__symbolic":"method"}],"_setModel":[{"__symbolic":"method"}],"createMultiroute":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaPlacemarkDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":20,"character":1},"arguments":[{"selector":"ya-placemark"}]}],"members":{"geometry":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"properties":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":49,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":64,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":69,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":74,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":79,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":84,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":89,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":94,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":99,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":104,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":109,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":114,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":119,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":124,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":129,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":134,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":139,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":144,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":149,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":154,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":159,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":164,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":169,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":174,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":179,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":184,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":195,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updatePlacemark":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"createPlacemark":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"AngularYandexMapsModule":"./lib/angular-yandex-maps.module","YaReadyEvent":"./lib/interfaces/event","YaEvent":"./lib/interfaces/event","YaConfig":"./lib/interfaces/config","YaControlType":"./lib/interfaces/control-type","YA_CONFIG":"./lib/constants/constant","ScriptService":"./lib/services/script/script.service","YaMapComponent":"./lib/components/ya-map/ya-map.component","YaPanoramaComponent":"./lib/components/ya-panorama/ya-panorama.component","YaClustererDirective":"./lib/directives/ya-clusterer/ya-clusterer.directive","YaControlDirective":"./lib/directives/ya-control/ya-control.directive","YaGeoobjectDirective":"./lib/directives/ya-geoobject/ya-geoobject.directive","YaMultirouteDirective":"./lib/directives/ya-multiroute/ya-multiroute.directive","YaPlacemarkDirective":"./lib/directives/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":12,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"YaClustererDirective"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoobjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaComponent"},{"__symbolic":"reference","name":"YaPlacemarkDirective"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":22,"character":12}],"exports":[{"__symbolic":"reference","name":"YaClustererDirective"},{"__symbolic":"reference","name":"YaControlDirective"},{"__symbolic":"reference","name":"YaGeoobjectDirective"},{"__symbolic":"reference","name":"YaMapComponent"},{"__symbolic":"reference","name":"YaMultirouteDirective"},{"__symbolic":"reference","name":"YaPanoramaComponent"},{"__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"}}]}}}},"YaReadyEvent":{"__symbolic":"interface"},"YaEvent":{"__symbolic":"interface"},"YaConfig":{"__symbolic":"interface"},"YaControlType":{"__symbolic":"interface"},"YA_CONFIG":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":3,"character":29},"arguments":["YA_CONFIG"]},"ScriptService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":17,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":28,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":28,"character":17},"arguments":[{"__symbolic":"reference","name":"YA_CONFIG"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":29,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT","line":29,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"YaConfig"},{"__symbolic":"error","message":"Could not resolve type","line":29,"character":41,"context":{"typeName":"Document"},"module":"./lib/services/script/script.service"}]}],"initScript":[{"__symbolic":"method"}],"_getScriptSource":[{"__symbolic":"method"}],"_convertConfigIntoQueryParams":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"YaMapComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":33,"character":1},"arguments":[{"selector":"ya-map","template":"<div #container></div>\n","styles":[""]}]}],"members":{"mapContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":39,"character":3},"arguments":["container"]}]}],"placemarks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":41,"character":3},"arguments":[{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"multiroutes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":44,"character":3},"arguments":[{"__symbolic":"reference","name":"YaMultirouteDirective"}]}]}],"geoObjects":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":47,"character":3},"arguments":[{"__symbolic":"reference","name":"YaGeoobjectDirective"}]}]}],"controls":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":50,"character":3},"arguments":[{"__symbolic":"reference","name":"YaControlDirective"}]}]}],"clusterers":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":53,"character":3},"arguments":[{"__symbolic":"reference","name":"YaClustererDirective"}]}]}],"center":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":59,"character":3}}]}],"zoom":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":3}}]}],"state":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":3}}]}],"actionbegin":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":86,"character":3}}]}],"actionbreak":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":91,"character":3}}]}],"actionend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":96,"character":3}}]}],"actiontick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":101,"character":3}}]}],"actiontickcomplete":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":106,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":111,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":116,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":121,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":126,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":131,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":136,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":141,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":146,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":151,"character":3}}]}],"marginchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":156,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":161,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":166,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":176,"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":186,"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":196,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":201,"character":3}}]}],"sizechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":206,"character":3}}]}],"typechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":211,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":216,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":222,"character":31},{"__symbolic":"reference","name":"ScriptService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_updateMap":[{"__symbolic":"method"}],"_setState":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_initScript":[{"__symbolic":"method"}],"_createMap":[{"__symbolic":"method"}],"_addGeoObjects":[{"__symbolic":"method"}],"_addControls":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaPanoramaComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":25,"character":1},"arguments":[{"selector":"ya-panorama","template":"<div #container></div>\n","styles":[""]}]}],"members":{"panoramaContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":31,"character":3},"arguments":["container"]}]}],"point":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"layer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":41,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"destroy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"directionchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"yaerror":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"fullscreenenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":72,"character":3}}]}],"fullscreenexit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"markercollapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"markerexpand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":87,"character":3}}]}],"markermouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":92,"character":3}}]}],"markermouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":97,"character":3}}]}],"panoramachange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":102,"character":3}}]}],"spanchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":107,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":114,"character":31},{"__symbolic":"reference","name":"ScriptService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_updatePanorama":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_initScript":[{"__symbolic":"method"}],"_createPanorama":[{"__symbolic":"method"}],"addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaClustererDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":33,"character":1},"arguments":[{"selector":"ya-clusterer"}]}],"members":{"placemarks":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":37,"character":3},"arguments":[{"__symbolic":"reference","name":"YaPlacemarkDirective"}]}]}],"geoObjects":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":40,"character":3},"arguments":[{"__symbolic":"reference","name":"YaGeoobjectDirective"}]}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":72,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":84,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updateClusterer":[{"__symbolic":"method"}],"createClusterer":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaControlDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":17,"character":1},"arguments":[{"selector":"ya-control"}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"parameters":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":38,"character":31}]}],"createControl":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}]}},"YaGeoobjectDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":21,"character":1},"arguments":[{"selector":"ya-geoobject"}]}],"members":{"feature":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":50,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":60,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":75,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":85,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":90,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":95,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":100,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":105,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":110,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":115,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":120,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":125,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":130,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":135,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":140,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":145,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":150,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":155,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":160,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":165,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":170,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":175,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":180,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":191,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updateGeoObject":[{"__symbolic":"method"}],"_setFeature":[{"__symbolic":"method"}],"createGeoObject":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaMultirouteDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":21,"character":1},"arguments":[{"selector":"ya-multiroute"}]}],"members":{"referencePoints":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"model":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":46,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":51,"character":3}}]}],"activeroutechange":[{"__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":61,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":66,"character":3}}]}],"boundsautoapply":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":3}}]}],"boundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":76,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":86,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":91,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":96,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":101,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":106,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":111,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":116,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":121,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":126,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":131,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":136,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":141,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":146,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":151,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":156,"character":3}}]}],"pixelboundschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":161,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":166,"character":3}}]}],"update":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":176,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":185,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updateMultiroute":[{"__symbolic":"method"}],"_setModel":[{"__symbolic":"method"}],"createMultiroute":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"YaPlacemarkDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":20,"character":1},"arguments":[{"selector":"ya-placemark"}]}],"members":{"geometry":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"properties":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":3}}]}],"ready":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":3}}]}],"balloonclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":49,"character":3}}]}],"balloonopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3}}]}],"beforedrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":3}}]}],"beforedragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":64,"character":3}}]}],"yaclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":69,"character":3}}]}],"yacontextmenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":74,"character":3}}]}],"yadbclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":79,"character":3}}]}],"yadrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":84,"character":3}}]}],"yadragend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":89,"character":3}}]}],"yadragstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":94,"character":3}}]}],"editorstatechange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":99,"character":3}}]}],"geometrychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":104,"character":3}}]}],"hintclose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":109,"character":3}}]}],"hintopen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":114,"character":3}}]}],"mapchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":119,"character":3}}]}],"yamousedown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":124,"character":3}}]}],"yamouseenter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":129,"character":3}}]}],"yamouseleave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":134,"character":3}}]}],"yamousemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":139,"character":3}}]}],"yamouseup":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":144,"character":3}}]}],"multitouchend":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":149,"character":3}}]}],"multitouchmove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":154,"character":3}}]}],"multitouchstart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":159,"character":3}}]}],"optionschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":164,"character":3}}]}],"overlaychange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":169,"character":3}}]}],"parentchange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":174,"character":3}}]}],"propertieschange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":179,"character":3}}]}],"yawheel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":184,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":195,"character":31}]}],"ngOnChanges":[{"__symbolic":"method"}],"_updatePlacemark":[{"__symbolic":"method"}],"_checkRequiredInputs":[{"__symbolic":"method"}],"createPlacemark":[{"__symbolic":"method"}],"_addEventListeners":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"AngularYandexMapsModule":"./lib/angular-yandex-maps.module","YaReadyEvent":"./lib/interfaces/event","YaEvent":"./lib/interfaces/event","YaConfig":"./lib/interfaces/config","YaControlType":"./lib/interfaces/control-type","YA_CONFIG":"./lib/constants/constant","ScriptService":"./lib/services/script/script.service","YaMapComponent":"./lib/components/ya-map/ya-map.component","YaPanoramaComponent":"./lib/components/ya-panorama/ya-panorama.component","YaClustererDirective":"./lib/directives/ya-clusterer/ya-clusterer.directive","YaControlDirective":"./lib/directives/ya-control/ya-control.directive","YaGeoobjectDirective":"./lib/directives/ya-geoobject/ya-geoobject.directive","YaMultirouteDirective":"./lib/directives/ya-multiroute/ya-multiroute.directive","YaPlacemarkDirective":"./lib/directives/ya-placemark/ya-placemark.directive"},"importAs":"angular8-yandex-maps"}

@@ -5,2 +5,2 @@ /**

export * from './public-api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjgteWFuZGV4LW1hcHMuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsiYW5ndWxhcjgteWFuZGV4LW1hcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjgteWFuZGV4LW1hcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvYW5ndWxhcjgteWFuZGV4LW1hcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==

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

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci15YW5kZXgtbWFwcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2FuZ3VsYXIteWFuZGV4LW1hcHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBdUJ4RixNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQ25CLE1BQWdCO1FBRWhCLE9BQU87WUFDTCxRQUFRLEVBQUUsdUJBQXVCO1lBQ2pDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7U0FDdEQsQ0FBQztJQUNKLENBQUM7OztZQWpDRixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLG9CQUFvQjtvQkFDcEIsa0JBQWtCO29CQUNsQixvQkFBb0I7b0JBQ3BCLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixtQkFBbUI7b0JBQ25CLG9CQUFvQjtpQkFDckI7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUN2QixPQUFPLEVBQUU7b0JBQ1Asb0JBQW9CO29CQUNwQixrQkFBa0I7b0JBQ2xCLG9CQUFvQjtvQkFDcEIsY0FBYztvQkFDZCxxQkFBcUI7b0JBQ3JCLG1CQUFtQjtvQkFDbkIsb0JBQW9CO2lCQUNyQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBZQV9DT05GSUcgfSBmcm9tICcuL2NvbnN0YW50cy9jb25zdGFudCc7XG5pbXBvcnQgeyBZYUNsdXN0ZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBZYUNvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcy9jb25maWcnO1xuaW1wb3J0IHsgWWFDb250cm9sRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3lhLWNvbnRyb2wveWEtY29udHJvbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFHZW9vYmplY3REaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMveWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFNYXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMveWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgWWFNdWx0aXJvdXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3lhLW11bHRpcm91dGUveWEtbXVsdGlyb3V0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFQYW5vcmFtYUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy95YS1wYW5vcmFtYS95YS1wYW5vcmFtYS5jb21wb25lbnQnO1xuaW1wb3J0IHsgWWFQbGFjZW1hcmtEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMveWEtcGxhY2VtYXJrL3lhLXBsYWNlbWFyay5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBZYUNsdXN0ZXJlckRpcmVjdGl2ZSxcbiAgICBZYUNvbnRyb2xEaXJlY3RpdmUsXG4gICAgWWFHZW9vYmplY3REaXJlY3RpdmUsXG4gICAgWWFNYXBDb21wb25lbnQsXG4gICAgWWFNdWx0aXJvdXRlRGlyZWN0aXZlLFxuICAgIFlhUGFub3JhbWFDb21wb25lbnQsXG4gICAgWWFQbGFjZW1hcmtEaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgWWFDbHVzdGVyZXJEaXJlY3RpdmUsXG4gICAgWWFDb250cm9sRGlyZWN0aXZlLFxuICAgIFlhR2Vvb2JqZWN0RGlyZWN0aXZlLFxuICAgIFlhTWFwQ29tcG9uZW50LFxuICAgIFlhTXVsdGlyb3V0ZURpcmVjdGl2ZSxcbiAgICBZYVBhbm9yYW1hQ29tcG9uZW50LFxuICAgIFlhUGxhY2VtYXJrRGlyZWN0aXZlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyWWFuZGV4TWFwc01vZHVsZSB7XG4gIC8qKlxuICAgKiBQbGVhc2UgdXNlIHRoaXMgbWV0aG9kIHdoZW4geW91IHJlZ2lzdGVyIHRoZSBtb2R1bGUgYXQgdGhlIHJvb3QgbGV2ZWxcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmb3JSb290KFxuICAgIGNvbmZpZzogWWFDb25maWcsXG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QW5ndWxhcllhbmRleE1hcHNNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFuZ3VsYXJZYW5kZXhNYXBzTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBZQV9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfV0sXG4gICAgfTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci15YW5kZXgtbWFwcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2FuZ3VsYXIteWFuZGV4LW1hcHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBdUJ4RixNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQ25CLE1BQWdCO1FBRWhCLE9BQU87WUFDTCxRQUFRLEVBQUUsdUJBQXVCO1lBQ2pDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7U0FDdEQsQ0FBQztJQUNKLENBQUM7OztZQWpDRixRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLG9CQUFvQjtvQkFDcEIsa0JBQWtCO29CQUNsQixvQkFBb0I7b0JBQ3BCLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixtQkFBbUI7b0JBQ25CLG9CQUFvQjtpQkFDckI7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUN2QixPQUFPLEVBQUU7b0JBQ1Asb0JBQW9CO29CQUNwQixrQkFBa0I7b0JBQ2xCLG9CQUFvQjtvQkFDcEIsY0FBYztvQkFDZCxxQkFBcUI7b0JBQ3JCLG1CQUFtQjtvQkFDbkIsb0JBQW9CO2lCQUNyQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBZQV9DT05GSUcgfSBmcm9tICcuL2NvbnN0YW50cy9jb25zdGFudCc7XG5pbXBvcnQgeyBZYUNsdXN0ZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBZYUNvbmZpZyB9IGZyb20gJy4vaW50ZXJmYWNlcy9jb25maWcnO1xuaW1wb3J0IHsgWWFDb250cm9sRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3lhLWNvbnRyb2wveWEtY29udHJvbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFHZW9vYmplY3REaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMveWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFNYXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMveWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgWWFNdWx0aXJvdXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3lhLW11bHRpcm91dGUveWEtbXVsdGlyb3V0ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFQYW5vcmFtYUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy95YS1wYW5vcmFtYS95YS1wYW5vcmFtYS5jb21wb25lbnQnO1xuaW1wb3J0IHsgWWFQbGFjZW1hcmtEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMveWEtcGxhY2VtYXJrL3lhLXBsYWNlbWFyay5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBZYUNsdXN0ZXJlckRpcmVjdGl2ZSxcbiAgICBZYUNvbnRyb2xEaXJlY3RpdmUsXG4gICAgWWFHZW9vYmplY3REaXJlY3RpdmUsXG4gICAgWWFNYXBDb21wb25lbnQsXG4gICAgWWFNdWx0aXJvdXRlRGlyZWN0aXZlLFxuICAgIFlhUGFub3JhbWFDb21wb25lbnQsXG4gICAgWWFQbGFjZW1hcmtEaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgWWFDbHVzdGVyZXJEaXJlY3RpdmUsXG4gICAgWWFDb250cm9sRGlyZWN0aXZlLFxuICAgIFlhR2Vvb2JqZWN0RGlyZWN0aXZlLFxuICAgIFlhTWFwQ29tcG9uZW50LFxuICAgIFlhTXVsdGlyb3V0ZURpcmVjdGl2ZSxcbiAgICBZYVBhbm9yYW1hQ29tcG9uZW50LFxuICAgIFlhUGxhY2VtYXJrRGlyZWN0aXZlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyWWFuZGV4TWFwc01vZHVsZSB7XG4gIC8qKlxuICAgKiBQbGVhc2UgdXNlIHRoaXMgbWV0aG9kIHdoZW4geW91IHJlZ2lzdGVyIHRoZSBtb2R1bGUgYXQgdGhlIHJvb3QgbGV2ZWxcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmb3JSb290KFxuICAgIGNvbmZpZzogWWFDb25maWcsXG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QW5ndWxhcllhbmRleE1hcHNNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFuZ3VsYXJZYW5kZXhNYXBzTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBZQV9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfV0sXG4gICAgfTtcbiAgfVxufVxuIl19

@@ -425,2 +425,2 @@ import { startWith } from 'rxjs/operators';

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy95YS1tYXAveWEtbWFwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQ0wsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFJTixNQUFNLEVBR04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUV0RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRTs7Ozs7R0FLRztBQU1ILE1BQU0sT0FBTyxjQUFjO0lBd0x6QixZQUFvQixPQUFlLEVBQVUsY0FBNkI7UUFBdEQsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBaksxRTs7V0FFRztRQUNhLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFMUI7OztXQUdHO1FBQ2EsVUFBSyxHQUFvQixFQUFFLENBQUM7UUFFNUM7OztXQUdHO1FBQ2EsWUFBTyxHQUFzQixFQUFFLENBQUM7UUFFaEQ7O1dBRUc7UUFDYyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFMUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV6RDs7V0FFRztRQUNjLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTFEOztXQUVHO1FBQ2MsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVsRTs7V0FFRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU1RDs7V0FFRztRQUNjLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUzRDs7V0FFRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU1RDs7V0FFRztRQUNjLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXZEOztXQUVHO1FBQ2Msa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTdEOztXQUVHO1FBQ2MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFekQ7O1dBRUc7UUFDYyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV2RDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVHO1FBQ2MsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFeEQ7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV6RDs7V0FFRztRQUNjLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU3RDs7V0FFRztRQUNjLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU5RDs7V0FFRztRQUNjLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUvRDs7V0FFRztRQUNjLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU3RDs7V0FFRztRQUNjLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTFEOztXQUVHO1FBQ2MsZUFBVSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFMUQ7O1dBRUc7UUFDYyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQU1zQixDQUFDO0lBRXZFLFFBQVE7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFL0IsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDdkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFVBQVUsQ0FBQyxPQUFzQjtRQUN2QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRXRCLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTztRQUVqQixNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRWpELElBQUksTUFBTSxFQUFFO1lBQ1YsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDcEM7UUFFRCxJQUFJLElBQUksRUFBRTtZQUNSLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ2hDO1FBRUQsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDekM7UUFFRCxJQUFJLE9BQU8sRUFBRTtZQUNYLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssU0FBUyxDQUFDLEtBQXNCLEVBQUUsR0FBYztRQUN0RCxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRTFFLElBQUksU0FBUyxFQUFFO1lBQ2IsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDakM7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDdkI7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDdkI7UUFFRCxJQUFJLFFBQVEsRUFBRTtZQUNaOztlQUVHO1lBQ0gsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNuRDtRQUVELElBQUksTUFBTSxFQUFFO1lBQ1YsR0FBRyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNyQztRQUVELElBQUksSUFBSSxFQUFFO1lBQ1IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNuQjtRQUVELElBQUksSUFBSSxFQUFFO1lBQ1IsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksRUFBRTtZQUNyRCxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDMUQsTUFBTSxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFFaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFFdEUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxVQUFVLENBQUMsRUFBVTtRQUMzQixNQUFNLGFBQWEsR0FBZ0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUM7UUFDbkUsYUFBYSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDckMsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsNEJBQTRCLENBQUM7UUFFM0QsT0FBTyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQ2xCLEVBQUUsa0NBQ0csSUFBSSxDQUFDLEtBQUssS0FBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sS0FDckQsSUFBSSxDQUFDLE9BQU8sQ0FDYixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ssY0FBYztRQUNwQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRXRCLHFCQUFxQjtRQUNyQixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU87YUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDaEMsU0FBUyxDQUFDLENBQUMsSUFBcUMsRUFBRSxFQUFFO1lBQ25ELElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtnQkFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUU7b0JBQ2pCLE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ3pDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUN2QjtZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUU3QixzQkFBc0I7UUFDdEIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPO2FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pDLFNBQVMsQ0FBQyxDQUFDLElBQXNDLEVBQUUsRUFBRTtZQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFO29CQUNsQixNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzNDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUN2QjtZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUU5QixxQkFBcUI7UUFDckIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPO2FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ2hDLFNBQVMsQ0FBQyxDQUFDLElBQXFDLEVBQUUsRUFBRTtZQUNuRCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFO29CQUNqQixNQUFNLENBQUMsR0FBRyxTQUFTLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUN6QyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDdkI7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUwsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFN0IseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6Qzs7ZUFFRztZQUNILEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQVEsQ0FBQyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ssWUFBWTtRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ2hDLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxrQkFBa0I7UUFDeEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUV0QixNQUFNLFNBQVMsR0FBZTtZQUM1QjtnQkFDRSxJQUFJLEVBQUUsYUFBYTtnQkFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXO2FBQzFCO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVzthQUMxQjtZQUNELEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM5QyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDaEQ7Z0JBQ0UsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsT0FBTyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7YUFDakM7WUFDRCxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDcEQsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2xELEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNwRCxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDeEMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3BELEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM1QyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDMUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQzlDLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUM1QyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDcEQsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2hEO2dCQUNFLElBQUksRUFBRSxZQUFZO2dCQUNsQixPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQzFCLGlCQUFpQixFQUFFLElBQUk7YUFDeEI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZO2dCQUMxQixpQkFBaUIsRUFBRSxJQUFJO2FBQ3hCO1lBQ0QsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRTtZQUN6RSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFO1lBQ3JFO2dCQUNFLElBQUksRUFBRSxlQUFlO2dCQUNyQixPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWE7Z0JBQzNCLGlCQUFpQixFQUFFLElBQUk7YUFDeEI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsZ0JBQWdCO2dCQUN0QixPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWM7Z0JBQzVCLGlCQUFpQixFQUFFLElBQUk7YUFDeEI7WUFDRDtnQkFDRSxJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLGVBQWU7Z0JBQzdCLGlCQUFpQixFQUFFLElBQUk7YUFDeEI7WUFDRCxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEQsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2hELEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNoRCxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7U0FDekMsQ0FBQztRQUVGLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBa0IsRUFBVyxFQUFFLENBQUMsQ0FBQztZQUMzQyxLQUFLO1lBQ0wsTUFBTSxFQUFFLEdBQUc7WUFDWCxLQUFLO1NBQ04sQ0FBQyxDQUFDO1FBRUgsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQzdCLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFjLEVBQUUsRUFBRSxDQUMvQyxRQUFRLENBQUMsaUJBQWlCO2dCQUN4QixDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ3pELENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDMUIsQ0FBQzs7O1lBMWNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsb0NBQXNDOzthQUV2Qzs7O1lBN0JDLE1BQU07WUFVQyxhQUFhOzs7MkJBcUJuQixTQUFTLFNBQUMsV0FBVzt5QkFFckIsZUFBZSxTQUFDLG9CQUFvQjswQkFHcEMsZUFBZSxTQUFDLHFCQUFxQjt5QkFHckMsZUFBZSxTQUFDLG9CQUFvQjt1QkFHcEMsZUFBZSxTQUFDLGtCQUFrQjt5QkFHbEMsZUFBZSxTQUFDLG9CQUFvQjtxQkFNcEMsS0FBSzttQkFLTCxLQUFLO29CQU1MLEtBQUs7c0JBTUwsS0FBSztvQkFLTCxNQUFNOzBCQUtOLE1BQU07MEJBS04sTUFBTTt3QkFLTixNQUFNO3lCQUtOLE1BQU07aUNBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07MkJBS04sTUFBTTtzQkFLTixNQUFNOzRCQUtOLE1BQU07d0JBS04sTUFBTTtzQkFLTixNQUFNO3dCQUtOLE1BQU07dUJBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07MkJBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07d0JBS04sTUFBTTs0QkFLTixNQUFNOzZCQUtOLE1BQU07OEJBS04sTUFBTTs0QkFLTixNQUFNO3lCQUtOLE1BQU07eUJBS04sTUFBTTtzQkFLTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9saXN0ZW5lcic7XG5pbXBvcnQgeyBTY3JpcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2NyaXB0L3NjcmlwdC5zZXJ2aWNlJztcbmltcG9ydCB7IFlhQ2x1c3RlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBZYUNvbnRyb2xEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3lhLWNvbnRyb2wveWEtY29udHJvbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBZYUdlb29iamVjdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMveWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFNdWx0aXJvdXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy95YS1tdWx0aXJvdXRlL3lhLW11bHRpcm91dGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IFlhUGxhY2VtYXJrRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGVSYW5kb21JZCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBjcmVhdGluZyBhbmQgbWFuYWdpbmcgYSBtYXAuXG4gKlxuICogQGV4YW1wbGUgYDx5YS1tYXAgW2NlbnRlcl09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCIgW3N0YXRlXT1cInt0eXBlOiAneWFuZGV4I3NhdGVsbGl0ZSd9XCI+PC95YS1tYXA+YC5cbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvY29tcG9uZW50cy9tYXB9XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3lhLW1hcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi95YS1tYXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi95YS1tYXAuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgWWFNYXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJykgcHVibGljIG1hcENvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhUGxhY2VtYXJrRGlyZWN0aXZlKVxuICBwdWJsaWMgcGxhY2VtYXJrczogUXVlcnlMaXN0PFlhUGxhY2VtYXJrRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhTXVsdGlyb3V0ZURpcmVjdGl2ZSlcbiAgcHVibGljIG11bHRpcm91dGVzOiBRdWVyeUxpc3Q8WWFNdWx0aXJvdXRlRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhR2Vvb2JqZWN0RGlyZWN0aXZlKVxuICBwdWJsaWMgZ2VvT2JqZWN0czogUXVlcnlMaXN0PFlhR2Vvb2JqZWN0RGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhQ29udHJvbERpcmVjdGl2ZSlcbiAgcHVibGljIGNvbnRyb2xzOiBRdWVyeUxpc3Q8WWFDb250cm9sRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhQ2x1c3RlcmVyRGlyZWN0aXZlKVxuICBwdWJsaWMgY2x1c3RlcmVyczogUXVlcnlMaXN0PFlhQ2x1c3RlcmVyRGlyZWN0aXZlPjtcblxuICAvKipcbiAgICogTWFwIGNlbnRlciBnZW9jb29yZGluYXRlcy5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjZW50ZXI6IG51bWJlcltdO1xuXG4gIC8qKlxuICAgKiBNYXAgem9vbSBsZXZlbC5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyB6b29tID0gMTA7XG5cbiAgLyoqXG4gICAqIFN0YXRlcyBmb3IgdGhlIG1hcC5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9NYXAtZG9jcGFnZS8jTWFwcGFyYW0tc3RhdGV9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgc3RhdGU6IHltYXBzLklNYXBTdGF0ZSA9IHt9O1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgbWFwLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL01hcC1kb2NwYWdlLyNNYXBwYXJhbS1vcHRpb25zfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG9wdGlvbnM6IHltYXBzLklNYXBPcHRpb25zID0ge307XG5cbiAgLyoqXG4gICAqIE1hcCBpbnN0YW5jZSBpcyBjcmVhdGVkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhcnQgb2YgYSBuZXcgc21vb3RoIG1hcCBtb3ZlbWVudC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYWN0aW9uYmVnaW4gPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgb2NjdXJzIHdoZW4gYW4gYWN0aW9uIHN0ZXAgd2FzIHByZW1hdHVyZWx5IHN0b3BwZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGFjdGlvbmJyZWFrID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgZW5kIG9mIHNtb290aCBtYXAgbW92ZW1lbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGFjdGlvbmVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHN0YXJ0IG9mIGEgbmV3IHN0ZXAgb2Ygc21vb3RoIG1vdmVtZW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBhY3Rpb250aWNrID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgZW5kIG9mIHBlcmZvcm1pbmcgYSBzdGVwIG9mIHNtb290aCBtb3ZlbWVudC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYWN0aW9udGlja2NvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiYWxsb29uY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE9wZW5pbmcgYSBiYWxsb29uIG9uIGEgbWFwLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiYWxsb29ub3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZm9yIGEgY2hhbmdlIHRvIHRoZSBtYXAgdmlld3BvcnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJvdW5kc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY29udGV4dG1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZGJjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIG1hcCB3YXMgZGVzdHJveWVkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBkZXN0cm95ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDbG9zaW5nIHRoZSBoaW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBoaW50Y2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE9wZW5pbmcgYSBoaW50IG9uIGEgbWFwLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBoaW50b3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTWFwIG1hcmdpbnMgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbWFyZ2luY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWRvd24gPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFBvaW50aW5nIHRoZSBjdXJzb3IgYXQgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWVudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvZmYgb2YgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWxlYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vtb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBMZXR0aW5nIGdvIG9mIHRoZSBtb3VzZSBidXR0b24gb3ZlciBhbiBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2V1cCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRW5kIG9mIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2hlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFJlcGVhdGluZyBldmVudCBkdXJpbmcgbXVsdGl0b3VjaC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbXVsdGl0b3VjaG1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2hzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTWFwIG9wdGlvbnMgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTWFwIHNpemUgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgc2l6ZWNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIG1hcCB0eXBlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHR5cGVjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE1vdXNlIHdoZWVsIHNjcm9sbGluZy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWF3aGVlbCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwcml2YXRlIF9zdWI6IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIF9tYXA6IHltYXBzLk1hcDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSBfc2NyaXB0U2VydmljZTogU2NyaXB0U2VydmljZSkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuICAgIHRoaXMuX2luaXRTY3JpcHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5fdXBkYXRlTWFwKGNoYW5nZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgZHluYW1pYyBNYXAgY29uZmlndXJhdGlvbi5cbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwcm92aWRlcyBpdCB0byBBUEkuXG4gICAqIEBwYXJhbSBjaGFuZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVNYXAoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IG1hcCA9IHRoaXMuX21hcDtcblxuICAgIGlmICghbWFwKSByZXR1cm47XG5cbiAgICBjb25zdCB7IGNlbnRlciwgem9vbSwgc3RhdGUsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XG5cbiAgICBpZiAoY2VudGVyKSB7XG4gICAgICBtYXAuc2V0Q2VudGVyKGNlbnRlci5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh6b29tKSB7XG4gICAgICBtYXAuc2V0Wm9vbSh6b29tLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlKSB7XG4gICAgICB0aGlzLl9zZXRTdGF0ZShzdGF0ZS5jdXJyZW50VmFsdWUsIG1hcCk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgIG1hcC5vcHRpb25zLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlc3RydWN0cyBzdGF0ZSBhbmQgcHJvdmlkZXMgbmV3IHZhbHVlcyB0byBBUEkuXG4gICAqIEBwYXJhbSBzdGF0ZVxuICAgKiBAcGFyYW0gbWFwXG4gICAqL1xuICBwcml2YXRlIF9zZXRTdGF0ZShzdGF0ZTogeW1hcHMuSU1hcFN0YXRlLCBtYXA6IHltYXBzLk1hcCk6IHZvaWQge1xuICAgIGNvbnN0IHsgYmVoYXZpb3JzLCBib3VuZHMsIGNlbnRlciwgY29udHJvbHMsIG1hcmdpbiwgdHlwZSwgem9vbSB9ID0gc3RhdGU7XG5cbiAgICBpZiAoYmVoYXZpb3JzKSB7XG4gICAgICBtYXAuYmVoYXZpb3JzLmVuYWJsZShiZWhhdmlvcnMpO1xuICAgIH1cblxuICAgIGlmIChib3VuZHMpIHtcbiAgICAgIG1hcC5zZXRCb3VuZHMoYm91bmRzKTtcbiAgICB9XG5cbiAgICBpZiAoY2VudGVyKSB7XG4gICAgICBtYXAuc2V0Q2VudGVyKGNlbnRlcik7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRyb2xzKSB7XG4gICAgICAvKipcbiAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAgICovXG4gICAgICBjb250cm9scy5mb3JFYWNoKChjOiBhbnkpID0+IG1hcC5jb250cm9scy5hZGQoYykpO1xuICAgIH1cblxuICAgIGlmIChtYXJnaW4pIHtcbiAgICAgIG1hcC5tYXJnaW4uc2V0RGVmYXVsdE1hcmdpbihtYXJnaW4pO1xuICAgIH1cblxuICAgIGlmICh0eXBlKSB7XG4gICAgICBtYXAuc2V0VHlwZSh0eXBlKTtcbiAgICB9XG5cbiAgICBpZiAoem9vbSkge1xuICAgICAgbWFwLnNldFpvb20oem9vbSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tSZXF1aXJlZElucHV0cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jZW50ZXIgPT09IHVuZGVmaW5lZCB8fCB0aGlzLmNlbnRlciA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDZW50ZXIgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbml0U2NyaXB0KCk6IHZvaWQge1xuICAgIGNvbnN0IHN1YiA9IHRoaXMuX3NjcmlwdFNlcnZpY2UuaW5pdFNjcmlwdCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBpZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcbiAgICAgIHRoaXMuX21hcCA9IHRoaXMuX2NyZWF0ZU1hcChpZCk7XG5cbiAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogdGhpcy5fbWFwIH0pKTtcblxuICAgICAgdGhpcy5fYWRkR2VvT2JqZWN0cygpO1xuICAgICAgdGhpcy5fYWRkQ29udHJvbHMoKTtcbiAgICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBtYXAuXG4gICAqIEBwYXJhbSBpZCBJRCB3aGljaCB3aWxsIGJlIHNldCB0byB0aGUgbWFwIGNvbnRhaW5lci5cbiAgICovXG4gIHByaXZhdGUgX2NyZWF0ZU1hcChpZDogc3RyaW5nKTogeW1hcHMuTWFwIHtcbiAgICBjb25zdCBjb250YWluZXJFbGVtOiBIVE1MRWxlbWVudCA9IHRoaXMubWFwQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29udGFpbmVyRWxlbS5zZXRBdHRyaWJ1dGUoJ2lkJywgaWQpO1xuICAgIGNvbnRhaW5lckVsZW0uc3R5bGUuY3NzVGV4dCA9ICd3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyc7XG5cbiAgICByZXR1cm4gbmV3IHltYXBzLk1hcChcbiAgICAgIGlkLFxuICAgICAgeyAuLi50aGlzLnN0YXRlLCB6b29tOiB0aGlzLnpvb20sIGNlbnRlcjogdGhpcy5jZW50ZXIgfSxcbiAgICAgIHRoaXMub3B0aW9ucyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgR2VvT2JqZWN0IHRvIHRoZSBNYXAgb24gQ29udGVudENoaWxkcmVuIGNoYW5nZXMuXG4gICAqL1xuICBwcml2YXRlIF9hZGRHZW9PYmplY3RzKCk6IHZvaWQge1xuICAgIGNvbnN0IG1hcCA9IHRoaXMuX21hcDtcblxuICAgIC8vIFBsYWNlbWFya3MgKGFzeW5jKVxuICAgIGNvbnN0IHBsYWNlbWFya3NTdWIgPSB0aGlzLnBsYWNlbWFya3MuY2hhbmdlc1xuICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMucGxhY2VtYXJrcykpXG4gICAgICAuc3Vic2NyaWJlKChsaXN0OiBRdWVyeUxpc3Q8WWFQbGFjZW1hcmtEaXJlY3RpdmU+KSA9PiB7XG4gICAgICAgIGxpc3QuZm9yRWFjaCgocGxhY2VtYXJrKSA9PiB7XG4gICAgICAgICAgaWYgKCFwbGFjZW1hcmsuaWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHAgPSBwbGFjZW1hcmsuY3JlYXRlUGxhY2VtYXJrKG1hcCk7XG4gICAgICAgICAgICBtYXAuZ2VvT2JqZWN0cy5hZGQocCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3ViLmFkZChwbGFjZW1hcmtzU3ViKTtcblxuICAgIC8vIE11bHRpcm91dGVzIChhc3luYylcbiAgICBjb25zdCBtdWx0aXJvdXRlc1N1YiA9IHRoaXMubXVsdGlyb3V0ZXMuY2hhbmdlc1xuICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMubXVsdGlyb3V0ZXMpKVxuICAgICAgLnN1YnNjcmliZSgobGlzdDogUXVlcnlMaXN0PFlhTXVsdGlyb3V0ZURpcmVjdGl2ZT4pID0+IHtcbiAgICAgICAgbGlzdC5mb3JFYWNoKChtdWx0aXJvdXRlKSA9PiB7XG4gICAgICAgICAgaWYgKCFtdWx0aXJvdXRlLmlkKSB7XG4gICAgICAgICAgICBjb25zdCBtID0gbXVsdGlyb3V0ZS5jcmVhdGVNdWx0aXJvdXRlKG1hcCk7XG4gICAgICAgICAgICBtYXAuZ2VvT2JqZWN0cy5hZGQobSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3ViLmFkZChtdWx0aXJvdXRlc1N1Yik7XG5cbiAgICAvLyBHZW9PYmplY3RzIChhc3luYylcbiAgICBjb25zdCBnZW9PYmplY3RzU3ViID0gdGhpcy5nZW9PYmplY3RzLmNoYW5nZXNcbiAgICAgIC5waXBlKHN0YXJ0V2l0aCh0aGlzLmdlb09iamVjdHMpKVxuICAgICAgLnN1YnNjcmliZSgobGlzdDogUXVlcnlMaXN0PFlhR2Vvb2JqZWN0RGlyZWN0aXZlPikgPT4ge1xuICAgICAgICBsaXN0LmZvckVhY2goKGdlb09iamVjdCkgPT4ge1xuICAgICAgICAgIGlmICghZ2VvT2JqZWN0LmlkKSB7XG4gICAgICAgICAgICBjb25zdCBnID0gZ2VvT2JqZWN0LmNyZWF0ZUdlb09iamVjdChtYXApO1xuICAgICAgICAgICAgbWFwLmdlb09iamVjdHMuYWRkKGcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuX3N1Yi5hZGQoZ2VvT2JqZWN0c1N1Yik7XG5cbiAgICAvLyBDbHVzdGVyZXJzIChub3QgYXN5bmMpXG4gICAgdGhpcy5jbHVzdGVyZXJzLmZvckVhY2goKGNsdXN0ZXJlcikgPT4ge1xuICAgICAgY29uc3QgYyA9IGNsdXN0ZXJlci5jcmVhdGVDbHVzdGVyZXIobWFwKTtcbiAgICAgIC8qKlxuICAgICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXG4gICAgICAgKi9cbiAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChjIGFzIGFueSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBjb250cm9scyB0byB0aGUgTWFwLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkQ29udHJvbHMoKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9scy5mb3JFYWNoKChjb250cm9sKSA9PiB7XG4gICAgICBjb25zdCBjID0gY29udHJvbC5jcmVhdGVDb250cm9sKCk7XG4gICAgICB0aGlzLl9tYXAuY29udHJvbHMuYWRkKGMpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBNYXAgZXZlbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgbWFwID0gdGhpcy5fbWFwO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnYWN0aW9uYmVnaW4nLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLmFjdGlvbmJlZ2luLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2FjdGlvbmJyZWFrJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5hY3Rpb25icmVhayxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdhY3Rpb25lbmQnLCBlbWl0dGVyOiB0aGlzLmFjdGlvbmVuZCB9LFxuICAgICAgeyBuYW1lOiAnYWN0aW9udGljaycsIGVtaXR0ZXI6IHRoaXMuYWN0aW9udGljayB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYWN0aW9udGlja2NvbXBsZXRlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5hY3Rpb250aWNrY29tcGxldGUsXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiAnYmFsbG9vbmNsb3NlJywgZW1pdHRlcjogdGhpcy5iYWxsb29uY2xvc2UgfSxcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25vcGVuJywgZW1pdHRlcjogdGhpcy5iYWxsb29ub3BlbiB9LFxuICAgICAgeyBuYW1lOiAnYm91bmRzY2hhbmdlJywgZW1pdHRlcjogdGhpcy5ib3VuZHNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ2NsaWNrJywgZW1pdHRlcjogdGhpcy55YWNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdjb250ZXh0bWVudScsIGVtaXR0ZXI6IHRoaXMueWFjb250ZXh0bWVudSB9LFxuICAgICAgeyBuYW1lOiAnZGJjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFkYmNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdkZXN0cm95JywgZW1pdHRlcjogdGhpcy5kZXN0cm95IH0sXG4gICAgICB7IG5hbWU6ICdoaW50Y2xvc2UnLCBlbWl0dGVyOiB0aGlzLmhpbnRjbG9zZSB9LFxuICAgICAgeyBuYW1lOiAnaGludG9wZW4nLCBlbWl0dGVyOiB0aGlzLmhpbnRvcGVuIH0sXG4gICAgICB7IG5hbWU6ICdtYXJnaW5jaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcmdpbmNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vkb3duJywgZW1pdHRlcjogdGhpcy55YW1vdXNlZG93biB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbW91c2VlbnRlcicsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMueWFtb3VzZWVudGVyLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWxlYXZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlbGVhdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNlbW92ZScsIGVtaXR0ZXI6IHRoaXMueWFtb3VzZW1vdmUsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZXVwJywgZW1pdHRlcjogdGhpcy55YW1vdXNldXAsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNoZW5kJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoZW5kLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNobW92ZScsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaG1vdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hzdGFydCcsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaHN0YXJ0LFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdvcHRpb25zY2hhbmdlJywgZW1pdHRlcjogdGhpcy5vcHRpb25zY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdzaXplY2hhbmdlJywgZW1pdHRlcjogdGhpcy5zaXplY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd0eXBlY2hhbmdlJywgZW1pdHRlcjogdGhpcy50eXBlY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd3aGVlbCcsIGVtaXR0ZXI6IHRoaXMueWF3aGVlbCB9LFxuICAgIF07XG5cbiAgICBjb25zdCBmbiA9IChldmVudDogeW1hcHMuRXZlbnQpOiBZYUV2ZW50ID0+ICh7XG4gICAgICBldmVudCxcbiAgICAgIHRhcmdldDogbWFwLFxuICAgICAgeW1hcHMsXG4gICAgfSk7XG5cbiAgICBsaXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IHtcbiAgICAgIG1hcC5ldmVudHMuYWRkKGxpc3RlbmVyLm5hbWUsIChlOiB5bWFwcy5FdmVudCkgPT5cbiAgICAgICAgbGlzdGVuZXIucnVuT3V0c2lkZUFuZ3VsYXJcbiAgICAgICAgICA/IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKVxuICAgICAgICAgIDogdGhpcy5fbmdab25lLnJ1bigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvY29tcG9uZW50cy95YS1tYXAveWEtbWFwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQ0wsU0FBUyxFQUNULGVBQWUsRUFFZixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFJTixNQUFNLEVBR04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUV0RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRTs7Ozs7R0FLRztBQU1ILE1BQU0sT0FBTyxjQUFjO0lBd0x6QixZQUFvQixPQUFlLEVBQVUsY0FBNkI7UUFBdEQsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBaksxRTs7V0FFRztRQUNhLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFMUI7OztXQUdHO1FBQ2EsVUFBSyxHQUFvQixFQUFFLENBQUM7UUFFNUM7OztXQUdHO1FBQ2EsWUFB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V0FBVyxFQUFFLENBQUM7SUFDMUIsQ0FBQzs7O1lBMWNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsb0NBQXNDOzthQUV2Qzs7O1lBN0JDLE1BQU07WUFVQyxhQUFhOzs7MkJBcUJuQixTQUFTLFNBQUMsV0FBVzt5QkFFckIsZUFBZSxTQUFDLG9CQUFvQjswQkFHcEMsZUFBZSxTQUFDLHFCQUFxQjt5QkFHckMsZUFBZSxTQUFDLG9CQUFvQjt1QkFHcEMsZUFBZSxTQUFDLGtCQUFrQjt5QkFHbEMsZUFBZSxTQUFDLG9CQUFvQjtxQkFNcEMsS0FBSzttQkFLTCxLQUFLO29CQU1MLEtBQUs7c0JBTUwsS0FBSztvQkFLTCxNQUFNOzBCQUtOLE1BQU07MEJBS04sTUFBTTt3QkFLTixNQUFNO3lCQUtOLE1BQU07aUNBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07MkJBS04sTUFBTTtzQkFLTixNQUFNOzRCQUtOLE1BQU07d0JBS04sTUFBTTtzQkFLTixNQUFNO3dCQUtOLE1BQU07dUJBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07MkJBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07d0JBS04sTUFBTTs0QkFLTixNQUFNOzZCQUtOLE1BQU07OEJBS04sTUFBTTs0QkFLTixNQUFNO3lCQUtOLE1BQU07eUJBS04sTUFBTTtzQkFLTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9saXN0ZW5lcic7XG5pbXBvcnQgeyBTY3JpcHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2NyaXB0L3NjcmlwdC5zZXJ2aWNlJztcbmltcG9ydCB7IFlhQ2x1c3RlcmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBZYUNvbnRyb2xEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3lhLWNvbnRyb2wveWEtY29udHJvbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBZYUdlb29iamVjdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMveWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgWWFNdWx0aXJvdXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy95YS1tdWx0aXJvdXRlL3lhLW11bHRpcm91dGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IFlhUGxhY2VtYXJrRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGVSYW5kb21JZCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBjcmVhdGluZyBhbmQgbWFuYWdpbmcgYSBtYXAuXG4gKlxuICogQGV4YW1wbGUgYDx5YS1tYXAgW2NlbnRlcl09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCIgW3N0YXRlXT1cInt0eXBlOiAneWFuZGV4I3NhdGVsbGl0ZSd9XCI+PC95YS1tYXA+YC5cbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvY29tcG9uZW50cy9tYXB9XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3lhLW1hcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi95YS1tYXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi95YS1tYXAuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgWWFNYXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJykgcHVibGljIG1hcENvbnRhaW5lcjogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhUGxhY2VtYXJrRGlyZWN0aXZlKVxuICBwdWJsaWMgcGxhY2VtYXJrczogUXVlcnlMaXN0PFlhUGxhY2VtYXJrRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhTXVsdGlyb3V0ZURpcmVjdGl2ZSlcbiAgcHVibGljIG11bHRpcm91dGVzOiBRdWVyeUxpc3Q8WWFNdWx0aXJvdXRlRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhR2Vvb2JqZWN0RGlyZWN0aXZlKVxuICBwdWJsaWMgZ2VvT2JqZWN0czogUXVlcnlMaXN0PFlhR2Vvb2JqZWN0RGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhQ29udHJvbERpcmVjdGl2ZSlcbiAgcHVibGljIGNvbnRyb2xzOiBRdWVyeUxpc3Q8WWFDb250cm9sRGlyZWN0aXZlPjtcblxuICBAQ29udGVudENoaWxkcmVuKFlhQ2x1c3RlcmVyRGlyZWN0aXZlKVxuICBwdWJsaWMgY2x1c3RlcmVyczogUXVlcnlMaXN0PFlhQ2x1c3RlcmVyRGlyZWN0aXZlPjtcblxuICAvKipcbiAgICogTWFwIGNlbnRlciBnZW9jb29yZGluYXRlcy5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjZW50ZXI6IG51bWJlcltdO1xuXG4gIC8qKlxuICAgKiBNYXAgem9vbSBsZXZlbC5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyB6b29tID0gMTA7XG5cbiAgLyoqXG4gICAqIFN0YXRlcyBmb3IgdGhlIG1hcC5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9NYXAtZG9jcGFnZS8jTWFwcGFyYW0tc3RhdGV9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgc3RhdGU6IHltYXBzLklNYXBTdGF0ZSA9IHt9O1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgbWFwLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL01hcC1kb2NwYWdlLyNNYXBwYXJhbS1vcHRpb25zfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG9wdGlvbnM6IHltYXBzLklNYXBPcHRpb25zID0ge307XG5cbiAgLyoqXG4gICAqIE1hcCBpbnN0YW5jZSBpcyBjcmVhdGVkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhcnQgb2YgYSBuZXcgc21vb3RoIG1hcCBtb3ZlbWVudC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYWN0aW9uYmVnaW4gPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IHRoYXQgb2NjdXJzIHdoZW4gYW4gYWN0aW9uIHN0ZXAgd2FzIHByZW1hdHVyZWx5IHN0b3BwZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGFjdGlvbmJyZWFrID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgZW5kIG9mIHNtb290aCBtYXAgbW92ZW1lbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGFjdGlvbmVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHN0YXJ0IG9mIGEgbmV3IHN0ZXAgb2Ygc21vb3RoIG1vdmVtZW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBhY3Rpb250aWNrID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgZW5kIG9mIHBlcmZvcm1pbmcgYSBzdGVwIG9mIHNtb290aCBtb3ZlbWVudC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYWN0aW9udGlja2NvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiYWxsb29uY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE9wZW5pbmcgYSBiYWxsb29uIG9uIGEgbWFwLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiYWxsb29ub3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZm9yIGEgY2hhbmdlIHRvIHRoZSBtYXAgdmlld3BvcnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJvdW5kc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY29udGV4dG1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZGJjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIG1hcCB3YXMgZGVzdHJveWVkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBkZXN0cm95ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDbG9zaW5nIHRoZSBoaW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBoaW50Y2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE9wZW5pbmcgYSBoaW50IG9uIGEgbWFwLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBoaW50b3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTWFwIG1hcmdpbnMgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbWFyZ2luY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWRvd24gPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFBvaW50aW5nIHRoZSBjdXJzb3IgYXQgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWVudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvZmYgb2YgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWxlYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vtb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBMZXR0aW5nIGdvIG9mIHRoZSBtb3VzZSBidXR0b24gb3ZlciBhbiBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2V1cCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRW5kIG9mIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2hlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFJlcGVhdGluZyBldmVudCBkdXJpbmcgbXVsdGl0b3VjaC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbXVsdGl0b3VjaG1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2hzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTWFwIG9wdGlvbnMgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTWFwIHNpemUgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgc2l6ZWNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIG1hcCB0eXBlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHR5cGVjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE1vdXNlIHdoZWVsIHNjcm9sbGluZy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWF3aGVlbCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwcml2YXRlIF9zdWI6IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIF9tYXA6IHltYXBzLk1hcDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSBfc2NyaXB0U2VydmljZTogU2NyaXB0U2VydmljZSkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fc3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuICAgIHRoaXMuX2luaXRTY3JpcHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5fdXBkYXRlTWFwKGNoYW5nZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgZHluYW1pYyBNYXAgY29uZmlndXJhdGlvbi5cbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwcm92aWRlcyBpdCB0byBBUEkuXG4gICAqIEBwYXJhbSBjaGFuZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVNYXAoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IG1hcCA9IHRoaXMuX21hcDtcblxuICAgIGlmICghbWFwKSByZXR1cm47XG5cbiAgICBjb25zdCB7IGNlbnRlciwgem9vbSwgc3RhdGUsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XG5cbiAgICBpZiAoY2VudGVyKSB7XG4gICAgICBtYXAuc2V0Q2VudGVyKGNlbnRlci5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh6b29tKSB7XG4gICAgICBtYXAuc2V0Wm9vbSh6b29tLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlKSB7XG4gICAgICB0aGlzLl9zZXRTdGF0ZShzdGF0ZS5jdXJyZW50VmFsdWUsIG1hcCk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgIG1hcC5vcHRpb25zLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlc3RydWN0cyBzdGF0ZSBhbmQgcHJvdmlkZXMgbmV3IHZhbHVlcyB0byBBUEkuXG4gICAqIEBwYXJhbSBzdGF0ZVxuICAgKiBAcGFyYW0gbWFwXG4gICAqL1xuICBwcml2YXRlIF9zZXRTdGF0ZShzdGF0ZTogeW1hcHMuSU1hcFN0YXRlLCBtYXA6IHltYXBzLk1hcCk6IHZvaWQge1xuICAgIGNvbnN0IHsgYmVoYXZpb3JzLCBib3VuZHMsIGNlbnRlciwgY29udHJvbHMsIG1hcmdpbiwgdHlwZSwgem9vbSB9ID0gc3RhdGU7XG5cbiAgICBpZiAoYmVoYXZpb3JzKSB7XG4gICAgICBtYXAuYmVoYXZpb3JzLmVuYWJsZShiZWhhdmlvcnMpO1xuICAgIH1cblxuICAgIGlmIChib3VuZHMpIHtcbiAgICAgIG1hcC5zZXRCb3VuZHMoYm91bmRzKTtcbiAgICB9XG5cbiAgICBpZiAoY2VudGVyKSB7XG4gICAgICBtYXAuc2V0Q2VudGVyKGNlbnRlcik7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRyb2xzKSB7XG4gICAgICAvKipcbiAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAgICovXG4gICAgICBjb250cm9scy5mb3JFYWNoKChjOiBhbnkpID0+IG1hcC5jb250cm9scy5hZGQoYykpO1xuICAgIH1cblxuICAgIGlmIChtYXJnaW4pIHtcbiAgICAgIG1hcC5tYXJnaW4uc2V0RGVmYXVsdE1hcmdpbihtYXJnaW4pO1xuICAgIH1cblxuICAgIGlmICh0eXBlKSB7XG4gICAgICBtYXAuc2V0VHlwZSh0eXBlKTtcbiAgICB9XG5cbiAgICBpZiAoem9vbSkge1xuICAgICAgbWFwLnNldFpvb20oem9vbSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tSZXF1aXJlZElucHV0cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jZW50ZXIgPT09IHVuZGVmaW5lZCB8fCB0aGlzLmNlbnRlciA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDZW50ZXIgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbml0U2NyaXB0KCk6IHZvaWQge1xuICAgIGNvbnN0IHN1YiA9IHRoaXMuX3NjcmlwdFNlcnZpY2UuaW5pdFNjcmlwdCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBpZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcbiAgICAgIHRoaXMuX21hcCA9IHRoaXMuX2NyZWF0ZU1hcChpZCk7XG5cbiAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogdGhpcy5fbWFwIH0pKTtcblxuICAgICAgdGhpcy5fYWRkR2VvT2JqZWN0cygpO1xuICAgICAgdGhpcy5fYWRkQ29udHJvbHMoKTtcbiAgICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9zdWIuYWRkKHN1Yik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBtYXAuXG4gICAqIEBwYXJhbSBpZCBJRCB3aGljaCB3aWxsIGJlIHNldCB0byB0aGUgbWFwIGNvbnRhaW5lci5cbiAgICovXG4gIHByaXZhdGUgX2NyZWF0ZU1hcChpZDogc3RyaW5nKTogeW1hcHMuTWFwIHtcbiAgICBjb25zdCBjb250YWluZXJFbGVtOiBIVE1MRWxlbWVudCA9IHRoaXMubWFwQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29udGFpbmVyRWxlbS5zZXRBdHRyaWJ1dGUoJ2lkJywgaWQpO1xuICAgIGNvbnRhaW5lckVsZW0uc3R5bGUuY3NzVGV4dCA9ICd3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyc7XG5cbiAgICByZXR1cm4gbmV3IHltYXBzLk1hcChcbiAgICAgIGlkLFxuICAgICAgeyAuLi50aGlzLnN0YXRlLCB6b29tOiB0aGlzLnpvb20sIGNlbnRlcjogdGhpcy5jZW50ZXIgfSxcbiAgICAgIHRoaXMub3B0aW9ucyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgR2VvT2JqZWN0IHRvIHRoZSBNYXAgb24gQ29udGVudENoaWxkcmVuIGNoYW5nZXMuXG4gICAqL1xuICBwcml2YXRlIF9hZGRHZW9PYmplY3RzKCk6IHZvaWQge1xuICAgIGNvbnN0IG1hcCA9IHRoaXMuX21hcDtcblxuICAgIC8vIFBsYWNlbWFya3MgKGFzeW5jKVxuICAgIGNvbnN0IHBsYWNlbWFya3NTdWIgPSB0aGlzLnBsYWNlbWFya3MuY2hhbmdlc1xuICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMucGxhY2VtYXJrcykpXG4gICAgICAuc3Vic2NyaWJlKChsaXN0OiBRdWVyeUxpc3Q8WWFQbGFjZW1hcmtEaXJlY3RpdmU+KSA9PiB7XG4gICAgICAgIGxpc3QuZm9yRWFjaCgocGxhY2VtYXJrKSA9PiB7XG4gICAgICAgICAgaWYgKCFwbGFjZW1hcmsuaWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHAgPSBwbGFjZW1hcmsuY3JlYXRlUGxhY2VtYXJrKG1hcCk7XG4gICAgICAgICAgICBtYXAuZ2VvT2JqZWN0cy5hZGQocCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3ViLmFkZChwbGFjZW1hcmtzU3ViKTtcblxuICAgIC8vIE11bHRpcm91dGVzIChhc3luYylcbiAgICBjb25zdCBtdWx0aXJvdXRlc1N1YiA9IHRoaXMubXVsdGlyb3V0ZXMuY2hhbmdlc1xuICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMubXVsdGlyb3V0ZXMpKVxuICAgICAgLnN1YnNjcmliZSgobGlzdDogUXVlcnlMaXN0PFlhTXVsdGlyb3V0ZURpcmVjdGl2ZT4pID0+IHtcbiAgICAgICAgbGlzdC5mb3JFYWNoKChtdWx0aXJvdXRlKSA9PiB7XG4gICAgICAgICAgaWYgKCFtdWx0aXJvdXRlLmlkKSB7XG4gICAgICAgICAgICBjb25zdCBtID0gbXVsdGlyb3V0ZS5jcmVhdGVNdWx0aXJvdXRlKG1hcCk7XG4gICAgICAgICAgICBtYXAuZ2VvT2JqZWN0cy5hZGQobSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3ViLmFkZChtdWx0aXJvdXRlc1N1Yik7XG5cbiAgICAvLyBHZW9PYmplY3RzIChhc3luYylcbiAgICBjb25zdCBnZW9PYmplY3RzU3ViID0gdGhpcy5nZW9PYmplY3RzLmNoYW5nZXNcbiAgICAgIC5waXBlKHN0YXJ0V2l0aCh0aGlzLmdlb09iamVjdHMpKVxuICAgICAgLnN1YnNjcmliZSgobGlzdDogUXVlcnlMaXN0PFlhR2Vvb2JqZWN0RGlyZWN0aXZlPikgPT4ge1xuICAgICAgICBsaXN0LmZvckVhY2goKGdlb09iamVjdCkgPT4ge1xuICAgICAgICAgIGlmICghZ2VvT2JqZWN0LmlkKSB7XG4gICAgICAgICAgICBjb25zdCBnID0gZ2VvT2JqZWN0LmNyZWF0ZUdlb09iamVjdChtYXApO1xuICAgICAgICAgICAgbWFwLmdlb09iamVjdHMuYWRkKGcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuX3N1Yi5hZGQoZ2VvT2JqZWN0c1N1Yik7XG5cbiAgICAvLyBDbHVzdGVyZXJzIChub3QgYXN5bmMpXG4gICAgdGhpcy5jbHVzdGVyZXJzLmZvckVhY2goKGNsdXN0ZXJlcikgPT4ge1xuICAgICAgY29uc3QgYyA9IGNsdXN0ZXJlci5jcmVhdGVDbHVzdGVyZXIobWFwKTtcbiAgICAgIC8qKlxuICAgICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXG4gICAgICAgKi9cbiAgICAgIG1hcC5nZW9PYmplY3RzLmFkZChjIGFzIGFueSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBjb250cm9scyB0byB0aGUgTWFwLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkQ29udHJvbHMoKTogdm9pZCB7XG4gICAgdGhpcy5jb250cm9scy5mb3JFYWNoKChjb250cm9sKSA9PiB7XG4gICAgICBjb25zdCBjID0gY29udHJvbC5jcmVhdGVDb250cm9sKCk7XG4gICAgICB0aGlzLl9tYXAuY29udHJvbHMuYWRkKGMpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBNYXAgZXZlbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgbWFwID0gdGhpcy5fbWFwO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnYWN0aW9uYmVnaW4nLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLmFjdGlvbmJlZ2luLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2FjdGlvbmJyZWFrJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5hY3Rpb25icmVhayxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdhY3Rpb25lbmQnLCBlbWl0dGVyOiB0aGlzLmFjdGlvbmVuZCB9LFxuICAgICAgeyBuYW1lOiAnYWN0aW9udGljaycsIGVtaXR0ZXI6IHRoaXMuYWN0aW9udGljayB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYWN0aW9udGlja2NvbXBsZXRlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5hY3Rpb250aWNrY29tcGxldGUsXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiAnYmFsbG9vbmNsb3NlJywgZW1pdHRlcjogdGhpcy5iYWxsb29uY2xvc2UgfSxcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25vcGVuJywgZW1pdHRlcjogdGhpcy5iYWxsb29ub3BlbiB9LFxuICAgICAgeyBuYW1lOiAnYm91bmRzY2hhbmdlJywgZW1pdHRlcjogdGhpcy5ib3VuZHNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ2NsaWNrJywgZW1pdHRlcjogdGhpcy55YWNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdjb250ZXh0bWVudScsIGVtaXR0ZXI6IHRoaXMueWFjb250ZXh0bWVudSB9LFxuICAgICAgeyBuYW1lOiAnZGJjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFkYmNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdkZXN0cm95JywgZW1pdHRlcjogdGhpcy5kZXN0cm95IH0sXG4gICAgICB7IG5hbWU6ICdoaW50Y2xvc2UnLCBlbWl0dGVyOiB0aGlzLmhpbnRjbG9zZSB9LFxuICAgICAgeyBuYW1lOiAnaGludG9wZW4nLCBlbWl0dGVyOiB0aGlzLmhpbnRvcGVuIH0sXG4gICAgICB7IG5hbWU6ICdtYXJnaW5jaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcmdpbmNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vkb3duJywgZW1pdHRlcjogdGhpcy55YW1vdXNlZG93biB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbW91c2VlbnRlcicsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMueWFtb3VzZWVudGVyLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWxlYXZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlbGVhdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNlbW92ZScsIGVtaXR0ZXI6IHRoaXMueWFtb3VzZW1vdmUsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZXVwJywgZW1pdHRlcjogdGhpcy55YW1vdXNldXAsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNoZW5kJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoZW5kLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNobW92ZScsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaG1vdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hzdGFydCcsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaHN0YXJ0LFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdvcHRpb25zY2hhbmdlJywgZW1pdHRlcjogdGhpcy5vcHRpb25zY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdzaXplY2hhbmdlJywgZW1pdHRlcjogdGhpcy5zaXplY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd0eXBlY2hhbmdlJywgZW1pdHRlcjogdGhpcy50eXBlY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd3aGVlbCcsIGVtaXR0ZXI6IHRoaXMueWF3aGVlbCB9LFxuICAgIF07XG5cbiAgICBjb25zdCBmbiA9IChldmVudDogeW1hcHMuRXZlbnQpOiBZYUV2ZW50ID0+ICh7XG4gICAgICBldmVudCxcbiAgICAgIHRhcmdldDogbWFwLFxuICAgICAgeW1hcHMsXG4gICAgfSk7XG5cbiAgICBsaXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IHtcbiAgICAgIG1hcC5ldmVudHMuYWRkKGxpc3RlbmVyLm5hbWUsIChlOiB5bWFwcy5FdmVudCkgPT5cbiAgICAgICAgbGlzdGVuZXIucnVuT3V0c2lkZUFuZ3VsYXJcbiAgICAgICAgICA/IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKVxuICAgICAgICAgIDogdGhpcy5fbmdab25lLnJ1bigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==

@@ -183,2 +183,2 @@ import { Component, EventEmitter, Input, NgZone, Output, ViewChild, } from '@angular/core';

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGFub3JhbWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3lhLXBhbm9yYW1hL3lhLXBhbm9yYW1hLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFckUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFaEU7Ozs7O0dBS0c7QUFNSCxNQUFNLE9BQU8sbUJBQW1CO0lBb0Y5QixZQUFvQixPQUFlLEVBQVUsY0FBNkI7UUFBdEQsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBakUxRTs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXZEOztXQUVHO1FBQ2Msb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRS9EOztXQUVHO1FBQ2MsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFdkQ7O1dBRUc7UUFDYyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFL0Q7O1dBRUc7UUFDYyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFOUQ7O1dBRUc7UUFDYyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFOUQ7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUks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UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTGlzdGVuZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2xpc3RlbmVyJztcbmltcG9ydCB7IFNjcmlwdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zY3JpcHQvc2NyaXB0LnNlcnZpY2UnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGVSYW5kb21JZCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBjcmVhdGluZyBhbmQgY29udHJvbGxpbmcgdGhlIHBhbm9yYW1hIHBsYXllci5cbiAqXG4gKiBAZXhhbXBsZSBgPHlhLXBhbm9yYW1hIFtwb2ludF09XCJbNTkuOTM4NTU3LCAzMC4zMTYxOThdXCIgbGF5ZXI9XCJ5YW5kZXgjYWlyUGFub3JhbWFcIj48L3lhLXBhbm9yYW1hPmAuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2RkdWJyYXZhLmdpdGh1Yi5pby9hbmd1bGFyOC15YW5kZXgtbWFwcy8jL2NvbXBvbmVudHMvcGFub3JhbWF9XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3lhLXBhbm9yYW1hJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3lhLXBhbm9yYW1hLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4veWEtcGFub3JhbWEuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgWWFQYW5vcmFtYUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdjb250YWluZXInKSBwdWJsaWMgcGFub3JhbWFDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIFRoZSBwb2ludCBmb3Igc2VhcmNoaW5nIGZvciBuZWFyYnkgcGFub3JhbWFzLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHBvaW50OiBudW1iZXJbXTtcblxuICAvKipcbiAgICogVGhlIGxheWVyIHRvIHNlYXJjaCBmb3IgcGFub3JhbWFzLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxheWVyOiAneWFuZGV4I3Bhbm9yYW1hJyB8ICd5YW5kZXgjYWlyUGFub3JhbWEnO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgcGxheWVyLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LmNvbS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9wYW5vcmFtYS5QbGF5ZXItZG9jcGFnZS8jcGFub3JhbWEuUGxheWVycGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiBhbnk7XG5cbiAgLyoqXG4gICAqIFBhbm9yYW1hIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGF5ZXIgd2FzIGNsb3NlZCBieSB0aGUgdXNlciBvciBkZXN0cm95ZWQgdXNpbmcgdGhlIHBhbm9yYW1hLlBsYXllci5kZXN0cm95IG1ldGhvZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZGVzdHJveSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHZpZXcgZGlyZWN0aW9uIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGRpcmVjdGlvbmNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIG9wZXJhdGlvbiBvZiB0aGUgcGxheWVyLiBUaGUgdXNlciB3aWxsIGJlIHNob3duIHRoZSBhcHByb3ByaWF0ZSBzY3JlZW4uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBwYW5vcmFtYSBwbGF5ZXIgc3dpdGNoZWQgdG8gZnVsbC1zY3JlZW4gbW9kZS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZnVsbHNjcmVlbmVudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFub3JhbWEgcGxheWVyIGV4aXRlZCBmdWxsLXNjcmVlbiBtb2RlLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBmdWxsc2NyZWVuZXhpdCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHVzZXIgY2xpY2tlZCBvbiBhbiBleHBhbmRlZCBtYXJrZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcmtlcmNvbGxhcHNlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlciBjbGlja2VkIG9uIGEgY29sbGFwc2VkIG1hcmtlci5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbWFya2VyZXhwYW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlcidzIGN1cnNvciBob3ZlcmVkIG92ZXIgYSBtYXJrZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcmtlcm1vdXNlZW50ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSB1c2VyJ3MgY3Vyc29yIGxlZnQgYSBtYXJrZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcmtlcm1vdXNlbGVhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBvcGVuIHBhbm9yYW1hIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHBhbm9yYW1hY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgdmlld3BvcnQgaGFzIGJlZW4gY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgc3BhbmNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwcml2YXRlIF9zdWI6IFN1YnNjcmlwdGlvbjtcblxuICAvLyBZYW5kZXguTWFwcyBBUEkuXG4gIHByaXZhdGUgX3BsYXllcjogeW1hcHMucGFub3JhbWEuUGxheWVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX25nWm9uZTogTmdab25lLCBwcml2YXRlIF9zY3JpcHRTZXJ2aWNlOiBTY3JpcHRTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgICB0aGlzLl9jaGVja1JlcXVpcmVkSW5wdXRzKCk7XG4gICAgdGhpcy5faW5pdFNjcmlwdCgpO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVQYW5vcmFtYShjaGFuZ2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIGR5bmFtaWMgUGFub3JhbWEgY29uZmlndXJhdGlvbi5cbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwcm92aWRlcyBpdCB0byBBUEkuXG4gICAqIEBwYXJhbSBjaGFuZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVQYW5vcmFtYShjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgcGxheWVyID0gdGhpcy5fcGxheWVyO1xuXG4gICAgaWYgKCFwbGF5ZXIpIHJldHVybjtcblxuICAgIGNvbnN0IHsgcG9pbnQsIGxheWVyLCBvcHRpb25zIH0gPSBjaGFuZ2VzO1xuXG4gICAgaWYgKHBvaW50KSB7XG4gICAgICBwbGF5ZXIubW92ZVRvKHBvaW50LmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGxheWVyICYmIHBvaW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIlRoZSBsYXllciBjYW4ndCBiZSBjaGFuZ2VkIHdpdGhvdXQgYSBwb2ludFwiKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIlRoZSBvcHRpb25zIGNhbid0IGJlIGNoYW5nZWQgYWZ0ZXIgZW50aXR5IGluaXQuIFlvdSBjYW4gc2V0IHRoZW0gbWFudWFsbHkgdXNpbmcgeW1hcHMgb3IgcmVjcmVhdGUgdGhlIFBhbm9yYW1hIHdpdGggbmV3IG9wdGlvbnNcIixcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tSZXF1aXJlZElucHV0cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wb2ludCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMucG9pbnQgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUG9pbnQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbml0U2NyaXB0KCk6IHZvaWQge1xuICAgIGNvbnN0IHN1YiA9IHRoaXMuX3NjcmlwdFNlcnZpY2UuaW5pdFNjcmlwdCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBpZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcbiAgICAgIHRoaXMuX2NyZWF0ZVBhbm9yYW1hKGlkKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX3N1Yi5hZGQoc3ViKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHBhbm9yYW1hIHdpdGggdGhlIHBsYXllci5cbiAgICogQHBhcmFtIGlkIElEIHdoaWNoIHdpbGwgYmUgc2V0IHRvIHRoZSBwYW5vcmFtYSBjb250YWluZXIuXG4gICAqL1xuICBwcml2YXRlIF9jcmVhdGVQYW5vcmFtYShpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY29udGFpbmVyRWxlbTogSFRNTEVsZW1lbnQgPSB0aGlzLnBhbm9yYW1hQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29udGFpbmVyRWxlbS5zZXRBdHRyaWJ1dGUoJ2lkJywgaWQpO1xuICAgIGNvbnRhaW5lckVsZW0uc3R5bGUuY3NzVGV4dCA9ICd3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyc7XG5cbiAgICB5bWFwcy5wYW5vcmFtYVxuICAgICAgLmxvY2F0ZSh0aGlzLnBvaW50LCB7IGxheWVyOiB0aGlzLmxheWVyIH0pXG4gICAgICAudGhlbigocGFub3JhbWE6IHltYXBzLklQYW5vcmFtYVtdKSA9PiB7XG4gICAgICAgIGNvbnN0IHBsYXllciA9IG5ldyB5bWFwcy5wYW5vcmFtYS5QbGF5ZXIoaWQsIHBhbm9yYW1hWzBdLCB0aGlzLm9wdGlvbnMpO1xuICAgICAgICB0aGlzLl9wbGF5ZXIgPSBwbGF5ZXI7XG5cbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBwbGF5ZXIgfSkpO1xuXG4gICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBQYW5vcmFtYSBldmVudHMuXG4gICAqL1xuICBwdWJsaWMgYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgcGxheWVyID0gdGhpcy5fcGxheWVyO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAgeyBuYW1lOiAnZGVzdHJveScsIGVtaXR0ZXI6IHRoaXMuZGVzdHJveSB9LFxuICAgICAgeyBuYW1lOiAnZGlyZWN0aW9uY2hhbmdlJywgZW1pdHRlcjogdGhpcy5kaXJlY3Rpb25jaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ2Vycm9yJywgZW1pdHRlcjogdGhpcy55YWVycm9yIH0sXG4gICAgICB7IG5hbWU6ICdmdWxsc2NyZWVuZW50ZXInLCBlbWl0dGVyOiB0aGlzLmZ1bGxzY3JlZW5lbnRlciB9LFxuICAgICAgeyBuYW1lOiAnZnVsbHNjcmVlbmV4aXQnLCBlbWl0dGVyOiB0aGlzLmZ1bGxzY3JlZW5leGl0IH0sXG4gICAgICB7IG5hbWU6ICdtYXJrZXJjb2xsYXBzZScsIGVtaXR0ZXI6IHRoaXMubWFya2VyY29sbGFwc2UgfSxcbiAgICAgIHsgbmFtZTogJ21hcmtlcmV4cGFuZCcsIGVtaXR0ZXI6IHRoaXMubWFya2VyZXhwYW5kIH0sXG4gICAgICB7IG5hbWU6ICdtYXJrZXJtb3VzZWVudGVyJywgZW1pdHRlcjogdGhpcy5tYXJrZXJtb3VzZWVudGVyIH0sXG4gICAgICB7IG5hbWU6ICdtYXJrZXJtb3VzZWxlYXZlJywgZW1pdHRlcjogdGhpcy5tYXJrZXJtb3VzZWxlYXZlIH0sXG4gICAgICB7IG5hbWU6ICdwYW5vcmFtYWNoYW5nZScsIGVtaXR0ZXI6IHRoaXMucGFub3JhbWFjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3NwYW5jaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnNwYW5jaGFuZ2UgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IHBsYXllcixcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBwbGF5ZXIuZXZlbnRzLmFkZChsaXN0ZW5lci5uYW1lLCAoZTogeW1hcHMuRXZlbnQpID0+XG4gICAgICAgIGxpc3RlbmVyLnJ1bk91dHNpZGVBbmd1bGFyXG4gICAgICAgICAgPyB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSlcbiAgICAgICAgICA6IHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGFub3JhbWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjL2xpYi9jb21wb25lbnRzL3lhLXBhbm9yYW1hL3lhLXBhbm9yYW1hLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUlOLE1BQU0sRUFFTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFckUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFaEU7Ozs7O0dBS0c7QUFNSCxNQUFNLE9BQU8sbUJBQW1CO0lBb0Y5QixZQUFvQixPQUFlLEVBQVUsY0FBNkI7UUFBdEQsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBakUxRTs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXZEOztXQUVHO1FBQ2Msb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRS9EOztXQUVHO1FBQ2MsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFdkQ7O1dBRUc7UUFDYyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFL0Q7O1dBRUc7UUFDYyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFOUQ7O1dBRUc7UUFDYyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFOUQ7O1dBRUc7UUFDYyxpQkFBWSxH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ICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTGlzdGVuZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2xpc3RlbmVyJztcbmltcG9ydCB7IFNjcmlwdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zY3JpcHQvc2NyaXB0LnNlcnZpY2UnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGVSYW5kb21JZCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBjcmVhdGluZyBhbmQgY29udHJvbGxpbmcgdGhlIHBhbm9yYW1hIHBsYXllci5cbiAqXG4gKiBAZXhhbXBsZSBgPHlhLXBhbm9yYW1hIFtwb2ludF09XCJbNTkuOTM4NTU3LCAzMC4zMTYxOThdXCIgbGF5ZXI9XCJ5YW5kZXgjYWlyUGFub3JhbWFcIj48L3lhLXBhbm9yYW1hPmAuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2RkdWJyYXZhLmdpdGh1Yi5pby9hbmd1bGFyOC15YW5kZXgtbWFwcy8jL2NvbXBvbmVudHMvcGFub3JhbWF9XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3lhLXBhbm9yYW1hJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3lhLXBhbm9yYW1hLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4veWEtcGFub3JhbWEuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgWWFQYW5vcmFtYUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdjb250YWluZXInKSBwdWJsaWMgcGFub3JhbWFDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIFRoZSBwb2ludCBmb3Igc2VhcmNoaW5nIGZvciBuZWFyYnkgcGFub3JhbWFzLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHBvaW50OiBudW1iZXJbXTtcblxuICAvKipcbiAgICogVGhlIGxheWVyIHRvIHNlYXJjaCBmb3IgcGFub3JhbWFzLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxheWVyOiAneWFuZGV4I3Bhbm9yYW1hJyB8ICd5YW5kZXgjYWlyUGFub3JhbWEnO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgcGxheWVyLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LmNvbS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9wYW5vcmFtYS5QbGF5ZXItZG9jcGFnZS8jcGFub3JhbWEuUGxheWVycGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiBhbnk7XG5cbiAgLyoqXG4gICAqIFBhbm9yYW1hIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGF5ZXIgd2FzIGNsb3NlZCBieSB0aGUgdXNlciBvciBkZXN0cm95ZWQgdXNpbmcgdGhlIHBhbm9yYW1hLlBsYXllci5kZXN0cm95IG1ldGhvZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZGVzdHJveSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHZpZXcgZGlyZWN0aW9uIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGRpcmVjdGlvbmNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIG9wZXJhdGlvbiBvZiB0aGUgcGxheWVyLiBUaGUgdXNlciB3aWxsIGJlIHNob3duIHRoZSBhcHByb3ByaWF0ZSBzY3JlZW4uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBwYW5vcmFtYSBwbGF5ZXIgc3dpdGNoZWQgdG8gZnVsbC1zY3JlZW4gbW9kZS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZnVsbHNjcmVlbmVudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFub3JhbWEgcGxheWVyIGV4aXRlZCBmdWxsLXNjcmVlbiBtb2RlLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBmdWxsc2NyZWVuZXhpdCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHVzZXIgY2xpY2tlZCBvbiBhbiBleHBhbmRlZCBtYXJrZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcmtlcmNvbGxhcHNlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlciBjbGlja2VkIG9uIGEgY29sbGFwc2VkIG1hcmtlci5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbWFya2VyZXhwYW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlcidzIGN1cnNvciBob3ZlcmVkIG92ZXIgYSBtYXJrZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcmtlcm1vdXNlZW50ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSB1c2VyJ3MgY3Vyc29yIGxlZnQgYSBtYXJrZXIuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcmtlcm1vdXNlbGVhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBvcGVuIHBhbm9yYW1hIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHBhbm9yYW1hY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgdmlld3BvcnQgaGFzIGJlZW4gY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgc3BhbmNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwcml2YXRlIF9zdWI6IFN1YnNjcmlwdGlvbjtcblxuICAvLyBZYW5kZXguTWFwcyBBUEkuXG4gIHByaXZhdGUgX3BsYXllcjogeW1hcHMucGFub3JhbWEuUGxheWVyO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX25nWm9uZTogTmdab25lLCBwcml2YXRlIF9zY3JpcHRTZXJ2aWNlOiBTY3JpcHRTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgICB0aGlzLl9jaGVja1JlcXVpcmVkSW5wdXRzKCk7XG4gICAgdGhpcy5faW5pdFNjcmlwdCgpO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVQYW5vcmFtYShjaGFuZ2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIGR5bmFtaWMgUGFub3JhbWEgY29uZmlndXJhdGlvbi5cbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwcm92aWRlcyBpdCB0byBBUEkuXG4gICAqIEBwYXJhbSBjaGFuZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVQYW5vcmFtYShjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgcGxheWVyID0gdGhpcy5fcGxheWVyO1xuXG4gICAgaWYgKCFwbGF5ZXIpIHJldHVybjtcblxuICAgIGNvbnN0IHsgcG9pbnQsIGxheWVyLCBvcHRpb25zIH0gPSBjaGFuZ2VzO1xuXG4gICAgaWYgKHBvaW50KSB7XG4gICAgICBwbGF5ZXIubW92ZVRvKHBvaW50LmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKGxheWVyICYmIHBvaW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIlRoZSBsYXllciBjYW4ndCBiZSBjaGFuZ2VkIHdpdGhvdXQgYSBwb2ludFwiKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIlRoZSBvcHRpb25zIGNhbid0IGJlIGNoYW5nZWQgYWZ0ZXIgZW50aXR5IGluaXQuIFlvdSBjYW4gc2V0IHRoZW0gbWFudWFsbHkgdXNpbmcgeW1hcHMgb3IgcmVjcmVhdGUgdGhlIFBhbm9yYW1hIHdpdGggbmV3IG9wdGlvbnNcIixcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tSZXF1aXJlZElucHV0cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wb2ludCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMucG9pbnQgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUG9pbnQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbml0U2NyaXB0KCk6IHZvaWQge1xuICAgIGNvbnN0IHN1YiA9IHRoaXMuX3NjcmlwdFNlcnZpY2UuaW5pdFNjcmlwdCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBpZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcbiAgICAgIHRoaXMuX2NyZWF0ZVBhbm9yYW1hKGlkKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX3N1Yi5hZGQoc3ViKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHBhbm9yYW1hIHdpdGggdGhlIHBsYXllci5cbiAgICogQHBhcmFtIGlkIElEIHdoaWNoIHdpbGwgYmUgc2V0IHRvIHRoZSBwYW5vcmFtYSBjb250YWluZXIuXG4gICAqL1xuICBwcml2YXRlIF9jcmVhdGVQYW5vcmFtYShpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgY29udGFpbmVyRWxlbTogSFRNTEVsZW1lbnQgPSB0aGlzLnBhbm9yYW1hQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29udGFpbmVyRWxlbS5zZXRBdHRyaWJ1dGUoJ2lkJywgaWQpO1xuICAgIGNvbnRhaW5lckVsZW0uc3R5bGUuY3NzVGV4dCA9ICd3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyc7XG5cbiAgICB5bWFwcy5wYW5vcmFtYVxuICAgICAgLmxvY2F0ZSh0aGlzLnBvaW50LCB7IGxheWVyOiB0aGlzLmxheWVyIH0pXG4gICAgICAudGhlbigocGFub3JhbWE6IHltYXBzLklQYW5vcmFtYVtdKSA9PiB7XG4gICAgICAgIGNvbnN0IHBsYXllciA9IG5ldyB5bWFwcy5wYW5vcmFtYS5QbGF5ZXIoaWQsIHBhbm9yYW1hWzBdLCB0aGlzLm9wdGlvbnMpO1xuICAgICAgICB0aGlzLl9wbGF5ZXIgPSBwbGF5ZXI7XG5cbiAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBwbGF5ZXIgfSkpO1xuXG4gICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBQYW5vcmFtYSBldmVudHMuXG4gICAqL1xuICBwdWJsaWMgYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgcGxheWVyID0gdGhpcy5fcGxheWVyO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAgeyBuYW1lOiAnZGVzdHJveScsIGVtaXR0ZXI6IHRoaXMuZGVzdHJveSB9LFxuICAgICAgeyBuYW1lOiAnZGlyZWN0aW9uY2hhbmdlJywgZW1pdHRlcjogdGhpcy5kaXJlY3Rpb25jaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ2Vycm9yJywgZW1pdHRlcjogdGhpcy55YWVycm9yIH0sXG4gICAgICB7IG5hbWU6ICdmdWxsc2NyZWVuZW50ZXInLCBlbWl0dGVyOiB0aGlzLmZ1bGxzY3JlZW5lbnRlciB9LFxuICAgICAgeyBuYW1lOiAnZnVsbHNjcmVlbmV4aXQnLCBlbWl0dGVyOiB0aGlzLmZ1bGxzY3JlZW5leGl0IH0sXG4gICAgICB7IG5hbWU6ICdtYXJrZXJjb2xsYXBzZScsIGVtaXR0ZXI6IHRoaXMubWFya2VyY29sbGFwc2UgfSxcbiAgICAgIHsgbmFtZTogJ21hcmtlcmV4cGFuZCcsIGVtaXR0ZXI6IHRoaXMubWFya2VyZXhwYW5kIH0sXG4gICAgICB7IG5hbWU6ICdtYXJrZXJtb3VzZWVudGVyJywgZW1pdHRlcjogdGhpcy5tYXJrZXJtb3VzZWVudGVyIH0sXG4gICAgICB7IG5hbWU6ICdtYXJrZXJtb3VzZWxlYXZlJywgZW1pdHRlcjogdGhpcy5tYXJrZXJtb3VzZWxlYXZlIH0sXG4gICAgICB7IG5hbWU6ICdwYW5vcmFtYWNoYW5nZScsIGVtaXR0ZXI6IHRoaXMucGFub3JhbWFjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3NwYW5jaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnNwYW5jaGFuZ2UgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IHBsYXllcixcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBwbGF5ZXIuZXZlbnRzLmFkZChsaXN0ZW5lci5uYW1lLCAoZTogeW1hcHMuRXZlbnQpID0+XG4gICAgICAgIGxpc3RlbmVyLnJ1bk91dHNpZGVBbmd1bGFyXG4gICAgICAgICAgPyB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSlcbiAgICAgICAgICA6IHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
import { InjectionToken } from '@angular/core';
export const YA_CONFIG = new InjectionToken('YA_CONFIG');
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbnN0YW50cy9jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBVyxXQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBZYUNvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IFlBX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxZYUNvbmZpZz4oJ1lBX0NPTkZJRycpO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2NvbnN0YW50cy9jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLGNBQWMsQ0FBVyxXQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBZYUNvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IFlBX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxZYUNvbmZpZz4oJ1lBX0NPTkZJRycpO1xuIl19

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY2x1c3RlcmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUNmLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFHTixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHOUU7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFnRC9CLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBbkNuQzs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVHO1FBQ2MsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFeEQ7O1dBRUc7UUFDYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV6RDs7V0FFRztRQUNjLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU3RDs7V0FFRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVwRCxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUtJLENBQUM7SUFFaEMsV0FBVyxDQUFDLE9B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biAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBZYVBsYWNlbWFya0RpcmVjdGl2ZSB9IGZyb20gJy4uL3lhLXBsYWNlbWFyay95YS1wbGFjZW1hcmsuZGlyZWN0aXZlJztcbmltcG9ydCB7IFlhR2Vvb2JqZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi4veWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTGlzdGVuZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2xpc3RlbmVyJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgZm9yIGNyZWF0aW5nIGEgY2x1c3RlcmVyLiBDbHVzdGVyaXplcyBvYmplY3RzIGluIHRoZSB2aXNpYmxlIGFyZWEgb2YgdGhlIG1hcC5cbiAqIElmIHRoZSBvYmplY3QgZG9lcyBub3QgZmFsbCB3aXRoaW4gdGhlIHZpc2libGUgYXJlYSBvZiB0aGUgbWFwLCBpdCB3aWxsIG5vdCBiZSBhZGRlZCB0byB0aGUgbWFwLlxuICogTm90ZSwgdGhhdCB0aGUgY2x1c3RlcmVyIGRvZXMgbm90IHJlYWN0IHRvIGNoYW5naW5nIHRoZSBjb29yZGluYXRlcyBvZiBvYmplY3RzIChlaXRoZXIgcHJvZ3JhbW1hdGljYWxseSxcbiAqIG9yIGFzIHRoZSByZXN1bHQgb2YgZHJhZ2dpbmcpLiBJZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvb3JkaW5hdGVzIG9mIHNvbWUgb2JqZWN0IGluIHRoZSBjbHVzdGVyZXIsXG4gKiB5b3Ugc2hvdWxkIGZpcnN0IGRlbGV0ZSB0aGUgb2JqZWN0IGZyb20gdGhlIGNsdXN0ZXJlciBhbmQgdGhlbiBhZGQgaXQgYmFjay5cbiAqXG4gKiBAZXhhbXBsZVxuICogYDx5YS1jbHVzdGVyZXI+XG4gKiAgICA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNzQsIDM3LjUwXVwiPjwveWEtcGxhY2VtYXJrPlxuICogICAgPHlhLWdlb29iamVjdCBbZmVhdHVyZV09XCJ7IGdlb21ldHJ5OiB7IHR5cGU6ICdQb2ludCcsIGNvb3JkaW5hdGVzOiBbNTUuNzMsIDM3LjUyXSB9IH1cIj48L3lhLWdlb29iamVjdD5cbiAqIDwveWEtY2x1c3RlcmVyPmAuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2RkdWJyYXZhLmdpdGh1Yi5pby9hbmd1bGFyOC15YW5kZXgtbWFwcy8jL2RpcmVjdGl2ZXMvY2x1c3RlcmVyfVxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICd5YS1jbHVzdGVyZXInLFxufSlcbmV4cG9ydCBjbGFzcyBZYUNsdXN0ZXJlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQENvbnRlbnRDaGlsZHJlbihZYVBsYWNlbWFya0RpcmVjdGl2ZSlcbiAgcHVibGljIHBsYWNlbWFya3M6IFF1ZXJ5TGlzdDxZYVBsYWNlbWFya0RpcmVjdGl2ZT47XG5cbiAgQENvbnRlbnRDaGlsZHJlbihZYUdlb29iamVjdERpcmVjdGl2ZSlcbiAgcHVibGljIGdlb09iamVjdHM6IFF1ZXJ5TGlzdDxZYUdlb29iamVjdERpcmVjdGl2ZT47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBjbHVzdGVyZXIuXG4gICAqIEBzZWUge0BsaW5rIGh0dHBzOi8vdGVjaC55YW5kZXguY29tL21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0NsdXN0ZXJlci1kb2NwYWdlLyNDbHVzdGVyZXJwYXJhbS1vcHRpb25zfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG9wdGlvbnM6IGFueTtcblxuICAvKipcbiAgICogQ2x1c3RlcmVyIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2hhbmdlIHRvIHRoZSBvYmplY3Qgb3B0aW9ucy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHBhcmVudCBvYmplY3QgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHBhcmVudGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwcml2YXRlIF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgLy8gWWFuZGV4Lk1hcHMgQVBJLlxuICBwcml2YXRlIF9jbHVzdGVyZXI6IHltYXBzLkNsdXN0ZXJlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge31cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZUNsdXN0ZXJlcihjaGFuZ2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIGR5bmFtaWMgQ2x1c3RlcmVyIGNvbmZpZ3VyYXRpb24uXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcHJvdmlkZXMgaXQgdG8gQVBJLlxuICAgKiBAcGFyYW0gY2hhbmdlc1xuICAgKi9cbiAgcHJpdmF0ZSBfdXBkYXRlQ2x1c3RlcmVyKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBjbHVzdGVyZXIgPSB0aGlzLl9jbHVzdGVyZXI7XG5cbiAgICBpZiAoIWNsdXN0ZXJlcikgcmV0dXJuO1xuXG4gICAgY29uc3QgeyBvcHRpb25zIH0gPSBjaGFuZ2VzO1xuXG4gICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgIC8qKlxuICAgICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXG4gICAgICAgKi9cbiAgICAgIChjbHVzdGVyZXIub3B0aW9ucyBhcyBhbnkpLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgQ2x1c3RlcmVyLlxuICAgKlxuICAgKiBAcGFyYW0gbWFwIE5lY2Vzc2FyeSBmb3IgcGFzc2luZyBpbiBjaGlsZHJlbi5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGVDbHVzdGVyZXIobWFwOiB5bWFwcy5NYXApOiB5bWFwcy5DbHVzdGVyZXIge1xuICAgIGNvbnN0IGNsdXN0ZXJlciA9IG5ldyB5bWFwcy5DbHVzdGVyZXIodGhpcy5vcHRpb25zKTtcbiAgICB0aGlzLl9jbHVzdGVyZXIgPSBjbHVzdGVyZXI7XG5cbiAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IGNsdXN0ZXJlciB9KSk7XG5cbiAgICAvKipcbiAgICAgKiBBZGRzIG5ldyBQbGFjZW1hcmtzIHRvIHRoZSBjbHVzdGVyZXIgb24gY2hhbmdlcy5cbiAgICAgKi9cbiAgICBjb25zdCBwbGFjZW1hcmtzU3ViID0gdGhpcy5wbGFjZW1hcmtzLmNoYW5nZXNcbiAgICAgIC5waXBlKHN0YXJ0V2l0aCh0aGlzLnBsYWNlbWFya3MpKVxuICAgICAgLnN1YnNjcmliZSgobGlzdDogUXVlcnlMaXN0PFlhUGxhY2VtYXJrRGlyZWN0aXZlPikgPT4ge1xuICAgICAgICBsaXN0LmZvckVhY2goKHBsYWNlbWFyaykgPT4ge1xuICAgICAgICAgIGlmICghcGxhY2VtYXJrLmlkKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICAoY2x1c3RlcmVyIGFzIGFueSkuYWRkKHBsYWNlbWFyay5jcmVhdGVQbGFjZW1hcmsobWFwLCBjbHVzdGVyZXIpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9zdWIuYWRkKHBsYWNlbWFya3NTdWIpO1xuXG4gICAgLyoqXG4gICAgICogQWRkcyBuZXcgR2VvT2JqZWN0cyB0byB0aGUgY2x1c3RlcmVyIG9uIGNoYW5nZXMuXG4gICAgICovXG4gICAgY29uc3QgZ2VvT2JqZWN0c1N1YiA9IHRoaXMuZ2VvT2JqZWN0cy5jaGFuZ2VzXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy5nZW9PYmplY3RzKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IFF1ZXJ5TGlzdDxZYUdlb29iamVjdERpcmVjdGl2ZT4pID0+IHtcbiAgICAgICAgbGlzdC5mb3JFYWNoKChnZW9PYmplY3QpID0+IHtcbiAgICAgICAgICBpZiAoIWdlb09iamVjdC5pZCkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgKGNsdXN0ZXJlciBhcyBhbnkpLmFkZChnZW9PYmplY3QuY3JlYXRlR2VvT2JqZWN0KG1hcCwgY2x1c3RlcmVyKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3ViLmFkZChnZW9PYmplY3RzU3ViKTtcblxuICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG5cbiAgICByZXR1cm4gY2x1c3RlcmVyO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIENsdXN0ZXJlciBldmVudHMuXG4gICAqL1xuICBwcml2YXRlIF9hZGRFdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICBjb25zdCBjbHVzdGVyZXIgPSB0aGlzLl9jbHVzdGVyZXI7XG5cbiAgICBjb25zdCBsaXN0ZW5lcnM6IExpc3RlbmVyW10gPSBbXG4gICAgICB7IG5hbWU6ICdoaW50Y2xvc2UnLCBlbWl0dGVyOiB0aGlzLmhpbnRjbG9zZSB9LFxuICAgICAgeyBuYW1lOiAnaGludG9wZW4nLCBlbWl0dGVyOiB0aGlzLmhpbnRvcGVuIH0sXG4gICAgICB7IG5hbWU6ICdtYXBjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnb3B0aW9uc2NoYW5nZScsIGVtaXR0ZXI6IHRoaXMub3B0aW9uc2NoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAncGFyZW50Y2hhbmdlJywgZW1pdHRlcjogdGhpcy5wYXJlbnRjaGFuZ2UgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IGNsdXN0ZXJlcixcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBjbHVzdGVyZXIuZXZlbnRzLmFkZChsaXN0ZW5lci5uYW1lLCAoZTogeW1hcHMuRXZlbnQpID0+XG4gICAgICAgIGxpc3RlbmVyLnJ1bk91dHNpZGVBbmd1bGFyXG4gICAgICAgICAgPyB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSlcbiAgICAgICAgICA6IHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY2x1c3RlcmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvZGlyZWN0aXZlcy95YS1jbHVzdGVyZXIveWEtY2x1c3RlcmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUNmLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFHTixNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHOUU7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFnRC9CLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBbkNuQzs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVHO1FBQ2MsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFeEQ7O1dBRUc7UUFDYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV6RDs7V0FFRztRQUNjLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU3RDs7V0FFRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVwRCxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUtJLENBQUM7SUFFaEMsV0FB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aW1wb3J0IHtcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBZYVBsYWNlbWFya0RpcmVjdGl2ZSB9IGZyb20gJy4uL3lhLXBsYWNlbWFyay95YS1wbGFjZW1hcmsuZGlyZWN0aXZlJztcbmltcG9ydCB7IFlhR2Vvb2JqZWN0RGlyZWN0aXZlIH0gZnJvbSAnLi4veWEtZ2Vvb2JqZWN0L3lhLWdlb29iamVjdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTGlzdGVuZXIgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2xpc3RlbmVyJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgZm9yIGNyZWF0aW5nIGEgY2x1c3RlcmVyLiBDbHVzdGVyaXplcyBvYmplY3RzIGluIHRoZSB2aXNpYmxlIGFyZWEgb2YgdGhlIG1hcC5cbiAqIElmIHRoZSBvYmplY3QgZG9lcyBub3QgZmFsbCB3aXRoaW4gdGhlIHZpc2libGUgYXJlYSBvZiB0aGUgbWFwLCBpdCB3aWxsIG5vdCBiZSBhZGRlZCB0byB0aGUgbWFwLlxuICogTm90ZSwgdGhhdCB0aGUgY2x1c3RlcmVyIGRvZXMgbm90IHJlYWN0IHRvIGNoYW5naW5nIHRoZSBjb29yZGluYXRlcyBvZiBvYmplY3RzIChlaXRoZXIgcHJvZ3JhbW1hdGljYWxseSxcbiAqIG9yIGFzIHRoZSByZXN1bHQgb2YgZHJhZ2dpbmcpLiBJZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvb3JkaW5hdGVzIG9mIHNvbWUgb2JqZWN0IGluIHRoZSBjbHVzdGVyZXIsXG4gKiB5b3Ugc2hvdWxkIGZpcnN0IGRlbGV0ZSB0aGUgb2JqZWN0IGZyb20gdGhlIGNsdXN0ZXJlciBhbmQgdGhlbiBhZGQgaXQgYmFjay5cbiAqXG4gKiBAZXhhbXBsZVxuICogYDx5YS1jbHVzdGVyZXI+XG4gKiAgICA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNzQsIDM3LjUwXVwiPjwveWEtcGxhY2VtYXJrPlxuICogICAgPHlhLWdlb29iamVjdCBbZmVhdHVyZV09XCJ7IGdlb21ldHJ5OiB7IHR5cGU6ICdQb2ludCcsIGNvb3JkaW5hdGVzOiBbNTUuNzMsIDM3LjUyXSB9IH1cIj48L3lhLWdlb29iamVjdD5cbiAqIDwveWEtY2x1c3RlcmVyPmAuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2RkdWJyYXZhLmdpdGh1Yi5pby9hbmd1bGFyOC15YW5kZXgtbWFwcy8jL2RpcmVjdGl2ZXMvY2x1c3RlcmVyfVxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICd5YS1jbHVzdGVyZXInLFxufSlcbmV4cG9ydCBjbGFzcyBZYUNsdXN0ZXJlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQENvbnRlbnRDaGlsZHJlbihZYVBsYWNlbWFya0RpcmVjdGl2ZSlcbiAgcHVibGljIHBsYWNlbWFya3M6IFF1ZXJ5TGlzdDxZYVBsYWNlbWFya0RpcmVjdGl2ZT47XG5cbiAgQENvbnRlbnRDaGlsZHJlbihZYUdlb29iamVjdERpcmVjdGl2ZSlcbiAgcHVibGljIGdlb09iamVjdHM6IFF1ZXJ5TGlzdDxZYUdlb29iamVjdERpcmVjdGl2ZT47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBjbHVzdGVyZXIuXG4gICAqIEBzZWUge0BsaW5rIGh0dHBzOi8vdGVjaC55YW5kZXguY29tL21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0NsdXN0ZXJlci1kb2NwYWdlLyNDbHVzdGVyZXJwYXJhbS1vcHRpb25zfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG9wdGlvbnM6IGFueTtcblxuICAvKipcbiAgICogQ2x1c3RlcmVyIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2hhbmdlIHRvIHRoZSBvYmplY3Qgb3B0aW9ucy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIHBhcmVudCBvYmplY3QgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHBhcmVudGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwcml2YXRlIF9zdWIgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgLy8gWWFuZGV4Lk1hcHMgQVBJLlxuICBwcml2YXRlIF9jbHVzdGVyZXI6IHltYXBzLkNsdXN0ZXJlcjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge31cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZUNsdXN0ZXJlcihjaGFuZ2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIGR5bmFtaWMgQ2x1c3RlcmVyIGNvbmZpZ3VyYXRpb24uXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcHJvdmlkZXMgaXQgdG8gQVBJLlxuICAgKiBAcGFyYW0gY2hhbmdlc1xuICAgKi9cbiAgcHJpdmF0ZSBfdXBkYXRlQ2x1c3RlcmVyKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBjbHVzdGVyZXIgPSB0aGlzLl9jbHVzdGVyZXI7XG5cbiAgICBpZiAoIWNsdXN0ZXJlcikgcmV0dXJuO1xuXG4gICAgY29uc3QgeyBvcHRpb25zIH0gPSBjaGFuZ2VzO1xuXG4gICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgIC8qKlxuICAgICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXG4gICAgICAgKi9cbiAgICAgIChjbHVzdGVyZXIub3B0aW9ucyBhcyBhbnkpLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgQ2x1c3RlcmVyLlxuICAgKlxuICAgKiBAcGFyYW0gbWFwIE5lY2Vzc2FyeSBmb3IgcGFzc2luZyBpbiBjaGlsZHJlbi5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGVDbHVzdGVyZXIobWFwOiB5bWFwcy5NYXApOiB5bWFwcy5DbHVzdGVyZXIge1xuICAgIGNvbnN0IGNsdXN0ZXJlciA9IG5ldyB5bWFwcy5DbHVzdGVyZXIodGhpcy5vcHRpb25zKTtcbiAgICB0aGlzLl9jbHVzdGVyZXIgPSBjbHVzdGVyZXI7XG5cbiAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMucmVhZHkuZW1pdCh7IHltYXBzLCB0YXJnZXQ6IGNsdXN0ZXJlciB9KSk7XG5cbiAgICAvKipcbiAgICAgKiBBZGRzIG5ldyBQbGFjZW1hcmtzIHRvIHRoZSBjbHVzdGVyZXIgb24gY2hhbmdlcy5cbiAgICAgKi9cbiAgICBjb25zdCBwbGFjZW1hcmtzU3ViID0gdGhpcy5wbGFjZW1hcmtzLmNoYW5nZXNcbiAgICAgIC5waXBlKHN0YXJ0V2l0aCh0aGlzLnBsYWNlbWFya3MpKVxuICAgICAgLnN1YnNjcmliZSgobGlzdDogUXVlcnlMaXN0PFlhUGxhY2VtYXJrRGlyZWN0aXZlPikgPT4ge1xuICAgICAgICBsaXN0LmZvckVhY2goKHBsYWNlbWFyaykgPT4ge1xuICAgICAgICAgIGlmICghcGxhY2VtYXJrLmlkKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICAoY2x1c3RlcmVyIGFzIGFueSkuYWRkKHBsYWNlbWFyay5jcmVhdGVQbGFjZW1hcmsobWFwLCBjbHVzdGVyZXIpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9zdWIuYWRkKHBsYWNlbWFya3NTdWIpO1xuXG4gICAgLyoqXG4gICAgICogQWRkcyBuZXcgR2VvT2JqZWN0cyB0byB0aGUgY2x1c3RlcmVyIG9uIGNoYW5nZXMuXG4gICAgICovXG4gICAgY29uc3QgZ2VvT2JqZWN0c1N1YiA9IHRoaXMuZ2VvT2JqZWN0cy5jaGFuZ2VzXG4gICAgICAucGlwZShzdGFydFdpdGgodGhpcy5nZW9PYmplY3RzKSlcbiAgICAgIC5zdWJzY3JpYmUoKGxpc3Q6IFF1ZXJ5TGlzdDxZYUdlb29iamVjdERpcmVjdGl2ZT4pID0+IHtcbiAgICAgICAgbGlzdC5mb3JFYWNoKChnZW9PYmplY3QpID0+IHtcbiAgICAgICAgICBpZiAoIWdlb09iamVjdC5pZCkge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgKGNsdXN0ZXJlciBhcyBhbnkpLmFkZChnZW9PYmplY3QuY3JlYXRlR2VvT2JqZWN0KG1hcCwgY2x1c3RlcmVyKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5fc3ViLmFkZChnZW9PYmplY3RzU3ViKTtcblxuICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG5cbiAgICByZXR1cm4gY2x1c3RlcmVyO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIENsdXN0ZXJlciBldmVudHMuXG4gICAqL1xuICBwcml2YXRlIF9hZGRFdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICBjb25zdCBjbHVzdGVyZXIgPSB0aGlzLl9jbHVzdGVyZXI7XG5cbiAgICBjb25zdCBsaXN0ZW5lcnM6IExpc3RlbmVyW10gPSBbXG4gICAgICB7IG5hbWU6ICdoaW50Y2xvc2UnLCBlbWl0dGVyOiB0aGlzLmhpbnRjbG9zZSB9LFxuICAgICAgeyBuYW1lOiAnaGludG9wZW4nLCBlbWl0dGVyOiB0aGlzLmhpbnRvcGVuIH0sXG4gICAgICB7IG5hbWU6ICdtYXBjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnb3B0aW9uc2NoYW5nZScsIGVtaXR0ZXI6IHRoaXMub3B0aW9uc2NoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAncGFyZW50Y2hhbmdlJywgZW1pdHRlcjogdGhpcy5wYXJlbnRjaGFuZ2UgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IGNsdXN0ZXJlcixcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBjbHVzdGVyZXIuZXZlbnRzLmFkZChsaXN0ZW5lci5uYW1lLCAoZTogeW1hcHMuRXZlbnQpID0+XG4gICAgICAgIGxpc3RlbmVyLnJ1bk91dHNpZGVBbmd1bGFyXG4gICAgICAgICAgPyB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSlcbiAgICAgICAgICA6IHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iXX0=

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY29udHJvbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2RpcmVjdGl2ZXMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUl2Qjs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFrQjdCLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBUG5DOztXQUVHO1FBQ2MsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO0lBSXBCLENBQUM7SUFFdkM7OztPQUdHO0lBQ0ksYUFBYTtRQUNsQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUU1Qjs7V0FFRztRQUNILE1BQU0sT0FBTyxHQUFHLElBQUssS0FBSyxDQUFDLE9BQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBRXhCLGtEQUFrRDtRQUNsRCxJQUNFLElBQUksQ0FBQyxJQUFJLEtBQUssWUFBWTtZQUMxQixJQUFJLENBQUMsVUFBVTtZQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUNyQjtZQUNBLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsbUJBQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUcsQ0FBQztTQUM1RDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFcEUsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUUzQixNQUFNLElBQUksS0FBSyxDQUNiLHdJQUF3SSxDQUN6SSxDQUFDO0lBQ0osQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQ2pELE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7OztZQTlERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7YUFDdkI7OztZQWZDLE1BQU07OzttQkFvQkwsS0FBSzt5QkFLTCxLQUFLO29CQUtMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgWWFDb250cm9sVHlwZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29udHJvbC10eXBlJztcbmltcG9ydCB7IFlhUmVhZHlFdmVudCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZXZlbnQnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSBmb3IgY3JlYXRpbmcgYW5kIG1hbmFnaW5nIGNvbnRyb2xzIG9uIHRoZSBtYXAuXG4gKlxuICogQGV4YW1wbGUgYDx5YS1jb250cm9sIHR5cGU9XCJSb3V0ZVBhbmVsXCIgW3BhcmFtZXRlcnNdPVwieyBvcHRpb25zOiB7IGZsb2F0OiAncmlnaHQnIH0gfVwiPjwveWEtY29udHJvbD5gLlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9kZHVicmF2YS5naXRodWIuaW8vYW5ndWxhcjgteWFuZGV4LW1hcHMvIy9kaXJlY3RpdmVzL2NvbnRyb2x9XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3lhLWNvbnRyb2wnLFxufSlcbmV4cG9ydCBjbGFzcyBZYUNvbnRyb2xEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAvKipcbiAgICogQ29udHJvbCB0eXBlLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHR5cGU6IFlhQ29udHJvbFR5cGU7XG5cbiAgLyoqXG4gICAqIFBhcmFtZXRlcnMgZm9yIHRoZSBDb250cm9sLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHBhcmFtZXRlcnM6IGFueTtcblxuICAvKipcbiAgICogQ29udHJvbCBpbnN0YW5jZSBpcyBjcmVhdGVkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PigpO1xuXG4gIHByaXZhdGUgX2NvbnRyb2w6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge31cblxuICAvKipcbiAgICogQ3JlYXRlcyBjb250cm9sXG4gICAqIEByZXR1cm5zIEluc3RhbmNlIG9mIGNyZWF0ZWQgY29udHJvbFxuICAgKi9cbiAgcHVibGljIGNyZWF0ZUNvbnRyb2woKTogYW55IHtcbiAgICB0aGlzLl9jaGVja1JlcXVpcmVkSW5wdXRzKCk7XG5cbiAgICAvKipcbiAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgKi9cbiAgICBjb25zdCBjb250cm9sID0gbmV3ICh5bWFwcy5jb250cm9sIGFzIGFueSlbdGhpcy50eXBlXSh0aGlzLnBhcmFtZXRlcnMpO1xuICAgIHRoaXMuX2NvbnRyb2wgPSBjb250cm9sO1xuXG4gICAgLy8gUm91dGVQYW5lbCBpZ25vcmVzIHN0YXRlIGluIHBhcmFtZXRlcnMuIEFQSSBidWdcbiAgICBpZiAoXG4gICAgICB0aGlzLnR5cGUgPT09ICdSb3V0ZVBhbmVsJyAmJlxuICAgICAgdGhpcy5wYXJhbWV0ZXJzICYmXG4gICAgICB0aGlzLnBhcmFtZXRlcnMuc3RhdGVcbiAgICApIHtcbiAgICAgIGNvbnRyb2wucm91dGVQYW5lbC5zdGF0ZS5zZXQoeyAuLi50aGlzLnBhcmFtZXRlcnMuc3RhdGUgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBjb250cm9sIH0pKTtcblxuICAgIHJldHVybiBjb250cm9sO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fY29udHJvbCkgcmV0dXJuO1xuXG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJDb250cm9sIGRvZXNuJ3Qgc3VwcG9ydCBkeW5hbWljIGNvbmZpZ3VhcnRpb24uIFlvdSBjYW4gY29uZmlnIGl0IG1hbnVhbGx5IHVzaW5nIHltYXBzIG9yIHJlY3JlYXRlIHRoZSBjb21wb25lbnQgd2l0aCBuZXcgY29uZmlndXJhdGlvblwiLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkSW5wdXRzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IHVuZGVmaW5lZCB8fCB0aGlzLnR5cGUgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVHlwZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtY29udHJvbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2RpcmVjdGl2ZXMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUl2Qjs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxrQkFBa0I7SUFrQjdCLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBUG5DOztXQUVHO1FBQ2MsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO0lBSXBCLENBQUM7SUFFdkM7OztPQUdHO0lBQ0ksYUFBYTtRQUNsQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUU1Qjs7V0FFRztRQUNILE1BQU0sT0FBTyxHQUFHLElBQUssS0FBSyxDQUFDLE9BQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBRXhCLGtEQUFrRDtRQUNsRCxJQUNFLElBQUksQ0FBQyxJQUFJLEtBQUssWUFBWTtZQUMxQixJQUFJLENBQUMsVUFBVTtZQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUNyQjtZQUNBLE9BQU8sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsbUJBQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUcsQ0FBQztTQUM1RDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFcEUsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUUzQixNQUFNLElBQUksS0FBSyxDQUNiLHdJQUF3SSxDQUN6SSxDQUFDO0lBQ0osQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQ2pELE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7OztZQTlERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7YUFDdkI7OztZQWZDLE1BQU07OzttQkFvQkwsS0FBSzt5QkFLTCxLQUFLO29CQUtMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgWWFDb250cm9sVHlwZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29udHJvbC10eXBlJztcbmltcG9ydCB7IFlhUmVhZHlFdmVudCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZXZlbnQnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSBmb3IgY3JlYXRpbmcgYW5kIG1hbmFnaW5nIGNvbnRyb2xzIG9uIHRoZSBtYXAuXG4gKlxuICogQGV4YW1wbGUgYDx5YS1jb250cm9sIHR5cGU9XCJSb3V0ZVBhbmVsXCIgW3BhcmFtZXRlcnNdPVwieyBvcHRpb25zOiB7IGZsb2F0OiAncmlnaHQnIH0gfVwiPjwveWEtY29udHJvbD5gLlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9kZHVicmF2YS5naXRodWIuaW8vYW5ndWxhcjgteWFuZGV4LW1hcHMvIy9kaXJlY3RpdmVzL2NvbnRyb2x9XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3lhLWNvbnRyb2wnLFxufSlcbmV4cG9ydCBjbGFzcyBZYUNvbnRyb2xEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAvKipcbiAgICogQ29udHJvbCB0eXBlLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHR5cGU6IFlhQ29udHJvbFR5cGU7XG5cbiAgLyoqXG4gICAqIFBhcmFtZXRlcnMgZm9yIHRoZSBDb250cm9sLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHBhcmFtZXRlcnM6IGFueTtcblxuICAvKipcbiAgICogQ29udHJvbCBpbnN0YW5jZSBpcyBjcmVhdGVkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFSZWFkeUV2ZW50PigpO1xuXG4gIHByaXZhdGUgX2NvbnRyb2w6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge31cblxuICAvKipcbiAgICogQ3JlYXRlcyBjb250cm9sXG4gICAqIEByZXR1cm5zIEluc3RhbmNlIG9mIGNyZWF0ZWQgY29udHJvbFxuICAgKi9cbiAgcHVibGljIGNyZWF0ZUNvbnRyb2woKTogYW55IHtcbiAgICB0aGlzLl9jaGVja1JlcXVpcmVkSW5wdXRzKCk7XG5cbiAgICAvKipcbiAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgKi9cbiAgICBjb25zdCBjb250cm9sID0gbmV3ICh5bWFwcy5jb250cm9sIGFzIGFueSlbdGhpcy50eXBlXSh0aGlzLnBhcmFtZXRlcnMpO1xuICAgIHRoaXMuX2NvbnRyb2wgPSBjb250cm9sO1xuXG4gICAgLy8gUm91dGVQYW5lbCBpZ25vcmVzIHN0YXRlIGluIHBhcmFtZXRlcnMuIEFQSSBidWdcbiAgICBpZiAoXG4gICAgICB0aGlzLnR5cGUgPT09ICdSb3V0ZVBhbmVsJyAmJlxuICAgICAgdGhpcy5wYXJhbWV0ZXJzICYmXG4gICAgICB0aGlzLnBhcmFtZXRlcnMuc3RhdGVcbiAgICApIHtcbiAgICAgIGNvbnRyb2wucm91dGVQYW5lbC5zdGF0ZS5zZXQoeyAuLi50aGlzLnBhcmFtZXRlcnMuc3RhdGUgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBjb250cm9sIH0pKTtcblxuICAgIHJldHVybiBjb250cm9sO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fY29udHJvbCkgcmV0dXJuO1xuXG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJDb250cm9sIGRvZXNuJ3Qgc3VwcG9ydCBkeW5hbWljIGNvbmZpZ3VhcnRpb24uIFlvdSBjYW4gY29uZmlnIGl0IG1hbnVhbGx5IHVzaW5nIHltYXBzIG9yIHJlY3JlYXRlIHRoZSBjb21wb25lbnQgd2l0aCBuZXcgY29uZmlndXJhdGlvblwiLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkSW5wdXRzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IHVuZGVmaW5lZCB8fCB0aGlzLnR5cGUgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVHlwZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxufVxuIl19

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy95YS1nZW9vYmplY3QveWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRTs7Ozs7O0dBTUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBdUsvQixZQUFvQixPQUFlO1FBQWYsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQTFKbkM7O1dBRUc7UUFDYyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFMUQ7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUxRDs7V0FFRztRQUNjLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUvRDs7V0FFRztRQUNjLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXZEOztXQUVHO1FBQ2Msa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTdEOztXQUVHO1FBQ2MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFekQ7O1dBRUc7UUFDYyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV0RDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVHO1FBQ2MsZ0JB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ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaXN0ZW5lciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbGlzdGVuZXInO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGVSYW5kb21JZCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIGZvciBjcmVhdGluZyBhIGdlbyBvYmplY3QuXG4gKiBDYW4gYmUgZGlzcGxheWVkIGFzIGEgcGxhY2VtYXJrLCBwb2x5bGluZSwgcG9seWdvbiwgZXRjLiwgZGVwZW5kaW5nIG9uIHRoZSBnZW9tZXRyeSB0eXBlLlxuICpcbiAqIEBleGFtcGxlIGA8eWEtZ2Vvb2JqZWN0IFtmZWF0dXJlXT1cInsgZ2VvbWV0cnk6IHsgdHlwZTogJ1JlY3RhbmdsZScsIGNvb3JkaW5hdGVzOiBbWzU1LjY2NSwgMzcuNjZdLCBbNTUuNjQsMzcuNTNdXSB9IH1cIj48L3lhLWdlb29iamVjdD5gLlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9kZHVicmF2YS5naXRodWIuaW8vYW5ndWxhcjgteWFuZGV4LW1hcHMvIy9kaXJlY3RpdmVzL2dlb29iamVjdH1cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAneWEtZ2Vvb2JqZWN0Jyxcbn0pXG5leHBvcnQgY2xhc3MgWWFHZW9vYmplY3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBGZWF0dXJlIGZvciB0aGUgR2VvT2JqZWN0LlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0dlb09iamVjdC1kb2NwYWdlLyNHZW9PYmplY3RwYXJhbS1mZWF0dXJlfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGZlYXR1cmU6IGFueTtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIEdlb09iamVjdC5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9HZW9PYmplY3QtZG9jcGFnZS8jR2VvT2JqZWN0cGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiB5bWFwcy5JR2VvT2JqZWN0T3B0aW9ucztcblxuICAvKipcbiAgICogR2VvT2JqZWN0IGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGJhbGxvb24uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25jbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25vcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ1wiIGV2ZW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiZWZvcmVkcmFnID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ3N0YXJ0XCIgZXZlbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJlZm9yZWRyYWdzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY29udGV4dG1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZGJjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRHJhZ2dpbmcgYSBnZW8gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWcgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWdlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIGdlbyBvYmplY3QgZHJhZ2dpbmcuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZHJhZ3N0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgaW4gdGhlIHN0YXRlIG9mIHRoZSBlZGl0b3IgZm9yIHRoZSBnZW8gb2JqZWN0J3MgZ2VvbWV0cnkuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGVkaXRvcnN0YXRlY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnlcbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZ2VvbWV0cnljaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogUHJlc3NpbmcgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VlbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb2ZmIG9mIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VsZWF2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNldXAgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2htb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG9wdGlvbnNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBvdmVybGF5Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcGFyZW50Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJvcGVydGllc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YXdoZWVsID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIC8vIFlhbmRleC5NYXBzIEFQSS5cbiAgcHJpdmF0ZSBfY2x1c3RlcmVyOiB5bWFwcy5DbHVzdGVyZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfZ2VvT2JqZWN0OiB5bWFwcy5HZW9PYmplY3Q7XG5cbiAgcHJpdmF0ZSBfbWFwOiB5bWFwcy5NYXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVHZW9PYmplY3QoY2hhbmdlcyk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBkeW5hbWljIEdlb09iamVjdCBjb25maWd1cmF0aW9uLlxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHByb3ZpZGVzIGl0IHRvIEFQSS5cbiAgICogQHBhcmFtIGNoYW5nZXNcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZUdlb09iamVjdChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgZ2VvT2JqZWN0ID0gdGhpcy5fZ2VvT2JqZWN0O1xuXG4gICAgaWYgKCFnZW9PYmplY3QpIHJldHVybjtcblxuICAgIGNvbnN0IHsgZmVhdHVyZSwgb3B0aW9ucyB9ID0gY2hhbmdlcztcblxuICAgIGlmIChmZWF0dXJlKSB7XG4gICAgICB0aGlzLl9zZXRGZWF0dXJlKGZlYXR1cmUuY3VycmVudFZhbHVlLCBnZW9PYmplY3QpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICBnZW9PYmplY3Qub3B0aW9ucy5zZXQob3B0aW9ucy5jdXJyZW50VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cnVjdHMgc3RhdGUgYW5kIHByb3ZpZGVzIG5ldyB2YWx1ZXMgdG8gQVBJLlxuICAgKiBAcGFyYW0gZmVhdHVyZVxuICAgKiBAcGFyYW0gZ2VvT2JqZWN0XG4gICAqL1xuICBwcml2YXRlIF9zZXRGZWF0dXJlKFxuICAgIGZlYXR1cmU6IHltYXBzLklHZW9PYmplY3RGZWF0dXJlLFxuICAgIGdlb09iamVjdDogeW1hcHMuR2VvT2JqZWN0LFxuICApOiB2b2lkIHtcbiAgICBjb25zdCB7IGdlb21ldHJ5LCBwcm9wZXJ0aWVzIH0gPSBmZWF0dXJlO1xuXG4gICAgaWYgKGdlb21ldHJ5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhlIGdlb21ldHJ5IGNhbid0IGJlIGNoYW5nZWQgYWZ0ZXIgZW50aXR5IGluaXQuIFlvdSBjYW4gc2V0IHRoZW0gbWFudWFsbHkgdXNpbmcgeW1hcHMgb3IgcmVjcmVhdGUgdGhlIEdlb09iamVjdCBuZXcgZmVhdHVyZS5nZW9tZXRyeVwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcGVydGllcykge1xuICAgICAgLyoqXG4gICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAqL1xuICAgICAgKGdlb09iamVjdC5wcm9wZXJ0aWVzIGFzIGFueSkuc2V0KHByb3BlcnRpZXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIEdlb09iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIG1hcCBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIG1hcC5nZW9PYmplY3RzIG9uIEdlb09iamVjdCBkZXN0cm95XG4gICAqIGB0aGlzLm1hcC5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLmdlb09iamVjdCk7YC5cbiAgICogQHBhcmFtIGNsdXN0ZXJlciBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIENsdXN0ZXJlciBvbiBHZW9PYmplY3QgZGVzdHJveVxuICAgKiBgdGhpcy5jbHVzdGVyZXIucmVtb3ZlKHRoaXMuZ2VvT2JqZWN0KTtgLlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZUdlb09iamVjdChcbiAgICBtYXA6IHltYXBzLk1hcCxcbiAgICBjbHVzdGVyZXI/OiB5bWFwcy5DbHVzdGVyZXIsXG4gICk6IHltYXBzLkdlb09iamVjdCB7XG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuXG4gICAgY29uc3QgZ2VvT2JqZWN0ID0gbmV3IHltYXBzLkdlb09iamVjdCh0aGlzLmZlYXR1cmUsIHRoaXMub3B0aW9ucyk7XG4gICAgdGhpcy5pZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcblxuICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogZ2VvT2JqZWN0IH0pKTtcblxuICAgIHRoaXMuX2NsdXN0ZXJlciA9IGNsdXN0ZXJlcjtcbiAgICB0aGlzLl9nZW9PYmplY3QgPSBnZW9PYmplY3Q7XG4gICAgdGhpcy5fbWFwID0gbWFwO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIHJldHVybiBnZW9PYmplY3Q7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkSW5wdXRzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZlYXR1cmUgPT09IHVuZGVmaW5lZCB8fCB0aGlzLmZlYXR1cmUgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmVhdHVyZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGxpc3RlbmVycyBvbiB0aGUgR2VvT2JqZWN0IGV2ZW50cy5cbiAgICovXG4gIHByaXZhdGUgX2FkZEV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IGdlb09iamVjdCA9IHRoaXMuX2dlb09iamVjdDtcblxuICAgIGNvbnN0IGxpc3RlbmVyczogTGlzdGVuZXJbXSA9IFtcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25jbG9zZScsIGVtaXR0ZXI6IHRoaXMuYmFsbG9vbmNsb3NlIH0sXG4gICAgICB7IG5hbWU6ICdiYWxsb29ub3BlbicsIGVtaXR0ZXI6IHRoaXMuYmFsbG9vbm9wZW4gfSxcbiAgICAgIHsgbmFtZTogJ2JlZm9yZWRyYWcnLCBlbWl0dGVyOiB0aGlzLmJlZm9yZWRyYWcgfSxcbiAgICAgIHsgbmFtZTogJ2JlZm9yZWRyYWdzdGFydCcsIGVtaXR0ZXI6IHRoaXMuYmVmb3JlZHJhZ3N0YXJ0IH0sXG4gICAgICB7IG5hbWU6ICdjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFjbGljayB9LFxuICAgICAgeyBuYW1lOiAnY29udGV4dG1lbnUnLCBlbWl0dGVyOiB0aGlzLnlhY29udGV4dG1lbnUgfSxcbiAgICAgIHsgbmFtZTogJ2RiY2xpY2snLCBlbWl0dGVyOiB0aGlzLnlhZGJjbGljayB9LFxuICAgICAgeyBuYW1lOiAnZHJhZycsIGVtaXR0ZXI6IHRoaXMueWFkcmFnIH0sXG4gICAgICB7IG5hbWU6ICdkcmFnZW5kJywgZW1pdHRlcjogdGhpcy55YWRyYWdlbmQgfSxcbiAgICAgIHsgbmFtZTogJ2RyYWdzdGFydCcsIGVtaXR0ZXI6IHRoaXMueWFkcmFnc3RhcnQgfSxcbiAgICAgIHsgbmFtZTogJ2VkaXRvcnN0YXRlY2hhbmdlJywgZW1pdHRlcjogdGhpcy5lZGl0b3JzdGF0ZWNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnZ2VvbWV0cnljaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLmdlb21ldHJ5Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdoaW50Y2xvc2UnLCBlbWl0dGVyOiB0aGlzLmhpbnRjbG9zZSB9LFxuICAgICAgeyBuYW1lOiAnaGludG9wZW4nLCBlbWl0dGVyOiB0aGlzLmhpbnRvcGVuIH0sXG4gICAgICB7IG5hbWU6ICdtYXBjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vkb3duJywgZW1pdHRlcjogdGhpcy55YW1vdXNlZG93biB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbW91c2VlbnRlcicsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMueWFtb3VzZWVudGVyLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWxlYXZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlbGVhdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNlbW92ZScsIGVtaXR0ZXI6IHRoaXMueWFtb3VzZW1vdmUsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZXVwJywgZW1pdHRlcjogdGhpcy55YW1vdXNldXAsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNoZW5kJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoZW5kLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNobW92ZScsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaG1vdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hzdGFydCcsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaHN0YXJ0LFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdvcHRpb25zY2hhbmdlJywgZW1pdHRlcjogdGhpcy5vcHRpb25zY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdvdmVybGF5Y2hhbmdlJywgZW1pdHRlcjogdGhpcy5vdmVybGF5Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwYXJlbnRjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnBhcmVudGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAncHJvcGVydGllc2NoYW5nZScsIGVtaXR0ZXI6IHRoaXMucHJvcGVydGllc2NoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnd2hlZWwnLCBlbWl0dGVyOiB0aGlzLnlhd2hlZWwgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IGdlb09iamVjdCxcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBnZW9PYmplY3QuZXZlbnRzLmFkZChsaXN0ZW5lci5uYW1lLCAoZTogeW1hcHMuRXZlbnQpID0+XG4gICAgICAgIGxpc3RlbmVyLnJ1bk91dHNpZGVBbmd1bGFyXG4gICAgICAgICAgPyB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSlcbiAgICAgICAgICA6IHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIC8qKlxuICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAqL1xuICAgICh0aGlzLl9jbHVzdGVyZXIgYXMgYW55KT8ucmVtb3ZlKHRoaXMuX2dlb09iamVjdCk7XG4gICAgdGhpcy5fbWFwPy5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLl9nZW9PYmplY3QpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvZGlyZWN0aXZlcy95YS1nZW9vYmplY3QveWEtZ2Vvb2JqZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRTs7Ozs7O0dBTUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBdUsvQixZQUFvQixPQUFlO1FBQWYsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQTFKbkM7O1dBRUc7UUFDYyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFMUQ7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUxRDs7V0FFRztRQUNjLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUvRDs7V0FFRztRQUNjLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXZEOztXQUVHO1FBQ2Msa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTdEOztXQUVHO1FBQ2MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFekQ7O1dBRUc7UUFDYyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV0RDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVH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dmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaXN0ZW5lciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbGlzdGVuZXInO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBnZW5lcmF0ZVJhbmRvbUlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2VuZXJhdGVSYW5kb21JZCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIGZvciBjcmVhdGluZyBhIGdlbyBvYmplY3QuXG4gKiBDYW4gYmUgZGlzcGxheWVkIGFzIGEgcGxhY2VtYXJrLCBwb2x5bGluZSwgcG9seWdvbiwgZXRjLiwgZGVwZW5kaW5nIG9uIHRoZSBnZW9tZXRyeSB0eXBlLlxuICpcbiAqIEBleGFtcGxlIGA8eWEtZ2Vvb2JqZWN0IFtmZWF0dXJlXT1cInsgZ2VvbWV0cnk6IHsgdHlwZTogJ1JlY3RhbmdsZScsIGNvb3JkaW5hdGVzOiBbWzU1LjY2NSwgMzcuNjZdLCBbNTUuNjQsMzcuNTNdXSB9IH1cIj48L3lhLWdlb29iamVjdD5gLlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9kZHVicmF2YS5naXRodWIuaW8vYW5ndWxhcjgteWFuZGV4LW1hcHMvIy9kaXJlY3RpdmVzL2dlb29iamVjdH1cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAneWEtZ2Vvb2JqZWN0Jyxcbn0pXG5leHBvcnQgY2xhc3MgWWFHZW9vYmplY3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBGZWF0dXJlIGZvciB0aGUgR2VvT2JqZWN0LlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0dlb09iamVjdC1kb2NwYWdlLyNHZW9PYmplY3RwYXJhbS1mZWF0dXJlfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGZlYXR1cmU6IGFueTtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIEdlb09iamVjdC5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9HZW9PYmplY3QtZG9jcGFnZS8jR2VvT2JqZWN0cGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiB5bWFwcy5JR2VvT2JqZWN0T3B0aW9ucztcblxuICAvKipcbiAgICogR2VvT2JqZWN0IGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGJhbGxvb24uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25jbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25vcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ1wiIGV2ZW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiZWZvcmVkcmFnID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ3N0YXJ0XCIgZXZlbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJlZm9yZWRyYWdzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY29udGV4dG1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZGJjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRHJhZ2dpbmcgYSBnZW8gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWcgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWdlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIGdlbyBvYmplY3QgZHJhZ2dpbmcuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZHJhZ3N0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgaW4gdGhlIHN0YXRlIG9mIHRoZSBlZGl0b3IgZm9yIHRoZSBnZW8gb2JqZWN0J3MgZ2VvbWV0cnkuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGVkaXRvcnN0YXRlY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnlcbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZ2VvbWV0cnljaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogUHJlc3NpbmcgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VlbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb2ZmIG9mIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VsZWF2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNldXAgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2htb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG9wdGlvbnNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBvdmVybGF5Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcGFyZW50Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJvcGVydGllc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YXdoZWVsID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIC8vIFlhbmRleC5NYXBzIEFQSS5cbiAgcHJpdmF0ZSBfY2x1c3RlcmVyOiB5bWFwcy5DbHVzdGVyZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfZ2VvT2JqZWN0OiB5bWFwcy5HZW9PYmplY3Q7XG5cbiAgcHJpdmF0ZSBfbWFwOiB5bWFwcy5NYXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVHZW9PYmplY3QoY2hhbmdlcyk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBkeW5hbWljIEdlb09iamVjdCBjb25maWd1cmF0aW9uLlxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHByb3ZpZGVzIGl0IHRvIEFQSS5cbiAgICogQHBhcmFtIGNoYW5nZXNcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZUdlb09iamVjdChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgZ2VvT2JqZWN0ID0gdGhpcy5fZ2VvT2JqZWN0O1xuXG4gICAgaWYgKCFnZW9PYmplY3QpIHJldHVybjtcblxuICAgIGNvbnN0IHsgZmVhdHVyZSwgb3B0aW9ucyB9ID0gY2hhbmdlcztcblxuICAgIGlmIChmZWF0dXJlKSB7XG4gICAgICB0aGlzLl9zZXRGZWF0dXJlKGZlYXR1cmUuY3VycmVudFZhbHVlLCBnZW9PYmplY3QpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICBnZW9PYmplY3Qub3B0aW9ucy5zZXQob3B0aW9ucy5jdXJyZW50VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZXN0cnVjdHMgc3RhdGUgYW5kIHByb3ZpZGVzIG5ldyB2YWx1ZXMgdG8gQVBJLlxuICAgKiBAcGFyYW0gZmVhdHVyZVxuICAgKiBAcGFyYW0gZ2VvT2JqZWN0XG4gICAqL1xuICBwcml2YXRlIF9zZXRGZWF0dXJlKFxuICAgIGZlYXR1cmU6IHltYXBzLklHZW9PYmplY3RGZWF0dXJlLFxuICAgIGdlb09iamVjdDogeW1hcHMuR2VvT2JqZWN0LFxuICApOiB2b2lkIHtcbiAgICBjb25zdCB7IGdlb21ldHJ5LCBwcm9wZXJ0aWVzIH0gPSBmZWF0dXJlO1xuXG4gICAgaWYgKGdlb21ldHJ5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhlIGdlb21ldHJ5IGNhbid0IGJlIGNoYW5nZWQgYWZ0ZXIgZW50aXR5IGluaXQuIFlvdSBjYW4gc2V0IHRoZW0gbWFudWFsbHkgdXNpbmcgeW1hcHMgb3IgcmVjcmVhdGUgdGhlIEdlb09iamVjdCBuZXcgZmVhdHVyZS5nZW9tZXRyeVwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcGVydGllcykge1xuICAgICAgLyoqXG4gICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAqL1xuICAgICAgKGdlb09iamVjdC5wcm9wZXJ0aWVzIGFzIGFueSkuc2V0KHByb3BlcnRpZXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIEdlb09iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIG1hcCBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIG1hcC5nZW9PYmplY3RzIG9uIEdlb09iamVjdCBkZXN0cm95XG4gICAqIGB0aGlzLm1hcC5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLmdlb09iamVjdCk7YC5cbiAgICogQHBhcmFtIGNsdXN0ZXJlciBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIENsdXN0ZXJlciBvbiBHZW9PYmplY3QgZGVzdHJveVxuICAgKiBgdGhpcy5jbHVzdGVyZXIucmVtb3ZlKHRoaXMuZ2VvT2JqZWN0KTtgLlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZUdlb09iamVjdChcbiAgICBtYXA6IHltYXBzLk1hcCxcbiAgICBjbHVzdGVyZXI/OiB5bWFwcy5DbHVzdGVyZXIsXG4gICk6IHltYXBzLkdlb09iamVjdCB7XG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuXG4gICAgY29uc3QgZ2VvT2JqZWN0ID0gbmV3IHltYXBzLkdlb09iamVjdCh0aGlzLmZlYXR1cmUsIHRoaXMub3B0aW9ucyk7XG4gICAgdGhpcy5pZCA9IGdlbmVyYXRlUmFuZG9tSWQoKTtcblxuICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogZ2VvT2JqZWN0IH0pKTtcblxuICAgIHRoaXMuX2NsdXN0ZXJlciA9IGNsdXN0ZXJlcjtcbiAgICB0aGlzLl9nZW9PYmplY3QgPSBnZW9PYmplY3Q7XG4gICAgdGhpcy5fbWFwID0gbWFwO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIHJldHVybiBnZW9PYmplY3Q7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkSW5wdXRzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZlYXR1cmUgPT09IHVuZGVmaW5lZCB8fCB0aGlzLmZlYXR1cmUgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmVhdHVyZSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGxpc3RlbmVycyBvbiB0aGUgR2VvT2JqZWN0IGV2ZW50cy5cbiAgICovXG4gIHByaXZhdGUgX2FkZEV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IGdlb09iamVjdCA9IHRoaXMuX2dlb09iamVjdDtcblxuICAgIGNvbnN0IGxpc3RlbmVyczogTGlzdGVuZXJbXSA9IFtcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25jbG9zZScsIGVtaXR0ZXI6IHRoaXMuYmFsbG9vbmNsb3NlIH0sXG4gICAgICB7IG5hbWU6ICdiYWxsb29ub3BlbicsIGVtaXR0ZXI6IHRoaXMuYmFsbG9vbm9wZW4gfSxcbiAgICAgIHsgbmFtZTogJ2JlZm9yZWRyYWcnLCBlbWl0dGVyOiB0aGlzLmJlZm9yZWRyYWcgfSxcbiAgICAgIHsgbmFtZTogJ2JlZm9yZWRyYWdzdGFydCcsIGVtaXR0ZXI6IHRoaXMuYmVmb3JlZHJhZ3N0YXJ0IH0sXG4gICAgICB7IG5hbWU6ICdjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFjbGljayB9LFxuICAgICAgeyBuYW1lOiAnY29udGV4dG1lbnUnLCBlbWl0dGVyOiB0aGlzLnlhY29udGV4dG1lbnUgfSxcbiAgICAgIHsgbmFtZTogJ2RiY2xpY2snLCBlbWl0dGVyOiB0aGlzLnlhZGJjbGljayB9LFxuICAgICAgeyBuYW1lOiAnZHJhZycsIGVtaXR0ZXI6IHRoaXMueWFkcmFnIH0sXG4gICAgICB7IG5hbWU6ICdkcmFnZW5kJywgZW1pdHRlcjogdGhpcy55YWRyYWdlbmQgfSxcbiAgICAgIHsgbmFtZTogJ2RyYWdzdGFydCcsIGVtaXR0ZXI6IHRoaXMueWFkcmFnc3RhcnQgfSxcbiAgICAgIHsgbmFtZTogJ2VkaXRvcnN0YXRlY2hhbmdlJywgZW1pdHRlcjogdGhpcy5lZGl0b3JzdGF0ZWNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnZ2VvbWV0cnljaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLmdlb21ldHJ5Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdoaW50Y2xvc2UnLCBlbWl0dGVyOiB0aGlzLmhpbnRjbG9zZSB9LFxuICAgICAgeyBuYW1lOiAnaGludG9wZW4nLCBlbWl0dGVyOiB0aGlzLmhpbnRvcGVuIH0sXG4gICAgICB7IG5hbWU6ICdtYXBjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vkb3duJywgZW1pdHRlcjogdGhpcy55YW1vdXNlZG93biB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbW91c2VlbnRlcicsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMueWFtb3VzZWVudGVyLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWxlYXZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlbGVhdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNlbW92ZScsIGVtaXR0ZXI6IHRoaXMueWFtb3VzZW1vdmUsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZXVwJywgZW1pdHRlcjogdGhpcy55YW1vdXNldXAsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNoZW5kJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoZW5kLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNobW92ZScsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaG1vdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hzdGFydCcsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaHN0YXJ0LFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdvcHRpb25zY2hhbmdlJywgZW1pdHRlcjogdGhpcy5vcHRpb25zY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdvdmVybGF5Y2hhbmdlJywgZW1pdHRlcjogdGhpcy5vdmVybGF5Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwYXJlbnRjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnBhcmVudGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAncHJvcGVydGllc2NoYW5nZScsIGVtaXR0ZXI6IHRoaXMucHJvcGVydGllc2NoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnd2hlZWwnLCBlbWl0dGVyOiB0aGlzLnlhd2hlZWwgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IGdlb09iamVjdCxcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBnZW9PYmplY3QuZXZlbnRzLmFkZChsaXN0ZW5lci5uYW1lLCAoZTogeW1hcHMuRXZlbnQpID0+XG4gICAgICAgIGxpc3RlbmVyLnJ1bk91dHNpZGVBbmd1bGFyXG4gICAgICAgICAgPyB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSlcbiAgICAgICAgICA6IHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gbGlzdGVuZXIuZW1pdHRlci5lbWl0KGZuKGUpKSksXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIC8qKlxuICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAqL1xuICAgICh0aGlzLl9jbHVzdGVyZXIgYXMgYW55KT8ucmVtb3ZlKHRoaXMuX2dlb09iamVjdCk7XG4gICAgdGhpcy5fbWFwPy5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLl9nZW9PYmplY3QpO1xuICB9XG59XG4iXX0=

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbXVsdGlyb3V0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2RpcmVjdGl2ZXMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVoRTs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxxQkFBcUI7SUE0SmhDLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBekluQzs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFakU7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFL0Q7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV2RDs7V0FFRztRQUNjLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU3RDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVHO1FBQ2MsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTlEOztXQUVHO1FB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RUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDekQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7O1FBQ2hCLE1BQUEsSUFBSSxDQUFDLElBQUksMENBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO0lBQ2pELENBQUM7OztZQS9URixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7YUFDMUI7OztZQWxCQyxNQUFNOzs7OEJBd0JMLEtBQUs7b0JBS0wsS0FBSztzQkFPTCxLQUFLO29CQUtMLE1BQU07Z0NBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07OEJBS04sTUFBTTsyQkFLTixNQUFNO3NCQUtOLE1BQU07NEJBS04sTUFBTTt3QkFLTixNQUFNOzZCQUtOLE1BQU07d0JBS04sTUFBTTswQkFLTixNQUFNOzJCQUtOLE1BQU07MkJBS04sTUFBTTswQkFLTixNQUFNO3dCQUtOLE1BQU07NEJBS04sTUFBTTs2QkFLTixNQUFNOzhCQUtOLE1BQU07NEJBS04sTUFBTTs0QkFLTixNQUFNOzJCQUtOLE1BQU07Z0NBS04sTUFBTTsrQkFLTixNQUFNO3FCQUtOLE1BQU07c0JBS04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9saXN0ZW5lcic7XG5pbXBvcnQgeyBZYUV2ZW50LCBZYVJlYWR5RXZlbnQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2V2ZW50JztcbmltcG9ydCB7IGdlbmVyYXRlUmFuZG9tSWQgfSBmcm9tICcuLi8uLi91dGlscy9nZW5lcmF0ZVJhbmRvbUlkJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgZm9yIGNyZWF0aW5nIE11bHRpLXJvdXRlIG9uIHRoZSBtYXAuXG4gKlxuICogQGV4YW1wbGUgYDx5YS1tdWx0aXJvdXRlIFtyZWZlcmVuY2VQb2ludHNdPVwiW1s1NS43NTE5NTIsIDM3LjYwMDczOV0sICfQmtGA0LDRgdC90YvQtSDQstC+0YDQvtGC0LAsINCc0L7RgdC60LLQsCddXCI+PC95YS1tdWx0aXJvdXRlPmAuXG4gKiBAc2VlIHtAbGluayBodHRwczovL2RkdWJyYXZhLmdpdGh1Yi5pby9hbmd1bGFyOC15YW5kZXgtbWFwcy8jL2RpcmVjdGl2ZXMvbXVsdGlyb3V0ZX1cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAneWEtbXVsdGlyb3V0ZScsXG59KVxuZXhwb3J0IGNsYXNzIFlhTXVsdGlyb3V0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFJlZmVyZW5jZSBwb2ludHMgZm9yIHRoZSBtdWx0aS1yb3V0ZS5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9JTXVsdGlSb3V0ZVJlZmVyZW5jZVBvaW50LWRvY3BhZ2UvfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHJlZmVyZW5jZVBvaW50czogeW1hcHMuSU11bHRpUm91dGVSZWZlcmVuY2VQb2ludFtdO1xuXG4gIC8qKlxuICAgKiBNb2RlbCBkZXNjcmlwdGlvbiBvYmplY3Qgb2YgYSBtdWx0aXJvdXRlLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG1vZGVsOiB5bWFwcy5JTXVsdGlSb3V0ZU1vZGVsSnNvbjtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIG11bHRpcm91dGUuXG4gICAqIEBzZWVcbiAgICoge0BsaW5rIGh0dHBzOi8vdGVjaC55YW5kZXgucnUvbWFwcy9qc2FwaS9kb2MvMi4xL3JlZi9yZWZlcmVuY2UvbXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZS1kb2NwYWdlLyNtdWx0aVJvdXRlci5NdWx0aVJvdXRlcGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiBhbnk7XG5cbiAgLyoqXG4gICAqIE11bHRpcm91dGUgaW5zdGFuY2UgaXMgY3JlYXRlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyPFlhUmVhZHlFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2hhbmdlIHRvIHRoZSBhY3RpdmUgcm91dGUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGFjdGl2ZXJvdXRlY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDbG9zaW5nIHRoZSBiYWxsb29uLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiYWxsb29uY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE9wZW5pbmcgYSBiYWxsb29uIG9uIGEgbWFwLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiYWxsb29ub3BlbiA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIGV2ZW50IG9jY3VycyBhdCB0aGUgdGltZSBvZiBzZXR0aW5nIHRoZSBtYXAgY2VudGVyIGFuZCBpdHMgem9vbSBsZXZlbCBmb3Igb3B0aW1hbCBkaXNwbGF5IG9mIHRoZSBtdWx0aS1yb3V0ZS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYm91bmRzYXV0b2FwcGx5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2luZyBjb29yZGluYXRlcyBvZiB0aGUgZ2VvZ3JhcGhpY2FsIGFyZWEgY292ZXJpbmcgdGhlIG11bHRpLXJvdXRlLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBib3VuZHNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFNpbmdsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENhbGxzIHRoZSBlbGVtZW50J3MgY29udGV4dCBtZW51LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWNvbnRleHRtZW51ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBEb3VibGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRiY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBnZW9tZXRyeS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZ2VvbWV0cnljaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE1hcCByZWZlcmVuY2UgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbWFwY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQcmVzc2luZyB0aGUgbW91c2UgYnV0dG9uIG92ZXIgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWRvd24gPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFBvaW50aW5nIHRoZSBjdXJzb3IgYXQgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWVudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvZmYgb2YgdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFtb3VzZWxlYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNb3ZpbmcgdGhlIGN1cnNvciBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vtb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBMZXR0aW5nIGdvIG9mIHRoZSBtb3VzZSBidXR0b24gb3ZlciBhbiBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2V1cCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRW5kIG9mIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2hlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFJlcGVhdGluZyBldmVudCBkdXJpbmcgbXVsdGl0b3VjaC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgbXVsdGl0b3VjaG1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2hzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2hhbmdlIHRvIHRoZSBvYmplY3Qgb3B0aW9ucy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2hhbmdlIHRvIHRoZSBnZW8gb2JqZWN0IG92ZXJsYXkuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG92ZXJsYXljaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXJlbnQgb2JqZWN0IHJlZmVyZW5jZSBjaGFuZ2VkLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBwYXJlbnRjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5naW5nIHBpeGVsIGNvb3JkaW5hdGVzIG9mIHRoZSBhcmVhIGNvdmVyaW5nIHRoZSBtdWx0aS1yb3V0ZS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcGl4ZWxib3VuZHNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBkYXRhLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBwcm9wZXJ0aWVzY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBVcGRhdGluZyB0aGUgbXVsdGktcm91dGUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHVwZGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YXdoZWVsID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIC8vIFlhbmRleC5NYXBzIEFQSS5cbiAgcHJpdmF0ZSBfbWFwOiB5bWFwcy5NYXA7XG5cbiAgcHJpdmF0ZSBfbXVsdGlyb3V0ZTogeW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge31cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuX3VwZGF0ZU11bHRpcm91dGUoY2hhbmdlcyk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBkeW5hbWljIE1pbHRpcm91dGUgY29uZmlndXJhdGlvbi5cbiAgICogSGFuZGxlcyBpbnB1dCBjaGFuZ2VzIGFuZCBwcm92aWRlcyBpdCB0byBBUEkuXG4gICAqIEBwYXJhbSBjaGFuZ2VzXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVNdWx0aXJvdXRlKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCBtdWx0aXJvdXRlID0gdGhpcy5fbXVsdGlyb3V0ZTtcblxuICAgIGlmICghbXVsdGlyb3V0ZSkgcmV0dXJuO1xuXG4gICAgY29uc3QgeyByZWZlcmVuY2VQb2ludHMsIG1vZGVsLCBvcHRpb25zIH0gPSBjaGFuZ2VzO1xuXG4gICAgaWYgKHJlZmVyZW5jZVBvaW50cykge1xuICAgICAgbXVsdGlyb3V0ZS5tb2RlbC5zZXRSZWZlcmVuY2VQb2ludHMocmVmZXJlbmNlUG9pbnRzLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuXG4gICAgaWYgKG1vZGVsKSB7XG4gICAgICB0aGlzLl9zZXRNb2RlbChtb2RlbC5jdXJyZW50VmFsdWUsIG11bHRpcm91dGUpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICAvKipcbiAgICAgICAqIFdyb25nIHR5cGluZ3MgaW4gRGVmaW5pdGVseVR5cGVkLlxuICAgICAgICovXG4gICAgICAobXVsdGlyb3V0ZS5vcHRpb25zIGFzIGFueSkuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGVzdHJ1Y3RzIHN0YXRlIGFuZCBwcm92aWRlcyBuZXcgdmFsdWVzIHRvIEFQSS5cbiAgICogQHBhcmFtIG1vZGVsXG4gICAqIEBwYXJhbSBtdWx0aXJvdXRlXG4gICAqL1xuICBwcml2YXRlIF9zZXRNb2RlbChcbiAgICBtb2RlbDogeW1hcHMuSU11bHRpUm91dGVNb2RlbEpzb24sXG4gICAgbXVsdGlyb3V0ZTogeW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZSxcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgeyByZWZlcmVuY2VQb2ludHMsIHBhcmFtcyB9ID0gbW9kZWw7XG5cbiAgICBpZiAocmVmZXJlbmNlUG9pbnRzKSB7XG4gICAgICBtdWx0aXJvdXRlLm1vZGVsLnNldFJlZmVyZW5jZVBvaW50cyhyZWZlcmVuY2VQb2ludHMpO1xuICAgIH1cblxuICAgIGlmIChwYXJhbXMpIHtcbiAgICAgIG11bHRpcm91dGUubW9kZWwuc2V0UGFyYW1zKHBhcmFtcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgTXVsdGlyb3V0ZS5cbiAgICpcbiAgICogQHBhcmFtIG1hcCBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIG1hcC5nZW9PYmplY3RzIG9uIE11bHRpcm91dGUgZGVzdHJveVxuICAgKiBgdGhpcy5tYXAuZ2VvT2JqZWN0cy5yZW1vdmUodGhpcy5tdWx0aXJvdXRlKTtgLlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZU11bHRpcm91dGUobWFwOiB5bWFwcy5NYXApOiB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlIHtcbiAgICB0aGlzLl9jaGVja1JlcXVpcmVkSW5wdXRzKCk7XG5cbiAgICBjb25zdCBtdWx0aXJvdXRlID0gbmV3IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGUoXG4gICAgICB7IC4uLnRoaXMubW9kZWwsIHJlZmVyZW5jZVBvaW50czogdGhpcy5yZWZlcmVuY2VQb2ludHMgfSxcbiAgICAgIHRoaXMub3B0aW9ucyxcbiAgICApO1xuXG4gICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnJlYWR5LmVtaXQoeyB5bWFwcywgdGFyZ2V0OiBtdWx0aXJvdXRlIH0pKTtcblxuICAgIHRoaXMuaWQgPSBnZW5lcmF0ZVJhbmRvbUlkKCk7XG4gICAgdGhpcy5fbWFwID0gbWFwO1xuICAgIHRoaXMuX211bHRpcm91dGUgPSBtdWx0aXJvdXRlO1xuXG4gICAgdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKTtcblxuICAgIHJldHVybiBtdWx0aXJvdXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tSZXF1aXJlZElucHV0cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZlcmVuY2VQb2ludHMgPT09IHVuZGVmaW5lZCB8fCB0aGlzLnJlZmVyZW5jZVBvaW50cyA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdSZWZlcmVuY2VQb2ludHMgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBsaXN0ZW5lcnMgb24gdGhlIE11bHRpcm91dGUgZXZlbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgbXVsdGlyb3V0ZSA9IHRoaXMuX211bHRpcm91dGU7XG5cbiAgICBjb25zdCBsaXN0ZW5lcnM6IExpc3RlbmVyW10gPSBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhY3RpdmVyb3V0ZWNoYW5nZScsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMuYWN0aXZlcm91dGVjaGFuZ2UsXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiAnYmFsbG9vbmNsb3NlJywgZW1pdHRlcjogdGhpcy5iYWxsb29uY2xvc2UgfSxcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25vcGVuJywgZW1pdHRlcjogdGhpcy5iYWxsb29ub3BlbiB9LFxuICAgICAgeyBuYW1lOiAnYm91bmRzYXV0b2FwcGx5JywgZW1pdHRlcjogdGhpcy5ib3VuZHNhdXRvYXBwbHkgfSxcbiAgICAgIHsgbmFtZTogJ2JvdW5kc2NoYW5nZScsIGVtaXR0ZXI6IHRoaXMuYm91bmRzY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFjbGljayB9LFxuICAgICAgeyBuYW1lOiAnY29udGV4dG1lbnUnLCBlbWl0dGVyOiB0aGlzLnlhY29udGV4dG1lbnUgfSxcbiAgICAgIHsgbmFtZTogJ2RiY2xpY2snLCBlbWl0dGVyOiB0aGlzLnlhZGJjbGljayB9LFxuXG4gICAgICB7IG5hbWU6ICdnZW9tZXRyeWNoYW5nZScsIGVtaXR0ZXI6IHRoaXMuZ2VvbWV0cnljaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ21hcGNoYW5nZScsIGVtaXR0ZXI6IHRoaXMubWFwY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZWRvd24nLCBlbWl0dGVyOiB0aGlzLnlhbW91c2Vkb3duIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWVudGVyJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlZW50ZXIsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ21vdXNlbGVhdmUnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLnlhbW91c2VsZWF2ZSxcbiAgICAgICAgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUsXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vtb3ZlJywgZW1pdHRlcjogdGhpcy55YW1vdXNlbW92ZSwgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNldXAnLCBlbWl0dGVyOiB0aGlzLnlhbW91c2V1cCwgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hlbmQnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLm11bHRpdG91Y2hlbmQsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2htb3ZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNobW92ZSxcbiAgICAgICAgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbXVsdGl0b3VjaHN0YXJ0JyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoc3RhcnQsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ29wdGlvbnNjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm9wdGlvbnNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ292ZXJsYXljaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm92ZXJsYXljaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3BhcmVudGNoYW5nZScsIGVtaXR0ZXI6IHRoaXMucGFyZW50Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwaXhlbGJvdW5kc2NoYW5nZScsIGVtaXR0ZXI6IHRoaXMucGl4ZWxib3VuZHNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3Byb3BlcnRpZXNjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnByb3BlcnRpZXNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3VwZGF0ZScsIGVtaXR0ZXI6IHRoaXMudXBkYXRlIH0sXG4gICAgICB7IG5hbWU6ICd3aGVlbCcsIGVtaXR0ZXI6IHRoaXMueWF3aGVlbCB9LFxuICAgIF07XG5cbiAgICBjb25zdCBmbiA9IChldmVudDogeW1hcHMuRXZlbnQpOiBZYUV2ZW50ID0+ICh7XG4gICAgICBldmVudCxcbiAgICAgIHRhcmdldDogbXVsdGlyb3V0ZSxcbiAgICAgIHltYXBzLFxuICAgIH0pO1xuXG4gICAgbGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICBtdWx0aXJvdXRlLmV2ZW50cy5hZGQobGlzdGVuZXIubmFtZSwgKGU6IHltYXBzLkV2ZW50KSA9PlxuICAgICAgICBsaXN0ZW5lci5ydW5PdXRzaWRlQW5ndWxhclxuICAgICAgICAgID8gdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IGxpc3RlbmVyLmVtaXR0ZXIuZW1pdChmbihlKSkpXG4gICAgICAgICAgOiB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IGxpc3RlbmVyLmVtaXR0ZXIuZW1pdChmbihlKSkpLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9tYXA/Lmdlb09iamVjdHMucmVtb3ZlKHRoaXMuX211bHRpcm91dGUpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtbXVsdGlyb3V0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2RpcmVjdGl2ZXMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUdoRTs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxxQkFBcUI7SUFpS2hDLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBekluQzs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFakU7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFM0Q7O1dBRUc7UUFDYyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFL0Q7O1dBRUc7UUFDYyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFNUQ7O1dBRUc7UUFDYyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV2RDs7V0FFRztRQUNjLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU3RDs7V0FFRztRQUNjLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXpEOztXQUVHO1FBQ2MsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTlE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QUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDekQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7O1FBQ2hCLE1BQUEsSUFBSSxDQUFDLElBQUksMENBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO0lBQ2pELENBQUM7OztZQXBVRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7YUFDMUI7OztZQW5CQyxNQUFNOzs7OEJBMEJMLEtBQUs7b0JBTUwsS0FBSztzQkFVTCxLQUFLO29CQUtMLE1BQU07Z0NBS04sTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07OEJBS04sTUFBTTsyQkFLTixNQUFNO3NCQUtOLE1BQU07NEJBS04sTUFBTTt3QkFLTixNQUFNOzZCQUtOLE1BQU07d0JBS04sTUFBTTswQkFLTixNQUFNOzJCQUtOLE1BQU07MkJBS04sTUFBTTswQkFLTixNQUFNO3dCQUtOLE1BQU07NEJBS04sTUFBTTs2QkFLTixNQUFNOzhCQUtOLE1BQU07NEJBS04sTUFBTTs0QkFLTixNQUFNOzJCQUtOLE1BQU07Z0NBS04sTUFBTTsrQkFLTixNQUFNO3FCQUtOLE1BQU07c0JBS04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9saXN0ZW5lcic7XG5pbXBvcnQgeyBZYUV2ZW50LCBZYVJlYWR5RXZlbnQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2V2ZW50JztcbmltcG9ydCB7IGdlbmVyYXRlUmFuZG9tSWQgfSBmcm9tICcuLi8uLi91dGlscy9nZW5lcmF0ZVJhbmRvbUlkJztcbmltcG9ydCB7IE9wdGlvbmFsIH0gZnJvbSAnLi4vLi4vdXRpbHMvb3B0aW9uYWwnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSBmb3IgY3JlYXRpbmcgTXVsdGktcm91dGUgb24gdGhlIG1hcC5cbiAqXG4gKiBAZXhhbXBsZSBgPHlhLW11bHRpcm91dGUgW3JlZmVyZW5jZVBvaW50c109XCJbWzU1Ljc1MTk1MiwgMzcuNjAwNzM5XSwgJ9Ca0YDQsNGB0L3Ri9C1INCy0L7RgNC+0YLQsCwg0JzQvtGB0LrQstCwJ11cIj48L3lhLW11bHRpcm91dGU+YC5cbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvZGlyZWN0aXZlcy9tdWx0aXJvdXRlfVxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICd5YS1tdWx0aXJvdXRlJyxcbn0pXG5leHBvcnQgY2xhc3MgWWFNdWx0aXJvdXRlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogUmVmZXJlbmNlIHBvaW50cyBmb3IgdGhlIG11bHRpLXJvdXRlLlxuICAgKiBTaG9ydGhhbmQgZm9yIFttb2RlbF09XCJ7IHJlZmVyZW5jZVBvaW50czogWzAsIDBdIH1cIlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL0lNdWx0aVJvdXRlUmVmZXJlbmNlUG9pbnQtZG9jcGFnZS99XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcmVmZXJlbmNlUG9pbnRzOiB5bWFwcy5JTXVsdGlSb3V0ZVJlZmVyZW5jZVBvaW50W107XG5cbiAgLyoqXG4gICAqIE1vZGVsIGRlc2NyaXB0aW9uIG9iamVjdCBvZiBhIG11bHRpcm91dGUuXG4gICAqIHJlZmVyZW5jZVBvaW50cyBpbnB1dCBpcyByZXF1aXJlZCBzbyBwcm9wIGNhbiBiZSBpZ25vcmVkXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbW9kZWw6IE9wdGlvbmFsPFxuICAgIHltYXBzLklNdWx0aVJvdXRlTW9kZWxKc29uLFxuICAgICdyZWZlcmVuY2VQb2ludHMnXG4gID47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBtdWx0aXJvdXRlLlxuICAgKiBAc2VlXG4gICAqIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL211bHRpUm91dGVyLk11bHRpUm91dGUtZG9jcGFnZS8jbXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZXBhcmFtLW9wdGlvbnN9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgb3B0aW9uczogYW55O1xuXG4gIC8qKlxuICAgKiBNdWx0aXJvdXRlIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgYWN0aXZlIHJvdXRlLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBhY3RpdmVyb3V0ZWNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2xvc2luZyB0aGUgYmFsbG9vbi5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYmFsbG9vbmNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBPcGVuaW5nIGEgYmFsbG9vbiBvbiBhIG1hcC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYmFsbG9vbm9wZW4gPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSBldmVudCBvY2N1cnMgYXQgdGhlIHRpbWUgb2Ygc2V0dGluZyB0aGUgbWFwIGNlbnRlciBhbmQgaXRzIHpvb20gbGV2ZWwgZm9yIG9wdGltYWwgZGlzcGxheSBvZiB0aGUgbXVsdGktcm91dGUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJvdW5kc2F1dG9hcHBseSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2hhbmdpbmcgY29vcmRpbmF0ZXMgb2YgdGhlIGdlb2dyYXBoaWNhbCBhcmVhIGNvdmVyaW5nIHRoZSBtdWx0aS1yb3V0ZS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgYm91bmRzY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBTaW5nbGUgbGVmdC1jbGljayBvbiB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDYWxscyB0aGUgZWxlbWVudCdzIGNvbnRleHQgbWVudS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjb250ZXh0bWVudSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRG91YmxlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFkYmNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnkuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGdlb21ldHJ5Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogUHJlc3NpbmcgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VlbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb2ZmIG9mIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VsZWF2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNldXAgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2htb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG9wdGlvbnNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBvdmVybGF5Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcGFyZW50Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2luZyBwaXhlbCBjb29yZGluYXRlcyBvZiB0aGUgYXJlYSBjb3ZlcmluZyB0aGUgbXVsdGktcm91dGUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHBpeGVsYm91bmRzY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJvcGVydGllc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogVXBkYXRpbmcgdGhlIG11bHRpLXJvdXRlLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB1cGRhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIE1vdXNlIHdoZWVsIHNjcm9sbGluZy5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWF3aGVlbCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICBwdWJsaWMgaWQ6IHN0cmluZztcblxuICAvLyBZYW5kZXguTWFwcyBBUEkuXG4gIHByaXZhdGUgX21hcDogeW1hcHMuTWFwO1xuXG4gIHByaXZhdGUgX211bHRpcm91dGU6IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVNdWx0aXJvdXRlKGNoYW5nZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgZHluYW1pYyBNaWx0aXJvdXRlIGNvbmZpZ3VyYXRpb24uXG4gICAqIEhhbmRsZXMgaW5wdXQgY2hhbmdlcyBhbmQgcHJvdmlkZXMgaXQgdG8gQVBJLlxuICAgKiBAcGFyYW0gY2hhbmdlc1xuICAgKi9cbiAgcHJpdmF0ZSBfdXBkYXRlTXVsdGlyb3V0ZShjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgbXVsdGlyb3V0ZSA9IHRoaXMuX211bHRpcm91dGU7XG5cbiAgICBpZiAoIW11bHRpcm91dGUpIHJldHVybjtcblxuICAgIGNvbnN0IHsgcmVmZXJlbmNlUG9pbnRzLCBtb2RlbCwgb3B0aW9ucyB9ID0gY2hhbmdlcztcblxuICAgIGlmIChyZWZlcmVuY2VQb2ludHMpIHtcbiAgICAgIG11bHRpcm91dGUubW9kZWwuc2V0UmVmZXJlbmNlUG9pbnRzKHJlZmVyZW5jZVBvaW50cy5jdXJyZW50VmFsdWUpO1xuICAgIH1cblxuICAgIGlmIChtb2RlbCkge1xuICAgICAgdGhpcy5fc2V0TW9kZWwobW9kZWwuY3VycmVudFZhbHVlLCBtdWx0aXJvdXRlKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgLyoqXG4gICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAqL1xuICAgICAgKG11bHRpcm91dGUub3B0aW9ucyBhcyBhbnkpLnNldChvcHRpb25zLmN1cnJlbnRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlc3RydWN0cyBzdGF0ZSBhbmQgcHJvdmlkZXMgbmV3IHZhbHVlcyB0byBBUEkuXG4gICAqIEBwYXJhbSBtb2RlbFxuICAgKiBAcGFyYW0gbXVsdGlyb3V0ZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0TW9kZWwoXG4gICAgbW9kZWw6IHltYXBzLklNdWx0aVJvdXRlTW9kZWxKc29uLFxuICAgIG11bHRpcm91dGU6IHltYXBzLm11bHRpUm91dGVyLk11bHRpUm91dGUsXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHsgcmVmZXJlbmNlUG9pbnRzLCBwYXJhbXMgfSA9IG1vZGVsO1xuXG4gICAgaWYgKHJlZmVyZW5jZVBvaW50cykge1xuICAgICAgbXVsdGlyb3V0ZS5tb2RlbC5zZXRSZWZlcmVuY2VQb2ludHMocmVmZXJlbmNlUG9pbnRzKTtcbiAgICB9XG5cbiAgICBpZiAocGFyYW1zKSB7XG4gICAgICBtdWx0aXJvdXRlLm1vZGVsLnNldFBhcmFtcyhwYXJhbXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIE11bHRpcm91dGUuXG4gICAqXG4gICAqIEBwYXJhbSBtYXAgTmVjZXNzYXJ5IGZvciByZW1vdmluZyBlbnRpdHkgZnJvbSBtYXAuZ2VvT2JqZWN0cyBvbiBNdWx0aXJvdXRlIGRlc3Ryb3lcbiAgICogYHRoaXMubWFwLmdlb09iamVjdHMucmVtb3ZlKHRoaXMubXVsdGlyb3V0ZSk7YC5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGVNdWx0aXJvdXRlKG1hcDogeW1hcHMuTWFwKTogeW1hcHMubXVsdGlSb3V0ZXIuTXVsdGlSb3V0ZSB7XG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuXG4gICAgY29uc3QgbXVsdGlyb3V0ZSA9IG5ldyB5bWFwcy5tdWx0aVJvdXRlci5NdWx0aVJvdXRlKFxuICAgICAgeyAuLi50aGlzLm1vZGVsLCByZWZlcmVuY2VQb2ludHM6IHRoaXMucmVmZXJlbmNlUG9pbnRzIH0sXG4gICAgICB0aGlzLm9wdGlvbnMsXG4gICAgKTtcblxuICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogbXVsdGlyb3V0ZSB9KSk7XG5cbiAgICB0aGlzLmlkID0gZ2VuZXJhdGVSYW5kb21JZCgpO1xuICAgIHRoaXMuX21hcCA9IG1hcDtcbiAgICB0aGlzLl9tdWx0aXJvdXRlID0gbXVsdGlyb3V0ZTtcblxuICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG5cbiAgICByZXR1cm4gbXVsdGlyb3V0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrUmVxdWlyZWRJbnB1dHMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVmZXJlbmNlUG9pbnRzID09PSB1bmRlZmluZWQgfHwgdGhpcy5yZWZlcmVuY2VQb2ludHMgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUmVmZXJlbmNlUG9pbnRzIGlzIHJlcXVpcmVkJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBNdWx0aXJvdXRlIGV2ZW50cy5cbiAgICovXG4gIHByaXZhdGUgX2FkZEV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IG11bHRpcm91dGUgPSB0aGlzLl9tdWx0aXJvdXRlO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAge1xuICAgICAgICBuYW1lOiAnYWN0aXZlcm91dGVjaGFuZ2UnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLmFjdGl2ZXJvdXRlY2hhbmdlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25jbG9zZScsIGVtaXR0ZXI6IHRoaXMuYmFsbG9vbmNsb3NlIH0sXG4gICAgICB7IG5hbWU6ICdiYWxsb29ub3BlbicsIGVtaXR0ZXI6IHRoaXMuYmFsbG9vbm9wZW4gfSxcbiAgICAgIHsgbmFtZTogJ2JvdW5kc2F1dG9hcHBseScsIGVtaXR0ZXI6IHRoaXMuYm91bmRzYXV0b2FwcGx5IH0sXG4gICAgICB7IG5hbWU6ICdib3VuZHNjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLmJvdW5kc2NoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnY2xpY2snLCBlbWl0dGVyOiB0aGlzLnlhY2xpY2sgfSxcbiAgICAgIHsgbmFtZTogJ2NvbnRleHRtZW51JywgZW1pdHRlcjogdGhpcy55YWNvbnRleHRtZW51IH0sXG4gICAgICB7IG5hbWU6ICdkYmNsaWNrJywgZW1pdHRlcjogdGhpcy55YWRiY2xpY2sgfSxcblxuICAgICAgeyBuYW1lOiAnZ2VvbWV0cnljaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLmdlb21ldHJ5Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdtYXBjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm1hcGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vkb3duJywgZW1pdHRlcjogdGhpcy55YW1vdXNlZG93biB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbW91c2VlbnRlcicsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMueWFtb3VzZWVudGVyLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWxlYXZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlbGVhdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNlbW92ZScsIGVtaXR0ZXI6IHRoaXMueWFtb3VzZW1vdmUsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZXVwJywgZW1pdHRlcjogdGhpcy55YW1vdXNldXAsIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNoZW5kJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoZW5kLFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtdWx0aXRvdWNobW92ZScsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaG1vdmUsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hzdGFydCcsXG4gICAgICAgIGVtaXR0ZXI6IHRoaXMubXVsdGl0b3VjaHN0YXJ0LFxuICAgICAgICBydW5PdXRzaWRlQW5ndWxhcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICB7IG5hbWU6ICdvcHRpb25zY2hhbmdlJywgZW1pdHRlcjogdGhpcy5vcHRpb25zY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdvdmVybGF5Y2hhbmdlJywgZW1pdHRlcjogdGhpcy5vdmVybGF5Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwYXJlbnRjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnBhcmVudGNoYW5nZSB9LFxuICAgICAgeyBuYW1lOiAncGl4ZWxib3VuZHNjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLnBpeGVsYm91bmRzY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwcm9wZXJ0aWVzY2hhbmdlJywgZW1pdHRlcjogdGhpcy5wcm9wZXJ0aWVzY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd1cGRhdGUnLCBlbWl0dGVyOiB0aGlzLnVwZGF0ZSB9LFxuICAgICAgeyBuYW1lOiAnd2hlZWwnLCBlbWl0dGVyOiB0aGlzLnlhd2hlZWwgfSxcbiAgICBdO1xuXG4gICAgY29uc3QgZm4gPSAoZXZlbnQ6IHltYXBzLkV2ZW50KTogWWFFdmVudCA9PiAoe1xuICAgICAgZXZlbnQsXG4gICAgICB0YXJnZXQ6IG11bHRpcm91dGUsXG4gICAgICB5bWFwcyxcbiAgICB9KTtcblxuICAgIGxpc3RlbmVycy5mb3JFYWNoKChsaXN0ZW5lcikgPT4ge1xuICAgICAgbXVsdGlyb3V0ZS5ldmVudHMuYWRkKGxpc3RlbmVyLm5hbWUsIChlOiB5bWFwcy5FdmVudCkgPT5cbiAgICAgICAgbGlzdGVuZXIucnVuT3V0c2lkZUFuZ3VsYXJcbiAgICAgICAgICA/IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKVxuICAgICAgICAgIDogdGhpcy5fbmdab25lLnJ1bigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbWFwPy5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLl9tdWx0aXJvdXRlKTtcbiAgfVxufVxuIl19

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

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUloRTs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUE0Sy9CLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBMUpuQzs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU1RDs7V0FFRztRQUNjLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUzRDs7V0FFRztRQUNjLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTFEOztXQUVHO1FBQ2Msb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRS9EOztXQUVHO1FBQ2MsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFdkQ7O1dBRUc7UUFDYyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFN0Q7O1dBRUc7UUFDYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV6RDs7V0FFRztRQUNjLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXREOztXQUVHO1FBQ2MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFekQ7O1dBRUc7UUFDYyxnQkFB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SUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDekQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7O1FBQ2hCOztXQUVHO1FBQ0gsTUFBQyxJQUFJLENBQUMsVUFBa0IsMENBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7UUFDbEQsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7SUFDaEQsQ0FBQzs7O1lBdFVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsY0FBYzthQUN6Qjs7O1lBbEJDLE1BQU07Ozt1QkF1QkwsS0FBSzt5QkFNTCxLQUFLO3NCQU1MLEtBQUs7b0JBS0wsTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07eUJBS04sTUFBTTs4QkFLTixNQUFNO3NCQUtOLE1BQU07NEJBS04sTUFBTTt3QkFLTixNQUFNO3FCQUtOLE1BQU07d0JBS04sTUFBTTswQkFLTixNQUFNO2dDQUtOLE1BQU07NkJBS04sTUFBTTt3QkFLTixNQUFNO3VCQUtOLE1BQU07d0JBS04sTUFBTTswQkFLTixNQUFNOzJCQUtOLE1BQU07MkJBS04sTUFBTTswQkFLTixNQUFNO3dCQUtOLE1BQU07NEJBS04sTUFBTTs2QkFLTixNQUFNOzhCQUtOLE1BQU07NEJBS04sTUFBTTs0QkFLTixNQUFNOzJCQUtOLE1BQU07K0JBS04sTUFBTTtzQkFLTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2VuZXJhdGVSYW5kb21JZCB9IGZyb20gJy4uLy4uL3V0aWxzL2dlbmVyYXRlUmFuZG9tSWQnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBMaXN0ZW5lciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbGlzdGVuZXInO1xuXG4vKipcbiAqIERpcmVjdGl2ZSBmb3IgY3JlYXRpbmcgYSBnZW8gb2JqZWN0IHdpdGggdGhlIGdlb21ldHJ5IGdlb21ldHJ5LlBvaW50LlxuICpcbiAqIEBleGFtcGxlIGA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCI+PC95YS1wbGFjZW1hcms+YC5cbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvZGlyZWN0aXZlcy9wbGFjZW1hcmt9XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3lhLXBsYWNlbWFyaycsXG59KVxuZXhwb3J0IGNsYXNzIFlhUGxhY2VtYXJrRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogQ29vcmRpbmF0ZXMgb2YgdGhlIHBsYWNlbWFyaywgb3IgYSBoYXNoIGRlc2NyaWJpbmcgdGhlIGdlb21ldHJ5LCBvciBhIHJlZmVyZW5jZSB0byB0aGUgcG9pbnQgZ2VvbWV0cnkgb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGdlb21ldHJ5OiBudW1iZXJbXSB8IG9iamVjdCB8IHltYXBzLklQb2ludEdlb21ldHJ5O1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIGZvciB0aGUgcGxhY2VtYXJrLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL1BsYWNlbWFyay1kb2NwYWdlLyNQbGFjZW1hcmtwYXJhbS1wcm9wZXJ0aWVzfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHByb3BlcnRpZXM6IG9iamVjdCB8IHltYXBzLklEYXRhTWFuYWdlcjtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIHBsYWNlbWFyay5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9QbGFjZW1hcmstZG9jcGFnZS8jUGxhY2VtYXJrcGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiB5bWFwcy5JUGxhY2VtYXJrT3B0aW9ucztcblxuICAvKipcbiAgICogUGxhY2VtYXJrIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGJhbGxvb24uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25jbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25vcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ1wiIGV2ZW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiZWZvcmVkcmFnID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ3N0YXJ0XCIgZXZlbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJlZm9yZWRyYWdzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY29udGV4dG1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZGJjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRHJhZ2dpbmcgYSBnZW8gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWcgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWdlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIGdlbyBvYmplY3QgZHJhZ2dpbmcuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZHJhZ3N0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgaW4gdGhlIHN0YXRlIG9mIHRoZSBlZGl0b3IgZm9yIHRoZSBnZW8gb2JqZWN0J3MgZ2VvbWV0cnkuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGVkaXRvcnN0YXRlY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnlcbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZ2VvbWV0cnljaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogUHJlc3NpbmcgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VlbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb2ZmIG9mIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VsZWF2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNldXAgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2htb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG9wdGlvbnNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBvdmVybGF5Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcGFyZW50Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJvcGVydGllc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YXdoZWVsID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIC8vIFlhbmRleC5NYXBzIEFQSS5cbiAgcHJpdmF0ZSBfY2x1c3RlcmVyOiB5bWFwcy5DbHVzdGVyZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfbWFwOiB5bWFwcy5NYXA7XG5cbiAgcHJpdmF0ZSBfcGxhY2VtYXJrOiB5bWFwcy5QbGFjZW1hcms7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVQbGFjZW1hcmsoY2hhbmdlcyk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBkeW5hbWljIFBsYWNlbWFyayBjb25maWd1cmF0aW9uLlxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHByb3ZpZGVzIGl0IHRvIEFQSS5cbiAgICogQHBhcmFtIGNoYW5nZXNcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZVBsYWNlbWFyayhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgcGxhY2VtYXJrID0gdGhpcy5fcGxhY2VtYXJrO1xuXG4gICAgaWYgKCFwbGFjZW1hcmspIHJldHVybjtcblxuICAgIGNvbnN0IHsgZ2VvbWV0cnksIHByb3BlcnRpZXMsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XG5cbiAgICBpZiAoZ2VvbWV0cnkpIHtcbiAgICAgIHBsYWNlbWFyay5nZW9tZXRyeT8uc2V0Q29vcmRpbmF0ZXMoZ2VvbWV0cnkuY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcGVydGllcykge1xuICAgICAgLyoqXG4gICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAqL1xuICAgICAgKHBsYWNlbWFyay5wcm9wZXJ0aWVzIGFzIGFueSkuc2V0KHByb3BlcnRpZXMuY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgcGxhY2VtYXJrLm9wdGlvbnMuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkSW5wdXRzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmdlb21ldHJ5ID09PSB1bmRlZmluZWQgfHwgdGhpcy5nZW9tZXRyeSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdHZW9tZXRyeSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHBsYWNlbWFyay5cbiAgICpcbiAgICogQHBhcmFtIG1hcCBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIG1hcC5nZW9PYmplY3RzIG9uIFBsYWNlbWFyayBkZXN0cm95XG4gICAqIGB0aGlzLm1hcC5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLnBsYWNlbWFyayk7YC5cbiAgICogQHBhcmFtIGNsdXN0ZXJlciBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIENsdXN0ZXJlciBvbiBQbGFjZW1hcmsgZGVzdHJveVxuICAgKiBgdGhpcy5jbHVzdGVyZXIucmVtb3ZlKHRoaXMucGxhY2VtYXJrKTtgLlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZVBsYWNlbWFyayhcbiAgICBtYXA6IHltYXBzLk1hcCxcbiAgICBjbHVzdGVyZXI/OiB5bWFwcy5DbHVzdGVyZXIsXG4gICk6IHltYXBzLlBsYWNlbWFyayB7XG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuXG4gICAgY29uc3QgcGxhY2VtYXJrID0gbmV3IHltYXBzLlBsYWNlbWFyayhcbiAgICAgIHRoaXMuZ2VvbWV0cnksXG4gICAgICB0aGlzLnByb3BlcnRpZXMsXG4gICAgICB0aGlzLm9wdGlvbnMsXG4gICAgKTtcblxuICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogcGxhY2VtYXJrIH0pKTtcblxuICAgIHRoaXMuaWQgPSBnZW5lcmF0ZVJhbmRvbUlkKCk7XG5cbiAgICB0aGlzLl9jbHVzdGVyZXIgPSBjbHVzdGVyZXI7XG4gICAgdGhpcy5fbWFwID0gbWFwO1xuICAgIHRoaXMuX3BsYWNlbWFyayA9IHBsYWNlbWFyaztcblxuICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG5cbiAgICByZXR1cm4gcGxhY2VtYXJrO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBQbGFjZW1hcmsgZXZlbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgcGxhY2VtYXJrID0gdGhpcy5fcGxhY2VtYXJrO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAgeyBuYW1lOiAnYmFsbG9vbmNsb3NlJywgZW1pdHRlcjogdGhpcy5iYWxsb29uY2xvc2UgfSxcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25vcGVuJywgZW1pdHRlcjogdGhpcy5iYWxsb29ub3BlbiB9LFxuICAgICAgeyBuYW1lOiAnYmVmb3JlZHJhZycsIGVtaXR0ZXI6IHRoaXMuYmVmb3JlZHJhZyB9LFxuICAgICAgeyBuYW1lOiAnYmVmb3JlZHJhZ3N0YXJ0JywgZW1pdHRlcjogdGhpcy5iZWZvcmVkcmFnc3RhcnQgfSxcbiAgICAgIHsgbmFtZTogJ2NsaWNrJywgZW1pdHRlcjogdGhpcy55YWNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdjb250ZXh0bWVudScsIGVtaXR0ZXI6IHRoaXMueWFjb250ZXh0bWVudSB9LFxuICAgICAgeyBuYW1lOiAnZGJjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFkYmNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdkcmFnJywgZW1pdHRlcjogdGhpcy55YWRyYWcgfSxcbiAgICAgIHsgbmFtZTogJ2RyYWdlbmQnLCBlbWl0dGVyOiB0aGlzLnlhZHJhZ2VuZCB9LFxuICAgICAgeyBuYW1lOiAnZHJhZ3N0YXJ0JywgZW1pdHRlcjogdGhpcy55YWRyYWdzdGFydCB9LFxuICAgICAgeyBuYW1lOiAnZWRpdG9yc3RhdGVjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLmVkaXRvcnN0YXRlY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdnZW9tZXRyeWNoYW5nZScsIGVtaXR0ZXI6IHRoaXMuZ2VvbWV0cnljaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ2hpbnRjbG9zZScsIGVtaXR0ZXI6IHRoaXMuaGludGNsb3NlIH0sXG4gICAgICB7IG5hbWU6ICdoaW50b3BlbicsIGVtaXR0ZXI6IHRoaXMuaGludG9wZW4gfSxcbiAgICAgIHsgbmFtZTogJ21hcGNoYW5nZScsIGVtaXR0ZXI6IHRoaXMubWFwY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZWRvd24nLCBlbWl0dGVyOiB0aGlzLnlhbW91c2Vkb3duIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWVudGVyJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlZW50ZXIsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ21vdXNlbGVhdmUnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLnlhbW91c2VsZWF2ZSxcbiAgICAgICAgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUsXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vtb3ZlJywgZW1pdHRlcjogdGhpcy55YW1vdXNlbW92ZSwgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNldXAnLCBlbWl0dGVyOiB0aGlzLnlhbW91c2V1cCwgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hlbmQnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLm11bHRpdG91Y2hlbmQsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2htb3ZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNobW92ZSxcbiAgICAgICAgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbXVsdGl0b3VjaHN0YXJ0JyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoc3RhcnQsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ29wdGlvbnNjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm9wdGlvbnNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ292ZXJsYXljaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm92ZXJsYXljaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3BhcmVudGNoYW5nZScsIGVtaXR0ZXI6IHRoaXMucGFyZW50Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwcm9wZXJ0aWVzY2hhbmdlJywgZW1pdHRlcjogdGhpcy5wcm9wZXJ0aWVzY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd3aGVlbCcsIGVtaXR0ZXI6IHRoaXMueWF3aGVlbCB9LFxuICAgIF07XG5cbiAgICBjb25zdCBmbiA9IChldmVudDogeW1hcHMuRXZlbnQpOiBZYUV2ZW50ID0+ICh7XG4gICAgICBldmVudCxcbiAgICAgIHRhcmdldDogcGxhY2VtYXJrLFxuICAgICAgeW1hcHMsXG4gICAgfSk7XG5cbiAgICBsaXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IHtcbiAgICAgIHBsYWNlbWFyay5ldmVudHMuYWRkKGxpc3RlbmVyLm5hbWUsIChlOiB5bWFwcy5FdmVudCkgPT5cbiAgICAgICAgbGlzdGVuZXIucnVuT3V0c2lkZUFuZ3VsYXJcbiAgICAgICAgICA/IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKVxuICAgICAgICAgIDogdGhpcy5fbmdab25lLnJ1bigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgLyoqXG4gICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXG4gICAgICovXG4gICAgKHRoaXMuX2NsdXN0ZXJlciBhcyBhbnkpPy5yZW1vdmUodGhpcy5fcGxhY2VtYXJrKTtcbiAgICB0aGlzLl9tYXA/Lmdlb09iamVjdHMucmVtb3ZlKHRoaXMuX3BsYWNlbWFyayk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvZGlyZWN0aXZlcy95YS1wbGFjZW1hcmsveWEtcGxhY2VtYXJrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUloRTs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUE0Sy9CLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBMUpuQzs7V0FFRztRQUNjLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7V0FFRztRQUNjLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU1RDs7V0FFRztRQUNjLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUUzRDs7V0FFRztRQUNjLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTFEOztXQUVHO1FBQ2Msb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRS9EOztXQUVHO1FBQ2MsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFdkQ7O1dBRUc7UUFDYyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFN0Q7O1dBRUc7UUFDYyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUV6RDs7V0FFRztRQUNjLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXREOztXQUVHO1FBQ2MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFekQ7O1dBRUc7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QUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDekQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLFdBQVc7O1FBQ2hCOztXQUVHO1FBQ0gsTUFBQyxJQUFJLENBQUMsVUFBa0IsMENBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7UUFDbEQsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7SUFDaEQsQ0FBQzs7O1lBdFVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsY0FBYzthQUN6Qjs7O1lBbEJDLE1BQU07Ozt1QkF1QkwsS0FBSzt5QkFNTCxLQUFLO3NCQU1MLEtBQUs7b0JBS0wsTUFBTTsyQkFLTixNQUFNOzBCQUtOLE1BQU07eUJBS04sTUFBTTs4QkFLTixNQUFNO3NCQUtOLE1BQU07NEJBS04sTUFBTTt3QkFLTixNQUFNO3FCQUtOLE1BQU07d0JBS04sTUFBTTswQkFLTixNQUFNO2dDQUtOLE1BQU07NkJBS04sTUFBTTt3QkFLTixNQUFNO3VCQUtOLE1BQU07d0JBS04sTUFBTTswQkFLTixNQUFNOzJCQUtOLE1BQU07MkJBS04sTUFBTTswQkFLTixNQUFNO3dCQUtOLE1BQU07NEJBS04sTUFBTTs2QkFLTixNQUFNOzhCQUtOLE1BQU07NEJBS04sTUFBTTs0QkFLTixNQUFNOzJCQUtOLE1BQU07K0JBS04sTUFBTTtzQkFLTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2VuZXJhdGVSYW5kb21JZCB9IGZyb20gJy4uLy4uL3V0aWxzL2dlbmVyYXRlUmFuZG9tSWQnO1xuaW1wb3J0IHsgWWFFdmVudCwgWWFSZWFkeUV2ZW50IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ldmVudCc7XG5pbXBvcnQgeyBMaXN0ZW5lciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbGlzdGVuZXInO1xuXG4vKipcbiAqIERpcmVjdGl2ZSBmb3IgY3JlYXRpbmcgYSBnZW8gb2JqZWN0IHdpdGggdGhlIGdlb21ldHJ5IGdlb21ldHJ5LlBvaW50LlxuICpcbiAqIEBleGFtcGxlIGA8eWEtcGxhY2VtYXJrIFtnZW9tZXRyeV09XCJbNTUuNzUxOTUyLCAzNy42MDA3MzldXCI+PC95YS1wbGFjZW1hcms+YC5cbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvZGlyZWN0aXZlcy9wbGFjZW1hcmt9XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ3lhLXBsYWNlbWFyaycsXG59KVxuZXhwb3J0IGNsYXNzIFlhUGxhY2VtYXJrRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogQ29vcmRpbmF0ZXMgb2YgdGhlIHBsYWNlbWFyaywgb3IgYSBoYXNoIGRlc2NyaWJpbmcgdGhlIGdlb21ldHJ5LCBvciBhIHJlZmVyZW5jZSB0byB0aGUgcG9pbnQgZ2VvbWV0cnkgb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGdlb21ldHJ5OiBudW1iZXJbXSB8IG9iamVjdCB8IHltYXBzLklQb2ludEdlb21ldHJ5O1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIGZvciB0aGUgcGxhY2VtYXJrLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL3RlY2gueWFuZGV4LnJ1L21hcHMvanNhcGkvZG9jLzIuMS9yZWYvcmVmZXJlbmNlL1BsYWNlbWFyay1kb2NwYWdlLyNQbGFjZW1hcmtwYXJhbS1wcm9wZXJ0aWVzfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHByb3BlcnRpZXM6IG9iamVjdCB8IHltYXBzLklEYXRhTWFuYWdlcjtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIHBsYWNlbWFyay5cbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly90ZWNoLnlhbmRleC5ydS9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9QbGFjZW1hcmstZG9jcGFnZS8jUGxhY2VtYXJrcGFyYW0tb3B0aW9uc31cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvcHRpb25zOiB5bWFwcy5JUGxhY2VtYXJrT3B0aW9ucztcblxuICAvKipcbiAgICogUGxhY2VtYXJrIGluc3RhbmNlIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxZYVJlYWR5RXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGJhbGxvb24uXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25jbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGJhbGxvb24gb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJhbGxvb25vcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ1wiIGV2ZW50LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBiZWZvcmVkcmFnID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBwcmVjZWRpbmcgdGhlIFwiZHJhZ3N0YXJ0XCIgZXZlbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGJlZm9yZWRyYWdzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogU2luZ2xlIGxlZnQtY2xpY2sgb24gdGhlIG9iamVjdC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgeWFjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogQ2FsbHMgdGhlIGVsZW1lbnQncyBjb250ZXh0IG1lbnUuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhY29udGV4dG1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIERvdWJsZSBsZWZ0LWNsaWNrIG9uIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZGJjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogRHJhZ2dpbmcgYSBnZW8gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWcgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBnZW8gb2JqZWN0IGRyYWdnaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YWRyYWdlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFN0YXJ0IG9mIGdlbyBvYmplY3QgZHJhZ2dpbmcuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhZHJhZ3N0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgaW4gdGhlIHN0YXRlIG9mIHRoZSBlZGl0b3IgZm9yIHRoZSBnZW8gb2JqZWN0J3MgZ2VvbWV0cnkuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGVkaXRvcnN0YXRlY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZ2VvbWV0cnlcbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgZ2VvbWV0cnljaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENsb3NpbmcgdGhlIGhpbnQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogT3BlbmluZyBhIGhpbnQgb24gYSBtYXAuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGhpbnRvcGVuID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBNYXAgcmVmZXJlbmNlIGNoYW5nZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG1hcGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogUHJlc3NpbmcgdGhlIG1vdXNlIGJ1dHRvbiBvdmVyIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2Vkb3duID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBQb2ludGluZyB0aGUgY3Vyc29yIGF0IHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VlbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb2ZmIG9mIHRoZSBvYmplY3QuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHlhbW91c2VsZWF2ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW92aW5nIHRoZSBjdXJzb3Igb3ZlciB0aGUgb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTGV0dGluZyBnbyBvZiB0aGUgbW91c2UgYnV0dG9uIG92ZXIgYW4gb2JqZWN0LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YW1vdXNldXAgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVuZCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBSZXBlYXRpbmcgZXZlbnQgZHVyaW5nIG11bHRpdG91Y2guXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG11bHRpdG91Y2htb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBTdGFydCBvZiBtdWx0aXRvdWNoLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBtdWx0aXRvdWNoc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgb2JqZWN0IG9wdGlvbnMuXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIG9wdGlvbnNjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFlhRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIENoYW5nZSB0byB0aGUgZ2VvIG9iamVjdCBvdmVybGF5LlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBvdmVybGF5Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IG9iamVjdCByZWZlcmVuY2UgY2hhbmdlZC5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcGFyZW50Y2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdG8gdGhlIGdlbyBvYmplY3QgZGF0YS5cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJvcGVydGllc2NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WWFFdmVudD4oKTtcblxuICAvKipcbiAgICogTW91c2Ugd2hlZWwgc2Nyb2xsaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyB5YXdoZWVsID0gbmV3IEV2ZW50RW1pdHRlcjxZYUV2ZW50PigpO1xuXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xuXG4gIC8vIFlhbmRleC5NYXBzIEFQSS5cbiAgcHJpdmF0ZSBfY2x1c3RlcmVyOiB5bWFwcy5DbHVzdGVyZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfbWFwOiB5bWFwcy5NYXA7XG5cbiAgcHJpdmF0ZSBfcGxhY2VtYXJrOiB5bWFwcy5QbGFjZW1hcms7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUpIHt9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLl91cGRhdGVQbGFjZW1hcmsoY2hhbmdlcyk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBkeW5hbWljIFBsYWNlbWFyayBjb25maWd1cmF0aW9uLlxuICAgKiBIYW5kbGVzIGlucHV0IGNoYW5nZXMgYW5kIHByb3ZpZGVzIGl0IHRvIEFQSS5cbiAgICogQHBhcmFtIGNoYW5nZXNcbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZVBsYWNlbWFyayhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgY29uc3QgcGxhY2VtYXJrID0gdGhpcy5fcGxhY2VtYXJrO1xuXG4gICAgaWYgKCFwbGFjZW1hcmspIHJldHVybjtcblxuICAgIGNvbnN0IHsgZ2VvbWV0cnksIHByb3BlcnRpZXMsIG9wdGlvbnMgfSA9IGNoYW5nZXM7XG5cbiAgICBpZiAoZ2VvbWV0cnkpIHtcbiAgICAgIHBsYWNlbWFyay5nZW9tZXRyeT8uc2V0Q29vcmRpbmF0ZXMoZ2VvbWV0cnkuY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcGVydGllcykge1xuICAgICAgLyoqXG4gICAgICAgKiBXcm9uZyB0eXBpbmdzIGluIERlZmluaXRlbHlUeXBlZC5cbiAgICAgICAqL1xuICAgICAgKHBsYWNlbWFyay5wcm9wZXJ0aWVzIGFzIGFueSkuc2V0KHByb3BlcnRpZXMuY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgcGxhY2VtYXJrLm9wdGlvbnMuc2V0KG9wdGlvbnMuY3VycmVudFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGVja1JlcXVpcmVkSW5wdXRzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmdlb21ldHJ5ID09PSB1bmRlZmluZWQgfHwgdGhpcy5nZW9tZXRyeSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdHZW9tZXRyeSBpcyByZXF1aXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHBsYWNlbWFyay5cbiAgICpcbiAgICogQHBhcmFtIG1hcCBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIG1hcC5nZW9PYmplY3RzIG9uIFBsYWNlbWFyayBkZXN0cm95XG4gICAqIGB0aGlzLm1hcC5nZW9PYmplY3RzLnJlbW92ZSh0aGlzLnBsYWNlbWFyayk7YC5cbiAgICogQHBhcmFtIGNsdXN0ZXJlciBOZWNlc3NhcnkgZm9yIHJlbW92aW5nIGVudGl0eSBmcm9tIENsdXN0ZXJlciBvbiBQbGFjZW1hcmsgZGVzdHJveVxuICAgKiBgdGhpcy5jbHVzdGVyZXIucmVtb3ZlKHRoaXMucGxhY2VtYXJrKTtgLlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZVBsYWNlbWFyayhcbiAgICBtYXA6IHltYXBzLk1hcCxcbiAgICBjbHVzdGVyZXI/OiB5bWFwcy5DbHVzdGVyZXIsXG4gICk6IHltYXBzLlBsYWNlbWFyayB7XG4gICAgdGhpcy5fY2hlY2tSZXF1aXJlZElucHV0cygpO1xuXG4gICAgY29uc3QgcGxhY2VtYXJrID0gbmV3IHltYXBzLlBsYWNlbWFyayhcbiAgICAgIHRoaXMuZ2VvbWV0cnksXG4gICAgICB0aGlzLnByb3BlcnRpZXMsXG4gICAgICB0aGlzLm9wdGlvbnMsXG4gICAgKTtcblxuICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5yZWFkeS5lbWl0KHsgeW1hcHMsIHRhcmdldDogcGxhY2VtYXJrIH0pKTtcblxuICAgIHRoaXMuaWQgPSBnZW5lcmF0ZVJhbmRvbUlkKCk7XG5cbiAgICB0aGlzLl9jbHVzdGVyZXIgPSBjbHVzdGVyZXI7XG4gICAgdGhpcy5fbWFwID0gbWFwO1xuICAgIHRoaXMuX3BsYWNlbWFyayA9IHBsYWNlbWFyaztcblxuICAgIHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCk7XG5cbiAgICByZXR1cm4gcGxhY2VtYXJrO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbGlzdGVuZXJzIG9uIHRoZSBQbGFjZW1hcmsgZXZlbnRzLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgcGxhY2VtYXJrID0gdGhpcy5fcGxhY2VtYXJrO1xuXG4gICAgY29uc3QgbGlzdGVuZXJzOiBMaXN0ZW5lcltdID0gW1xuICAgICAgeyBuYW1lOiAnYmFsbG9vbmNsb3NlJywgZW1pdHRlcjogdGhpcy5iYWxsb29uY2xvc2UgfSxcbiAgICAgIHsgbmFtZTogJ2JhbGxvb25vcGVuJywgZW1pdHRlcjogdGhpcy5iYWxsb29ub3BlbiB9LFxuICAgICAgeyBuYW1lOiAnYmVmb3JlZHJhZycsIGVtaXR0ZXI6IHRoaXMuYmVmb3JlZHJhZyB9LFxuICAgICAgeyBuYW1lOiAnYmVmb3JlZHJhZ3N0YXJ0JywgZW1pdHRlcjogdGhpcy5iZWZvcmVkcmFnc3RhcnQgfSxcbiAgICAgIHsgbmFtZTogJ2NsaWNrJywgZW1pdHRlcjogdGhpcy55YWNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdjb250ZXh0bWVudScsIGVtaXR0ZXI6IHRoaXMueWFjb250ZXh0bWVudSB9LFxuICAgICAgeyBuYW1lOiAnZGJjbGljaycsIGVtaXR0ZXI6IHRoaXMueWFkYmNsaWNrIH0sXG4gICAgICB7IG5hbWU6ICdkcmFnJywgZW1pdHRlcjogdGhpcy55YWRyYWcgfSxcbiAgICAgIHsgbmFtZTogJ2RyYWdlbmQnLCBlbWl0dGVyOiB0aGlzLnlhZHJhZ2VuZCB9LFxuICAgICAgeyBuYW1lOiAnZHJhZ3N0YXJ0JywgZW1pdHRlcjogdGhpcy55YWRyYWdzdGFydCB9LFxuICAgICAgeyBuYW1lOiAnZWRpdG9yc3RhdGVjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLmVkaXRvcnN0YXRlY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdnZW9tZXRyeWNoYW5nZScsIGVtaXR0ZXI6IHRoaXMuZ2VvbWV0cnljaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ2hpbnRjbG9zZScsIGVtaXR0ZXI6IHRoaXMuaGludGNsb3NlIH0sXG4gICAgICB7IG5hbWU6ICdoaW50b3BlbicsIGVtaXR0ZXI6IHRoaXMuaGludG9wZW4gfSxcbiAgICAgIHsgbmFtZTogJ21hcGNoYW5nZScsIGVtaXR0ZXI6IHRoaXMubWFwY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdtb3VzZWRvd24nLCBlbWl0dGVyOiB0aGlzLnlhbW91c2Vkb3duIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtb3VzZWVudGVyJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy55YW1vdXNlZW50ZXIsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ21vdXNlbGVhdmUnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLnlhbW91c2VsZWF2ZSxcbiAgICAgICAgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUsXG4gICAgICB9LFxuICAgICAgeyBuYW1lOiAnbW91c2Vtb3ZlJywgZW1pdHRlcjogdGhpcy55YW1vdXNlbW92ZSwgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUgfSxcbiAgICAgIHsgbmFtZTogJ21vdXNldXAnLCBlbWl0dGVyOiB0aGlzLnlhbW91c2V1cCwgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2hlbmQnLFxuICAgICAgICBlbWl0dGVyOiB0aGlzLm11bHRpdG91Y2hlbmQsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ211bHRpdG91Y2htb3ZlJyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNobW92ZSxcbiAgICAgICAgcnVuT3V0c2lkZUFuZ3VsYXI6IHRydWUsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbXVsdGl0b3VjaHN0YXJ0JyxcbiAgICAgICAgZW1pdHRlcjogdGhpcy5tdWx0aXRvdWNoc3RhcnQsXG4gICAgICAgIHJ1bk91dHNpZGVBbmd1bGFyOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHsgbmFtZTogJ29wdGlvbnNjaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm9wdGlvbnNjaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ292ZXJsYXljaGFuZ2UnLCBlbWl0dGVyOiB0aGlzLm92ZXJsYXljaGFuZ2UgfSxcbiAgICAgIHsgbmFtZTogJ3BhcmVudGNoYW5nZScsIGVtaXR0ZXI6IHRoaXMucGFyZW50Y2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICdwcm9wZXJ0aWVzY2hhbmdlJywgZW1pdHRlcjogdGhpcy5wcm9wZXJ0aWVzY2hhbmdlIH0sXG4gICAgICB7IG5hbWU6ICd3aGVlbCcsIGVtaXR0ZXI6IHRoaXMueWF3aGVlbCB9LFxuICAgIF07XG5cbiAgICBjb25zdCBmbiA9IChldmVudDogeW1hcHMuRXZlbnQpOiBZYUV2ZW50ID0+ICh7XG4gICAgICBldmVudCxcbiAgICAgIHRhcmdldDogcGxhY2VtYXJrLFxuICAgICAgeW1hcHMsXG4gICAgfSk7XG5cbiAgICBsaXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IHtcbiAgICAgIHBsYWNlbWFyay5ldmVudHMuYWRkKGxpc3RlbmVyLm5hbWUsIChlOiB5bWFwcy5FdmVudCkgPT5cbiAgICAgICAgbGlzdGVuZXIucnVuT3V0c2lkZUFuZ3VsYXJcbiAgICAgICAgICA/IHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKVxuICAgICAgICAgIDogdGhpcy5fbmdab25lLnJ1bigoKSA9PiBsaXN0ZW5lci5lbWl0dGVyLmVtaXQoZm4oZSkpKSxcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgLyoqXG4gICAgICogV3JvbmcgdHlwaW5ncyBpbiBEZWZpbml0ZWx5VHlwZWQuXG4gICAgICovXG4gICAgKHRoaXMuX2NsdXN0ZXJlciBhcyBhbnkpPy5yZW1vdmUodGhpcy5fcGxhY2VtYXJrKTtcbiAgICB0aGlzLl9tYXA/Lmdlb09iamVjdHMucmVtb3ZlKHRoaXMuX3BsYWNlbWFyayk7XG4gIH1cbn1cbiJdfQ==
export {};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmZhY2VzL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBUEkgbG9hZGluZyBwYXJhbWV0ZXJzXG4gKiBAc2VlIHtAbGluayBodHRwczovL3lhbmRleC5ydS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL2RnL2NvbmNlcHRzL2xvYWQuaHRtbC8jbG9hZF9fcGFyYW19IGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgWWFDb25maWcge1xuICAvKipcbiAgICogQVBJIGtleS4gWW91IGNhbiBnZXQgYSBrZXkgaW4gdGhlIGRldmVsb3BlcidzIGRhc2hib2FyZFxuICAgKi9cbiAgYXBpa2V5Pzogc3RyaW5nO1xuICAvKipcbiAgICogTG9jYWxlc1xuICAgKi9cbiAgbGFuZzogJ3J1X1JVJyB8ICdlbl9VUycgfCAnZW5fUlUnIHwgJ3J1X1VBJyB8ICd1a19VQScgfCAndHJfVFInO1xuICAvKipcbiAgICogVGhlIG9yZGVyIGZvciBzZXR0aW5nIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlcyBpbiBBUEkgZnVuY3Rpb25zIHRoYXQgYWNjZXB0IGxvbmdpdHVkZS1sYXRpdHVkZSBpbnB1dFxuICAgKi9cbiAgY29vcmRvcmRlcj86ICdsYXRsb25nJyB8ICdsb25nbGF0JztcbiAgLyoqXG4gICAqIExpc3Qgb2YgbW9kdWxlcyB0byBsb2FkXG4gICAqL1xuICBsb2FkPzogc3RyaW5nO1xuICAvKipcbiAgICogQVBJIGxvYWRpbmcgbW9kZVxuICAgKi9cbiAgbW9kZT86ICdyZWxlYXNlJyB8ICdkZWJ1Zyc7XG4gIC8qKlxuICAgKiBVc2UgY29tbWVyY2lhbCB2ZXJzaW9uIG9mIHRoZSBBUElcbiAgICovXG4gIGVudGVycHJpc2U/OiBib29sZWFuO1xuICAvKipcbiAgICogVmVyc2lvbiBudW1iZXIgb2YgdGhlIEFQSVxuICAgKi9cbiAgdmVyc2lvbj86IHN0cmluZztcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjL2xpYi9pbnRlcmZhY2VzL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBUEkgbG9hZGluZyBwYXJhbWV0ZXJzXG4gKiBAc2VlIHtAbGluayBodHRwczovL3lhbmRleC5ydS9kZXYvbWFwcy9qc2FwaS9kb2MvMi4xL2RnL2NvbmNlcHRzL2xvYWQuaHRtbC8jbG9hZF9fcGFyYW19IGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgWWFDb25maWcge1xuICAvKipcbiAgICogQVBJIGtleS4gWW91IGNhbiBnZXQgYSBrZXkgaW4gdGhlIGRldmVsb3BlcidzIGRhc2hib2FyZFxuICAgKi9cbiAgYXBpa2V5Pzogc3RyaW5nO1xuICAvKipcbiAgICogTG9jYWxlc1xuICAgKi9cbiAgbGFuZzogJ3J1X1JVJyB8ICdlbl9VUycgfCAnZW5fUlUnIHwgJ3J1X1VBJyB8ICd1a19VQScgfCAndHJfVFInO1xuICAvKipcbiAgICogVGhlIG9yZGVyIGZvciBzZXR0aW5nIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlcyBpbiBBUEkgZnVuY3Rpb25zIHRoYXQgYWNjZXB0IGxvbmdpdHVkZS1sYXRpdHVkZSBpbnB1dFxuICAgKi9cbiAgY29vcmRvcmRlcj86ICdsYXRsb25nJyB8ICdsb25nbGF0JztcbiAgLyoqXG4gICAqIExpc3Qgb2YgbW9kdWxlcyB0byBsb2FkXG4gICAqL1xuICBsb2FkPzogc3RyaW5nO1xuICAvKipcbiAgICogQVBJIGxvYWRpbmcgbW9kZVxuICAgKi9cbiAgbW9kZT86ICdyZWxlYXNlJyB8ICdkZWJ1Zyc7XG4gIC8qKlxuICAgKiBVc2UgY29tbWVyY2lhbCB2ZXJzaW9uIG9mIHRoZSBBUElcbiAgICovXG4gIGVudGVycHJpc2U/OiBib29sZWFuO1xuICAvKipcbiAgICogVmVyc2lvbiBudW1iZXIgb2YgdGhlIEFQSVxuICAgKi9cbiAgdmVyc2lvbj86IHN0cmluZztcbn1cbiJdfQ==
export {};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC10eXBlLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmZhY2VzL2NvbnRyb2wtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgWWFDb250cm9sVHlwZSA9XG4gIHwgJ0J1dHRvbidcbiAgfCAnRnVsbHNjcmVlbkNvbnRyb2wnXG4gIHwgJ0dlb2xvY2F0aW9uQ29udHJvbCdcbiAgfCAnTGlzdEJveCdcbiAgfCAnTGlzdEJveEl0ZW0nXG4gIHwgJ1JvdXRlQnV0dG9uJ1xuICB8ICdSb3V0ZUVkaXRvcidcbiAgfCAnUm91dGVQYW5lbCdcbiAgfCAnUnVsZXJDb250cm9sJ1xuICB8ICdTZWFyY2hDb250cm9sJ1xuICB8ICdUcmFmZmljQ29udHJvbCdcbiAgfCAnVHlwZVNlbGVjdG9yJ1xuICB8ICdab29tQ29udHJvbCc7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjL2xpYi9pbnRlcmZhY2VzL2NvbnRyb2wtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgWWFDb250cm9sVHlwZSA9XG4gIHwgJ0J1dHRvbidcbiAgfCAnRnVsbHNjcmVlbkNvbnRyb2wnXG4gIHwgJ0dlb2xvY2F0aW9uQ29udHJvbCdcbiAgfCAnTGlzdEJveCdcbiAgfCAnTGlzdEJveEl0ZW0nXG4gIHwgJ1JvdXRlQnV0dG9uJ1xuICB8ICdSb3V0ZUVkaXRvcidcbiAgfCAnUm91dGVQYW5lbCdcbiAgfCAnUnVsZXJDb250cm9sJ1xuICB8ICdTZWFyY2hDb250cm9sJ1xuICB8ICdUcmFmZmljQ29udHJvbCdcbiAgfCAnVHlwZVNlbGVjdG9yJ1xuICB8ICdab29tQ29udHJvbCc7XG4iXX0=
export {};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2ludGVyZmFjZXMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFlhUmVhZHlFdmVudDxUID0gYW55PiA9IE9taXQ8WWFFdmVudDxUPiwgJ2V2ZW50Jz47XG5cbmV4cG9ydCBpbnRlcmZhY2UgWWFFdmVudDxUID0gYW55PiB7XG4gIC8qKlxuICAgKiBJbnN0YW5jZSBvZiB0YXJnZXRcbiAgICovXG4gIHRhcmdldDogVDtcbiAgLyoqXG4gICAqIEFQSSBnbG9iYWwgb2JqZWN0XG4gICAqL1xuICB5bWFwczogdHlwZW9mIHltYXBzO1xuICAvKipcbiAgICogUHJvdmlkZXMgbWV0aG9kcyBmb3IgYWNjZXNzaW5nIHRoZSBvcmlnaW5hbE9iamVjdCBvYmplY3QncyBmaWVsZHMgYW5kIG1ldGhvZHMsIHdpdGggdGhlIHBvc3NpYmlsaXR5IGZvciByZWRlZmluaW5nIHRoZW0uXG4gICAqIEBzZWUge0BsaW5rIGh0dHBzOi8veWFuZGV4LnJ1L2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9FdmVudC5odG1sL31cbiAgICovXG4gIGV2ZW50OiB5bWFwcy5FdmVudDxhbnksIFQ+O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2ludGVyZmFjZXMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIFlhUmVhZHlFdmVudDxUID0gYW55PiA9IE9taXQ8WWFFdmVudDxUPiwgJ2V2ZW50Jz47XG5cbmV4cG9ydCBpbnRlcmZhY2UgWWFFdmVudDxUID0gYW55PiB7XG4gIC8qKlxuICAgKiBJbnN0YW5jZSBvZiB0YXJnZXRcbiAgICovXG4gIHRhcmdldDogVDtcbiAgLyoqXG4gICAqIEFQSSBnbG9iYWwgb2JqZWN0XG4gICAqL1xuICB5bWFwczogdHlwZW9mIHltYXBzO1xuICAvKipcbiAgICogUHJvdmlkZXMgbWV0aG9kcyBmb3IgYWNjZXNzaW5nIHRoZSBvcmlnaW5hbE9iamVjdCBvYmplY3QncyBmaWVsZHMgYW5kIG1ldGhvZHMsIHdpdGggdGhlIHBvc3NpYmlsaXR5IGZvciByZWRlZmluaW5nIHRoZW0uXG4gICAqIEBzZWUge0BsaW5rIGh0dHBzOi8veWFuZGV4LnJ1L2Rldi9tYXBzL2pzYXBpL2RvYy8yLjEvcmVmL3JlZmVyZW5jZS9FdmVudC5odG1sL31cbiAgICovXG4gIGV2ZW50OiB5bWFwcy5FdmVudDxhbnksIFQ+O1xufVxuIl19
export {};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGVuZXIuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL2ludGVyZmFjZXMvbGlzdGVuZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RlbmVyIHtcbiAgLyoqXG4gICAqIEV2ZW50IG5hbWUgaW4gWWFuZGV4Lk1hcHMgQVBJXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFdmVudEVtaXR0ZXJcbiAgICovXG4gIGVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICAvKipcbiAgICogSWYgdHJ1ZSBydW5zIGV2ZW50IG91dHNpZGUgb2YgYW5ndWxhclxuICAgKi9cbiAgcnVuT3V0c2lkZUFuZ3VsYXI/OiBib29sZWFuO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGVuZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL2ludGVyZmFjZXMvbGlzdGVuZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RlbmVyIHtcbiAgLyoqXG4gICAqIEV2ZW50IG5hbWUgaW4gWWFuZGV4Lk1hcHMgQVBJXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFdmVudEVtaXR0ZXJcbiAgICovXG4gIGVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICAvKipcbiAgICogSWYgdHJ1ZSBydW5zIGV2ZW50IG91dHNpZGUgb2YgYW5ndWxhclxuICAgKi9cbiAgcnVuT3V0c2lkZUFuZ3VsYXI/OiBib29sZWFuO1xufVxuIl19

@@ -81,2 +81,2 @@ import { __rest } from "tslib";

];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyaXB0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhcjgteWFuZGV4LW1hcHMvc3JjLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL3NjcmlwdC9zY3JpcHQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUdyRCxNQUFNLGNBQWMsR0FBYTtJQUMvQixJQUFJLEVBQUUsT0FBTztDQUNkLENBQUM7QUFFRjs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBT3hCLFlBQ2lDLE1BQXVCLEVBQzVCLFNBQW1CO1FBQW5CLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFFN0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLElBQUksY0FBYyxDQUFDO1FBRXhDLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUM7U0FDckM7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztTQUNqRDtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixJQUFJLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzNCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNuRDtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RELE1BQU0sQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7WUFDaEMsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pELE1BQU0sQ0FBQyxFQUFFLEdBQUcscUJBQXFCLENBQUM7WUFFbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDeEQ7UUFFRCxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQy9DLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQzVELENBQUM7UUFFRixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ2pELFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2hDLENBQUM7UUFFRixPQUFPLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssZ0JBQWdCLENBQUMsTUFBZ0I7UUFDdkMsTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLEdBQUcsS0FBSyxLQUFjLE1BQU0sRUFBZixJQUFJLFVBQUssTUFBTSxFQUFqRCx5QkFBd0MsQ0FBUyxDQUFDO1FBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4RCxPQUFPLFdBQ0wsVUFBVSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQy9CLHNCQUFzQixPQUFPLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLDZCQUE2QixDQUFDLE1BQWdCO1FBQ3BELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDMUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO2FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNmLENBQUM7Ozs7WUE1RUYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7NENBU0ksUUFBUSxZQUFJLE1BQU0sU0FBQyxTQUFTO1lBQ1EsUUFBUSx1QkFBNUMsTUFBTSxTQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tLCBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFlBX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb25zdGFudCc7XG5pbXBvcnQgeyBZYUNvbmZpZyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnJztcblxuY29uc3QgREVGQVVMVF9DT05GSUc6IFlhQ29uZmlnID0ge1xuICBsYW5nOiAncnVfUlUnLFxufTtcblxuLyoqXG4gKiBAZHluYW1pY1xuICpcbiAqIEBkZXNjcmlwdGlvbiBJbmplY3RhYmxlIHNlcnZpY2UgdGhhdCB3aWxsIGhhbmRsZSB0aGUgbG9hZGluZyBvZiBZYW5kZXguTWFwcyBzY3JpcHRcbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvc2VydmljZXMvc2NyaXB0fVxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NyaXB0U2VydmljZSB7XG4gIHByaXZhdGUgX2NvbmZpZzogWWFDb25maWc7XG5cbiAgcHJpdmF0ZSBfc2NyaXB0OiBIVE1MU2NyaXB0RWxlbWVudDtcblxuICBwcml2YXRlIF93aW5kb3c6IFdpbmRvdztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFlBX0NPTkZJRykgY29uZmlnOiBZYUNvbmZpZyB8IG51bGwsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICApIHtcbiAgICB0aGlzLl9jb25maWcgPSBjb25maWcgfHwgREVGQVVMVF9DT05GSUc7XG5cbiAgICBpZiAoZG9jdW1lbnQuZGVmYXVsdFZpZXcpIHtcbiAgICAgIHRoaXMuX3dpbmRvdyA9IGRvY3VtZW50LmRlZmF1bHRWaWV3O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2RvY3VtZW50LmRlZmF1bHRWaWV3IGlzIG51bGwnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdHMgWWFuZGV4Lk1hcHMgc2NyaXB0XG4gICAqL1xuICBwdWJsaWMgaW5pdFNjcmlwdCgpOiBPYnNlcnZhYmxlPHR5cGVvZiB5bWFwcz4ge1xuICAgIGlmICgneW1hcHMnIGluIHRoaXMuX3dpbmRvdykge1xuICAgICAgcmV0dXJuIGZyb20oeW1hcHMucmVhZHkoKSkucGlwZShtYXAoKCkgPT4geW1hcHMpKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX3NjcmlwdCkge1xuICAgICAgY29uc3Qgc2NyaXB0ID0gdGhpcy5fZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgc2NyaXB0LnNyYyA9IHRoaXMuX2dldFNjcmlwdFNvdXJjZSh0aGlzLl9jb25maWcpO1xuICAgICAgc2NyaXB0LmlkID0gJ3lhbmRleE1hcHNBcGlTY3JpcHQnO1xuXG4gICAgICB0aGlzLl9zY3JpcHQgPSB0aGlzLl9kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgfVxuXG4gICAgY29uc3QgbG9hZCA9IGZyb21FdmVudCh0aGlzLl9zY3JpcHQsICdsb2FkJykucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBmcm9tKHltYXBzLnJlYWR5KCkpLnBpcGUobWFwKCgpID0+IHltYXBzKSkpLFxuICAgICk7XG5cbiAgICBjb25zdCBlcnJvciA9IGZyb21FdmVudCh0aGlzLl9zY3JpcHQsICdlcnJvcicpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGUpID0+IHRocm93RXJyb3IoZSkpLFxuICAgICk7XG5cbiAgICByZXR1cm4gbWVyZ2UobG9hZCwgZXJyb3IpLnBpcGUodGFrZSgxKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBzY3JpcHQgc291cmNlIGJ5IGNvbmZpZ1xuICAgKiBAcGFyYW0gY29uZmlnIENvbmZpZyB3aXRoIHBhcmFtZXRlcnMgdGhhdCB3aWxsIGJlIGFkZGVkIGluIHNvdXJjZVxuICAgKiBAZXhhbXBsZSAnaHR0cHM6Ly9hcGktbWFwcy55YW5kZXgucnUvMi4xLz9hcGlrZXk9NjU4ZjY3YTItZmQ3Ny00MmU5LWI5OWUtMmJkNDhjNGNjYWQ0Jmxhbmc9ZW5fVVMnXG4gICAqL1xuICBwcml2YXRlIF9nZXRTY3JpcHRTb3VyY2UoY29uZmlnOiBZYUNvbmZpZyk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBlbnRlcnByaXNlLCB2ZXJzaW9uID0gJzIuMScsIC4uLnJlc3QgfSA9IGNvbmZpZztcbiAgICBjb25zdCBwYXJhbXMgPSB0aGlzLl9jb252ZXJ0Q29uZmlnSW50b1F1ZXJ5UGFyYW1zKHJlc3QpO1xuXG4gICAgcmV0dXJuIGBodHRwczovLyR7XG4gICAgICBlbnRlcnByaXNlID8gJ2VudGVycHJpc2UuJyA6ICcnXG4gICAgfWFwaS1tYXBzLnlhbmRleC5ydS8ke3ZlcnNpb259Lz8ke3BhcmFtc31gO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgY29uZmlnIGludG8gYSBxdWVyeSBzdHJpbmcgcGFyYW1ldGVyc1xuICAgKiBAcGFyYW0gY29uZmlnIG9iamVjdCBmb3IgY29udmVydGluZ1xuICAgKiBAZXhhbXBsZVxuICAgKiAvLyByZXR1cm5zIFwibGFuZz1ydV9SVSZhcGlrZXk9WFhYXCJcbiAgICogY29udmVydEludG9RdWVyeVBhcmFtcyh7IGxhbmc6ICdydV9SVScsIGFwaWtleTogJ1hYWCcgfSlcbiAgICovXG4gIHByaXZhdGUgX2NvbnZlcnRDb25maWdJbnRvUXVlcnlQYXJhbXMoY29uZmlnOiBZYUNvbmZpZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGNvbmZpZylcbiAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fT0ke3ZhbHVlfWApXG4gICAgICAuam9pbignJicpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyaXB0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvbGliL3NlcnZpY2VzL3NjcmlwdC9zY3JpcHQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQUdyRCxNQUFNLGNBQWMsR0FBYTtJQUMvQixJQUFJLEVBQUUsT0FBTztDQUNkLENBQUM7QUFFRjs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBT3hCLFlBQ2lDLE1BQXVCLEVBQzVCLFNBQW1CO1FBQW5CLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFFN0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLElBQUksY0FBYyxDQUFDO1FBRXhDLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUM7U0FDckM7YUFBTTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztTQUNqRDtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixJQUFJLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzNCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNuRDtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RELE1BQU0sQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7WUFDaEMsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pELE1BQU0sQ0FBQyxFQUFFLEdBQUcscUJBQXFCLENBQUM7WUFFbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDeEQ7UUFFRCxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQy9DLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQzVELENBQUM7UUFFRixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQ2pELFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2hDLENBQUM7UUFFRixPQUFPLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssZ0JBQWdCLENBQUMsTUFBZ0I7UUFDdkMsTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLEdBQUcsS0FBSyxLQUFjLE1BQU0sRUFBZixJQUFJLFVBQUssTUFBTSxFQUFqRCx5QkFBd0MsQ0FBUyxDQUFDO1FBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4RCxPQUFPLFdBQ0wsVUFBVSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQy9CLHNCQUFzQixPQUFPLEtBQUssTUFBTSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLDZCQUE2QixDQUFDLE1BQWdCO1FBQ3BELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDMUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO2FBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNmLENBQUM7Ozs7WUE1RUYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7NENBU0ksUUFBUSxZQUFJLE1BQU0sU0FBQyxTQUFTO1lBQ1EsUUFBUSx1QkFBNUMsTUFBTSxTQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tLCBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFlBX0NPTkZJRyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy9jb25zdGFudCc7XG5pbXBvcnQgeyBZYUNvbmZpZyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnJztcblxuY29uc3QgREVGQVVMVF9DT05GSUc6IFlhQ29uZmlnID0ge1xuICBsYW5nOiAncnVfUlUnLFxufTtcblxuLyoqXG4gKiBAZHluYW1pY1xuICpcbiAqIEBkZXNjcmlwdGlvbiBJbmplY3RhYmxlIHNlcnZpY2UgdGhhdCB3aWxsIGhhbmRsZSB0aGUgbG9hZGluZyBvZiBZYW5kZXguTWFwcyBzY3JpcHRcbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZGR1YnJhdmEuZ2l0aHViLmlvL2FuZ3VsYXI4LXlhbmRleC1tYXBzLyMvc2VydmljZXMvc2NyaXB0fVxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NyaXB0U2VydmljZSB7XG4gIHByaXZhdGUgX2NvbmZpZzogWWFDb25maWc7XG5cbiAgcHJpdmF0ZSBfc2NyaXB0OiBIVE1MU2NyaXB0RWxlbWVudDtcblxuICBwcml2YXRlIF93aW5kb3c6IFdpbmRvdztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFlBX0NPTkZJRykgY29uZmlnOiBZYUNvbmZpZyB8IG51bGwsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50LFxuICApIHtcbiAgICB0aGlzLl9jb25maWcgPSBjb25maWcgfHwgREVGQVVMVF9DT05GSUc7XG5cbiAgICBpZiAoZG9jdW1lbnQuZGVmYXVsdFZpZXcpIHtcbiAgICAgIHRoaXMuX3dpbmRvdyA9IGRvY3VtZW50LmRlZmF1bHRWaWV3O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2RvY3VtZW50LmRlZmF1bHRWaWV3IGlzIG51bGwnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSW5pdHMgWWFuZGV4Lk1hcHMgc2NyaXB0XG4gICAqL1xuICBwdWJsaWMgaW5pdFNjcmlwdCgpOiBPYnNlcnZhYmxlPHR5cGVvZiB5bWFwcz4ge1xuICAgIGlmICgneW1hcHMnIGluIHRoaXMuX3dpbmRvdykge1xuICAgICAgcmV0dXJuIGZyb20oeW1hcHMucmVhZHkoKSkucGlwZShtYXAoKCkgPT4geW1hcHMpKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuX3NjcmlwdCkge1xuICAgICAgY29uc3Qgc2NyaXB0ID0gdGhpcy5fZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgc2NyaXB0LnNyYyA9IHRoaXMuX2dldFNjcmlwdFNvdXJjZSh0aGlzLl9jb25maWcpO1xuICAgICAgc2NyaXB0LmlkID0gJ3lhbmRleE1hcHNBcGlTY3JpcHQnO1xuXG4gICAgICB0aGlzLl9zY3JpcHQgPSB0aGlzLl9kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7XG4gICAgfVxuXG4gICAgY29uc3QgbG9hZCA9IGZyb21FdmVudCh0aGlzLl9zY3JpcHQsICdsb2FkJykucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiBmcm9tKHltYXBzLnJlYWR5KCkpLnBpcGUobWFwKCgpID0+IHltYXBzKSkpLFxuICAgICk7XG5cbiAgICBjb25zdCBlcnJvciA9IGZyb21FdmVudCh0aGlzLl9zY3JpcHQsICdlcnJvcicpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGUpID0+IHRocm93RXJyb3IoZSkpLFxuICAgICk7XG5cbiAgICByZXR1cm4gbWVyZ2UobG9hZCwgZXJyb3IpLnBpcGUodGFrZSgxKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBzY3JpcHQgc291cmNlIGJ5IGNvbmZpZ1xuICAgKiBAcGFyYW0gY29uZmlnIENvbmZpZyB3aXRoIHBhcmFtZXRlcnMgdGhhdCB3aWxsIGJlIGFkZGVkIGluIHNvdXJjZVxuICAgKiBAZXhhbXBsZSAnaHR0cHM6Ly9hcGktbWFwcy55YW5kZXgucnUvMi4xLz9hcGlrZXk9NjU4ZjY3YTItZmQ3Ny00MmU5LWI5OWUtMmJkNDhjNGNjYWQ0Jmxhbmc9ZW5fVVMnXG4gICAqL1xuICBwcml2YXRlIF9nZXRTY3JpcHRTb3VyY2UoY29uZmlnOiBZYUNvbmZpZyk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBlbnRlcnByaXNlLCB2ZXJzaW9uID0gJzIuMScsIC4uLnJlc3QgfSA9IGNvbmZpZztcbiAgICBjb25zdCBwYXJhbXMgPSB0aGlzLl9jb252ZXJ0Q29uZmlnSW50b1F1ZXJ5UGFyYW1zKHJlc3QpO1xuXG4gICAgcmV0dXJuIGBodHRwczovLyR7XG4gICAgICBlbnRlcnByaXNlID8gJ2VudGVycHJpc2UuJyA6ICcnXG4gICAgfWFwaS1tYXBzLnlhbmRleC5ydS8ke3ZlcnNpb259Lz8ke3BhcmFtc31gO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgY29uZmlnIGludG8gYSBxdWVyeSBzdHJpbmcgcGFyYW1ldGVyc1xuICAgKiBAcGFyYW0gY29uZmlnIG9iamVjdCBmb3IgY29udmVydGluZ1xuICAgKiBAZXhhbXBsZVxuICAgKiAvLyByZXR1cm5zIFwibGFuZz1ydV9SVSZhcGlrZXk9WFhYXCJcbiAgICogY29udmVydEludG9RdWVyeVBhcmFtcyh7IGxhbmc6ICdydV9SVScsIGFwaWtleTogJ1hYWCcgfSlcbiAgICovXG4gIHByaXZhdGUgX2NvbnZlcnRDb25maWdJbnRvUXVlcnlQYXJhbXMoY29uZmlnOiBZYUNvbmZpZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGNvbmZpZylcbiAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fT0ke3ZhbHVlfWApXG4gICAgICAuam9pbignJicpO1xuICB9XG59XG4iXX0=

@@ -8,2 +8,2 @@ /**

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVSYW5kb21JZC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvIiwic291cmNlcyI6WyJsaWIvdXRpbHMvZ2VuZXJhdGVSYW5kb21JZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFXLEVBQUU7SUFDM0MsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDL0MsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZXMgYSByYW5kb20gc3RyaW5nIGJhc2VkIG9uIERhdGUgaW4gaGV4YWRlY2ltYWwgbnVtZXJhbCBzeXN0ZW1cbiAqIEBleGFtcGxlIGYxNzU1MTdmYTRmM1xuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVSYW5kb21JZCA9ICgpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gYGYke051bWJlcihuZXcgRGF0ZSgpKS50b1N0cmluZygxNil9YDtcbn07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGVSYW5kb21JZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9saWIvdXRpbHMvZ2VuZXJhdGVSYW5kb21JZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFXLEVBQUU7SUFDM0MsT0FBTyxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDL0MsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZXMgYSByYW5kb20gc3RyaW5nIGJhc2VkIG9uIERhdGUgaW4gaGV4YWRlY2ltYWwgbnVtZXJhbCBzeXN0ZW1cbiAqIEBleGFtcGxlIGYxNzU1MTdmYTRmM1xuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVSYW5kb21JZCA9ICgpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gYGYke051bWJlcihuZXcgRGF0ZSgpKS50b1N0cmluZygxNil9YDtcbn07XG4iXX0=

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

export * from './lib/directives/ya-placemark/ya-placemark.directive';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyOC15YW5kZXgtbWFwcy9zcmMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJEQUEyRDtBQUUzRDs7R0FFRztBQUVILFNBQVM7QUFDVCxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELGFBQWE7QUFDYixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxZQUFZO0FBQ1osY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxXQUFXO0FBQ1gsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxhQUFhO0FBQ2IsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLG9EQUFvRCxDQUFDO0FBRW5FLGFBQWE7QUFDYixjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsc0RBQXNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi9saWIvdHlwaW5ncy95YW5kZXgtbWFwcy9pbmRleC50c1wiIC8+XG5cbi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYW5ndWxhcjgteWFuZGV4LW1hcHNcbiAqL1xuXG4vLyBNb2R1bGVcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FuZ3VsYXIteWFuZGV4LW1hcHMubW9kdWxlJztcblxuLy8gSW50ZXJmYWNlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlcy9ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL2NvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL2NvbnRyb2wtdHlwZSc7XG5cbi8vIENvbnN0YW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL2NvbnN0YW50JztcblxuLy8gU2VydmljZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3NjcmlwdC9zY3JpcHQuc2VydmljZSc7XG5cbi8vIENvbXBvbmVudHNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1wYW5vcmFtYS95YS1wYW5vcmFtYS5jb21wb25lbnQnO1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3lhLWNsdXN0ZXJlci95YS1jbHVzdGVyZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3lhLWdlb29iamVjdC95YS1nZW9vYmplY3QuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3lhLXBsYWNlbWFyay95YS1wbGFjZW1hcmsuZGlyZWN0aXZlJztcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXI4LXlhbmRleC1tYXBzL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDJEQUEyRDtBQUUzRDs7R0FFRztBQUVILFNBQVM7QUFDVCxjQUFjLGtDQUFrQyxDQUFDO0FBRWpELGFBQWE7QUFDYixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUU5QyxZQUFZO0FBQ1osY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxXQUFXO0FBQ1gsY0FBYyxzQ0FBc0MsQ0FBQztBQUVyRCxhQUFhO0FBQ2IsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLG9EQUFvRCxDQUFDO0FBRW5FLGFBQWE7QUFDYixjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHdEQUF3RCxDQUFDO0FBQ3ZFLGNBQWMsc0RBQXNELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi9saWIvdHlwaW5ncy95YW5kZXgtbWFwcy9pbmRleC50c1wiIC8+XG5cbi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYW5ndWxhcjgteWFuZGV4LW1hcHNcbiAqL1xuXG4vLyBNb2R1bGVcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FuZ3VsYXIteWFuZGV4LW1hcHMubW9kdWxlJztcblxuLy8gSW50ZXJmYWNlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlcy9ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL2NvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL2NvbnRyb2wtdHlwZSc7XG5cbi8vIENvbnN0YW50c1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL2NvbnN0YW50JztcblxuLy8gU2VydmljZXNcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3NjcmlwdC9zY3JpcHQuc2VydmljZSc7XG5cbi8vIENvbXBvbmVudHNcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMveWEtbWFwL3lhLW1hcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy95YS1wYW5vcmFtYS95YS1wYW5vcmFtYS5jb21wb25lbnQnO1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3lhLWNsdXN0ZXJlci95YS1jbHVzdGVyZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMveWEtY29udHJvbC95YS1jb250cm9sLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3lhLWdlb29iamVjdC95YS1nZW9vYmplY3QuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMveWEtbXVsdGlyb3V0ZS95YS1tdWx0aXJvdXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3lhLXBsYWNlbWFyay95YS1wbGFjZW1hcmsuZGlyZWN0aXZlJztcbiJdfQ==
import { EventEmitter, NgZone, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { YaEvent } from '../../interfaces/event';
import { Optional } from '../../utils/optional';
/**

@@ -13,2 +14,3 @@ * Directive for creating Multi-route on the map.

* Reference points for the multi-route.
* Shorthand for [model]="{ referencePoints: [0, 0] }"
* @see {@link https://tech.yandex.ru/maps/jsapi/doc/2.1/ref/reference/IMultiRouteReferencePoint-docpage/}

@@ -19,4 +21,5 @@ */

* Model description object of a multiroute.
* referencePoints input is required so prop can be ignored
*/
model: ymaps.IMultiRouteModelJson;
model: Optional<ymaps.IMultiRouteModelJson, 'referencePoints'>;
/**

@@ -23,0 +26,0 @@ * Options for the multiroute.

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

@@ -42,2 +42,2 @@ "repository": {

"sideEffects": false
}
}

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

[![npm version](https://badge.fury.io/js/angular8-yandex-maps.svg)](https://badge.fury.io/js/angular8-yandex-maps) ![npm bundle size](https://img.shields.io/bundlephobia/min/angular8-yandex-maps) ![npm](https://img.shields.io/npm/dm/angular8-yandex-maps) [![chat on Telegram](https://img.shields.io/badge/chat%20on-Telegram-brightgreen.svg)](https://t.me/angular_yandex_maps) ![GitHub stars](https://img.shields.io/github/stars/ddubrava/angular8-yandex-maps?style=social)
![npm version](https://badgen.net/npm/v/angular8-yandex-maps?color=green) ![github status](https://badgen.net/github/status/ddubrava/angular8-yandex-maps) ![npm downloads](https://badgen.net/npm/dm/angular8-yandex-maps) ![package size](https://badgen.net/bundlephobia/min/angular8-yandex-maps?color=green) ![github stars](https://badgen.net/github/stars/ddubrava/angular8-yandex-maps?color=green)

@@ -21,5 +21,11 @@ # Angular8-yandex-maps

Versions now follow Angular's version to easily reflect compatibility.
Meaning, for Angular 6, use
#### Version compatibility
| Angular version | Library Version | Documentation |
| --------------- | --------------- | --------------------------------------------------------------------------------- |
| v9, v10, v11 | v11.x | [DOCUMENTATION](https://ddubrava.github.io/angular8-yandex-maps/#/) |
| v8 | v8.x | [DOCUMENTATION](https://github.com/ddubrava/angular8-yandex-maps/tree/8.0.0/docs) |
| v7 | v7.x | [DOCUMENTATION](https://github.com/ddubrava/angular8-yandex-maps/tree/7.0.0/docs) |
| v6 | v6.x | [DOCUMENTATION](https://github.com/ddubrava/angular8-yandex-maps/tree/6.0.0/docs) |
```bash

@@ -26,0 +32,0 @@ npm install angular8-yandex-maps@^6.0.0

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

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

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc