function(){"use strict";functione(e,t,n){functionr(e,n,r){varo=e[0];o.hasAttribute(n)||i(o,n)||(r=angular.isString(r)&&r.trim()||"",r.length?e.attr(n,r):t.warn('ARIA: Attribute "',n,'", required for accessibility, is missing on node:',o))}functiono(t,n,o){e(function(){r(t,n,o())})}functiona(e,t){o(e,t,function(){returne.text().trim()})}functioni(e,t){functionr(e){vart=e.currentStyle?e.currentStyle:n.getComputedStyle(e);return"none"===t.display}varo=e.hasChildNodes(),a=!1;if(o)for(vari=e.childNodes,d=0;d<i.length;d++){varc=i[d];1===c.nodeType&&c.hasAttribute(t)&&(r(c)||(a=!0))}returna}return{expect:r,expectAsync:o,expectWithText:a}}angular.module("material.core").service("$mdAria",e),e.$inject=["$$rAF","$log","$window"]}(),/*!
function(){"use strict";functione(e,t){varn;for(varrinc)n=c[r],"start"===e&&n.cancel(),n[e](t,g)}functiont(t){if(!g){varn=+Date.now();b&&!o(t,b)&&n-b.endTime<1500||(g=d(t),e("start",t))}}functionn(t){g&&o(t,g)&&(i(t,g),e("move",t))}functionr(t){g&&o(t,g)&&(i(t,g),g.endTime=+Date.now(),e("end",t),b=g,g=null)}functiono(e,t){returne&&t&&e.type.charAt(0)===t.type}functiona(e){returne=e.originalEvent||e,e.touches&&e.touches[0]||e.changedTouches&&e.changedTouches[0]||e}functioni(e,t){varn=a(e),r=t.x=n.pageX,o=t.y=n.pageY;t.distanceX=r-t.startX,t.distanceY=o-t.startY,t.distance=Math.sqrt(t.distanceX*t.distanceX+t.distanceY*t.distanceY),t.directionX=t.distanceX>0?"right":t.distanceX<0?"left":"",t.directionY=t.distanceY>0?"up":t.distanceY<0?"down":"",t.duration=+Date.now()-t.startTime,t.velocityX=t.distanceX/t.duration,t.velocityY=t.distanceY/t.duration}functiond(e){vart=a(e),n={startTime:+Date.now(),target:e.target,type:e.type.charAt(0)};returnn.startX=n.x=t.pageX,n.startY=n.y=t.pageY,n}varc,l="mousedown touchstart pointerdown",m="mousemove touchmove pointermove",s="mouseup mouseleave touchend touchcancel pointerup pointercancel";document.contains||(document.contains=function(e){returndocument.body.contains(e)});varu=navigator.userAgent||navigator.vendor||window.opera,f=u.match(/iPad/i)||u.match(/iPhone/i)||u.match(/iPod/i),p=u.match(/Android/i),h=f||p;h&&document.addEventListener("click",function(e){vart=0===e.clientX&&0===e.clientY;t||e.$material||(e.preventDefault(),e.stopPropagation())},!0),angular.element(document).on(l,t).on(m,n).on(s,r).on("$$mdGestureReset",function(){b=g=null});varg,b;angular.module("material.core").run(["$mdGesture",function(){}]).factory("$mdGesture",["$$MdGestureHandler","$$rAF","$timeout",function(e,t,n){functionr(t,n){varr=newe(t);returnangular.extend(r,n),c[t]=r,a}functiono(e,t,n){varr=c[t.replace(/^\$md./,"")];if(!r)thrownewError("Failed to register element with handler "+t+". Available handlers: "+Object.keys(c).join(", "));returnr.registerElement(e,n)}c={},h&&r("click",{options:{maxDistance:6},onEnd:function(e,t){t.distance<this.state.options.maxDistance&&this.dispatchEvent(e,"click",null,e)}}),r("press",{onStart:function(e){this.dispatchEvent(e,"$md.pressdown")},onEnd:function(e){this.dispatchEvent(e,"$md.pressup")}}),r("hold",{options:{maxDistance:6,delay:500},onCancel:function(){n.cancel(this.state.timeout)},onStart:function(e,t){returnthis.state.registeredParent?(this.state.pos={x:t.x,y:t.y},this.state.timeout=n(angular.bind(this,function(){this.dispatchEvent(e,"$md.hold"),this.cancel()}),this.state.options.delay,!1),void0):this.cancel()},onMove:function(e,t){e.preventDefault();varn=this.state.pos.x-t.x,r=this.state.pos.y-t.y;Math.sqrt(n*n+r*r)>this.options.maxDistance&&this.cancel()},onEnd:function(){this.onCancel()}}),r("drag",{options:{minDistance:6,horizontal:!0},onStart:function(){this.state.registeredParent||this.cancel()},onMove:function(e,t){varn,r;e.preventDefault(),this.state.dragPointer?this.dispatchDragMove(e):(this.state.options.horizontal?(n=Math.abs(t.distanceX)>this.state.options.minDistance,r=Math.abs(t.distanceY)>1.5*this.state.options.minDistance):(n=Math.abs(t.distanceY)>this.state.options.minDistance,r=Math.abs(t.distanceX)>1.5*this.state.options.minDistance),n?(this.state.dragPointer=d(e),i(e,this.state.dragPointer),this.dispatchEvent(e,"$md.dragstart",this.state.dragPointer)):r&&this.cancel())},dispatchDragMove:t.throttle(function(e){this.state.isRunning&&(i(e,this.state.dragPointer),this.dispatchEvent(e,"$md.drag",this.state.dragPointer))}),onEnd:function(e){this.state.dragPointer&&(i(e,this.state.dragPointer),this.dispatchEvent(e,"$md.dragend",this.state.dragPointer))}}),r("swipe",{options:{minVelocity:.65,minDistance:10},onEnd:function(e,t){if(Math.abs(t.velocityX)>this.state.options.minVelocity&&Math.abs(t.distanceX)>this.state.options.minDistance){varn="left"==t.directionX?"$md.swipeleft":"$md.swiperight";this.dispatchEvent(e,n)}}});vara;returna={handler:r,register:o}}]).factory("$$MdGestureHandler",["$$rAF",function(){func
*AngularMaterialDesign
*https://github.com/angular/material
*@licenseMIT
*v0.7.1
*/
function(){"use strict";functione(){functione(e){functiont(e){returna.optionsFactory=e.options,a.methods=(e.methods||[]).concat(o),i}functionn(t,n){if(n=n||{},n.methods=n.methods||[],n.options=n.options||function(){return{}},/^cancel|hide|show$/.test(t))thrownewError("Preset '"+t+"' in "+e+" is reserved!");if(n.methods.indexOf("_options")>-1)thrownewError("Method '_options' in "+e+" is reserved!");returna.presets[t]={methods:n.methods.concat(o),optionsFactory:n.options,argOption:n.argOption},i}functionr(t,n,r){functiono(e){returne&&e._options&&(e=e._options),l.show(angular.extend({},c,e))}functioni(t,n){varo={};returno[e]=m,r.invoke(t||function(){returnn},{},o)}vard,c,l=t(),m={hide:l.hide,cancel:l.cancel,show:o};returnd=a.methods||[],c=i(a.optionsFactory,{}),angular.forEach(a.presets,function(e,t){functionn(e){this._options=angular.extend({},r,e)}varr=i(e.optionsFactory,{}),o=(e.methods||[]).concat(d);if(angular.extend(r,{$type:t}),angular.forEach(o,function(e){n.prototype[e]=function(t){returnthis._options[e]=t,this}}),e.argOption){vara="show"+t.charAt(0).toUpperCase()+t.slice(1);m[a]=function(e){varn=m[t](e);returnm.show(n)}}m[t]=function(t){returnarguments.length&&e.argOption&&!angular.isObject(t)&&!angular.isArray(t)?(newn)[e.argOption](t):newn(t)}}),m}varo=["onHide","onShow","onRemove"],a={presets:{}},i={setDefaults:t,addPreset:n,$get:r};returni.addPreset("build",{methods:["controller","controllerAs","resolve","template","templateUrl","themable","transformTemplate","parent"]}),r.$inject=["$$interimElement","$animate","$injector"],i}functiont(e,t,n,r,o,a,i,d,c){functionl(e){returne&&angular.isString(e)?e.replace(/\{\{/g,m).replace(/}}/g,s):e}varm=i.startSymbol(),s=i.endSymbol(),u="{{"===m&&"}}"===s,f=u?angular.identity:l;returnfunction(){functioni(e){p.length&&u.cancel();vart=news(e);returnp.push(t),t.show().then(function(){returnt.deferred.promise})}functionl(e){varn=p.shift();returnn&&n.remove().then(function(){n.deferred.resolve(e)}),n?n.deferred.promise:t.when(e)}functionm(e){varn=p.shift();returnn&&n.remove().then(function(){n.deferred.reject(e)}),n?n.deferred.promise:t.reject(e)}functions(i){varl,m,s;returni=i||{},i=angular.extend({scope:i.scope||n.$new(i.isolateScope),onShow:function(e,t,n){returna.enter(t,n.parent)},onRemove:function(e,n){returnn&&a.leave(n)||t.when()}},i),i.template&&(i.template=f(i.template)),l={options:i,deferred:t.defer(),show:function(){returnd.compile(i).then(function(n){functiona(){i.hideDelay&&(m=r(u.cancel,i.hideDelay))}angular.extend(n.locals,l.options),angular.isString(i.parent)?i.parent=angular.element(e[0].querySelector(i.parent)):i.parent||(i.parent=o.find("body"),i.parent.length||(i.parent=o)),s=n.link(i.scope),i.themable&&c(s);vard=i.onShow(i.scope,s,i);returnt.when(d).then(function(){(i.onComplete||angular.noop)(i.scope,s,i),a()})})},cancelTimeout:function(){m&&(r.cancel(m),m=void0)},remove:function(){l.cancelTimeout();vare=i.onRemove(i.scope,s,i);returnt.when(e).then(function(){i.scope.$destroy()})}}}varu,p=[];returnu={show:i,hide:l,cancel:m}}}returne.$get=t,t.$inject=["$document","$q","$rootScope","$timeout","$rootElement","$animate","$interpolate","$mdCompiler","$mdTheming"],e}angular.module("material.core").provider("$$interimElement",e)}(),/*!
*AngularMaterialDesign
*https://github.com/angular/material
*@licenseMIT
*v0.7.1
*/
function(){"use strict";functione(e,t){functionn(e){returne&&""!==e}varr,o=[],a={};returnr={notFoundError:function(t){e.error("No instance found for handle",t)},getInstances:function(){returno},get:function(e){if(!n(e))returnnull;vart,r,a;for(t=0,r=o.length;r>t;t++)if(a=o[t],a.$$mdHandle===e)returna;returnnull},register:function(e,t){functionn(){vart=o.indexOf(e);-1!==t&&o.splice(t,1)}functionr(){varn=a[t];n&&(n.resolve(e),deletea[t])}returnt?(e.$$mdHandle=t,o.push(e),r(),n):angular.noop},when:function(e){if(n(e)){varo=t.defer(),i=r.get(e);returni?o.resolve(i):a[e]=o,o.promise}returnt.reject("Invalid `md-component-id` value.")}}}angular.module("material.core").factory("$mdComponentRegistry",e),e.$inject=["$log","$q"]}(),/*!
function(){"use strict";functione(e){functiont(e,t){returnt=t||{},c[e]=o(e,t),m}functionn(e,t){returno(e,angular.extend({},c[e]||{},t))}functiono(e,t){varn=T.filter(function(e){return!t[e]});if(n.length)thrownewError("Missing colors %1 in palette %2!".replace("%1",n.join(", ")).replace("%2",e));returnt}functiona(e,t){if(t=t||"default",l[e])returnl[e];varn="string"==typeoft?l[t]:t,r=newi(e);returnn&&angular.forEach(n.colors,function(e,t){r.colors[t]={name:e.name,hues:angular.extend({},e.hues)}}),l[e]=r,r}functioni(e){functiont(e){if(e=0===arguments.length?!0:!!e,e!==n.isDark){n.isDark=e,n.foregroundPalette=n.isDark?f:u,n.foregroundShadow=n.isDark?p:h;vart=n.isDark?A:M,r=n.isDark?M:A;returnangular.forEach(t,function(e,t){varo=n.colors[t],a=r[t];if(o)for(variino.hues)o.hues[i]===a[i]&&(o.hues[i]=e[i])}),n}}varn=this;n.name=e,n.colors={},n.dark=t,t(!1),v.forEach(function(e){vart=(n.isDark?A:M)[e];n[e+"Palette"]=function(r,o){vara=n.colors[e]={name:r,hues:angular.extend({},t,o)};returnObject.keys(a.hues).forEach(function(e){if(!t[e])thrownewError("Invalid hue name '%1' in theme %2's %3 color %4. Available hue names: %4".replace("%1",e).replace("%2",n.name).replace("%3",r).replace("%4",Object.keys(t).join(", ")))}),Object.keys(a.hues).map(function(e){returna.hues[e]}).forEach(function(t){if(-1==T.indexOf(t))thrownewError("Invalid hue value '%1' in theme %2's %3 color %4. Available hue values: %5".replace("%1",t).replace("%2",n.name).replace("%3",e).replace("%4",r).replace("%5",T.join(", ")))}),n},n[e+"Color"]=function(){vart=Array.prototype.slice.call(arguments);returnconsole.warn("$mdThemingProviderTheme."+e+"Color() has been depricated. Use $mdThemingProviderTheme."+e+"Palette() instead."),n[e+"Palette"].apply(n,t)}})}functions(e,t){functionn(e){returnvoid0===e||""===e?!0:void0!==l[e]}functionr(t,n){void0===n&&(n=t,t=void0),void0===t&&(t=e),r.inherit(n,n)}returnr.inherit=function(r,o){functiona(e){n(e)||t.warn("Attempted to use unregistered theme '"+e+"'. Register it with $mdThemingProvider.theme().");varo=r.data("$mdThemeName");o&&r.removeClass("md-"+o+"-theme"),r.addClass("md-"+e+"-theme"),r.data("$mdThemeName",e)}vari=o.controller("mdTheme"),d=r.attr("md-theme-watch");if((b||angular.isDefined(d))&&"false"!=d){varc=e.$watch(function(){returni&&i.$mdTheme||g},a);r.on("$destroy",c)}else{varl=i&&i.$mdTheme||g;a(l)}},r.registered=n,r}c={},l={};varg="default",b=!1;returnangular.extend(c,e),s.$inject=["$rootScope","$log"],m={definePalette:t,extendPalette:n,theme:a,setDefaultTheme:function(e){g=e},alwaysWatchTheme:function(e){b=e},$get:s,_LIGHT_DEFAULT_HUES:M,_DARK_DEFAULT_HUES:A,_PALETTES:c,_THEMES:l,_parseRules:r,_rgba:d}}functiont(e,t,n){return{priority:100,link:{pre:function(r,o,a){vari={$setTheme:function(t){e.registered(t)||n.warn("attempted to use unregistered theme '"+t+"'"),i.$mdTheme=t}};o.data("$mdThemeController",i),i.$setTheme(t(a.mdTheme)(r)),a.$observe("mdTheme",i.$setTheme)}}}}functionn(e){returne}functionr(e,t,n){a(e,t),n=n.replace(/THEME_NAME/g,e.name);varr=[],o=e.colors[t],i=newRegExp(".md-"+e.name+"-theme","g"),l=newRegExp("('|\")?{{\\s*("+t+")-(color|contrast)-?(\\d\\.?\\d*)?\\s*}}(\"|')?","g"),m=/'?"?\{\{\s*([a-zA-Z]+)-(A?\d+|hue\-[0-3]|shadow)-?(\d\.?\d*)?\s*\}\}'?"?/g,s=c[o.name];returnn=n.replace(m,function(t,n,r,o){return"foreground"===n?"shadow"==r?e.foregroundShadow:e.foregroundPalette[r]||e.foregroundPalette["1"]:(0===r.indexOf("hue")&&(r=e.colors[n].hues[r]),d((c[e.colors[n].name][r]||"").value,o))}),angular.forEach(o.hues,function(t,o){vara=n.replace(l,function(e,n,r,o,a){returnd(s[t]["color"===o?"value":"contrast"],a)});"default"!==o&&(a=a.replace(i,".md-"+e.name+"-theme.md-"+o)),r.push(a)}),r.join("")}functiono(e){functiont(e){vart=e.contrastDefaultColor,n=e.contrastLightColors||[],r=e.contrastStrongLightColors||[],o=e.contrastDarkColors||[];"string"==typeofn&&(n=n.split(" ")),"string"==typeofr&&(r=r.split(" ")),"string"==typeofo&&(o=o.split(" ")),deletee.contrastDefaultColor,deletee.contrastLightColors,deletee.contrastStron
function(){functione(e,t){functionn(t,n){e(n)}functionr(e,n,r){varo=this;o.isErrorGetter=r.mdIsError&&t(r.mdIsError),o.element=n,o.setFocused=function(e){n.toggleClass("md-input-focused",!!e)},o.setHasValue=function(e){n.toggleClass("md-input-has-value",!!e)},o.setInvalid=function(e){n.toggleClass("md-input-invalid",!!e)},e.$watch(function(){returno.label&&o.input},function(e){e&&!o.label.attr("for")&&o.label.attr("for",o.input.attr("id"))})}returnr.$inject=["$scope","$element","$attrs"],{restrict:"E",link:n,controller:r}}functiont(){return{restrict:"E",require:"^?mdInputContainer",link:function(e,t,n,r){r&&(r.label=t,e.$on("$destroy",function(){r.label=null}))}}}functionn(e,t){functionn(n,r,o,a){functioni(e){returnl.setHasValue(!m.$isEmpty(e)),e}functiond(){l.setHasValue(r.val().length>0||(r[0].validity||{}).badInput)}functionc(){functiono(e){returnc(),e}functiona(){d.style.height="auto";vare=d.scrollHeight-d.offsetHeight;d.scrollTop=0;vart=d.offsetHeight+(e>0?e:0);d.style.height=t+"px"}functioni(){d.scrollTop=0;vare=d.scrollHeight-d.offsetHeight,t=d.offsetHeight+e;d.style.height=t+"px"}vard=r[0],c=e.debounce(a,1);m?(m.$formatters.push(o),m.$viewChangeListeners.push(o)):c(),r.on("keydown input",c),r.on("scroll",i),angular.element(t).on("resize",c),n.$on("$destroy",function(){angular.element(t).off("resize",c)})}varl=a[0],m=a[1]||e.fakeNgModel(),s=angular.isDefined(o.readonly);if(l){if(l.input)thrownewError("<md-input-container> can only have *one* <input> or <textarea> child element!");l.input=r,r.addClass("md-input"),r.attr("id")||r.attr("id","input_"+e.nextUid()),"textarea"===r[0].tagName.toLowerCase()&&c();varu=l.isErrorGetter||function(){returnm.$invalid&&m.$touched};n.$watch(u,l.setInvalid),m.$parsers.push(i),m.$formatters.push(i),r.on("input",d),s||r.on("focus",function(){l.setFocused(!0)}).on("blur",function(){l.setFocused(!1),d()}),n.$on("$destroy",function(){l.setFocused(!1),l.setHasValue(!1),l.input=null})}}return{restrict:"E",require:["^?mdInputContainer","?ngModel"],link:n}}functionr(e){functiont(t,n,r,o){functiona(e){returnl.text((n.val()||e||"").length+"/"+i),e}vari,d=o[0],c=o[1],l=angular.element('<div class="md-char-counter">');r.$set("ngTrim","false"),c.element.append(l),d.$formatters.push(a),d.$viewChangeListeners.push(a),n.on("input keydown",function(){a()}),t.$watch(r.mdMaxlength,function(t){i=t,angular.isNumber(t)&&t>0?(l.parent().length||e.enter(l,c.element,angular.element(c.element[0].lastElementChild)),a()):e.leave(l)}),d.$validators["md-maxlength"]=function(e,t){return!angular.isNumber(i)||0>i?!0:(e||n.val()||t||"").length<=i}}return{restrict:"A",require:["ngModel","^mdInputContainer"],link:t}}functiono(){functione(e,t,n,r){if(r){varo=n.placeholder;t.removeAttr("placeholder"),r.element.append('<div class="md-placeholder">'+o+"</div>")}}return{restrict:"A",require:"^^?mdInputContainer",link:e}}angular.module("material.components.input",["material.core"]).directive("mdInputContainer",e).directive("label",t).directive("input",n).directive("textarea",n).directive("mdMaxlength",r).directive("placeholder",o),e.$inject=["$mdTheming","$parse"],n.$inject=["$mdUtil","$window","$compile","$animate"],r.$inject=["$animate"]}(),/*!
function(){"use strict";functione(e,t){returnfunction(n){varr="SideNav '"+n+"' is not available!",o=e.get(n);returno||e.notFoundError(n),{isOpen:function(){returno&&o.isOpen()},isLockedOpen:function(){returno&&o.isLockedOpen()},toggle:function(){returno?o.toggle():t.reject(r)},open:function(){returno?o.open():t.reject(r)},close:function(){returno?o.close():t.reject(r)}}}}functiont(e,t,n,r,o,a,i,d,c){functionl(l,m,s,u){functionf(e,n){l.isLockedOpen=e,e===n?m.toggleClass("md-locked-open",!!e):t[e?"addClass":"removeClass"](m,"md-locked-open"),A.toggleClass("md-locked-open",!!e)}functionp(e){varn=m.parent();returnn[e?"on":"off"]("keydown",g),A[e?"on":"off"]("click",b),e&&(E=c[0].activeElement),v=d.all([t[e?"enter":"leave"](A,n),t[e?"removeClass":"addClass"](m,"md-closed").then(function(){l.isOpen&&m.focus()})])}functionh(t){if(l.isOpen==t)returnd.when(!0);varn=d.defer();returnl.isOpen=t,e(function(){v.then(function(e){l.isOpen||(E&&E.focus(),E=null),n.resolve(e)})},0,!1),n.promise}functiong(e){vart=e.keyCode===o.KEY_CODE.ESCAPE;returnt?b(e):d.when(!0)}functionb(e){returne.preventDefault(),e.stopPropagation(),u.close()}varE=null,v=d.when(!0),$=n(s.mdIsLockedOpen),M=function(){return$(l.$parent,{$media:r})},A=a('<md-backdrop class="md-sidenav-backdrop md-opaque ng-enter">')(l);m.on("$destroy",u.destroy),i.inherit(A,m),l.$watch(M,f),l.$watch("isOpen",p),u.$toggleOpen=h}return{restrict:"E",scope:{isOpen:"=?mdIsOpen"},controller:"$mdSidenavController",compile:function(e){returne.addClass("md-closed"),e.attr("tabIndex","-1"),l}}}functionn(e,t,n,r,o){vara=this;a.$toggleOpen=function(){returno.when(e.isOpen)},a.isOpen=function(){return!!e.isOpen},a.isLockedOpen=function(){return!!e.isLockedOpen},a.open=function(){returna.$toggleOpen(!0)},a.close=function(){returna.$toggleOpen(!1)},a.toggle=function(){returna.$toggleOpen(!e.isOpen)},a.destroy=r.register(a,n.mdComponentId)}angular.module("material.components.sidenav",["material.core","material.components.backdrop"]).factory("$mdSidenav",e).directive("mdSidenav",t).controller("$mdSidenavController",n),e.$inject=["$mdComponentRegistry","$q"],t.$inject=["$timeout","$animate","$parse","$mdMedia","$mdConstant","$compile","$mdTheming","$q","$document"],n.$inject=["$scope","$element","$attrs","$mdComponentRegistry","$q"]}(),/*!
function(){"use strict";functione(e,t,n,r){return{restrict:"E",replace:!0,scope:{fid:"@?mdFid",label:"@?",value:"=ngModel"},compile:function(o,a){returnr.warn("<md-text-float> is deprecated. Please use `<md-input-container>` and `<input>`.More information at http://material.angularjs.org/#/api/material.components.input/directive/mdInputContainer"),angular.isUndefined(a.mdFid)&&(a.mdFid=t.nextUid()),{pre:function(e,t,r){varo=n(r.ngDisabled);e.isDisabled=function(){returno(e.$parent)},e.inputType=r.type||"text"},post:e}},template:'<md-input-group tabindex="-1"> <label for="{{fid}}" >{{label}}</label> <md-input id="{{fid}}" ng-disabled="isDisabled()" ng-model="value" type="{{inputType}}"></md-input></md-input-group>'}}functiont(e){return{restrict:"CE",controller:["$element",function(t){e.warn("<md-input-group> is deprecated. Please use `<md-input-container>` and `<input>`.More information at http://material.angularjs.org/#/api/material.components.input/directive/mdInputContainer"),this.setFocused=function(e){t.toggleClass("md-input-focused",!!e)},this.setHasValue=function(e){t.toggleClass("md-input-has-value",e)}}]}}functionn(e,t){return{restrict:"E",replace:!0,template:"<input >",require:["^?mdInputGroup","?ngModel"],link:function(e,n,r,o){functiona(e){returne=angular.isUndefined(e)?n.val():e,angular.isDefined(e)&&null!==e&&""!==e.toString().trim()}if(o[0]){t.warn("<md-input> is deprecated. Please use `<md-input-container>` and `<input>`.More information at http://material.angularjs.org/#/api/material.components.input/directive/mdInputContainer");vari=o[0],d=o[1];e.$watch(e.isDisabled,function(e){n.attr("aria-disabled",!!e),n.attr("tabindex",!!e)}),n.attr("type",r.type||n.parent().attr("type")||"text"),d&&d.$formatters.push(function(e){returni.setHasValue(a(e)),e}),n.on("input",function(){i.setHasValue(a())}).on("focus",function(){i.setFocused(!0)}).on("blur",function(){i.setFocused(!1),i.setHasValue(a())}),e.$on("$destroy",function(){i.setFocused(!1),i.setHasValue(!1)})}}}}angular.module("material.components.textField",["material.core"]).directive("mdInputGroup",t).directive("mdInput",n).directive("mdTextFloat",e),e.$inject=["$mdTheming","$mdUtil","$parse","$log"],t.$inject=["$log"],n.$inject=["$mdUtil","$log"]}(),/*!