/*!
* AngularJS Material Design
* https://github.com/angular/material
* @license MIT
* v1.1.8-master-aba7b2b
*/
function SelectDirective(e,t,n,r,a,l,i,o){function d(o,d){var s=angular.element("");s.append(''),s.addClass("md-select-value"),s[0].hasAttribute("id")||s.attr("id","select_value_label_"+t.nextUid());var c=o.find("md-content");if(c.length||o.append(angular.element("").append(o.contents())),c.attr("role","presentation"),d.mdOnOpen&&(o.find("md-content").prepend(angular.element('
')),o.find("md-option").attr("ng-show","$$loadingAsyncDone")),d.name){var u=angular.element('');u.attr({name:d.name,"aria-hidden":"true",tabindex:"-1"});var p=o.find("md-option");angular.forEach(p,function(e){var t=angular.element("");e.hasAttribute("ng-value")?t.attr("ng-value",e.getAttribute("ng-value")):e.hasAttribute("value")&&t.attr("value",e.getAttribute("value")),u.append(t)}),u.append(''),o.parent().append(u)}var m=t.parseAttributeBoolean(d.multiple),f=m?"multiple":"",h='';return h=t.supplant(h,[f,o.html()]),o.empty().append(s),o.append(h),d.tabindex||d.$set("tabindex",0),function(o,d,s,c){function u(){var e=d.attr("aria-label")||d.attr("placeholder");!e&&S&&S.label&&(e=S.label.text()),y=e,a.expect(d,"aria-label",e)}function p(){O&&(R=R||O.find("md-select-menu").controller("mdSelectMenu"),E.setLabelText(R.selectedLabels()))}function f(){if(y){var e=R.selectedLabels({mode:"aria"});d.attr("aria-label",e.length?y+": "+e:y)}}function h(){S&&S.setHasValue(R.selectedLabels().length>0||(d[0].validity||{}).badInput)}function g(){if(O=angular.element(d[0].querySelector(".md-select-menu-container")),T=o,s.mdContainerClass){var e=O[0].getAttribute("class")+" "+s.mdContainerClass;O[0].setAttribute("class",e)}R=O.find("md-select-menu").controller("mdSelectMenu"),R.init(M,s.ngModel),d.on("$destroy",function(){O.remove()})}function v(e){if(n.isNavigationKey(e))e.preventDefault(),b(e);else if(shouldHandleKey(e,n)){e.preventDefault();var t=R.optNodeForKeyboardSearch(e);if(!t||t.hasAttribute("disabled"))return;var r=angular.element(t).controller("mdOption");R.isMultiple||R.deselect(Object.keys(R.selected)[0]),R.select(r.hashKey,r.value),R.refreshViewValue()}}function b(){T._mdSelectIsOpen=!0,d.attr("aria-expanded","true"),e.show({scope:T,preserveScope:!0,skipCompile:!0,element:O,target:d[0],selectCtrl:E,preserveElement:!0,hasBackdrop:!0,loadingAsync:!!s.mdOnOpen&&(o.$eval(s.mdOnOpen)||!0)})["finally"](function(){T._mdSelectIsOpen=!1,d.focus(),d.attr("aria-expanded","false"),M.$setTouched()})}var $,y,C=!0,S=c[0],E=c[1],M=c[2],w=c[3],k=d.find("md-select-value"),D=angular.isDefined(s.readonly),x=t.parseAttributeBoolean(s.mdNoAsterisk);if(x&&d.addClass("md-no-asterisk"),S){var A=S.isErrorGetter||function(){return M.$invalid&&(M.$touched||w&&w.$submitted)};if(S.input&&d.find("md-select-header").find("input")[0]!==S.input[0])throw new Error(" can only have *one* child ,