text: /**
   * @license Angular v4.3.5
   * (c) 2010-2017 Google, Inc. https://angular.io/
   * License: MIT
   */
  !function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/core")):"function"==typeof define&&define.amd?define(["exports","@angular/core"],factory):factory((global.ng=global.ng||{},global.ng.upgrade=global.ng.upgrade||{},global.ng.upgrade.static=global.ng.upgrade.static||{}),global.ng.core)}(this,function(exports,_angular_core){"use strict";/**
   * @license Angular v4.3.5
   * (c) 2010-2017 Google, Inc. https://angular.io/
   * License: MIT
   */
  /**
   * @license
   * Copyright Google Inc. All Rights Reserved.
   *
   * Use of this source code is governed by an MIT-style license that can be
   * found in the LICENSE file at https://angular.io/license
   */
  function noNg(){throw new Error("AngularJS v1.x is not loaded!")}function setAngularLib(ng){angular=ng}function getAngularLib(){return angular}function controllerKey(name){return"$"+name+"Controller"}function directiveNormalize(name){return name.replace(DIRECTIVE_PREFIX_REGEXP,"").replace(DIRECTIVE_SPECIAL_CHARS_REGEXP,function(_,letter){return letter.toUpperCase()})}function getComponentName(component){return component.overriddenName||component.name||component.toString().split("\n")[0]}function isFunction(value){return"function"==typeof value}function supportsNgModel(component){return"function"==typeof component.writeValue&&"function"==typeof component.registerOnChange}function hookupNgModel(ngModel,component){ngModel&&supportsNgModel(component)&&(ngModel.$render=function(){component.writeValue(ngModel.$viewValue)},component.registerOnChange(ngModel.$setViewValue.bind(ngModel)))}function strictEquals(val1,val2){return val1===val2||val1!==val1&&val2!==val2}function groupNodesBySelector(ngContentSelectors,nodes){for(var projectableNodes=[],i=0,ii=ngContentSelectors.length;i<ii;++i)projectableNodes[i]=[];for(var j=0,jj=nodes.length;j<jj;++j){var node=nodes[j],ngContentIndex=findMatchingNgContentIndex(node,ngContentSelectors);null!=ngContentIndex&&projectableNodes[ngContentIndex].push(node)}return projectableNodes}function findMatchingNgContentIndex(element,ngContentSelectors){for(var ngContentIndices=[],wildcardNgContentIndex=-1,i=0;i<ngContentSelectors.length;i++){var selector=ngContentSelectors[i];"*"===selector?wildcardNgContentIndex=i:matchesSelector(element,selector)&&ngContentIndices.push(i)}return ngContentIndices.sort(),wildcardNgContentIndex!==-1&&ngContentIndices.push(wildcardNgContentIndex),ngContentIndices.length?ngContentIndices[0]:null}function matchesSelector(el,selector){if(!_matches){var elProto=Element.prototype;_matches=elProto.matches||elProto.matchesSelector||elProto.mozMatchesSelector||elProto.msMatchesSelector||elProto.oMatchesSelector||elProto.webkitMatchesSelector}return el.nodeType===Node.ELEMENT_NODE&&_matches.call(el,selector)}function downgradeComponent(info){var idPrefix="NG2_UPGRADE_"+downgradeCount++ +"_",idCount=0,directiveFactory=function($compile,$injector,$parse){return{restrict:"E",terminal:!0,require:[REQUIRE_INJECTOR,REQUIRE_NG_MODEL],link:function(scope,element,attrs,required){var parentInjector=required[0]||$injector.get(INJECTOR_KEY),ngModel=required[1],downgradeFn=function(injector){var componentFactoryResolver=injector.get(_angular_core.ComponentFactoryResolver),componentFactory=componentFactoryResolver.resolveComponentFactory(info.component);if(!componentFactory)throw new Error("Expecting ComponentFactory for: "+getComponentName(info.component));var id=idPrefix+idCount++,injectorPromise=new ParentInjectorPromise(element),facade=new DowngradeComponentAdapter(id,element,attrs,scope,ngModel,injector,$injector,$compile,$parse,componentFactory),projectableNodes=facade.compileContents();facade.createComponent(projectableNodes),facade.setupInputs(),facade.setupOutputs(),facade.registerCleanup(),injectorPromise.resolve(facade.getInjector())};parentInjector instanceof ParentInjectorPromise?parentInjector.then(downgradeFn):downgradeFn(parentInjector)}}};return directiveFactory.$inject=[$COMPILE,$INJECTOR,$PARSE],directiveFactory}/**
   * @license
   * Copyright Google Inc. All Rights Reserved.
   *
   * Use of this source code is governed by an MIT-style license that can be
   * found in the LICENSE file at https://angular.io/license
   */
  function downgradeInjectable(token){var factory=function(i){return i.get(token)};return factory.$inject=[INJECTOR_KEY],factory}function getOrCall(property){return isFunction(property)?property():property}function isMap(value){return value&&!Array.isArray(value)&&"object"==typeof value}function notSupported(name,feature){throw new Error("Upgraded directive '"+name+"' contains unsupported feature: '"+feature+"'.")}function setTempInjectorRef(injector){tempInjectorRef=injector}function injectorFactory(){if(!tempInjectorRef)throw new Error("Trying to get the AngularJS injector before it being set.");var injector=tempInjectorRef;return tempInjectorRef=null,injector}function rootScopeFactory(i){return i.get("$rootScope")}function compileFactory(i){return i.get("$compile")}function parseFactory(i){return i.get("$parse")}var angular={bootstrap:noNg,module:noNg,element:noNg,version:noNg,resumeBootstrap:noNg,getTestability:noNg};try{window.hasOwnProperty("angular")&&(angular=window.angular)}catch(e){}var _matches,tempInjectorRef,bootstrap=function(e,modules,config){return angular.bootstrap(e,modules,config)},module$1=function(prefix,dependencies){return angular.module(prefix,dependencies)},element=function(e){return angular.element(e)},$COMPILE="$compile",$CONTROLLER="$controller",$DELEGATE="$delegate",$HTTP_BACKEND="$httpBackend",$INJECTOR="$injector",$INTERVAL="$interval",$PARSE="$parse",$PROVIDE="$provide",$SCOPE="$scope",$TEMPLATE_CACHE="$templateCache",$$TESTABILITY="$$testability",INJECTOR_KEY="$$angularInjector",REQUIRE_INJECTOR="?^^"+INJECTOR_KEY,REQUIRE_NG_MODEL="?ngModel",UPGRADE_MODULE_NAME="$$UpgradeModule",PropertyBinding=function(){function PropertyBinding(prop,attr){this.prop=prop,this.attr=attr,this.parseBinding()}return PropertyBinding.prototype.parseBinding=function(){this.bracketAttr="["+this.attr+"]",this.parenAttr="("+this.attr+")",this.bracketParenAttr="[("+this.attr+")]";var capitalAttr=this.attr.charAt(0).toUpperCase()+this.attr.substr(1);this.onAttr="on"+capitalAttr,this.bindAttr="bind"+capitalAttr,this.bindonAttr="bindon"+capitalAttr},PropertyBinding}(),DIRECTIVE_PREFIX_REGEXP=/^(?:x|data)[:\-_]/i,DIRECTIVE_SPECIAL_CHARS_REGEXP=/[:\-_]+(.)/g,INITIAL_VALUE={__UNINITIALIZED__:!0},DowngradeComponentAdapter=function(){function DowngradeComponentAdapter(id,element,attrs,scope,ngModel,parentInjector,$injector,$compile,$parse,componentFactory){this.id=id,this.element=element,this.attrs=attrs,this.scope=scope,this.ngModel=ngModel,this.parentInjector=parentInjector,this.$injector=$injector,this.$compile=$compile,this.$parse=$parse,this.componentFactory=componentFactory,this.inputChangeCount=0,this.inputChanges=null,this.componentRef=null,this.component=null,this.changeDetector=null,this.element[0].id=id,this.componentScope=scope.$new()}return DowngradeComponentAdapter.prototype.compileContents=function(){var _this=this,compiledProjectableNodes=[],projectableNodes=this.groupProjectableNodes(),linkFns=projectableNodes.map(function(nodes){return _this.$compile(nodes)});return this.element.empty(),linkFns.forEach(function(linkFn){linkFn(_this.scope,function(clone){compiledProjectableNodes.push(clone),_this.element.append(clone)})}),compiledProjectableNodes},DowngradeComponentAdapter.prototype.createComponent=function(projectableNodes){var childInjector=_angular_core.ReflectiveInjector.resolveAndCreate([{provide:$SCOPE,useValue:this.componentScope}],this.parentInjector);this.componentRef=this.componentFactory.create(childInjector,projectableNodes,this.element[0]),this.changeDetector=this.componentRef.changeDetectorRef,this.component=this.componentRef.instance,hookupNgModel(this.ngModel,this.component)},DowngradeComponentAdapter.prototype.setupInputs=function(){for(var _this=this,attrs=this.attrs,inputs=this.componentFactory.inputs||[],_loop_1=function(i){var input=new PropertyBinding(inputs[i].propName,inputs[i].templateName),expr=null;if(attrs.hasOwnProperty(input.attr)){var observeFn_1=function(prop){var prevValue=INITIAL_VALUE;return function(currValue){strictEquals(prevValue,currValue)||(prevValue===INITIAL_VALUE&&(prevValue=currValue),_this.updateInput(prop,prevValue,currValue),prevValue=currValue)}}(input.prop);attrs.$observe(input.attr,observeFn_1);var unwatch_1=this_1.componentScope.$watch(function(){unwatch_1(),unwatch_1=null,observeFn_1(attrs[input.attr])})}else attrs.hasOwnProperty(input.bindAttr)?expr=attrs[input.bindAttr]:attrs.hasOwnProperty(input.bracketAttr)?expr=attrs[input.bracketAttr]:attrs.hasOwnProperty(input.bindonAttr)?expr=attrs[input.bindonAttr]:attrs.hasOwnProperty(input.bracketParenAttr)&&(expr=attrs[input.bracketParenAttr]);if(null!=expr){var watchFn=function(prop){return function(currValue,prevValue){return _this.updateInput(prop,prevValue,currValue)}}(input.prop);this_1.componentScope.$watch(expr,watchFn)}},this_1=this,i=0;i<inputs.length;i++)_loop_1(i);var prototype=this.componentFactory.componentType.prototype;prototype&&prototype.ngOnChanges&&(this.inputChanges={},this.componentScope.$watch(function(){return _this.inputChangeCount},function(){var inputChanges=_this.inputChanges;_this.inputChanges={},_this.component.ngOnChanges(inputChanges)})),this.componentScope.$watch(function(){return _this.changeDetector&&_this.changeDetector.detectChanges()})},DowngradeComponentAdapter.prototype.setupOutputs=function(){for(var _this=this,attrs=this.attrs,outputs=this.componentFactory.outputs||[],_loop_2=function(j){var output=new PropertyBinding(outputs[j].propName,outputs[j].templateName),expr=null,assignExpr=!1,bindonAttr=output.bindonAttr.substring(0,output.bindonAttr.length-6),bracketParenAttr="[("+output.bracketParenAttr.substring(2,output.bracketParenAttr.length-8)+")]";if(attrs.hasOwnProperty(output.onAttr)?expr=attrs[output.onAttr]:attrs.hasOwnProperty(output.parenAttr)?expr=attrs[output.parenAttr]:attrs.hasOwnProperty(bindonAttr)?(expr=attrs[bindonAttr],assignExpr=!0):attrs.hasOwnProperty(bracketParenAttr)&&(expr=attrs[bracketParenAttr],assignExpr=!0),null!=expr&&null!=assignExpr){var getter_1=this_2.$parse(expr),setter_1=getter_1.assign;if(assignExpr&&!setter_1)throw new Error("Expression '"+expr+"' is not assignable!");var emitter=this_2.component[output.prop];if(!emitter)throw new Error("Missing emitter '"+output.prop+"' on component '"+getComponentName(this_2.componentFactory.componentType)+"'!");emitter.subscribe({next:assignExpr?function(v){return setter_1(_this.scope,v)}:function(v){return getter_1(_this.scope,{$event:v})}})}},this_2=this,j=0;j<outputs.length;j++)_loop_2(j)},DowngradeComponentAdapter.prototype.registerCleanup=function(){var _this=this;this.element.bind("$destroy",function(){_this.componentScope.$destroy(),_this.componentRef.destroy()})},DowngradeComponentAdapter.prototype.getInjector=function(){return this.componentRef&&this.componentRef.injector},DowngradeComponentAdapter.prototype.updateInput=function(prop,prevValue,currValue){this.inputChanges&&(this.inputChangeCount++,this.inputChanges[prop]=new _angular_core.SimpleChange(prevValue,currValue,prevValue===currValue)),this.component[prop]=currValue},DowngradeComponentAdapter.prototype.groupProjectableNodes=function(){var ngContentSelectors=this.componentFactory.ngContentSelectors;return groupNodesBySelector(ngContentSelectors,this.element.contents())},DowngradeComponentAdapter}(),downgradeCount=0,ParentInjectorPromise=function(){function ParentInjectorPromise(element){this.element=element,this.injectorKey=controllerKey(INJECTOR_KEY),this.callbacks=[],element.data(this.injectorKey,this)}return ParentInjectorPromise.prototype.then=function(callback){this.injector?callback(this.injector):this.callbacks.push(callback)},ParentInjectorPromise.prototype.resolve=function(injector){this.injector=injector,this.element.data(this.injectorKey,injector),this.element=null,this.callbacks.forEach(function(callback){return callback(injector)}),this.callbacks.length=0},ParentInjectorPromise}(),VERSION=new _angular_core.Version("4.3.5"),REQUIRE_PREFIX_RE=/^(\^\^?)?(\?)?(\^\^?)?/,UpgradeHelper=function(){function UpgradeHelper(injector,name,elementRef,directive){this.injector=injector,this.name=name,this.$injector=injector.get($INJECTOR),this.$compile=this.$injector.get($COMPILE),this.$controller=this.$injector.get($CONTROLLER),this.element=elementRef.nativeElement,this.$element=element(this.element),this.directive=directive||UpgradeHelper.getDirective(this.$injector,name)}return UpgradeHelper.getDirective=function($injector,name){var directives=$injector.get(name+"Directive");if(directives.length>1)throw new Error("Only support single directive definition for: "+name);var directive=directives[0];return directive.compile&&!directive.link&&notSupported(name,"compile"),directive.replace&&notSupported(name,"replace"),directive.terminal&&notSupported(name,"terminal"),directive},UpgradeHelper.getTemplate=function($injector,directive,fetchRemoteTemplate){if(void 0===fetchRemoteTemplate&&(fetchRemoteTemplate=!1),void 0!==directive.template)return getOrCall(directive.template);if(directive.templateUrl){var $templateCache_1=$injector.get($TEMPLATE_CACHE),url_1=getOrCall(directive.templateUrl),template=$templateCache_1.get(url_1);if(void 0!==template)return template;if(!fetchRemoteTemplate)throw new Error("loading directive templates asynchronously is not supported");return new Promise(function(resolve,reject){var $httpBackend=$injector.get($HTTP_BACKEND);$httpBackend("GET",url_1,null,function(status,response){200===status?resolve($templateCache_1.put(url_1,response)):reject("GET component template from '"+url_1+"' returned '"+status+": "+response+"'")})})}throw new Error("Directive '"+directive.name+"' is not a component, it is missing template.")},UpgradeHelper.prototype.buildController=function(controllerType,$scope){var locals={$scope:$scope,$element:this.$element},controller=this.$controller(controllerType,locals,null,this.directive.controllerAs);return this.$element.data(controllerKey(this.directive.name),controller),controller},UpgradeHelper.prototype.compileTemplate=function(template){return void 0===template&&(template=UpgradeHelper.getTemplate(this.$injector,this.directive)),this.compileHtml(template)},UpgradeHelper.prototype.prepareTransclusion=function(){var _this=this,transclude=this.directive.transclude,contentChildNodes=this.extractChildNodes(),$template=contentChildNodes,attachChildrenFn=function(scope,cloneAttach){return cloneAttach($template,scope)};if(transclude){var slots_1=Object.create(null);if("object"==typeof transclude){$template=[];var slotMap_1=Object.create(null),filledSlots_1=Object.create(null);Object.keys(transclude).forEach(function(slotName){var selector=transclude[slotName],optional="?"===selector.charAt(0);selector=optional?selector.substring(1):selector,slotMap_1[selector]=slotName,slots_1[slotName]=null,filledSlots_1[slotName]=optional}),contentChildNodes.forEach(function(node){var slotName=slotMap_1[directiveNormalize(node.nodeName.toLowerCase())];slotName?(filledSlots_1[slotName]=!0,slots_1[slotName]=slots_1[slotName]||[],slots_1[slotName].push(node)):$template.push(node)}),Object.keys(filledSlots_1).forEach(function(slotName){if(!filledSlots_1[slotName])throw new Error("Required transclusion slot '"+slotName+"' on directive: "+_this.name)}),Object.keys(slots_1).filter(function(slotName){return slots_1[slotName]}).forEach(function(slotName){var nodes=slots_1[slotName];slots_1[slotName]=function(scope,cloneAttach){return cloneAttach(nodes,scope)}})}attachChildrenFn.$$slots=slots_1,$template.forEach(function(node){node.nodeType!==Node.TEXT_NODE||node.nodeValue||(node.nodeValue="‌")})}return attachChildrenFn},UpgradeHelper.prototype.resolveAndBindRequiredControllers=function(controllerInstance){var directiveRequire=this.getDirectiveRequire(),requiredControllers=this.resolveRequire(directiveRequire);if(controllerInstance&&this.directive.bindToController&&isMap(directiveRequire)){var requiredControllersMap_1=requiredControllers;Object.keys(requiredControllersMap_1).forEach(function(key){controllerInstance[key]=requiredControllersMap_1[key]})}return requiredControllers},UpgradeHelper.prototype.compileHtml=function(html){return this.element.innerHTML=html,this.$compile(this.element.childNodes)},UpgradeHelper.prototype.extractChildNodes=function(){for(var childNode,childNodes=[];childNode=this.element.firstChild;)this.element.removeChild(childNode),childNodes.push(childNode);return childNodes},UpgradeHelper.prototype.getDirectiveRequire=function(){var require=this.directive.require||this.directive.controller&&this.directive.name;return isMap(require)&&Object.keys(require).forEach(function(key){var value=require[key],match=value.match(REQUIRE_PREFIX_RE),name=value.substring(match[0].length);name||(require[key]=match[0]+key)}),require},UpgradeHelper.prototype.resolveRequire=function(require,controllerInstance){var _this=this;if(require){if(Array.isArray(require))return require.map(function(req){return _this.resolveRequire(req)});if("object"==typeof require){var value_1={};return Object.keys(require).forEach(function(key){return value_1[key]=_this.resolveRequire(require[key])}),value_1}if("string"==typeof require){var match=require.match(REQUIRE_PREFIX_RE),inheritType=match[1]||match[3],name_1=require.substring(match[0].length),isOptional=!!match[2],searchParents=!!inheritType,startOnParent="^^"===inheritType,ctrlKey=controllerKey(name_1),elem=startOnParent?this.$element.parent():this.$element,value=searchParents?elem.inheritedData(ctrlKey):elem.data(ctrlKey);if(!value&&!isOptional)throw new Error("Unable to find required '"+require+"' in upgraded directive '"+this.name+"'.");return value}throw new Error("Unrecognized 'require' syntax on upgraded directive '"+this.name+"': "+require)}return null},UpgradeHelper}(),NOT_SUPPORTED="NOT_SUPPORTED",INITIAL_VALUE$1={__UNINITIALIZED__:!0},Bindings=function(){function Bindings(){this.twoWayBoundProperties=[],this.twoWayBoundLastValues=[],this.expressionBoundProperties=[],this.propertyToOutputMap={}}return Bindings}(),UpgradeComponent=function(){function UpgradeComponent(name,elementRef,injector){this.name=name,this.elementRef=elementRef,this.injector=injector,this.helper=new UpgradeHelper(injector,name,elementRef),this.$injector=this.helper.$injector,this.element=this.helper.element,this.$element=this.helper.$element,this.directive=this.helper.directive,this.bindings=this.initializeBindings(this.directive);var $parentScope=injector.get($SCOPE);this.$componentScope=$parentScope.$new(!!this.directive.scope),this.initializeOutputs()}return UpgradeComponent.prototype.ngOnInit=function(){var _this=this,attachChildNodes=this.helper.prepareTransclusion(),linkFn=this.helper.compileTemplate(),controllerType=this.directive.controller,bindToController=this.directive.bindToController;if(controllerType)this.controllerInstance=this.helper.buildController(controllerType,this.$componentScope);else if(bindToController)throw new Error("Upgraded directive '"+this.directive.name+"' specifies 'bindToController' but no controller.");this.bindingDestination=bindToController?this.controllerInstance:this.$componentScope,this.bindOutputs();var requiredControllers=this.helper.resolveAndBindRequiredControllers(this.controllerInstance);if(this.pendingChanges&&(this.forwardChanges(this.pendingChanges),this.pendingChanges=null),this.controllerInstance&&isFunction(this.controllerInstance.$onInit)&&this.controllerInstance.$onInit(),this.controllerInstance&&isFunction(this.controllerInstance.$doCheck)){var callDoCheck=function(){return _this.controllerInstance.$doCheck()};this.unregisterDoCheckWatcher=this.$componentScope.$parent.$watch(callDoCheck),callDoCheck()}var link=this.directive.link,preLink="object"==typeof link&&link.pre,postLink="object"==typeof link?link.post:link,attrs=NOT_SUPPORTED,transcludeFn=NOT_SUPPORTED;preLink&&preLink(this.$componentScope,this.$element,attrs,requiredControllers,transcludeFn),linkFn(this.$componentScope,null,{parentBoundTranscludeFn:attachChildNodes}),postLink&&postLink(this.$componentScope,this.$element,attrs,requiredControllers,transcludeFn),this.controllerInstance&&isFunction(this.controllerInstance.$postLink)&&this.controllerInstance.$postLink()},UpgradeComponent.prototype.ngOnChanges=function(changes){this.bindingDestination?this.forwardChanges(changes):this.pendingChanges=changes},UpgradeComponent.prototype.ngDoCheck=function(){var _this=this,twoWayBoundProperties=this.bindings.twoWayBoundProperties,twoWayBoundLastValues=this.bindings.twoWayBoundLastValues,propertyToOutputMap=this.bindings.propertyToOutputMap;twoWayBoundProperties.forEach(function(propName,idx){var newValue=_this.bindingDestination[propName],oldValue=twoWayBoundLastValues[idx];if(!_angular_core.ɵlooseIdentical(newValue,oldValue)){var outputName=propertyToOutputMap[propName],eventEmitter=_this[outputName];eventEmitter.emit(newValue),twoWayBoundLastValues[idx]=newValue}})},UpgradeComponent.prototype.ngOnDestroy=function(){isFunction(this.unregisterDoCheckWatcher)&&this.unregisterDoCheckWatcher(),this.controllerInstance&&isFunction(this.controllerInstance.$onDestroy)&&this.controllerInstance.$onDestroy(),this.$componentScope.$destroy()},UpgradeComponent.prototype.initializeBindings=function(directive){var _this=this,btcIsObject="object"==typeof directive.bindToController;if(btcIsObject&&Object.keys(directive.scope).length)throw new Error("Binding definitions on scope and controller at the same time is not supported.");var context=btcIsObject?directive.bindToController:directive.scope,bindings=new Bindings;return"object"==typeof context&&Object.keys(context).forEach(function(propName){var definition=context[propName],bindingType=definition.charAt(0);switch(bindingType){case"@":case"<":break;case"=":bindings.twoWayBoundProperties.push(propName),bindings.twoWayBoundLastValues.push(INITIAL_VALUE$1),bindings.propertyToOutputMap[propName]=propName+"Change";break;case"&":bindings.expressionBoundProperties.push(propName),bindings.propertyToOutputMap[propName]=propName;break;default:var json=JSON.stringify(context);throw new Error("Unexpected mapping '"+bindingType+"' in '"+json+"' in '"+_this.name+"' directive.")}}),bindings},UpgradeComponent.prototype.initializeOutputs=function(){var _this=this;this.bindings.twoWayBoundProperties.concat(this.bindings.expressionBoundProperties).forEach(function(propName){var outputName=_this.bindings.propertyToOutputMap[propName];_this[outputName]=new _angular_core.EventEmitter})},UpgradeComponent.prototype.bindOutputs=function(){var _this=this;this.bindings.expressionBoundProperties.forEach(function(propName){var outputName=_this.bindings.propertyToOutputMap[propName],emitter=_this[outputName];_this.bindingDestination[propName]=function(value){return emitter.emit(value)}})},UpgradeComponent.prototype.forwardChanges=function(changes){var _this=this;Object.keys(changes).forEach(function(propName){return _this.bindingDestination[propName]=changes[propName].currentValue}),isFunction(this.bindingDestination.$onChanges)&&this.bindingDestination.$onChanges(changes)},UpgradeComponent}(),angular1Providers=[{provide:"$injector",useFactory:injectorFactory},{provide:"$rootScope",useFactory:rootScopeFactory,deps:["$injector"]},{provide:"$compile",useFactory:compileFactory,deps:["$injector"]},{provide:"$parse",useFactory:parseFactory,deps:["$injector"]}],UpgradeModule=function(){function UpgradeModule(injector,ngZone){this.ngZone=ngZone,this.injector=new NgAdapterInjector(injector)}return UpgradeModule.prototype.bootstrap=function(element$$1,modules,config){var _this=this;void 0===modules&&(modules=[]);var INIT_MODULE_NAME=UPGRADE_MODULE_NAME+".init",upgradeModule=(module$1(INIT_MODULE_NAME,[]).value(INJECTOR_KEY,this.injector).config([$PROVIDE,$INJECTOR,function($provide,$injector){$injector.has($$TESTABILITY)&&$provide.decorator($$TESTABILITY,[$DELEGATE,function(testabilityDelegate){var originalWhenStable=testabilityDelegate.whenStable,injector=_this.injector,newWhenStable=function(callback){originalWhenStable.call(testabilityDelegate,function(){var ng2Testability=injector.get(_angular_core.Testability);ng2Testability.isStable()?callback():ng2Testability.whenStable(newWhenStable.bind(testabilityDelegate,callback))})};return testabilityDelegate.whenStable=newWhenStable,testabilityDelegate}]),$injector.has($INTERVAL)&&$provide.decorator($INTERVAL,[$DELEGATE,function(intervalDelegate){var wrappedInterval=function(fn,delay,count,invokeApply){for(var pass=[],_i=4;_i<arguments.length;_i++)pass[_i-4]=arguments[_i];return _this.ngZone.runOutsideAngular(function(){return intervalDelegate.apply(void 0,[function(){for(var args=[],_i=0;_i<arguments.length;_i++)args[_i]=arguments[_i];setTimeout(function(){_this.ngZone.run(function(){return fn.apply(void 0,args)})})},delay,count,invokeApply].concat(pass))})};return wrappedInterval.cancel=intervalDelegate.cancel,wrappedInterval}])}]).run([$INJECTOR,function($injector){_this.$injector=$injector,setTempInjectorRef($injector),_this.injector.get($INJECTOR),element(element$$1).data(controllerKey(INJECTOR_KEY),_this.injector),setTimeout(function(){var $rootScope=$injector.get("$rootScope"),subscription=_this.ngZone.onMicrotaskEmpty.subscribe(function(){return $rootScope.$digest()});$rootScope.$on("$destroy",function(){subscription.unsubscribe()})},0)}]),module$1(UPGRADE_MODULE_NAME,[INIT_MODULE_NAME].concat(modules))),windowAngular=window.angular;if(windowAngular.resumeBootstrap=void 0,this.ngZone.run(function(){bootstrap(element$$1,[upgradeModule.name],config)}),windowAngular.resumeBootstrap){var originalResumeBootstrap_1=windowAngular.resumeBootstrap,ngZone_1=this.ngZone;windowAngular.resumeBootstrap=function(){var _this=this,args=arguments;windowAngular.resumeBootstrap=originalResumeBootstrap_1,ngZone_1.run(function(){windowAngular.resumeBootstrap.apply(_this,args)})}}},UpgradeModule}();UpgradeModule.decorators=[{type:_angular_core.NgModule,args:[{providers:[angular1Providers]}]}],UpgradeModule.ctorParameters=function(){return[{type:_angular_core.Injector},{type:_angular_core.NgZone}]};var NgAdapterInjector=function(){function NgAdapterInjector(modInjector){this.modInjector=modInjector}return NgAdapterInjector.prototype.get=function(token,notFoundValue){return notFoundValue===_angular_core.ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR?notFoundValue:this.modInjector.get(token,notFoundValue)},NgAdapterInjector}();exports.ɵe=angular1Providers,exports.ɵc=compileFactory,exports.ɵa=injectorFactory,exports.ɵd=parseFactory,exports.ɵb=rootScopeFactory,exports.getAngularLib=getAngularLib,exports.setAngularLib=setAngularLib,exports.downgradeComponent=downgradeComponent,exports.downgradeInjectable=downgradeInjectable,exports.VERSION=VERSION,exports.UpgradeComponent=UpgradeComponent,exports.UpgradeModule=UpgradeModule,Object.defineProperty(exports,"__esModule",{value:!0})});
  //# sourceMappingURL=upgrade-static.umd.min.js.map
  