2017-07-20 23:09:21 +00:00
! function ( a , f , k ) { function h ( d ) { return function ( ) { var l , b = arguments [ 0 ] ; l = "[" + ( d ? d + ":" : "" ) + b + "] http://errors.angularjs.org/1.4.14/" + ( d ? d + "/" : "" ) + b ; for ( b = 1 ; b < arguments . length ; b ++ ) { l = l + ( 1 == b ? "?" : "&" ) + "p" + ( b - 1 ) + "=" ; var a , c = encodeURIComponent ; a = arguments [ b ] ; a = "function" == typeof a ? a . toString ( ) . replace ( / \{[\s\S]*$/ , "" ) : "undefined" == typeof a ? "undefined" : "string" != typeof a ? JSON . stringify ( a ) : a ; l += c ( a ) } return Error ( l ) } } function c ( d ) { if ( null == d || N ( d ) ) return ! 1 ; if ( la ( d ) || u ( d ) || fa && d instanceof fa ) return ! 0 ; var l =
2017-07-25 17:51:59 +00:00
"length" in Object ( d ) && d . length ; return I ( l ) && ( 0 <= l && ( l - 1 in d || d instanceof Array ) || "function" == typeof d . item ) } function b ( d , l , a ) { var H , Z ; if ( d ) if ( E ( d ) ) for ( H in d ) "prototype" == H || "length" == H || "name" == H || d . hasOwnProperty && ! d . hasOwnProperty ( H ) || l . call ( a , d [ H ] , H , d ) ; else if ( la ( d ) || c ( d ) ) { var g = "object" != typeof d ; H = 0 ; for ( Z = d . length ; H < Z ; H ++ ) ( g || H in d ) && l . call ( a , d [ H ] , H , d ) } else if ( d . forEach && d . forEach !== b ) d . forEach ( l , a , d ) ; else if ( null === d || "object" != typeof d || vc ( d ) ) if ( "function" == typeof d . hasOwnProperty ) for ( H in d ) d . hasOwnProperty ( H ) &&
l . call ( a , d [ H ] , H , d ) ; else for ( H in d ) tb . call ( d , H ) && l . call ( a , d [ H ] , H , d ) ; else for ( H in d ) l . call ( a , d [ H ] , H , d ) ; return d } function e ( d , l , b ) { for ( var a = Object . keys ( d ) . sort ( ) , c = 0 ; c < a . length ; c ++ ) l . call ( b , d [ a [ c ] ] , a [ c ] ) ; return a } function g ( d ) { return function ( l , a ) { d ( a , l ) } } function r ( ) { return ++ wc } function m ( d , l , a ) { for ( var b = d . $$hashKey , c = 0 , Z = l . length ; c < Z ; ++ c ) { var g = l [ c ] ; if ( p ( g ) || E ( g ) ) for ( var e = Object . keys ( g ) , k = 0 , f = e . length ; k < f ; k ++ ) { var h = e [ k ] , n = g [ h ] ; a && p ( n ) ? J ( n ) ? d [ h ] = new Date ( n . valueOf ( ) ) : G ( n ) ? d [ h ] = new RegExp ( n ) : n . nodeName ?
2017-07-20 23:09:21 +00:00
d [ h ] = n . cloneNode ( ! 0 ) : S ( n ) ? d [ h ] = n . clone ( ) : ( p ( d [ h ] ) || ( d [ h ] = la ( n ) ? [ ] : { } ) , m ( d [ h ] , [ n ] , ! 0 ) ) : d [ h ] = n } } return b ? d . $$hashKey = b : delete d . $$hashKey , d } function n ( d ) { return m ( d , Db . call ( arguments , 1 ) , ! 1 ) } function t ( d ) { return m ( d , Db . call ( arguments , 1 ) , ! 0 ) } function x ( d , l ) { return n ( Object . create ( d ) , l ) } function q ( ) { } function v ( d ) { return d } function z ( d ) { return function ( ) { return d } } function A ( d ) { return E ( d . toString ) && d . toString !== ub } function B ( d ) { return "undefined" == typeof d } function F ( d ) { return "undefined" != typeof d } function p ( d ) { return null !==
d && "object" == typeof d } function u ( d ) { return "string" == typeof d } function I ( d ) { return "number" == typeof d } function J ( d ) { return "[object Date]" === ub . call ( d ) } function E ( d ) { return "function" == typeof d } function G ( d ) { return "[object RegExp]" === ub . call ( d ) } function N ( d ) { return d && d . window === d } function K ( d ) { return d && d . $evalAsync && d . $watch } function P ( d ) { return "boolean" == typeof d } function V ( d ) { return d && I ( d . length ) && xe . test ( ub . call ( d ) ) } function S ( d ) { return ! ( ! d || ! ( d . nodeName || d . prop && d . attr && d . find ) ) } function W ( d ) { var l =
2017-07-25 17:51:59 +00:00
{ } ; d = d . split ( "," ) ; var a ; for ( a = 0 ; a < d . length ; a ++ ) l [ d [ a ] ] = ! 0 ; return l } function ja ( d ) { return sa ( d . nodeName || d [ 0 ] && d [ 0 ] . nodeName ) } function ya ( d , l ) { var a = d . indexOf ( l ) ; return 0 <= a && d . splice ( a , 1 ) , a } function Ga ( d , l ) { function a ( d , l ) { var a , b = l . $$hashKey ; if ( la ( d ) ) { a = 0 ; for ( var c = d . length ; a < c ; a ++ ) l . push ( H ( d [ a ] ) ) } else if ( null === d || "object" != typeof d || vc ( d ) ) if ( d && "function" == typeof d . hasOwnProperty ) for ( a in d ) d . hasOwnProperty ( a ) && ( l [ a ] = H ( d [ a ] ) ) ; else for ( a in d ) tb . call ( d , a ) && ( l [ a ] = H ( d [ a ] ) ) ; else for ( a in d ) l [ a ] = H ( d [ a ] ) ;
2017-07-20 23:09:21 +00:00
return b ? l . $$hashKey = b : delete l . $$hashKey , l } function H ( d ) { if ( ! p ( d ) ) return d ; var l = c . indexOf ( d ) ; if ( - 1 !== l ) return g [ l ] ; if ( N ( d ) || K ( d ) ) throw Ta ( "cpws" ) ; var b , l = ! 1 ; return la ( d ) ? ( b = [ ] , l = ! 0 ) : V ( d ) ? b = new d . constructor ( d ) : J ( d ) ? b = new Date ( d . getTime ( ) ) : G ( d ) ? ( b = new RegExp ( d . source , d . toString ( ) . match ( /[^\/]*$/ ) [ 0 ] ) , b . lastIndex = d . lastIndex ) : "[object Blob]" === ub . call ( d ) ? b = new d . constructor ( [ d ] , { type : d . type } ) : E ( d . cloneNode ) ? b = d . cloneNode ( ! 0 ) : ( b = Object . create ( vc ( d ) ) , l = ! 0 ) , c . push ( d ) , g . push ( b ) , l ? a ( d , b ) : b } var c = [ ] , g =
2017-07-25 17:51:59 +00:00
[ ] ; if ( l ) { if ( V ( l ) ) throw Ta ( "cpta" ) ; if ( d === l ) throw Ta ( "cpi" ) ; return la ( l ) ? l . length = 0 : b ( l , function ( d , a ) { "$$hashKey" !== a && delete l [ a ] } ) , c . push ( d ) , g . push ( l ) , a ( d , l ) } return H ( d ) } function za ( d , l ) { if ( la ( d ) ) { l = l || [ ] ; for ( var a = 0 , b = d . length ; a < b ; a ++ ) l [ a ] = d [ a ] } else if ( p ( d ) ) for ( a in l = l || { } , d ) "$" === a . charAt ( 0 ) && "$" === a . charAt ( 1 ) || ( l [ a ] = d [ a ] ) ; return l || d } function X ( d , l ) { if ( d === l ) return ! 0 ; if ( null === d || null === l ) return ! 1 ; if ( d !== d && l !== l ) return ! 0 ; var a , b = typeof d ; if ( b == typeof l && "object" == b ) { if ( ! la ( d ) ) { if ( J ( d ) ) return ! ! J ( l ) &&
X ( d . getTime ( ) , l . getTime ( ) ) ; if ( G ( d ) ) return ! ! G ( l ) && d . toString ( ) == l . toString ( ) ; if ( K ( d ) || K ( l ) || N ( d ) || N ( l ) || la ( l ) || J ( l ) || G ( l ) ) return ! 1 ; b = Ma ( ) ; for ( a in d ) if ( "$" !== a . charAt ( 0 ) && ! E ( d [ a ] ) ) { if ( ! X ( d [ a ] , l [ a ] ) ) return ! 1 ; b [ a ] = ! 0 } for ( a in l ) if ( ! ( a in b ) && "$" !== a . charAt ( 0 ) && F ( l [ a ] ) && ! E ( l [ a ] ) ) return ! 1 ; return ! 0 } if ( ! la ( l ) ) return ! 1 ; if ( ( b = d . length ) == l . length ) { for ( a = 0 ; a < b ; a ++ ) if ( ! X ( d [ a ] , l [ a ] ) ) return ! 1 ; return ! 0 } } return ! 1 } function O ( d , a , b ) { return d . concat ( Db . call ( a , b ) ) } function T ( d , a ) { var l = 2 < arguments . length ? Db . call ( arguments ,
2017-07-20 23:09:21 +00:00
2 ) : [ ] ; return ! E ( a ) || a instanceof RegExp ? a : l . length ? function ( ) { return arguments . length ? a . apply ( d , O ( l , arguments , 0 ) ) : a . apply ( d , l ) } : function ( ) { return arguments . length ? a . apply ( d , arguments ) : a . call ( d ) } } function M ( d , a ) { var l = a ; return "string" == typeof d && "$" === d . charAt ( 0 ) && "$" === d . charAt ( 1 ) ? l = k : N ( a ) ? l = "$WINDOW" : a && f === a ? l = "$DOCUMENT" : K ( a ) && ( l = "$SCOPE" ) , l } function ka ( d , a ) { return B ( d ) ? k : ( I ( a ) || ( a = a ? 2 : null ) , JSON . stringify ( d , M , a ) ) } function ca ( d ) { return u ( d ) ? JSON . parse ( d ) : d } function R ( d , a ) { d = d . replace ( Ed , "" ) ; var l =
Date . parse ( "Jan 01, 1970 00:00:00 " + d ) / 6E4 ; return isNaN ( l ) ? a : l } function ea ( d , a , b ) { b = b ? - 1 : 1 ; var l = d . getTimezoneOffset ( ) ; return a = R ( a , l ) , b *= a - l , d = new Date ( d . getTime ( ) ) , d . setMinutes ( d . getMinutes ( ) + b ) , d } function Y ( d ) { d = fa ( d ) . clone ( ) ; try { d . empty ( ) } catch ( Z ) { } var a = fa ( "<div>" ) . append ( d ) . html ( ) ; try { return d [ 0 ] . nodeType === Rb ? sa ( a ) : a . match ( /^(<[^>]+>)/ ) [ 1 ] . replace ( /^<([\w\-]+)/ , function ( d , a ) { return "<" + sa ( a ) } ) } catch ( Z ) { return sa ( a ) } } function ha ( d ) { try { return decodeURIComponent ( d ) } catch ( l ) { } } function pa ( d ) { var a =
2017-07-25 17:51:59 +00:00
{ } ; return b ( ( d || "" ) . split ( "&" ) , function ( d ) { var b , l , c ; d && ( l = d = d . replace ( /\+/g , "%20" ) , b = d . indexOf ( "=" ) , - 1 !== b && ( l = d . substring ( 0 , b ) , c = d . substring ( b + 1 ) ) , l = ha ( l ) , F ( l ) && ( c = ! F ( c ) || ha ( c ) , tb . call ( a , l ) ? la ( a [ l ] ) ? a [ l ] . push ( c ) : a [ l ] = [ a [ l ] , c ] : a [ l ] = c ) ) } ) , a } function qa ( d ) { var a = [ ] ; return b ( d , function ( d , l ) { la ( d ) ? b ( d , function ( d ) { a . push ( w ( l , ! 0 ) + ( ! 0 === d ? "" : "=" + w ( d , ! 0 ) ) ) } ) : a . push ( w ( l , ! 0 ) + ( ! 0 === d ? "" : "=" + w ( d , ! 0 ) ) ) } ) , a . length ? a . join ( "&" ) : "" } function ga ( d ) { return w ( d , ! 0 ) . replace ( /%26/gi , "&" ) . replace ( /%3D/gi , "=" ) . replace ( /%2B/gi ,
"+" ) } function w ( d , a ) { return encodeURIComponent ( d ) . replace ( /%40/gi , "@" ) . replace ( /%3A/gi , ":" ) . replace ( /%24/g , "$" ) . replace ( /%2C/gi , "," ) . replace ( /%3B/gi , ";" ) . replace ( /%20/g , a ? "%20" : "+" ) } function ma ( d , a ) { var b , l , c = ec . length ; for ( l = 0 ; l < c ; ++ l ) if ( b = ec [ l ] + a , u ( b = d . getAttribute ( b ) ) ) return b ; return null } function Ka ( d , a ) { var l , c , g = { } ; b ( ec , function ( a ) { a += "app" ; ! l && d . hasAttribute && d . hasAttribute ( a ) && ( l = d , c = d . getAttribute ( a ) ) } ) ; b ( ec , function ( a ) { a += "app" ; var b ; ! l && ( b = d . querySelector ( "[" + a . replace ( ":" , "\\:" ) + "]" ) ) &&
2017-07-20 23:09:21 +00:00
( l = b , c = b . getAttribute ( a ) ) } ) ; l && ( g . strictDi = null !== ma ( l , "strict-di" ) , a ( l , c ? [ c ] : [ ] , g ) ) } function U ( d , l , c ) { p ( c ) || ( c = { } ) ; c = n ( { strictDi : ! 1 } , c ) ; var H = function ( ) { if ( d = fa ( d ) , d . injector ( ) ) { var a = d [ 0 ] === f ? "document" : Y ( d ) ; throw Ta ( "btstrpd" , a . replace ( /</ , "<" ) . replace ( />/ , ">" ) ) ; } return l = l || [ ] , l . unshift ( [ "$provide" , function ( a ) { a . value ( "$rootElement" , d ) } ] ) , c . debugInfoEnabled && l . push ( [ "$compileProvider" , function ( d ) { d . debugInfoEnabled ( ! 0 ) } ] ) , l . unshift ( "ng" ) , a = eb ( l , c . strictDi ) , a . invoke ( [ "$rootScope" , "$rootElement" ,
"$compile" , "$injector" , function ( d , a , b , l ) { d . $apply ( function ( ) { a . data ( "$injector" , l ) ; b ( a ) ( d ) } ) } ] ) , a } , g = /^NG_ENABLE_DEBUG_INFO!/ , e = /^NG_DEFER_BOOTSTRAP!/ ; return a && g . test ( a . name ) && ( c . debugInfoEnabled = ! 0 , a . name = a . name . replace ( g , "" ) ) , a && ! e . test ( a . name ) ? H ( ) : ( a . name = a . name . replace ( e , "" ) , Na . resumeBootstrap = function ( d ) { return b ( d , function ( d ) { l . push ( d ) } ) , H ( ) } , void ( E ( Na . resumeDeferredBootstrap ) && Na . resumeDeferredBootstrap ( ) ) ) } function na ( ) { a . name = "NG_ENABLE_DEBUG_INFO!" + a . name ; a . location . reload ( ) } function Ua ( d ) { if ( d =
Na . element ( d ) . injector ( ) , ! d ) throw Ta ( "test" ) ; return d . get ( "$$testability" ) } function ia ( d , a ) { return a = a || "_" , d . replace ( ye , function ( d , b ) { return ( b ? a : "" ) + d . toLowerCase ( ) } ) } function ua ( ) { var d ; if ( ! Fd ) { var b = xc ( ) ; ( Da = B ( b ) ? a . jQuery : b ? a [ b ] : k ) && Da . fn . on ? ( fa = Da , n ( Da . fn , { scope : Sb . scope , isolateScope : Sb . isolateScope , controller : Sb . controller , injector : Sb . injector , inheritedData : Sb . inheritedData } ) , d = Da . cleanData , Da . cleanData = function ( a ) { var b ; if ( Zc ) Zc = ! 1 ; else for ( var l , c = 0 ; null != ( l = a [ c ] ) ; c ++ ) ( b = Da . _data ( l , "events" ) ) &&
2017-07-25 17:51:59 +00:00
b . $destroy && Da ( l ) . triggerHandler ( "$destroy" ) ; d ( a ) } ) : fa = Oa ; Na . element = fa ; Fd = ! 0 } } function jb ( d , a , b ) { if ( ! d ) throw Ta ( "areq" , a || "?" , b || "required" ) ; return d } function kb ( d , a , b ) { return b && la ( d ) && ( d = d [ d . length - 1 ] ) , jb ( E ( d ) , a , "not a function, got " + ( d && "object" == typeof d ? d . constructor . name || "Object" : typeof d ) ) , d } function vb ( d , a ) { if ( "hasOwnProperty" === d ) throw Ta ( "badname" , a ) ; } function wb ( d , a , b ) { if ( ! a ) return d ; a = a . split ( "." ) ; for ( var l , c = d , g = a . length , e = 0 ; e < g ; e ++ ) l = a [ e ] , d && ( d = ( c = d ) [ l ] ) ; return ! b && E ( d ) ? T ( c , d ) : d } function Tb ( d ) { for ( var a ,
2017-07-20 23:09:21 +00:00
b = d [ 0 ] , c = d [ d . length - 1 ] , g = 1 ; b !== c && ( b = b . nextSibling ) ; g ++ ) ( a || d [ g ] !== b ) && ( a || ( a = fa ( Db . call ( d , 0 , g ) ) ) , a . push ( b ) ) ; return a || d } function Ma ( ) { return Object . create ( null ) } function Of ( d ) { function a ( d , a , b ) { return d [ a ] || ( d [ a ] = b ( ) ) } var b = h ( "$injector" ) , c = h ( "ng" ) ; return d = a ( d , "angular" , Object ) , d . $$minErr = d . $$minErr || h , a ( d , "module" , function ( ) { var d = { } ; return function ( l , H , g ) { if ( "hasOwnProperty" === l ) throw c ( "badname" , "module" ) ; return H && d . hasOwnProperty ( l ) && ( d [ l ] = null ) , a ( d , l , function ( ) { function d ( d , a , b , l ) { return l ||
( l = c ) , function ( ) { return l [ b || "push" ] ( [ d , a , arguments ] ) , h } } function a ( d , a ) { return function ( b , H ) { return H && E ( H ) && ( H . $$moduleName = l ) , c . push ( [ d , a , arguments ] ) , h } } if ( ! H ) throw b ( "nomod" , l ) ; var c = [ ] , e = [ ] , k = [ ] , f = d ( "$injector" , "invoke" , "push" , e ) , h = { _invokeQueue : c , _configBlocks : e , _runBlocks : k , requires : H , name : l , provider : a ( "$provide" , "provider" ) , factory : a ( "$provide" , "factory" ) , service : a ( "$provide" , "service" ) , value : d ( "$provide" , "value" ) , constant : d ( "$provide" , "constant" , "unshift" ) , decorator : a ( "$provide" , "decorator" ) ,
animation : a ( "$animateProvider" , "register" ) , filter : a ( "$filterProvider" , "register" ) , controller : a ( "$controllerProvider" , "register" ) , directive : a ( "$compileProvider" , "directive" ) , config : f , run : function ( d ) { return k . push ( d ) , this } } ; return g && f ( g ) , h } ) } } ) } function ze ( d ) { n ( d , { bootstrap : U , copy : Ga , extend : n , merge : t , equals : X , element : fa , forEach : b , injector : eb , noop : q , bind : T , toJson : ka , fromJson : ca , identity : v , isUndefined : B , isDefined : F , isString : u , isFunction : E , isObject : p , isNumber : I , isElement : S , isArray : la , version : Ae , isDate : J ,
lowercase : sa , uppercase : lb , callbacks : { counter : 0 } , getTestability : Ua , $$minErr : h , $$csp : Ub , reloadWithDebugInfo : na } ) ; ( Kb = Of ( a ) ) ( "ng" , [ "ngLocale" ] , [ "$provide" , function ( d ) { d . provider ( { $$sanitizeUri : bd } ) ; d . provider ( "$compile" , Lb ) . directive ( { a : cd , input : oc , textarea : oc , form : Be , script : Pf , select : Qf , style : Rf , option : Sf , ngBind : Gd , ngBindHtml : Ce , ngBindTemplate : De , ngClass : Ac , ngClassEven : Tf , ngClassOdd : Ee , ngCloak : Uf , ngController : Vf , ngForm : Va , ngHide : Wf , ngIf : Xf , ngInclude : Yf , ngInit : Zf , ngNonBindable : $f , ngPluralize : ag , ngRepeat : Bc ,
ngShow : Fe , ngStyle : Ge , ngSwitch : bg , ngSwitchWhen : cg , ngSwitchDefault : dg , ngOptions : He , ngTransclude : eg , ngModel : Ie , ngList : fg , ngChange : Hd , pattern : dd , ngPattern : dd , required : oa , ngRequired : oa , minlength : Je , ngMinlength : Je , maxlength : ed , ngMaxlength : ed , ngValue : Id , ngModelOptions : gg } ) . directive ( { ngInclude : hg } ) . directive ( Eb ) . directive ( Ke ) ; d . provider ( { $anchorScroll : Jd , $animate : Vb , $animateCss : Le , $$animateJs : Me , $$animateQueue : Kd , $$AnimateRunner : fd , $$animateAsyncRun : Ne , $browser : Cc , $cacheFactory : Ld , $controller : xb , $document : va ,
$exceptionHandler : Ag , $filter : Dc , $$forceReflow : fc , $interpolate : Md , $interval : Ec , $http : Bg , $httpParamSerializer : Cg , $httpParamSerializerJQLike : bb , $httpBackend : Oe , $xhrFactory : Dg , $location : Pe , $log : Mb , $parse : Eg , $rootScope : Nd , $q : Qe , $$q : Re , $sce : mb , $sceDelegate : Se , $sniffer : Te , $templateCache : Fb , $templateRequest : Ue , $$testability : Ve , $timeout : gd , $window : We , $$rAF : Od , $$jqLite : Ha , $$HashMap : Xe , $$cookieReader : hd } ) } ] ) } function pc ( d ) { return d . replace ( Pd , function ( d , a , b , c ) { return c ? b . toUpperCase ( ) : b } ) . replace ( id , "Moz$1" ) }
function Ye ( d ) { return d = d . nodeType , 1 === d || ! d || 9 === d } function Ze ( d , a ) { var l , c , g = a . createDocumentFragment ( ) , e = [ ] ; if ( Fc . test ( d ) ) { l = l || g . appendChild ( a . createElement ( "div" ) ) ; c = ( Ba . exec ( d ) || [ "" , "" ] ) [ 1 ] . toLowerCase ( ) ; c = Ra [ c ] || Ra . _default ; l . innerHTML = c [ 1 ] + d . replace ( $e , "<$1></$2>" ) + c [ 2 ] ; for ( c = c [ 0 ] ; c -- ; ) l = l . lastChild ; e = O ( e , l . childNodes ) ; l = g . firstChild ; l . textContent = "" } else e . push ( a . createTextNode ( d ) ) ; return g . textContent = "" , g . innerHTML = "" , b ( e , function ( d ) { g . appendChild ( d ) } ) , g } function af ( d , a ) { var b = d . parentNode ;
2017-07-25 17:51:59 +00:00
b && b . replaceChild ( a , d ) ; a . appendChild ( d ) } function Oa ( d ) { if ( d instanceof Oa ) return d ; var a ; if ( u ( d ) && ( d = Ea ( d ) , a = ! 0 ) , ! ( this instanceof Oa ) ) { if ( a && "<" != d . charAt ( 0 ) ) throw jd ( "nosel" ) ; return new Oa ( d ) } if ( a ) { a = f ; var b ; d = ( b = bf . exec ( d ) ) ? [ a . createElement ( b [ 1 ] ) ] : ( b = Ze ( d , a ) ) ? b . childNodes : [ ] } ta ( this , d ) } function kd ( d ) { return d . cloneNode ( ! 0 ) } function ld ( d , a ) { if ( a || da ( d ) , d . querySelectorAll ) for ( var b = d . querySelectorAll ( "*" ) , l = 0 , c = b . length ; l < c ; l ++ ) da ( b [ l ] ) } function cf ( d , a , c , g ) { if ( F ( g ) ) throw jd ( "offargs" ) ; var l = ( g = Gc ( d ) ) &&
2017-07-20 23:09:21 +00:00
g . events , H = g && g . handle ; if ( H ) if ( a ) { var e = function ( a ) { var b = l [ a ] ; F ( c ) && ya ( b || [ ] , c ) ; F ( c ) && b && 0 < b . length || ( d . removeEventListener ( a , H , ! 1 ) , delete l [ a ] ) } ; b ( a . split ( " " ) , function ( d ) { e ( d ) ; Hc [ d ] && e ( Hc [ d ] ) } ) } else for ( a in l ) "$destroy" !== a && d . removeEventListener ( a , H , ! 1 ) , delete l [ a ] } function da ( d , a ) { var b = d . ng339 , l = b && gc [ b ] ; l && ( a ? delete l . data [ a ] : ( l . handle && ( l . events . $destroy && l . handle ( { } , "$destroy" ) , cf ( d ) ) , delete gc [ b ] , d . ng339 = k ) ) } function Gc ( d , a ) { var b = d . ng339 , b = b && gc [ b ] ; return a && ! b && ( d . ng339 = b = ++ Qd , b = gc [ b ] =
2017-07-25 17:51:59 +00:00
{ events : { } , data : { } , handle : k } ) , b } function wa ( d , a , b ) { if ( Ye ( d ) ) { var l = F ( b ) , c = ! l && a && ! p ( a ) , g = ! a ; if ( d = ( d = Gc ( d , ! c ) ) && d . data , l ) d [ a ] = b ; else { if ( g ) return d ; if ( c ) return d && d [ a ] ; n ( d , a ) } } } function md ( d , a ) { return ! ! d . getAttribute && - 1 < ( " " + ( d . getAttribute ( "class" ) || "" ) + " " ) . replace ( /[\n\t]/g , " " ) . indexOf ( " " + a + " " ) } function Xa ( d , a ) { a && d . setAttribute && b ( a . split ( " " ) , function ( a ) { d . setAttribute ( "class" , Ea ( ( " " + ( d . getAttribute ( "class" ) || "" ) + " " ) . replace ( /[\n\t]/g , " " ) . replace ( " " + Ea ( a ) + " " , " " ) ) ) } ) } function nb ( d , a ) { if ( a &&
d . setAttribute ) { var l = ( " " + ( d . getAttribute ( "class" ) || "" ) + " " ) . replace ( /[\n\t]/g , " " ) ; b ( a . split ( " " ) , function ( d ) { d = Ea ( d ) ; - 1 === l . indexOf ( " " + d + " " ) && ( l += d + " " ) } ) ; d . setAttribute ( "class" , Ea ( l ) ) } } function ta ( d , a ) { if ( a ) if ( a . nodeType ) d [ d . length ++ ] = a ; else { var b = a . length ; if ( "number" == typeof b && a . window !== a ) { if ( b ) for ( var l = 0 ; l < b ; l ++ ) d [ d . length ++ ] = a [ l ] } else d [ d . length ++ ] = a } } function Ic ( d , a ) { return Gb ( d , "$" + ( a || "ngController" ) + "Controller" ) } function Gb ( d , a , b ) { 9 == d . nodeType && ( d = d . documentElement ) ; for ( a = la ( a ) ?
a : [ a ] ; d ; ) { for ( var l = 0 , c = a . length ; l < c ; l ++ ) if ( F ( b = fa . data ( d , a [ l ] ) ) ) return b ; d = d . parentNode || 11 === d . nodeType && d . host } } function nd ( d ) { for ( ld ( d , ! 0 ) ; d . firstChild ; ) d . removeChild ( d . firstChild ) } function hc ( d , a ) { a || ld ( d ) ; var b = d . parentNode ; b && b . removeChild ( d ) } function od ( d , b ) { b = b || a ; "complete" === b . document . readyState ? b . setTimeout ( d ) : fa ( b ) . on ( "load" , d ) } function df ( d , a ) { var b = Hb [ a . toLowerCase ( ) ] ; return b && Fa [ ja ( d ) ] && b } function ig ( d , a ) { var b = function ( b , l ) { b . isDefaultPrevented = function ( ) { return b . defaultPrevented } ;
var c = a [ l || b . type ] , g = c ? c . length : 0 ; if ( g ) { if ( B ( b . immediatePropagationStopped ) ) { var e = b . stopImmediatePropagation ; b . stopImmediatePropagation = function ( ) { b . immediatePropagationStopped = ! 0 ; b . stopPropagation && b . stopPropagation ( ) ; e && e . call ( b ) } } b . isImmediatePropagationStopped = function ( ) { return ! 0 === b . immediatePropagationStopped } ; var H = c . specialHandlerWrapper || jg ; 1 < g && ( c = za ( c ) ) ; for ( var k = 0 ; k < g ; k ++ ) b . isImmediatePropagationStopped ( ) || H ( d , b , c [ k ] ) } } ; return b . elem = d , b } function jg ( d , a , b ) { b . call ( d , a ) } function Ia ( d , a ,
2017-07-20 23:09:21 +00:00
b ) { var l = a . relatedTarget ; l && ( l === d || ef . call ( d , l ) ) || b . call ( d , a ) } function Ha ( ) { this . $get = function ( ) { return n ( Oa , { hasClass : function ( d , a ) { return d . attr && ( d = d [ 0 ] ) , md ( d , a ) } , addClass : function ( d , a ) { return d . attr && ( d = d [ 0 ] ) , nb ( d , a ) } , removeClass : function ( d , a ) { return d . attr && ( d = d [ 0 ] ) , Xa ( d , a ) } } ) } } function pb ( d , a ) { var b = d && d . $$hashKey ; return b ? ( "function" == typeof b && ( b = d . $$hashKey ( ) ) , b ) : ( b = typeof d , "function" == b || "object" == b && null !== d ? d . $$hashKey = b + ":" + ( a || r ) ( ) : b + ":" + d ) } function Nb ( d , a ) { if ( a ) { var l = 0 ; this . nextUid =
function ( ) { return ++ l } } b ( d , this . put , this ) } function Rd ( d ) { return ( d = d . toString ( ) . replace ( ic , "" ) . match ( Jc ) ) ? "function(" + ( d [ 1 ] || "" ) . replace ( /[\s\r\n]+/ , " " ) + ")" : "fn" } function eb ( d , a ) { function l ( d ) { return function ( a , l ) { return p ( a ) ? void b ( a , g ( d ) ) : d ( a , l ) } } function c ( d , a ) { if ( vb ( d , "service" ) , ( E ( a ) || la ( a ) ) && ( a = q . instantiate ( a ) ) , ! a . $get ) throw Wb ( "pget" , d ) ; return t [ d + "Provider" ] = a } function e ( d , a ) { return function ( ) { var b = v . invoke ( a , this ) ; if ( B ( b ) ) throw Wb ( "undef" , d ) ; return b } } function f ( d , a , b ) { return c ( d , { $get : ! 1 !==
2017-07-25 17:51:59 +00:00
b ? e ( d , a ) : a } ) } function h ( d ) { jb ( B ( d ) || la ( d ) , "modulesToLoad" , "not an array" ) ; var a , l = [ ] ; return b ( d , function ( d ) { function b ( d ) { var a , b ; a = 0 ; for ( b = d . length ; a < b ; a ++ ) { var l = d [ a ] , c = q . get ( l [ 0 ] ) ; c [ l [ 1 ] ] . apply ( c , l [ 2 ] ) } } if ( ! r . get ( d ) ) { r . put ( d , ! 0 ) ; try { u ( d ) ? ( a = Kb ( d ) , l = l . concat ( h ( a . requires ) ) . concat ( a . _runBlocks ) , b ( a . _invokeQueue ) , b ( a . _configBlocks ) ) : E ( d ) ? l . push ( q . invoke ( d ) ) : la ( d ) ? l . push ( q . invoke ( d ) ) : kb ( d , "module" ) } catch ( qb ) { throw la ( d ) && ( d = d [ d . length - 1 ] ) , qb . message && qb . stack && - 1 == qb . stack . indexOf ( qb . message ) && ( qb =
qb . message + "\n" + qb . stack ) , Wb ( "modulerr" , d , qb . stack || qb . message || qb ) ; } } } ) , l } function m ( d , b ) { function l ( a , l ) { if ( d . hasOwnProperty ( a ) ) { if ( d [ a ] === n ) throw Wb ( "cdep" , a + " <- " + w . join ( " <- " ) ) ; return d [ a ] } try { return w . unshift ( a ) , d [ a ] = n , d [ a ] = b ( a , l ) } catch ( Sd ) { throw d [ a ] === n && delete d [ a ] , Sd ; } finally { w . shift ( ) } } function c ( d , b , c , g ) { "string" == typeof c && ( g = c , c = null ) ; var e , k , H , y = [ ] , C = eb . $$annotate ( d , a , g ) ; k = 0 ; for ( e = C . length ; k < e ; k ++ ) { if ( H = C [ k ] , "string" != typeof H ) throw Wb ( "itkn" , H ) ; y . push ( c && c . hasOwnProperty ( H ) ? c [ H ] :
2017-07-20 23:09:21 +00:00
l ( H , g ) ) } return la ( d ) && ( d = d [ e ] ) , d . apply ( b , y ) } return { invoke : c , instantiate : function ( d , a , b ) { var l = Object . create ( ( la ( d ) ? d [ d . length - 1 ] : d ) . prototype || null ) ; return d = c ( d , l , a , b ) , p ( d ) || E ( d ) ? d : l } , get : l , annotate : eb . $$annotate , has : function ( a ) { return t . hasOwnProperty ( a + "Provider" ) || d . hasOwnProperty ( a ) } } } a = ! 0 === a ; var n = { } , w = [ ] , r = new Nb ( [ ] , ! 0 ) , t = { $provide : { provider : l ( c ) , factory : l ( f ) , service : l ( function ( d , a ) { return f ( d , [ "$injector" , function ( d ) { return d . instantiate ( a ) } ] ) } ) , value : l ( function ( d , a ) { return f ( d , z ( a ) , ! 1 ) } ) ,
constant : l ( function ( d , a ) { vb ( d , "constant" ) ; t [ d ] = a ; x [ d ] = a } ) , decorator : function ( d , a ) { var b = q . get ( d + "Provider" ) , l = b . $get ; b . $get = function ( ) { var d = v . invoke ( l , b ) ; return v . invoke ( a , null , { $delegate : d } ) } } } } , q = t . $injector = m ( t , function ( d , a ) { throw Na . isString ( a ) && w . push ( a ) , Wb ( "unpr" , w . join ( " <- " ) ) ; } ) , x = { } , v = x . $injector = m ( x , function ( d , a ) { var b = q . get ( d + "Provider" , a ) ; return v . invoke ( b . $get , b , k , d ) } ) ; return b ( h ( d ) , function ( d ) { d && v . invoke ( d ) } ) , v } function Jd ( ) { var d = ! 0 ; this . disableAutoScrolling = function ( ) { d = ! 1 } ; this . $get =
2017-07-25 17:51:59 +00:00
[ "$window" , "$location" , "$rootScope" , function ( a , b , c ) { function l ( d ) { var a = null ; return Array . prototype . some . call ( d , function ( d ) { if ( "a" === ja ( d ) ) return a = d , ! 0 } ) , a } function g ( d ) { if ( d ) { d . scrollIntoView ( ) ; var b ; b = e . yOffset ; E ( b ) ? b = b ( ) : S ( b ) ? ( b = b [ 0 ] , b = "fixed" !== a . getComputedStyle ( b ) . position ? 0 : b . getBoundingClientRect ( ) . bottom ) : I ( b ) || ( b = 0 ) ; b && ( d = d . getBoundingClientRect ( ) . top , a . scrollBy ( 0 , d - b ) ) } else a . scrollTo ( 0 , 0 ) } function e ( d ) { d = u ( d ) ? d : b . hash ( ) ; var a ; d ? ( a = k . getElementById ( d ) ) ? g ( a ) : ( a = l ( k . getElementsByName ( d ) ) ) ?
2017-07-20 23:09:21 +00:00
g ( a ) : "top" === d && g ( null ) : g ( null ) } var k = a . document ; return d && c . $watch ( function ( ) { return b . hash ( ) } , function ( d , a ) { d === a && "" === d || od ( function ( ) { c . $evalAsync ( e ) } ) } ) , e } ] } function Ib ( d , a ) { return d || a ? d ? a ? ( la ( d ) && ( d = d . join ( " " ) ) , la ( a ) && ( a = a . join ( " " ) ) , d + " " + a ) : d : a : "" } function yb ( d ) { u ( d ) && ( d = d . split ( " " ) ) ; var a = Ma ( ) ; return b ( d , function ( d ) { d . length && ( a [ d ] = ! 0 ) } ) , a } function Ya ( d ) { return p ( d ) ? d : { } } function Td ( d , a , c , g ) { function l ( d ) { try { d . apply ( null , Db . call ( arguments , 1 ) ) } finally { if ( Z -- , 0 === Z ) for ( ; t . length ; ) try { t . pop ( ) ( ) } catch ( lg ) { c . error ( lg ) } } }
function e ( ) { A = null ; k ( ) ; H ( ) } function k ( ) { a : { try { u = m . state ; break a } catch ( tg ) { } u = void 0 } u = B ( u ) ? null : u ; X ( u , G ) && ( u = G ) ; G = u } function H ( ) { p === f . url ( ) && x === u || ( p = f . url ( ) , x = u , b ( E , function ( d ) { d ( f . url ( ) , u ) } ) ) } var f = this , h = d . location , m = d . history , n = d . setTimeout , w = d . clearTimeout , r = { } ; f . isMock = ! 1 ; var Z = 0 , t = [ ] ; f . $$completeOutstandingRequest = l ; f . $$incOutstandingRequestCount = function ( ) { Z ++ } ; f . notifyWhenNoOutstandingRequests = function ( d ) { 0 === Z ? d ( ) : t . push ( d ) } ; var u , x , p = h . href , v = a . find ( "base" ) , A = null ; k ( ) ; x = u ; f . url = function ( a ,
b , y ) { if ( B ( y ) && ( y = null ) , h !== d . location && ( h = d . location ) , m !== d . history && ( m = d . history ) , a ) { var C = x === y ; if ( p === a && ( ! g . history || C ) ) return f ; var l = p && Xb ( p ) === Xb ( a ) ; return p = a , x = y , ! g . history || l && C ? ( l && ! A || ( A = a ) , b ? h . replace ( a ) : l ? ( b = h , y = a . indexOf ( "#" ) , y = - 1 === y ? "" : a . substr ( y ) , b . hash = y ) : h . href = a , h . href !== a && ( A = a ) ) : ( m [ b ? "replaceState" : "pushState" ] ( y , "" , a ) , k ( ) , x = u ) , f } return A || h . href . replace ( /%27/g , "'" ) } ; f . state = function ( ) { return u } ; var E = [ ] , z = ! 1 , G = null ; f . onUrlChange = function ( a ) { return z || ( g . history && fa ( d ) . on ( "popstate" ,
2017-07-25 17:51:59 +00:00
e ) , fa ( d ) . on ( "hashchange" , e ) , z = ! 0 ) , E . push ( a ) , a } ; f . $$applicationDestroyed = function ( ) { fa ( d ) . off ( "hashchange popstate" , e ) } ; f . $$checkUrlChange = H ; f . baseHref = function ( ) { var d = v . attr ( "href" ) ; return d ? d . replace ( /^(https?\:)?\/\/[^\/]*/ , "" ) : "" } ; f . defer = function ( d , a ) { var y ; return Z ++ , y = n ( function ( ) { delete r [ y ] ; l ( d ) } , a || 0 ) , r [ y ] = ! 0 , y } ; f . defer . cancel = function ( d ) { return ! ! r [ d ] && ( delete r [ d ] , w ( d ) , l ( q ) , ! 0 ) } } function Cc ( ) { this . $get = [ "$window" , "$log" , "$sniffer" , "$document" , function ( d , a , b , c ) { return new Td ( d , c , a , b ) } ] }
2017-07-20 23:09:21 +00:00
function Ld ( ) { this . $get = function ( ) { function d ( d , b ) { function l ( d ) { d != m && ( w ? w == d && ( w = d . n ) : w = d , c ( d . n , d . p ) , c ( d , m ) , m = d , m . n = null ) } function c ( d , a ) { d != a && ( d && ( d . p = a ) , a && ( a . n = d ) ) } if ( d in a ) throw h ( "$cacheFactory" ) ( "iid" , d ) ; var g = 0 , e = n ( { } , b , { id : d } ) , k = Ma ( ) , f = b && b . capacity || Number . MAX _VALUE , H = Ma ( ) , m = null , w = null ; return a [ d ] = { put : function ( d , a ) { if ( ! B ( a ) ) { if ( f < Number . MAX _VALUE ) { var b = H [ d ] || ( H [ d ] = { key : d } ) ; l ( b ) } return d in k || g ++ , k [ d ] = a , g > f && this . remove ( w . key ) , a } } , get : function ( d ) { if ( f < Number . MAX _VALUE ) { var a = H [ d ] ;
if ( ! a ) return ; l ( a ) } return k [ d ] } , remove : function ( d ) { if ( f < Number . MAX _VALUE ) { var a = H [ d ] ; if ( ! a ) return ; a == m && ( m = a . p ) ; a == w && ( w = a . n ) ; c ( a . n , a . p ) ; delete H [ d ] } d in k && ( delete k [ d ] , g -- ) } , removeAll : function ( ) { k = Ma ( ) ; g = 0 ; H = Ma ( ) ; m = w = null } , destroy : function ( ) { H = e = k = null ; delete a [ d ] } , info : function ( ) { return n ( { } , e , { size : g } ) } } } var a = { } ; return d . info = function ( ) { var d = { } ; return b ( a , function ( a , b ) { d [ b ] = a . info ( ) } ) , d } , d . get = function ( d ) { return a [ d ] } , d } } function Fb ( ) { this . $get = [ "$cacheFactory" , function ( d ) { return d ( "templates" ) } ] }
function Lb ( d , a ) { function l ( d , a , l ) { var c = /^\s*([@&]|=(\*?))(\??)\s*(\w*)\s*$/ , g = Ma ( ) ; return b ( d , function ( d , b ) { if ( d in A ) g [ b ] = A [ d ] ; else { var e = d . match ( c ) ; if ( ! e ) throw Za ( "iscp" , a , b , d , l ? "controller bindings definition" : "isolate scope definition" ) ; g [ b ] = { mode : e [ 1 ] [ 0 ] , collection : "*" === e [ 2 ] , optional : "?" === e [ 3 ] , attrName : e [ 4 ] || b } ; e [ 4 ] && ( A [ d ] = g [ b ] ) } } ) , g } function c ( d ) { var a = d . charAt ( 0 ) ; if ( ! a || a !== sa ( a ) ) throw Za ( "baddir" , d ) ; if ( d !== d . trim ( ) ) throw Za ( "baddir" , d ) ; } var e = { } , h = /^\s*directive\:\s*([\w\-]+)\s+(.*)$/ ,
m = /(([\w\-]+)(?:\:([^;]+))?;?)/ , w = W ( "ngSrc,ngSrcset,src,srcset" ) , r = /^(?:(\^\^?)?(\?)?(\^\^?)?)?/ , t = /^(on[a-z]+|formaction)$/ , A = Ma ( ) ; this . directive = function ad ( a , l ) { return vb ( a , "directive" ) , u ( a ) ? ( c ( a ) , jb ( l , "directiveFactory" ) , e . hasOwnProperty ( a ) || ( e [ a ] = [ ] , d . factory ( a + "Directive" , [ "$injector" , "$exceptionHandler" , function ( d , l ) { var c = [ ] ; return b ( e [ a ] , function ( b , g ) { try { var e = d . invoke ( b ) ; E ( e ) ? e = { compile : z ( e ) } : ! e . compile && e . link && ( e . compile = z ( e . link ) ) ; e . priority = e . priority || 0 ; e . index = g ; e . name = e . name || a ;
e . require = e . require || e . controller && e . name ; e . restrict = e . restrict || "EA" ; e . $$moduleName = b . $$moduleName ; c . push ( e ) } catch ( qc ) { l ( qc ) } } ) , c } ] ) ) , e [ a ] . push ( l ) ) : b ( a , g ( ad ) ) , this } ; this . aHrefSanitizationWhitelist = function ( d ) { return F ( d ) ? ( a . aHrefSanitizationWhitelist ( d ) , this ) : a . aHrefSanitizationWhitelist ( ) } ; this . imgSrcSanitizationWhitelist = function ( d ) { return F ( d ) ? ( a . imgSrcSanitizationWhitelist ( d ) , this ) : a . imgSrcSanitizationWhitelist ( ) } ; var G = ! 0 ; this . debugInfoEnabled = function ( d ) { return F ( d ) ? ( G = d , this ) : G } ; this . $get =
2017-07-25 17:51:59 +00:00
[ "$injector" , "$interpolate" , "$exceptionHandler" , "$templateRequest" , "$parse" , "$controller" , "$rootScope" , "$sce" , "$animate" , "$$sanitizeUri" , function ( d , a , c , g , H , Z , aa , ba , La , xa ) { function A ( d , a ) { try { d . addClass ( a ) } catch ( Ng ) { } } function z ( d , a , y , b , C ) { d instanceof fa || ( d = fa ( d ) ) ; for ( var l = /\S+/ , c = 0 , L = d . length ; c < L ; c ++ ) { var g = d [ c ] ; g . nodeType === Rb && g . nodeValue . match ( l ) && af ( g , d [ c ] = f . createElement ( "span" ) ) } var e = Qb ( d , a , d , y , b , C ) ; z . $$addScopeClass ( d ) ; var k = null ; return function ( a , y , b ) { jb ( a , "scope" ) ; C && C . needsNewScope &&
2017-07-20 23:09:21 +00:00
( a = a . $parent . $new ( ) ) ; b = b || { } ; var l = b . parentBoundTranscludeFn , c = b . transcludeControllers ; if ( b = b . futureParentElement , l && l . $$boundTransclude && ( l = l . $$boundTransclude ) , k || ( k = ( b = b && b [ 0 ] ) && "foreignobject" !== ja ( b ) && b . toString ( ) . match ( /SVG/ ) ? "svg" : "html" ) , b = "html" !== k ? fa ( ma ( k , fa ( "<div>" ) . append ( d ) . html ( ) ) ) : y ? Sb . clone . call ( d ) : d , c ) for ( var L in c ) b . data ( "$" + L + "Controller" , c [ L ] . instance ) ; return z . $$addScopeInfo ( b , a ) , y && y ( b , a ) , e && e ( a , b , b , l ) , b } } function Qb ( d , a , b , l , c , L ) { function g ( d , b , C , l ) { var c , L , g , e , f , H , h ; if ( m ) for ( h =
2017-07-25 17:51:59 +00:00
Array ( b . length ) , e = 0 ; e < n . length ; e += 3 ) c = n [ e ] , h [ c ] = b [ c ] ; else h = b ; e = 0 ; for ( f = n . length ; e < f ; ) L = h [ n [ e ++ ] ] , b = n [ e ++ ] , c = n [ e ++ ] , b ? ( b . scope ? ( g = d . $new ( ) , z . $$addScopeInfo ( fa ( L ) , g ) ) : g = d , H = b . transcludeOnThisElement ? y ( d , b . transclude , l ) : ! b . templateOnThisElement && l ? l : ! l && a ? y ( d , a ) : null , b ( c , g , L , C , H ) ) : c && c ( d , L . childNodes , k , l ) } for ( var e , f , H , h , m , n = [ ] , w = 0 ; w < d . length ; w ++ ) e = new Tb , f = C ( d [ w ] , [ ] , e , 0 === w ? l : k , c ) , ( L = f . length ? zb ( f , d [ w ] , e , a , b , null , [ ] , [ ] , L ) : null ) && L . scope && z . $$addScopeClass ( e . $$element ) , e = L && L . terminal || ! ( H = d [ w ] . childNodes ) ||
! H . length ? null : Qb ( H , L ? ( L . transcludeOnThisElement || ! L . templateOnThisElement ) && L . transclude : a ) , ( L || e ) && ( n . push ( w , L , e ) , h = ! 0 , m = m || L ) , L = null ; return h ? g : null } function y ( d , a , y ) { return function ( b , C , l , c , L ) { return b || ( b = d . $new ( ! 1 , L ) , b . $$transcluded = ! 0 ) , a ( b , C , { parentBoundTranscludeFn : y , transcludeControllers : l , futureParentElement : c } ) } } function C ( d , a , y , b , C ) { var l , c = y . $attr ; switch ( d . nodeType ) { case 1 : l = ja ( d ) ; Cb ( a , rb ( l ) , "E" , b , C ) ; for ( var L , e , g , k , f = d . attributes , H = 0 , n = f && f . length ; H < n ; H ++ ) { var w = ! 1 , r = ! 1 ; L = f [ H ] ; e = L . name ;
2017-07-20 23:09:21 +00:00
g = Ea ( L . value ) ; L = rb ( e ) ; ( k = kb . test ( L ) ) && ( e = e . replace ( Ud , "" ) . substr ( 8 ) . replace ( /_(.)/g , function ( d , a ) { return a . toUpperCase ( ) } ) ) ; ( L = L . match ( M ) ) && dc ( L [ 1 ] ) && ( w = e , r = e . substr ( 0 , e . length - 5 ) + "end" , e = e . substr ( 0 , e . length - 6 ) ) ; L = rb ( e . toLowerCase ( ) ) ; c [ L ] = e ; ! k && y . hasOwnProperty ( L ) || ( y [ L ] = g , df ( d , L ) && ( y [ L ] = ! 0 ) ) ; W ( d , a , g , L , k ) ; Cb ( a , L , "A" , b , C , w , r ) } if ( "input" === l && "hidden" === d . getAttribute ( "type" ) && d . setAttribute ( "autocomplete" , "off" ) , d = d . className , p ( d ) && ( d = d . animVal ) , u ( d ) && "" !== d ) for ( ; l = m . exec ( d ) ; ) L = rb ( l [ 2 ] ) , Cb ( a , L , "C" ,
b , C ) && ( y [ L ] = Ea ( l [ 3 ] ) ) , d = d . substr ( l . index + l [ 0 ] . length ) ; break ; case Rb : if ( 11 === jc ) for ( ; d . parentNode && d . nextSibling && d . nextSibling . nodeType === Rb ; ) d . nodeValue += d . nextSibling . nodeValue , d . parentNode . removeChild ( d . nextSibling ) ; ua ( a , d . nodeValue ) ; break ; case 8 : try { ( l = h . exec ( d . nodeValue ) ) && ( L = rb ( l [ 1 ] ) , Cb ( a , L , "M" , b , C ) && ( y [ L ] = Ea ( l [ 2 ] ) ) ) } catch ( Og ) { } } return a . sort ( na ) , a } function L ( d , a , y ) { var b = [ ] , C = 0 ; if ( a && d . hasAttribute && d . hasAttribute ( a ) ) { do { if ( ! d ) throw Za ( "uterdir" , a , y ) ; 1 == d . nodeType && ( d . hasAttribute ( a ) && C ++ ,
d . hasAttribute ( y ) && C -- ) ; b . push ( d ) ; d = d . nextSibling } while ( 0 < C ) } else b . push ( d ) ; return fa ( b ) } function Aa ( d , a , y ) { return function ( b , C , l , c , e ) { return C = L ( C [ 0 ] , a , y ) , d ( b , C , l , c , e ) } } function zb ( d , a , y , b , l , e , g , H , h ) { function m ( d , a , y , b ) { d && ( y && ( d = Aa ( d , y , b ) ) , d . require = q . require , d . directiveName = aa , ( v === q || q . $$isolateScope ) && ( d = U ( d , { isolateScope : ! 0 } ) ) , g . push ( d ) ) ; a && ( y && ( a = Aa ( a , y , b ) ) , a . require = q . require , a . directiveName = aa , ( v === q || q . $$isolateScope ) && ( a = U ( a , { isolateScope : ! 0 } ) ) , H . push ( a ) ) } function n ( d , a , y , b ) { var C ; if ( u ( a ) ) { var l =
2017-07-25 17:51:59 +00:00
a . match ( r ) ; a = a . substring ( l [ 0 ] . length ) ; var c = l [ 1 ] || l [ 3 ] , l = "?" === l [ 2 ] ; if ( "^^" === c ? y = y . parent ( ) : C = ( C = b && b [ a ] ) && C . instance , C || ( b = "$" + a + "Controller" , C = c ? y . inheritedData ( b ) : y . data ( b ) ) , ! C && ! l ) throw Za ( "ctreq" , a , d ) ; } else if ( la ( a ) ) for ( C = [ ] , c = 0 , l = a . length ; c < l ; c ++ ) C [ c ] = n ( d , a [ c ] , y , b ) ; return C || null } function w ( d , a , y , b , C , l ) { var c , L = Ma ( ) ; for ( c in b ) { var e = b [ c ] , g = { $scope : e === v || e . $$isolateScope ? C : l , $element : d , $attrs : a , $transclude : y } , k = e . controller ; "@" == k && ( k = a [ e . name ] ) ; g = Z ( k , g , ! 0 , e . controllerAs ) ; L [ e . name ] = g ; d . data ( "$" +
2017-07-20 23:09:21 +00:00
e . name + "Controller" , g . instance ) } return L } function t ( d , b , C , l , c ) { function L ( d , a , y ) { var b ; return K ( d ) || ( y = a , a = d , d = k ) , P && ( b = m ) , y || ( y = P ? q . parent ( ) : q ) , c ( d , a , b , y , ba ) } var e , f , h , m , r , q , t ; a === C ? ( l = y , q = y . $$element ) : ( q = fa ( C ) , l = new Tb ( q , y ) ) ; h = b ; v ? f = b . $new ( ! 0 ) : xa && ( h = b . $parent ) ; c && ( r = L , r . $$boundTransclude = c ) ; A && ( m = w ( q , l , r , A , f , b ) ) ; v && ( z . $$addScopeInfo ( q , f , ! 0 , ! ( zb && ( zb === v || zb === v . $$originalDirective ) ) ) , z . $$addScopeClass ( q , ! 0 ) , f . $$isolateBindings = v . $$isolateBindings , ( t = Dd ( b , l , f , f . $$isolateBindings , v ) ) && f . $on ( "$destroy" ,
2017-07-25 17:51:59 +00:00
t ) ) ; for ( var Z in m ) { t = A [ Z ] ; var Aa = m [ Z ] , aa = t . $$bindings . bindToController ; Aa . identifier && aa && ( e = Dd ( h , l , Aa . instance , aa , t ) ) ; var u = Aa ( ) ; u !== Aa . instance && ( Aa . instance = u , q . data ( "$" + t . name + "Controller" , u ) , e && e ( ) , e = Dd ( h , l , Aa . instance , aa , t ) ) } ia = 0 ; for ( dc = g . length ; ia < dc ; ia ++ ) e = g [ ia ] , $c ( e , e . isolateScope ? f : b , q , l , e . require && n ( e . directiveName , e . require , q , m ) , r ) ; var ba = b ; v && ( v . template || null === v . templateUrl ) && ( ba = f ) ; d && d ( ba , C . childNodes , k , c ) ; for ( ia = H . length - 1 ; 0 <= ia ; ia -- ) e = H [ ia ] , $c ( e , e . isolateScope ? f : b , q , l , e . require &&
n ( e . directiveName , e . require , q , m ) , r ) } h = h || { } ; for ( var q , aa , ba , La , x = - Number . MAX _VALUE , xa = h . newScopeDirective , A = h . controllerDirectives , v = h . newIsolateScopeDirective , zb = h . templateDirective , G = h . nonTlbTranscludeDirective , B = ! 1 , Qb = ! 1 , P = h . hasElementTranscludeDirective , F = y . $$element = fa ( a ) , Cb = b , ia = 0 , dc = d . length ; ia < dc ; ia ++ ) { q = d [ ia ] ; var na = q . $$start , mg = q . $$end ; if ( na && ( F = L ( a , na , mg ) ) , ba = k , x > q . priority ) break ; if ( ( ba = q . scope ) && ( q . templateUrl || ( p ( ba ) ? ( wb ( "new/isolated scope" , v || xa , q , F ) , v = q ) : wb ( "new/isolated scope" , v ,
2017-07-20 23:09:21 +00:00
q , F ) ) , xa = xa || q ) , aa = q . name , ! q . templateUrl && q . controller && ( ba = q . controller , A = A || Ma ( ) , wb ( "'" + aa + "' controller" , A [ aa ] , q , F ) , A [ aa ] = q ) , ( ba = q . transclude ) && ( B = ! 0 , q . $$tlb || ( wb ( "transclusion" , G , q , F ) , G = q ) , "element" == ba ? ( P = ! 0 , x = q . priority , ba = F , F = y . $$element = fa ( f . createComment ( " " + aa + ": " + y [ aa ] + " " ) ) , a = F [ 0 ] , V ( l , Db . call ( ba , 0 ) , a ) , Cb = z ( ba , b , x , e && e . name , { nonTlbTranscludeDirective : G } ) ) : ( ba = fa ( kd ( a ) ) . contents ( ) , F . empty ( ) , Cb = z ( ba , b , k , k , { needsNewScope : q . $$isolateScope || q . $$newScope } ) ) ) , q . template ) if ( Qb = ! 0 , wb ( "template" ,
zb , q , F ) , zb = q , ba = E ( q . template ) ? q . template ( F , y ) : q . template , ba = qc ( ba ) , q . replace ) { if ( e = q , ba = Fc . test ( ba ) ? ug ( ma ( q . templateNamespace , Ea ( ba ) ) ) : [ ] , a = ba [ 0 ] , 1 != ba . length || 1 !== a . nodeType ) throw Za ( "tplrt" , aa , "" ) ; V ( l , F , a ) ; ba = { $attr : { } } ; var ua = C ( a , [ ] , ba ) , D = d . splice ( ia + 1 , d . length - ( ia + 1 ) ) ; ( v || xa ) && J ( ua , v , xa ) ; d = d . concat ( ua ) . concat ( D ) ; I ( y , ba ) ; dc = d . length } else F . html ( ba ) ; if ( q . templateUrl ) Qb = ! 0 , wb ( "template" , zb , q , F ) , zb = q , q . replace && ( e = q ) , t = S ( d . splice ( ia , d . length - ia ) , F , y , l , B && Cb , g , H , { controllerDirectives : A , newScopeDirective : xa !==
2017-07-25 17:51:59 +00:00
q && xa , newIsolateScopeDirective : v , templateDirective : zb , nonTlbTranscludeDirective : G } ) , dc = d . length ; else if ( q . compile ) try { La = q . compile ( F , y , Cb ) , E ( La ) ? m ( null , La , na , mg ) : La && m ( La . pre , La . post , na , mg ) } catch ( Jg ) { c ( Jg , Y ( F ) ) } q . terminal && ( t . terminal = ! 0 , x = Math . max ( x , q . priority ) ) } return t . scope = xa && ! 0 === xa . scope , t . transcludeOnThisElement = B , t . templateOnThisElement = Qb , t . transclude = Cb , h . hasElementTranscludeDirective = P , t } function J ( d , a , y ) { for ( var b = 0 , C = d . length ; b < C ; b ++ ) d [ b ] = x ( d [ b ] , { $$isolateScope : a , $$newScope : y } ) } function Cb ( a ,
y , b , C , L , g , f ) { if ( y === L ) return null ; if ( L = null , e . hasOwnProperty ( y ) ) { var k ; y = d . get ( y + "Directive" ) ; for ( var H = 0 , h = y . length ; H < h ; H ++ ) try { if ( k = y [ H ] , ( B ( C ) || C > k . priority ) && - 1 != k . restrict . indexOf ( b ) ) { if ( g && ( k = x ( k , { $$start : g , $$end : f } ) ) , ! k . $$bindings ) { var m = k , n = k , w = k . name , r = { isolateScope : null , bindToController : null } ; if ( p ( n . scope ) && ( ! 0 === n . bindToController ? ( r . bindToController = l ( n . scope , w , ! 0 ) , r . isolateScope = { } ) : r . isolateScope = l ( n . scope , w , ! 1 ) ) , p ( n . bindToController ) && ( r . bindToController = l ( n . bindToController , w , ! 0 ) ) ,
p ( r . bindToController ) ) { var q = n . controller , t = n . controllerAs ; if ( ! q ) throw Za ( "noctrl" , w ) ; var Z ; a : { var n = q , Aa = t ; if ( Aa && u ( Aa ) ) Z = Aa ; else { if ( u ( n ) ) { var aa = Kc . exec ( n ) ; if ( aa ) { Z = aa [ 3 ] ; break a } } Z = void 0 } } if ( ! Z ) throw Za ( "noident" , w ) ; } var ba = m . $$bindings = r ; p ( ba . isolateScope ) && ( k . $$isolateBindings = ba . isolateScope ) } a . push ( k ) ; L = k } } catch ( Hg ) { c ( Hg ) } } return L } function dc ( a ) { if ( e . hasOwnProperty ( a ) ) for ( var y = d . get ( a + "Directive" ) , b = 0 , C = y . length ; b < C ; b ++ ) if ( a = y [ b ] , a . multiElement ) return ! 0 ; return ! 1 } function I ( d , a ) { var y = a . $attr ,
2017-07-20 23:09:21 +00:00
C = d . $attr , l = d . $$element ; b ( d , function ( b , C ) { "$" != C . charAt ( 0 ) && ( a [ C ] && a [ C ] !== b && ( b += ( "style" === C ? ";" : " " ) + a [ C ] ) , d . $set ( C , b , ! 0 , y [ C ] ) ) } ) ; b ( a , function ( a , b ) { "class" == b ? ( A ( l , a ) , d [ "class" ] = ( d [ "class" ] ? d [ "class" ] + " " : "" ) + a ) : "style" == b ? ( l . attr ( "style" , l . attr ( "style" ) + ";" + a ) , d . style = ( d . style ? d . style + ";" : "" ) + a ) : "$" == b . charAt ( 0 ) || d . hasOwnProperty ( b ) || ( d [ b ] = a , C [ b ] = y [ b ] ) } ) } function S ( d , a , l , c , L , e , k , f ) { var H , h , m = [ ] , n = a [ 0 ] , w = d . shift ( ) , r = x ( w , { templateUrl : null , transclude : null , replace : null , $$originalDirective : w } ) , q = E ( w . templateUrl ) ?
w . templateUrl ( a , l ) : w . templateUrl , t = w . templateNamespace ; return a . empty ( ) , g ( q ) . then ( function ( g ) { var Z , Aa ; if ( g = qc ( g ) , w . replace ) { if ( g = Fc . test ( g ) ? ug ( ma ( t , Ea ( g ) ) ) : [ ] , Z = g [ 0 ] , 1 != g . length || 1 !== Z . nodeType ) throw Za ( "tplrt" , w . name , q ) ; g = { $attr : { } } ; V ( c , a , Z ) ; var aa = C ( Z , [ ] , g ) ; p ( w . scope ) && J ( aa , ! 0 ) ; d = aa . concat ( d ) ; I ( l , g ) } else Z = n , a . html ( g ) ; d . unshift ( r ) ; H = zb ( d , Z , l , L , a , w , e , k , f ) ; b ( c , function ( d , y ) { d == Z && ( c [ y ] = a [ 0 ] ) } ) ; for ( h = Qb ( a [ 0 ] . childNodes , L ) ; m . length ; ) { g = m . shift ( ) ; Aa = m . shift ( ) ; var u = m . shift ( ) , ba = m . shift ( ) , aa = a [ 0 ] ; if ( ! g . $$destroyed ) { if ( Aa !==
n ) { var La = Aa . className ; f . hasElementTranscludeDirective && w . replace || ( aa = kd ( Z ) ) ; V ( u , fa ( Aa ) , aa ) ; A ( fa ( aa ) , La ) } Aa = H . transcludeOnThisElement ? y ( g , H . transclude , ba ) : ba ; H ( h , g , aa , c , Aa ) } } m = null } ) , function ( d , a , b , C , l ) { d = l ; a . $$destroyed || ( m ? m . push ( a , b , C , d ) : ( H . transcludeOnThisElement && ( d = y ( a , H . transclude , l ) ) , H ( h , a , b , C , d ) ) ) } } function na ( d , a ) { var y = a . priority - d . priority ; return 0 !== y ? y : d . name !== a . name ? d . name < a . name ? - 1 : 1 : d . index - a . index } function wb ( d , a , y , b ) { function C ( d ) { return d ? " (module: " + d + ")" : "" } if ( a ) throw Za ( "multidir" ,
a . name , C ( a . $$moduleName ) , y . name , C ( y . $$moduleName ) , d , Y ( b ) ) ; } function ua ( d , y ) { var b = a ( y , ! 0 ) ; b && d . push ( { priority : 0 , compile : function ( d ) { d = d . parent ( ) ; var a = ! ! d . length ; return a && z . $$addBindingClass ( d ) , function ( d , y ) { var C = y . parent ( ) ; a || z . $$addBindingClass ( C ) ; z . $$addBindingInfo ( C , b . expressions ) ; d . $watch ( b , function ( d ) { y [ 0 ] . nodeValue = d } ) } } } ) } function ma ( d , a ) { switch ( d = sa ( d || "html" ) ) { case "svg" : case "math" : var y = f . createElement ( "div" ) ; return y . innerHTML = "<" + d + ">" + a + "</" + d + ">" , y . childNodes [ 0 ] . childNodes ; default : return a } }
function N ( d , a ) { if ( "srcdoc" == a ) return ba . HTML ; var y = ja ( d ) ; return "xlinkHref" == a || "form" == y && "action" == a || "img" != y && ( "src" == a || "ngSrc" == a ) ? ba . RESOURCE _URL : void 0 } function W ( d , y , b , C , l ) { var c = N ( d , C ) ; l = w [ C ] || l ; var L = a ( b , ! 0 , c , l ) ; if ( L ) { if ( "multiple" === C && "select" === ja ( d ) ) throw Za ( "selmulti" , Y ( d ) ) ; y . push ( { priority : 100 , compile : function ( ) { return { pre : function ( d , y , e ) { if ( y = e . $$observers || ( e . $$observers = Ma ( ) ) , t . test ( C ) ) throw Za ( "nodomevents" ) ; var g = e [ C ] ; g !== b && ( L = g && a ( g , ! 0 , c , l ) , b = g ) ; L && ( e [ C ] = L ( d ) , ( y [ C ] || ( y [ C ] =
2017-07-25 17:51:59 +00:00
[ ] ) ) . $$inter = ! 0 , ( e . $$observers && e . $$observers [ C ] . $$scope || d ) . $watch ( L , function ( d , a ) { "class" === C && d != a ? e . $updateClass ( d , a ) : e . $set ( C , d ) } ) ) } } } } ) } } function V ( d , a , y ) { var b , C , l = a [ 0 ] , c = a . length , L = l . parentNode ; if ( d ) for ( b = 0 , C = d . length ; b < C ; b ++ ) if ( d [ b ] == l ) { d [ b ++ ] = y ; C = b + c - 1 ; for ( var e = d . length ; b < e ; b ++ , C ++ ) C < e ? d [ b ] = d [ C ] : delete d [ b ] ; d . length -= c - 1 ; d . context === l && ( d . context = y ) ; break } L && L . replaceChild ( y , l ) ; d = f . createDocumentFragment ( ) ; d . appendChild ( l ) ; fa . hasData ( l ) && ( fa . data ( y , fa . data ( l ) ) , Da ? ( Zc = ! 0 , Da . cleanData ( [ l ] ) ) :
delete fa . cache [ l [ fa . expando ] ] ) ; l = 1 ; for ( c = a . length ; l < c ; l ++ ) L = a [ l ] , fa ( L ) . remove ( ) , d . appendChild ( L ) , delete a [ l ] ; a [ 0 ] = y ; a . length = 1 } function U ( d , a ) { return n ( function ( ) { return d . apply ( null , arguments ) } , d , a ) } function $c ( d , a , y , b , C , l ) { try { d ( a , y , b , C , l ) } catch ( Fg ) { c ( Fg , Y ( y ) ) } } function Dd ( d , y , C , l , c ) { var L = [ ] ; return b ( l , function ( b , l ) { var e , g , k , f , h = b . attrName , m = b . optional ; switch ( b . mode ) { case "@" : m || tb . call ( y , h ) || ( C [ l ] = y [ h ] = void 0 ) ; y . $observe ( h , function ( d ) { u ( d ) && ( C [ l ] = d ) } ) ; y . $$observers [ h ] . $$scope = d ; e = y [ h ] ; u ( e ) ?
2017-07-20 23:09:21 +00:00
C [ l ] = a ( e ) ( d ) : P ( e ) && ( C [ l ] = e ) ; break ; case "=" : if ( ! tb . call ( y , h ) ) { if ( m ) break ; y [ h ] = void 0 } if ( m && ! y [ h ] ) break ; g = H ( y [ h ] ) ; f = g . literal ? X : function ( d , a ) { return d === a || d !== d && a !== a } ; k = g . assign || function ( ) { throw e = C [ l ] = g ( d ) , Za ( "nonassign" , y [ h ] , h , c . name ) ; } ; e = C [ l ] = g ( d ) ; m = function ( a ) { return f ( a , C [ l ] ) || ( f ( a , e ) ? k ( d , a = C [ l ] ) : C [ l ] = a ) , e = a } ; m . $stateful = ! 0 ; m = b . collection ? d . $watchCollection ( y [ h ] , m ) : d . $watch ( H ( y [ h ] , m ) , null , g . literal ) ; L . push ( m ) ; break ; case "&" : ( g = y . hasOwnProperty ( h ) ? H ( y [ h ] ) : q , g === q && m ) || ( C [ l ] = function ( a ) { return g ( d ,
2017-07-25 17:51:59 +00:00
a ) } ) } } ) , L . length && function ( ) { for ( var d = 0 , a = L . length ; d < a ; ++ d ) L [ d ] ( ) } } var Tb = function ( d , a ) { if ( a ) { var y , b , C , l = Object . keys ( a ) ; y = 0 ; for ( b = l . length ; y < b ; y ++ ) C = l [ y ] , this [ C ] = a [ C ] } else this . $attr = { } ; this . $$element = d } ; Tb . prototype = { $normalize : rb , $addClass : function ( d ) { d && 0 < d . length && La . addClass ( this . $$element , d ) } , $removeClass : function ( d ) { d && 0 < d . length && La . removeClass ( this . $$element , d ) } , $updateClass : function ( d , a ) { var y = D ( d , a ) ; y && y . length && La . addClass ( this . $$element , y ) ; ( y = D ( a , d ) ) && y . length && La . removeClass ( this . $$element ,
y ) } , $set : function ( d , a , y , C ) { var l = df ( this . $$element [ 0 ] , d ) , L = Wd [ d ] , e = d ; if ( l ? ( this . $$element . prop ( d , a ) , C = l ) : L && ( this [ L ] = a , e = L ) , this [ d ] = a , C ? this . $attr [ d ] = C : ( C = this . $attr [ d ] ) || ( this . $attr [ d ] = C = ia ( d , "-" ) ) , l = ja ( this . $$element ) , "a" === l && "href" === d || "img" === l && "src" === d ) this [ d ] = a = xa ( a , "src" === d ) ; else if ( "img" === l && "srcset" === d && F ( a ) ) { for ( var l = "" , L = Ea ( a ) , g = /(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/ , g = /\s/ . test ( L ) ? g : /(,)/ , L = L . split ( g ) , g = Math . floor ( L . length / 2 ) , k = 0 ; k < g ; k ++ ) var f = 2 * k , l = l + xa ( Ea ( L [ f ] ) , ! 0 ) , l = l + ( " " + Ea ( L [ f +
2017-07-20 23:09:21 +00:00
1 ] ) ) ; L = Ea ( L [ 2 * k ] ) . split ( /\s/ ) ; l += xa ( Ea ( L [ 0 ] ) , ! 0 ) ; 2 === L . length && ( l += " " + Ea ( L [ 1 ] ) ) ; this [ d ] = a = l } ! 1 !== y && ( null === a || B ( a ) ? this . $$element . removeAttr ( C ) : this . $$element . attr ( C , a ) ) ; ( d = this . $$observers ) && b ( d [ e ] , function ( d ) { try { d ( a ) } catch ( Gg ) { c ( Gg ) } } ) } , $observe : function ( d , a ) { var y = this , b = y . $$observers || ( y . $$observers = Ma ( ) ) , C = b [ d ] || ( b [ d ] = [ ] ) ; return C . push ( a ) , aa . $evalAsync ( function ( ) { C . $$inter || ! y . hasOwnProperty ( d ) || B ( y [ d ] ) || a ( y [ d ] ) } ) , function ( ) { ya ( C , a ) } } } ; var Ka = a . startSymbol ( ) , vb = a . endSymbol ( ) , qc = "{{" == Ka &&
"}}" == vb ? v : function ( d ) { return d . replace ( /\{\{/g , Ka ) . replace ( /}}/g , vb ) } , kb = /^ngAttr[A-Z]/ , M = /^(.+)Start$/ ; return z . $$addBindingInfo = G ? function ( d , a ) { var y = d . data ( "$binding" ) || [ ] ; la ( a ) ? y = y . concat ( a ) : y . push ( a ) ; d . data ( "$binding" , y ) } : q , z . $$addBindingClass = G ? function ( d ) { A ( d , "ng-binding" ) } : q , z . $$addScopeInfo = G ? function ( d , a , y , b ) { d . data ( y ? b ? "$isolateScopeNoTemplate" : "$isolateScope" : "$scope" , a ) } : q , z . $$addScopeClass = G ? function ( d , a ) { A ( d , a ? "ng-isolate-scope" : "ng-scope" ) } : q , z } ] } function rb ( d ) { return pc ( d . replace ( Ud ,
"" ) ) } function D ( d , a ) { var b = "" , l = d . split ( /\s+/ ) , c = a . split ( /\s+/ ) , e = 0 ; a : for ( ; e < l . length ; e ++ ) { for ( var g = l [ e ] , k = 0 ; k < c . length ; k ++ ) if ( g == c [ k ] ) continue a ; b += ( 0 < b . length ? " " : "" ) + g } return b } function ug ( d ) { d = fa ( d ) ; var a = d . length ; if ( 1 >= a ) return d ; for ( ; a -- ; ) 8 === d [ a ] . nodeType && ff . call ( d , a , 1 ) ; return d } function xb ( ) { var d = { } , a = ! 1 ; this . register = function ( a , b ) { vb ( a , "controller" ) ; p ( a ) ? n ( d , a ) : d [ a ] = b } ; this . allowGlobals = function ( ) { a = ! 0 } ; this . $get = [ "$injector" , "$window" , function ( b , l ) { function c ( d , a , b , l ) { if ( ! d || ! p ( d . $scope ) ) throw h ( "$controller" ) ( "noscp" ,
l , a ) ; d . $scope [ a ] = b } return function ( e , g , f , h ) { var H , m , w ; if ( f = ! 0 === f , h && u ( h ) && ( w = h ) , u ( e ) ) { if ( h = e . match ( Kc ) , ! h ) throw gf ( "ctrlfmt" , e ) ; m = h [ 1 ] ; w = w || h [ 3 ] ; e = d . hasOwnProperty ( m ) ? d [ m ] : wb ( g . $scope , m , ! 0 ) || ( a ? wb ( l , m , ! 0 ) : k ) ; kb ( e , m , ! 0 ) } return f ? ( f = ( la ( e ) ? e [ e . length - 1 ] : e ) . prototype , H = Object . create ( f || null ) , w && c ( g , w , H , m || e . name ) , n ( function ( ) { var d = b . invoke ( e , H , g , m ) ; return d !== H && ( p ( d ) || E ( d ) ) && ( H = d , w && c ( g , w , H , m || e . name ) ) , H } , { instance : H , identifier : w } ) ) : ( H = b . instantiate ( e , g , m ) , w && c ( g , w , H , m || e . name ) , H ) } } ] } function va ( ) { this . $get =
[ "$window" , function ( d ) { return fa ( d . document ) } ] } function Ag ( ) { this . $get = [ "$log" , function ( d ) { return function ( a , b ) { d . error . apply ( d , arguments ) } } ] } function ng ( d ) { return p ( d ) ? J ( d ) ? d . toISOString ( ) : ka ( d ) : d } function Cg ( ) { this . $get = function ( ) { return function ( d ) { if ( ! d ) return "" ; var a = [ ] ; return e ( d , function ( d , l ) { null === d || B ( d ) || ( la ( d ) ? b ( d , function ( d , b ) { a . push ( w ( l ) + "=" + w ( ng ( d ) ) ) } ) : a . push ( w ( l ) + "=" + w ( ng ( d ) ) ) ) } ) , a . join ( "&" ) } } } function bb ( ) { this . $get = function ( ) { return function ( d ) { function a ( d , l , g ) { null === d || B ( d ) ||
( la ( d ) ? b ( d , function ( d , b ) { a ( d , l + "[" + ( p ( d ) ? b : "" ) + "]" ) } ) : p ( d ) && ! J ( d ) ? e ( d , function ( d , b ) { a ( d , l + ( g ? "" : "[" ) + b + ( g ? "" : "]" ) ) } ) : c . push ( w ( l ) + "=" + w ( ng ( d ) ) ) ) } if ( ! d ) return "" ; var c = [ ] ; return a ( d , "" , ! 0 ) , c . join ( "&" ) } } } function ob ( d , a ) { if ( u ( d ) ) { var b = d . replace ( Ja , "" ) . trim ( ) ; if ( b ) { var l = a ( "Content-Type" ) ; ( l = l && 0 === l . indexOf ( Xd ) ) || ( l = ( l = b . match ( hf ) ) && qd [ l [ 0 ] ] . test ( b ) ) ; l && ( d = ca ( b ) ) } } return d } function vg ( d ) { var a , c = Ma ( ) ; return u ( d ) ? b ( d . split ( "\n" ) , function ( d ) { a = d . indexOf ( ":" ) ; var b = sa ( Ea ( d . substr ( 0 , a ) ) ) ; d = Ea ( d . substr ( a +
1 ) ) ; b && ( c [ b ] = c [ b ] ? c [ b ] + ", " + d : d ) } ) : p ( d ) && b ( d , function ( d , a ) { var b = sa ( a ) , l = Ea ( d ) ; b && ( c [ b ] = c [ b ] ? c [ b ] + ", " + l : l ) } ) , c } function wg ( d ) { var a ; return function ( b ) { return a || ( a = vg ( d ) ) , b ? ( b = a [ sa ( b ) ] , void 0 === b && ( b = null ) , b ) : a } } function kc ( d , a , c , e ) { return E ( e ) ? e ( d , a , c ) : ( b ( e , function ( b ) { d = b ( d , a , c ) } ) , d ) } function Bg ( ) { var d = this . defaults = { transformResponse : [ ob ] , transformRequest : [ function ( d ) { return p ( d ) && "[object File]" !== ub . call ( d ) && "[object Blob]" !== ub . call ( d ) && "[object FormData]" !== ub . call ( d ) ? ka ( d ) : d } ] , headers : { common : { Accept : "application/json, text/plain, */*" } ,
post : za ( Lc ) , put : za ( Lc ) , patch : za ( Lc ) } , xsrfCookieName : "XSRF-TOKEN" , xsrfHeaderName : "X-XSRF-TOKEN" , paramSerializer : "$httpParamSerializer" } , a = ! 1 ; this . useApplyAsync = function ( d ) { return F ( d ) ? ( a = ! ! d , this ) : a } ; var c = ! 0 ; this . useLegacyPromiseExtensions = function ( d ) { return F ( d ) ? ( c = ! ! d , this ) : c } ; var e = this . interceptors = [ ] ; this . $get = [ "$httpBackend" , "$$cookieReader" , "$cacheFactory" , "$rootScope" , "$q" , "$injector" , function ( l , g , f , m , H , w ) { function r ( a ) { function l ( d ) { var a = n ( { } , d ) ; return a . data = kc ( d . data , d . headers , d . status ,
g . transformResponse ) , d = d . status , 200 <= d && 300 > d ? a : H . reject ( a ) } function e ( d , a ) { var l , c = { } ; return b ( d , function ( d , b ) { E ( d ) ? ( l = d ( a ) , null != l && ( c [ b ] = l ) ) : c [ b ] = d } ) , c } if ( ! Na . isObject ( a ) ) throw h ( "$http" ) ( "badreq" , a ) ; if ( ! u ( a . url ) ) throw h ( "$http" ) ( "badreq" , a . url ) ; var g = n ( { method : "get" , transformRequest : d . transformRequest , transformResponse : d . transformResponse , paramSerializer : d . paramSerializer } , a ) ; g . headers = function ( a ) { var b , l , c , y = d . headers , C = n ( { } , a . headers ) , y = n ( { } , y . common , y [ sa ( a . method ) ] ) ; a : for ( b in y ) { l = sa ( b ) ; for ( c in C ) if ( sa ( c ) ===
l ) continue a ; C [ b ] = y [ b ] } return e ( C , za ( a ) ) } ( a ) ; g . method = lb ( g . method ) ; g . paramSerializer = u ( g . paramSerializer ) ? w . get ( g . paramSerializer ) : g . paramSerializer ; var f = [ function ( a ) { var c = a . headers , e = kc ( a . data , wg ( c ) , k , a . transformRequest ) ; return B ( e ) && b ( c , function ( d , a ) { "content-type" === sa ( a ) && delete c [ a ] } ) , B ( a . withCredentials ) && ! B ( d . withCredentials ) && ( a . withCredentials = d . withCredentials ) , q ( a , e ) . then ( l , l ) } , k ] , m = H . when ( g ) ; for ( b ( aa , function ( d ) { ( d . request || d . requestError ) && f . unshift ( d . request , d . requestError ) ; ( d . response ||
d . responseError ) && f . push ( d . response , d . responseError ) } ) ; f . length ; ) { a = f . shift ( ) ; var r = f . shift ( ) , m = m . then ( a , r ) } return c ? ( m . success = function ( d ) { return kb ( d , "fn" ) , m . then ( function ( a ) { d ( a . data , a . status , a . headers , g ) } ) , m } , m . error = function ( d ) { return kb ( d , "fn" ) , m . then ( null , function ( a ) { d ( a . data , a . status , a . headers , g ) } ) , m } ) : ( m . success = jf ( "success" ) , m . error = jf ( "error" ) ) , m } function q ( b , c ) { function e ( d , b , l , c ) { function C ( ) { f ( b , d , l , c ) } w && ( 200 <= d && 300 > d ? w . put ( y , [ d , b , vg ( l ) , c ] ) : w . remove ( y ) ) ; a ? m . $applyAsync ( C ) : ( C ( ) , m . $$phase ||
m . $apply ( ) ) } function f ( d , a , y , l ) { a = - 1 <= a ? a : 0 ; ( 200 <= a && 300 > a ? u . resolve : u . reject ) ( { data : d , status : a , headers : wg ( y ) , config : b , statusText : l } ) } function h ( d ) { f ( d . data , d . status , za ( d . headers ( ) ) , d . statusText ) } function n ( ) { var d = r . pendingRequests . indexOf ( b ) ; - 1 !== d && r . pendingRequests . splice ( d , 1 ) } var w , q , u = H . defer ( ) , aa = u . promise , ba = b . headers , y = t ( b . url , b . paramSerializer ( b . params ) ) ; return r . pendingRequests . push ( b ) , aa . then ( n , n ) , ! b . cache && ! d . cache || ! 1 === b . cache || "GET" !== b . method && "JSONP" !== b . method || ( w = p ( b . cache ) ? b . cache :
p ( d . cache ) ? d . cache : Z ) , w && ( q = w . get ( y ) , F ( q ) ? q && E ( q . then ) ? q . then ( h , h ) : la ( q ) ? f ( q [ 1 ] , q [ 0 ] , za ( q [ 2 ] ) , q [ 3 ] ) : f ( q , 200 , { } , "OK" ) : w . put ( y , aa ) ) , B ( q ) && ( ( q = Yd ( b . url ) ? g ( ) [ b . xsrfCookieName || d . xsrfCookieName ] : k ) && ( ba [ b . xsrfHeaderName || d . xsrfHeaderName ] = q ) , l ( b . method , y , c , e , ba , b . timeout , b . withCredentials , b . responseType ) ) , aa } function t ( d , a ) { return 0 < a . length && ( d += ( - 1 == d . indexOf ( "?" ) ? "?" : "&" ) + a ) , d } var Z = f ( "$http" ) ; d . paramSerializer = u ( d . paramSerializer ) ? w . get ( d . paramSerializer ) : d . paramSerializer ; var aa = [ ] ; return b ( e , function ( d ) { aa . unshift ( u ( d ) ?
w . get ( d ) : w . invoke ( d ) ) } ) , r . pendingRequests = [ ] , function ( d ) { b ( arguments , function ( d ) { r [ d ] = function ( a , b ) { return r ( n ( { } , b || { } , { method : d , url : a } ) ) } } ) } ( "get" , "delete" , "head" , "jsonp" ) , function ( d ) { b ( arguments , function ( d ) { r [ d ] = function ( a , b , l ) { return r ( n ( { } , l || { } , { method : d , url : a , data : b } ) ) } } ) } ( "post" , "put" , "patch" ) , r . defaults = d , r } ] } function Dg ( ) { this . $get = function ( ) { return function ( ) { return new a . XMLHttpRequest } } } function Oe ( ) { this . $get = [ "$browser" , "$window" , "$document" , "$xhrFactory" , function ( d , a , b , c ) { return kf ( d ,
c , d . defer , a . angular . callbacks , b [ 0 ] ) } ] } function kf ( d , a , c , e , g ) { function l ( d , a , b ) { var l = g . createElement ( "script" ) , c = null ; return l . type = "text/javascript" , l . src = d , l . async = ! 0 , c = function ( d ) { l . removeEventListener ( "load" , c , ! 1 ) ; l . removeEventListener ( "error" , c , ! 1 ) ; g . body . removeChild ( l ) ; l = null ; var f = - 1 , k = "unknown" ; d && ( "load" !== d . type || e [ a ] . called || ( d = { type : "error" } ) , k = d . type , f = "error" === d . type ? 404 : 200 ) ; b && b ( f , k ) } , l . addEventListener ( "load" , c , ! 1 ) , l . addEventListener ( "error" , c , ! 1 ) , g . body . appendChild ( l ) , c } return function ( g ,
f , k , h , m , H , w , n ) { function r ( ) { u && u ( ) ; aa && aa . abort ( ) } function t ( a , b , l , e , g ) { F ( ba ) && c . cancel ( ba ) ; u = aa = null ; a ( b , l , e , g ) ; d . $$completeOutstandingRequest ( q ) } if ( d . $$incOutstandingRequestCount ( ) , f = f || d . url ( ) , "jsonp" == sa ( g ) ) { var Z = "_" + ( e . counter ++ ) . toString ( 36 ) ; e [ Z ] = function ( d ) { e [ Z ] . data = d ; e [ Z ] . called = ! 0 } ; var u = l ( f . replace ( "JSON_CALLBACK" , "angular.callbacks." + Z ) , Z , function ( d , a ) { t ( h , d , e [ Z ] . data , "" , a ) ; e [ Z ] = q } ) } else { var aa = a ( g , f ) ; if ( aa . open ( g , f , ! 0 ) , b ( m , function ( d , a ) { F ( d ) && aa . setRequestHeader ( a , d ) } ) , aa . onload = function ( ) { var d =
aa . statusText || "" , a = "response" in aa ? aa . response : aa . responseText , b = 1223 === aa . status ? 204 : aa . status ; 0 === b && ( b = a ? 200 : "file" == Ob ( f ) . protocol ? 404 : 0 ) ; t ( h , b , a , aa . getAllResponseHeaders ( ) , d ) } , g = function ( ) { t ( h , - 1 , null , null , "" ) } , aa . onerror = g , aa . onabort = g , w && ( aa . withCredentials = ! 0 ) , n ) try { aa . responseType = n } catch ( qb ) { if ( "json" !== n ) throw qb ; } aa . send ( B ( k ) ? null : k ) } if ( 0 < H ) var ba = c ( r , H ) ; else H && E ( H . then ) && H . then ( r ) } } function Md ( ) { var d = "{{" , a = "}}" ; this . startSymbol = function ( a ) { return a ? ( d = a , this ) : d } ; this . endSymbol = function ( d ) { return d ?
2017-07-25 17:51:59 +00:00
( a = d , this ) : a } ; this . $get = [ "$parse" , "$exceptionHandler" , "$sce" , function ( b , l , c ) { function e ( d ) { return "\\\\\\" + d } function g ( e , g , H , w ) { function r ( d ) { try { var a = d ; d = H ? c . getTrusted ( H , a ) : c . valueOf ( a ) ; var b ; if ( w && ! F ( d ) ) b = d ; else if ( null == d ) b = "" ; else { switch ( typeof d ) { case "string" : break ; case "number" : d = "" + d ; break ; default : d = ka ( d ) } b = d } return b } catch ( L ) { l ( Yb . interr ( e , L ) ) } } w = ! ! w ; for ( var q , t , Z = 0 , u = [ ] , aa = [ ] , ba = e . length , x = [ ] , La = [ ] ; Z < ba ; ) { if ( - 1 == ( q = e . indexOf ( d , Z ) ) || - 1 == ( t = e . indexOf ( a , q + f ) ) ) { Z !== ba && x . push ( e . substring ( Z ) . replace ( h ,
d ) . replace ( m , a ) ) ; break } Z !== q && x . push ( e . substring ( Z , q ) . replace ( h , d ) . replace ( m , a ) ) ; Z = e . substring ( q + f , t ) ; u . push ( Z ) ; aa . push ( b ( Z , r ) ) ; Z = t + k ; La . push ( x . length ) ; x . push ( "" ) } if ( H && 1 < x . length && Yb . throwNoconcat ( e ) , ! g || u . length ) { var p = function ( d ) { for ( var a = 0 , b = u . length ; a < b ; a ++ ) { if ( w && B ( d [ a ] ) ) return ; x [ La [ a ] ] = d [ a ] } return x . join ( "" ) } ; return n ( function ( d ) { var a = 0 , b = u . length , c = Array ( b ) ; try { for ( ; a < b ; a ++ ) c [ a ] = aa [ a ] ( d ) ; return p ( c ) } catch ( Aa ) { l ( Yb . interr ( e , Aa ) ) } } , { exp : e , expressions : u , $$watchDelegate : function ( d , a ) { var y ;
2017-07-20 23:09:21 +00:00
return d . $watchGroup ( aa , function ( b , C ) { var l = p ( b ) ; E ( a ) && a . call ( this , l , b !== C ? y : l , d ) ; y = l } ) } } ) } } var f = d . length , k = a . length , h = new RegExp ( d . replace ( /./g , e ) , "g" ) , m = new RegExp ( a . replace ( /./g , e ) , "g" ) ; return g . startSymbol = function ( ) { return d } , g . endSymbol = function ( ) { return a } , g } ] } function Ec ( ) { this . $get = [ "$rootScope" , "$window" , "$q" , "$$q" , function ( d , a , b , c ) { function l ( l , g , f , k ) { var h = 4 < arguments . length , m = h ? Db . call ( arguments , 4 ) : [ ] , H = a . setInterval , w = a . clearInterval , n = 0 , r = F ( k ) && ! k , q = ( r ? c : b ) . defer ( ) , t = q . promise ; return f =
2017-07-25 17:51:59 +00:00
F ( f ) ? f : 0 , t . then ( null , null , h ? function ( ) { l . apply ( null , m ) } : l ) , t . $$intervalId = H ( function ( ) { q . notify ( n ++ ) ; 0 < f && n >= f && ( q . resolve ( n ) , w ( t . $$intervalId ) , delete e [ t . $$intervalId ] ) ; r || d . $apply ( ) } , g ) , e [ t . $$intervalId ] = q , t } var e = { } ; return l . cancel = function ( d ) { return ! ! ( d && d . $$intervalId in e ) && ( e [ d . $$intervalId ] . reject ( "canceled" ) , a . clearInterval ( d . $$intervalId ) , delete e [ d . $$intervalId ] , ! 0 ) } , l } ] } function rd ( d ) { d = d . split ( "/" ) ; for ( var a = d . length ; a -- ; ) d [ a ] = ga ( d [ a ] ) ; return d . join ( "/" ) } function Zd ( d , a ) { var b = Ob ( d ) ;
a . $$protocol = b . protocol ; a . $$host = b . hostname ; a . $$port = parseInt ( b . port , 10 ) || lf [ b . protocol ] || null } function Mc ( d , a ) { var b = "/" !== d . charAt ( 0 ) ; b && ( d = "/" + d ) ; var l = Ob ( d ) ; a . $$path = decodeURIComponent ( b && "/" === l . pathname . charAt ( 0 ) ? l . pathname . substring ( 1 ) : l . pathname ) ; a . $$search = pa ( l . search ) ; a . $$hash = decodeURIComponent ( l . hash ) ; a . $$path && "/" != a . $$path . charAt ( 0 ) && ( a . $$path = "/" + a . $$path ) } function $a ( d , a ) { if ( 0 === a . indexOf ( d ) ) return a . substr ( d . length ) } function Xb ( d ) { var a = d . indexOf ( "#" ) ; return - 1 == a ? d : d . substr ( 0 , a ) }
function Pb ( d ) { return d . replace ( /(#.+)|#$/ , "$1" ) } function $d ( d , a , b ) { this . $$html5 = ! 0 ; b = b || "" ; Zd ( d , this ) ; this . $$parse = function ( d ) { var b = $a ( a , d ) ; if ( ! u ( b ) ) throw Jb ( "ipthprfx" , d , a ) ; Mc ( b , this ) ; this . $$path || ( this . $$path = "/" ) ; this . $$compose ( ) } ; this . $$compose = function ( ) { var d = qa ( this . $$search ) , b = this . $$hash ? "#" + ga ( this . $$hash ) : "" ; this . $$url = rd ( this . $$path ) + ( d ? "?" + d : "" ) + b ; this . $$absUrl = a + this . $$url . substr ( 1 ) } ; this . $$parseLinkUrl = function ( l , c ) { if ( c && "#" === c [ 0 ] ) return this . hash ( c . slice ( 1 ) ) , ! 0 ; var e , g ; return F ( e =
$a ( d , l ) ) ? ( g = e , g = F ( e = $a ( b , e ) ) ? a + ( $a ( "/" , e ) || e ) : d + g ) : F ( e = $a ( a , l ) ) ? g = a + e : a == l + "/" && ( g = a ) , g && this . $$parse ( g ) , ! ! g } } function ae ( d , a , b ) { Zd ( d , this ) ; this . $$parse = function ( l ) { var c , e = $a ( d , l ) || $a ( a , l ) ; B ( e ) || "#" !== e . charAt ( 0 ) ? this . $$html5 ? c = e : ( c = "" , B ( e ) && ( d = l , this . replace ( ) ) ) : ( c = $a ( b , e ) , B ( c ) && ( c = e ) ) ; Mc ( c , this ) ; l = this . $$path ; var e = d , g = /^\/[A-Z]:(\/.*)/ ; 0 === c . indexOf ( e ) && ( c = c . replace ( e , "" ) ) ; g . exec ( c ) || ( l = ( c = g . exec ( l ) ) ? c [ 1 ] : l ) ; this . $$path = l ; this . $$compose ( ) } ; this . $$compose = function ( ) { var a = qa ( this . $$search ) , l = this . $$hash ?
"#" + ga ( this . $$hash ) : "" ; this . $$url = rd ( this . $$path ) + ( a ? "?" + a : "" ) + l ; this . $$absUrl = d + ( this . $$url ? b + this . $$url : "" ) } ; this . $$parseLinkUrl = function ( a , b ) { return Xb ( d ) == Xb ( a ) && ( this . $$parse ( a ) , ! 0 ) } } function be ( d , a , b ) { this . $$html5 = ! 0 ; ae . apply ( this , arguments ) ; this . $$parseLinkUrl = function ( l , c ) { if ( c && "#" === c [ 0 ] ) return this . hash ( c . slice ( 1 ) ) , ! 0 ; var e , g ; return d == Xb ( l ) ? e = l : ( g = $a ( a , l ) ) ? e = d + b + g : a === l + "/" && ( e = a ) , e && this . $$parse ( e ) , ! ! e } ; this . $$compose = function ( ) { var a = qa ( this . $$search ) , l = this . $$hash ? "#" + ga ( this . $$hash ) :
"" ; this . $$url = rd ( this . $$path ) + ( a ? "?" + a : "" ) + l ; this . $$absUrl = d + b + this . $$url } } function Nc ( d ) { return function ( ) { return this [ d ] } } function cb ( d , a ) { return function ( b ) { return B ( b ) ? this [ d ] : ( this [ d ] = a ( b ) , this . $$compose ( ) , this ) } } function Pe ( ) { var d = "" , a = { enabled : ! 1 , requireBase : ! 0 , rewriteLinks : ! 0 } ; this . hashPrefix = function ( a ) { return F ( a ) ? ( d = a , this ) : d } ; this . html5Mode = function ( d ) { return P ( d ) ? ( a . enabled = d , this ) : p ( d ) ? ( P ( d . enabled ) && ( a . enabled = d . enabled ) , P ( d . requireBase ) && ( a . requireBase = d . requireBase ) , P ( d . rewriteLinks ) &&
( a . rewriteLinks = d . rewriteLinks ) , this ) : a } ; this . $get = [ "$rootScope" , "$browser" , "$sniffer" , "$rootElement" , "$window" , function ( b , l , c , e , g ) { function f ( d , a , b ) { var c = h . url ( ) , e = h . $$state ; try { l . url ( d , a , b ) , h . $$state = l . state ( ) } catch ( Sd ) { throw h . url ( c ) , h . $$state = e , Sd ; } } function k ( d , a ) { b . $broadcast ( "$locationChangeSuccess" , h . absUrl ( ) , d , h . $$state , a ) } var h , m ; m = l . baseHref ( ) ; var w , n = l . url ( ) ; if ( a . enabled ) { if ( ! m && a . requireBase ) throw Jb ( "nobase" ) ; w = n . substring ( 0 , n . indexOf ( "/" , n . indexOf ( "//" ) + 2 ) ) + ( m || "/" ) ; m = c . history ? $d :
be } else w = Xb ( n ) , m = ae ; var H = w . substr ( 0 , Xb ( w ) . lastIndexOf ( "/" ) + 1 ) ; h = new m ( w , H , "#" + d ) ; h . $$parseLinkUrl ( n , n ) ; h . $$state = l . state ( ) ; var q = /^\s*(javascript|mailto):/i ; e . on ( "click" , function ( d ) { if ( a . rewriteLinks && ! d . ctrlKey && ! d . metaKey && ! d . shiftKey && 2 != d . which && 2 != d . button ) { for ( var c = fa ( d . target ) ; "a" !== ja ( c [ 0 ] ) ; ) if ( c [ 0 ] === e [ 0 ] || ! ( c = c . parent ( ) ) [ 0 ] ) return ; var f = c . prop ( "href" ) , k = c . attr ( "href" ) || c . attr ( "xlink:href" ) ; p ( f ) && "[object SVGAnimatedString]" === f . toString ( ) && ( f = Ob ( f . animVal ) . href ) ; q . test ( f ) || ! f || c . attr ( "target" ) ||
d . isDefaultPrevented ( ) || ! h . $$parseLinkUrl ( f , k ) || ( d . preventDefault ( ) , h . absUrl ( ) != l . url ( ) && ( b . $apply ( ) , g . angular [ "ff-684208-preventDefault" ] = ! 0 ) ) } } ) ; Pb ( h . absUrl ( ) ) != Pb ( n ) && l . url ( h . absUrl ( ) , ! 0 ) ; var r = ! 0 ; return l . onUrlChange ( function ( d , a ) { B ( $a ( H , d ) ) ? g . location . href = d : ( b . $evalAsync ( function ( ) { var l , c = h . absUrl ( ) , e = h . $$state ; d = Pb ( d ) ; h . $$parse ( d ) ; h . $$state = a ; l = b . $broadcast ( "$locationChangeStart" , d , c , a , e ) . defaultPrevented ; h . absUrl ( ) === d && ( l ? ( h . $$parse ( c ) , h . $$state = e , f ( c , ! 1 , e ) ) : ( r = ! 1 , k ( c , e ) ) ) } ) , b . $$phase ||
b . $digest ( ) ) } ) , b . $watch ( function ( ) { var d = Pb ( l . url ( ) ) , a = Pb ( h . absUrl ( ) ) , e = l . state ( ) , g = h . $$replace , m = d !== a || h . $$html5 && c . history && e !== h . $$state ; ( r || m ) && ( r = ! 1 , b . $evalAsync ( function ( ) { var a = h . absUrl ( ) , l = b . $broadcast ( "$locationChangeStart" , a , d , h . $$state , e ) . defaultPrevented ; h . absUrl ( ) === a && ( l ? ( h . $$parse ( d ) , h . $$state = e ) : ( m && f ( a , g , e === h . $$state ? null : h . $$state ) , k ( d , e ) ) ) } ) ) ; h . $$replace = ! 1 } ) , h } ] } function Mb ( ) { var d = ! 0 , a = this ; this . debugEnabled = function ( a ) { return F ( a ) ? ( d = a , this ) : d } ; this . $get = [ "$window" , function ( l ) { function c ( d ) { return d instanceof
Error && ( d . stack ? d = d . message && - 1 === d . stack . indexOf ( d . message ) ? "Error: " + d . message + "\n" + d . stack : d . stack : d . sourceURL && ( d = d . message + "\n" + d . sourceURL + ":" + d . line ) ) , d } function e ( d ) { var a = l . console || { } , e = a [ d ] || a . log || q ; d = ! 1 ; try { d = ! ! e . apply } catch ( Qb ) { } return d ? function ( ) { var d = [ ] ; return b ( arguments , function ( a ) { d . push ( c ( a ) ) } ) , e . apply ( a , d ) } : function ( d , a ) { e ( d , null == a ? "" : a ) } } return { log : e ( "log" ) , info : e ( "info" ) , warn : e ( "warn" ) , error : e ( "error" ) , debug : function ( ) { var b = e ( "debug" ) ; return function ( ) { d && b . apply ( a , arguments ) } } ( ) } } ] }
function Zb ( d , a ) { if ( "__defineGetter__" === d || "__defineSetter__" === d || "__lookupGetter__" === d || "__lookupSetter__" === d || "__proto__" === d ) throw ab ( "isecfld" , a ) ; return d } function sd ( d , a ) { if ( d += "" , ! u ( d ) ) throw ab ( "iseccst" , a ) ; return d } function fb ( d , a ) { if ( d ) { if ( d . constructor === d ) throw ab ( "isecfn" , a ) ; if ( d . window === d ) throw ab ( "isecwindow" , a ) ; if ( d . children && ( d . nodeName || d . prop && d . attr && d . find ) ) throw ab ( "isecdom" , a ) ; if ( d === Object ) throw ab ( "isecobj" , a ) ; } return d } function Oc ( d , a ) { if ( d ) { if ( d . constructor === d ) throw ab ( "isecfn" ,
a ) ; if ( d === sb || d === mf || d === ce ) throw ab ( "isecff" , a ) ; } } function Pc ( d , a ) { if ( d && ( d === ( 0 ) . constructor || d === ( ! 1 ) . constructor || d === "" . constructor || d === { } . constructor || d === [ ] . constructor || d === Function . constructor ) ) throw ab ( "isecaf" , a ) ; } function de ( d , a ) { return "undefined" != typeof d ? d : a } function rc ( d , a ) { return "undefined" == typeof d ? a : "undefined" == typeof a ? d : d + a } function Sa ( d , a ) { var c , l ; switch ( d . type ) { case Q . Program : c = ! 0 ; b ( d . body , function ( d ) { Sa ( d . expression , a ) ; c = c && d . expression . constant } ) ; d . constant = c ; break ; case Q . Literal : d . constant =
2017-07-20 23:09:21 +00:00
! 0 ; d . toWatch = [ ] ; break ; case Q . UnaryExpression : Sa ( d . argument , a ) ; d . constant = d . argument . constant ; d . toWatch = d . argument . toWatch ; break ; case Q . BinaryExpression : Sa ( d . left , a ) ; Sa ( d . right , a ) ; d . constant = d . left . constant && d . right . constant ; d . toWatch = d . left . toWatch . concat ( d . right . toWatch ) ; break ; case Q . LogicalExpression : Sa ( d . left , a ) ; Sa ( d . right , a ) ; d . constant = d . left . constant && d . right . constant ; d . toWatch = d . constant ? [ ] : [ d ] ; break ; case Q . ConditionalExpression : Sa ( d . test , a ) ; Sa ( d . alternate , a ) ; Sa ( d . consequent , a ) ; d . constant = d . test . constant &&
2017-07-25 17:51:59 +00:00
d . alternate . constant && d . consequent . constant ; d . toWatch = d . constant ? [ ] : [ d ] ; break ; case Q . Identifier : d . constant = ! 1 ; d . toWatch = [ d ] ; break ; case Q . MemberExpression : Sa ( d . object , a ) ; d . computed && Sa ( d . property , a ) ; d . constant = d . object . constant && ( ! d . computed || d . property . constant ) ; d . toWatch = [ d ] ; break ; case Q . CallExpression : c = ! ! d . filter && ! a ( d . callee . name ) . $stateful ; l = [ ] ; b ( d . arguments , function ( d ) { Sa ( d , a ) ; c = c && d . constant ; d . constant || l . push . apply ( l , d . toWatch ) } ) ; d . constant = c ; d . toWatch = d . filter && ! a ( d . callee . name ) . $stateful ?
2017-07-20 23:09:21 +00:00
l : [ d ] ; break ; case Q . AssignmentExpression : Sa ( d . left , a ) ; Sa ( d . right , a ) ; d . constant = d . left . constant && d . right . constant ; d . toWatch = [ d ] ; break ; case Q . ArrayExpression : c = ! 0 ; l = [ ] ; b ( d . elements , function ( d ) { Sa ( d , a ) ; c = c && d . constant ; d . constant || l . push . apply ( l , d . toWatch ) } ) ; d . constant = c ; d . toWatch = l ; break ; case Q . ObjectExpression : c = ! 0 ; l = [ ] ; b ( d . properties , function ( d ) { Sa ( d . value , a ) ; c = c && d . value . constant ; d . value . constant || l . push . apply ( l , d . value . toWatch ) } ) ; d . constant = c ; d . toWatch = l ; break ; case Q . ThisExpression : d . constant = ! 1 ,
2017-07-25 17:51:59 +00:00
d . toWatch = [ ] } } function ee ( d ) { if ( 1 == d . length ) { d = d [ 0 ] . expression ; var a = d . toWatch ; return 1 !== a . length ? a : a [ 0 ] !== d ? a : k } } function td ( d ) { return d . type === Q . Identifier || d . type === Q . MemberExpression } function nf ( d ) { if ( 1 === d . body . length && td ( d . body [ 0 ] . expression ) ) return { type : Q . AssignmentExpression , left : d . body [ 0 ] . expression , right : { type : Q . NGValueParameter } , operator : "=" } } function fe ( d ) { return 0 === d . body . length || 1 === d . body . length && ( d . body [ 0 ] . expression . type === Q . Literal || d . body [ 0 ] . expression . type === Q . ArrayExpression ||
2017-07-20 23:09:21 +00:00
d . body [ 0 ] . expression . type === Q . ObjectExpression ) } function ud ( d , a ) { this . astBuilder = d ; this . $filter = a } function of ( d , a ) { this . astBuilder = d ; this . $filter = a } function gb ( d ) { return E ( d . valueOf ) ? d . valueOf ( ) : Kg . call ( d ) } function Eg ( ) { var d = Ma ( ) , a = Ma ( ) ; this . $get = [ "$filter" , function ( c ) { function l ( b , l , g ) { var k , H , r ; switch ( g = g || Z , typeof b ) { case "string" : r = b = b . trim ( ) ; var x = g ? a : d ; if ( k = x [ r ] , ! k ) { ":" === b . charAt ( 0 ) && ":" === b . charAt ( 1 ) && ( H = ! 0 , b = b . substring ( 2 ) ) ; k = g ? u : t ; var aa = new Pa ( k ) ; k = ( new db ( aa , c , k ) ) . parse ( b ) ; k . constant ?
k . $$watchDelegate = w : H ? k . $$watchDelegate = k . literal ? m : h : k . inputs && ( k . $$watchDelegate = f ) ; g && ( k = e ( k ) ) ; x [ r ] = k } return n ( k , l ) ; case "function" : return n ( b , l ) ; default : return n ( q , l ) } } function e ( d ) { function a ( a , b , c , l ) { var e = Z ; Z = ! 0 ; try { return d ( a , b , c , l ) } finally { Z = e } } if ( ! d ) return d ; a . $$watchDelegate = d . $$watchDelegate ; a . assign = e ( d . assign ) ; a . constant = d . constant ; a . literal = d . literal ; for ( var b = 0 ; d . inputs && b < d . inputs . length ; ++ b ) d . inputs [ b ] = e ( d . inputs [ b ] ) ; return a . inputs = d . inputs , a } function g ( d , a ) { return null == d || null ==
2017-07-25 17:51:59 +00:00
a ? d === a : ( "object" != typeof d || ( d = gb ( d ) , "object" != typeof d ) ) && ( d === a || d !== d && a !== a ) } function f ( d , a , b , c , l ) { var e , f = c . inputs ; if ( 1 === f . length ) { var h = g , f = f [ 0 ] ; return d . $watch ( function ( d ) { var a = f ( d ) ; return g ( a , h ) || ( e = c ( d , k , k , [ a ] ) , h = a && gb ( a ) ) , e } , a , b , l ) } for ( var m = [ ] , w = [ ] , n = 0 , y = f . length ; n < y ; n ++ ) m [ n ] = g , w [ n ] = null ; return d . $watch ( function ( d ) { for ( var a = ! 1 , b = 0 , y = f . length ; b < y ; b ++ ) { var C = f [ b ] ( d ) ; ( a || ( a = ! g ( C , m [ b ] ) ) ) && ( w [ b ] = C , m [ b ] = C && gb ( C ) ) } return a && ( e = c ( d , k , k , w ) ) , e } , a , b , l ) } function h ( d , a , b , c ) { var l , e ; return l = d . $watch ( function ( d ) { return c ( d ) } ,
2017-07-20 23:09:21 +00:00
function ( d , b , c ) { e = d ; E ( a ) && a . apply ( this , arguments ) ; F ( d ) && c . $$postDigest ( function ( ) { F ( e ) && l ( ) } ) } , b ) } function m ( d , a , c , l ) { function e ( d ) { var a = ! 0 ; return b ( d , function ( d ) { F ( d ) || ( a = ! 1 ) } ) , a } var g , f ; return g = d . $watch ( function ( d ) { return l ( d ) } , function ( d , b , c ) { f = d ; E ( a ) && a . call ( this , d , b , c ) ; e ( d ) && c . $$postDigest ( function ( ) { e ( f ) && g ( ) } ) } , c ) } function w ( d , a , b , c ) { var l ; return l = d . $watch ( function ( d ) { return c ( d ) } , function ( d , b , c ) { E ( a ) && a . apply ( this , arguments ) ; l ( ) } , b ) } function n ( d , a ) { if ( ! a ) return d ; var b = d . $$watchDelegate ,
c = ! 1 , b = b !== m && b !== h ? function ( b , l , e , g ) { return e = c && g ? g [ 0 ] : d ( b , l , e , g ) , a ( e , b , l ) } : function ( b , c , l , e ) { return l = d ( b , c , l , e ) , b = a ( l , b , c ) , F ( l ) ? b : l } ; return d . $$watchDelegate && d . $$watchDelegate !== f ? b . $$watchDelegate = d . $$watchDelegate : a . $stateful || ( b . $$watchDelegate = f , c = ! d . inputs , b . inputs = d . inputs ? d . inputs : [ d ] ) , b } var r = Ub ( ) . noUnsafeEval , t = { csp : r , expensiveChecks : ! 1 } , u = { csp : r , expensiveChecks : ! 0 } , Z = ! 1 ; return l . $$runningExpensiveChecks = function ( ) { return Z } , l } ] } function Qe ( ) { this . $get = [ "$rootScope" , "$exceptionHandler" ,
function ( d , a ) { return pf ( function ( a ) { d . $evalAsync ( a ) } , a ) } ] } function Re ( ) { this . $get = [ "$browser" , "$exceptionHandler" , function ( d , a ) { return pf ( function ( a ) { d . defer ( a ) } , a ) } ] } function pf ( d , a ) { function c ( d , a , b ) { function c ( a ) { return function ( b ) { l || ( l = ! 0 , a . call ( d , b ) ) } } var l = ! 1 ; return [ c ( a ) , c ( b ) ] } function l ( ) { this . $$state = { status : 0 } } function e ( d , a ) { return function ( b ) { a . call ( d , b ) } } function g ( b ) { ! b . processScheduled && b . pending && ( b . processScheduled = ! 0 , d ( function ( ) { var d , c , l ; l = b . pending ; b . processScheduled = ! 1 ; b . pending =
2017-07-25 17:51:59 +00:00
k ; for ( var e = 0 , g = l . length ; e < g ; ++ e ) { c = l [ e ] [ 0 ] ; d = l [ e ] [ b . status ] ; try { E ( d ) ? c . resolve ( d ( b . value ) ) : 1 === b . status ? c . resolve ( b . value ) : c . reject ( b . value ) } catch ( zc ) { c . reject ( zc ) , a ( zc ) } } } ) ) } function f ( ) { this . promise = new l ; this . resolve = e ( this , this . resolve ) ; this . reject = e ( this , this . reject ) ; this . notify = e ( this , this . notify ) } var m = h ( "$q" , TypeError ) ; n ( l . prototype , { then : function ( d , a , b ) { if ( B ( d ) && B ( a ) && B ( b ) ) return this ; var c = new f ; return this . $$state . pending = this . $$state . pending || [ ] , this . $$state . pending . push ( [ c , d , a , b ] ) , 0 <
2017-07-20 23:09:21 +00:00
this . $$state . status && g ( this . $$state ) , c . promise } , "catch" : function ( d ) { return this . then ( null , d ) } , "finally" : function ( d , a ) { return this . then ( function ( a ) { return r ( a , ! 0 , d ) } , function ( a ) { return r ( a , ! 1 , d ) } , a ) } } ) ; n ( f . prototype , { resolve : function ( d ) { this . promise . $$state . status || ( d === this . promise ? this . $$reject ( m ( "qcycle" , d ) ) : this . $$resolve ( d ) ) } , $$resolve : function ( d ) { var b , l ; l = c ( this , this . $$resolve , this . $$reject ) ; try { ( p ( d ) || E ( d ) ) && ( b = d && d . then ) , E ( b ) ? ( this . promise . $$state . status = - 1 , b . call ( d , l [ 0 ] , l [ 1 ] , this . notify ) ) :
2017-07-25 17:51:59 +00:00
( this . promise . $$state . value = d , this . promise . $$state . status = 1 , g ( this . promise . $$state ) ) } catch ( yc ) { l [ 1 ] ( yc ) , a ( yc ) } } , reject : function ( d ) { this . promise . $$state . status || this . $$reject ( d ) } , $$reject : function ( d ) { this . promise . $$state . value = d ; this . promise . $$state . status = 2 ; g ( this . promise . $$state ) } , notify : function ( b ) { var c = this . promise . $$state . pending ; 0 >= this . promise . $$state . status && c && c . length && d ( function ( ) { for ( var d , l , e = 0 , g = c . length ; e < g ; e ++ ) { l = c [ e ] [ 0 ] ; d = c [ e ] [ 3 ] ; try { l . notify ( E ( d ) ? d ( b ) : b ) } catch ( zc ) { a ( zc ) } } } ) } } ) ; var w =
2017-07-20 23:09:21 +00:00
function ( d , a ) { var b = new f ; return a ? b . resolve ( d ) : b . reject ( d ) , b . promise } , r = function ( d , a , b ) { var c = null ; try { E ( b ) && ( c = b ( ) ) } catch ( $c ) { return w ( $c , ! 1 ) } return c && E ( c . then ) ? c . then ( function ( ) { return w ( d , a ) } , function ( d ) { return w ( d , ! 1 ) } ) : w ( d , a ) } , q = function ( d , a , b , c ) { var l = new f ; return l . resolve ( d ) , l . promise . then ( a , b , c ) } , t = function ad ( d ) { if ( ! E ( d ) ) throw m ( "norslvr" , d ) ; if ( ! ( this instanceof ad ) ) return new ad ( d ) ; var a = new f ; return d ( function ( d ) { a . resolve ( d ) } , function ( d ) { a . reject ( d ) } ) , a . promise } ; return t . defer = function ( ) { return new f } ,
t . reject = function ( d ) { var a = new f ; return a . reject ( d ) , a . promise } , t . when = q , t . resolve = q , t . all = function ( d ) { var a = new f , c = 0 , l = la ( d ) ? [ ] : { } ; return b ( d , function ( d , b ) { c ++ ; q ( d ) . then ( function ( d ) { l . hasOwnProperty ( b ) || ( l [ b ] = d , -- c || a . resolve ( l ) ) } , function ( d ) { l . hasOwnProperty ( b ) || a . reject ( d ) } ) } ) , 0 === c && a . resolve ( l ) , a . promise } , t } function Od ( ) { this . $get = [ "$window" , "$timeout" , function ( d , a ) { var b = d . requestAnimationFrame || d . webkitRequestAnimationFrame , c = d . cancelAnimationFrame || d . webkitCancelAnimationFrame || d . webkitCancelRequestAnimationFrame ,
l = ! ! b , e = l ? function ( d ) { var a = b ( d ) ; return function ( ) { c ( a ) } } : function ( d ) { var b = a ( d , 16.66 , ! 1 ) ; return function ( ) { a . cancel ( b ) } } ; return e . supported = l , e } ] } function Nd ( ) { function d ( d ) { function a ( ) { this . $$watchers = this . $$nextSibling = this . $$childHead = this . $$childTail = null ; this . $$listeners = { } ; this . $$listenerCount = { } ; this . $$watchersCount = 0 ; this . $id = ++ wc ; this . $$ChildScope = null } return a . prototype = d , a } var a = 10 , e = h ( "$rootScope" ) , g = null , f = null ; this . digestTtl = function ( d ) { return arguments . length && ( a = d ) , a } ; this . $get =
[ "$injector" , "$exceptionHandler" , "$parse" , "$browser" , function ( l , h , k , m ) { function w ( d ) { d . currentScope . $$destroyed = ! 0 } function n ( d ) { 9 === jc && ( d . $$childHead && n ( d . $$childHead ) , d . $$nextSibling && n ( d . $$nextSibling ) ) ; d . $parent = d . $$nextSibling = d . $$prevSibling = d . $$childHead = d . $$childTail = d . $root = d . $$watchers = null } function H ( ) { this . $id = ++ wc ; this . $$phase = this . $parent = this . $$watchers = this . $$nextSibling = this . $$prevSibling = this . $$childHead = this . $$childTail = null ; this . $root = this ; this . $$destroyed = ! 1 ; this . $$listeners =
{ } ; this . $$listenerCount = { } ; this . $$watchersCount = 0 ; this . $$isolateBindings = null } function r ( d ) { if ( ba . $$phase ) throw e ( "inprog" , ba . $$phase ) ; ba . $$phase = d } function t ( d , a ) { do d . $$watchersCount += a ; while ( d = d . $parent ) } function u ( d , a , b ) { do d . $$listenerCount [ b ] -= a , 0 === d . $$listenerCount [ b ] && delete d . $$listenerCount [ b ] ; while ( d = d . $parent ) } function Z ( ) { } function x ( ) { for ( ; A . length ; ) try { A . shift ( ) ( ) } catch ( qc ) { h ( qc ) } f = null } function aa ( ) { null === f && ( f = m . defer ( function ( ) { ba . $apply ( x ) } ) ) } H . prototype = { constructor : H , $new : function ( a ,
b ) { var c ; return b = b || this , a ? ( c = new H , c . $root = this . $root ) : ( this . $$ChildScope || ( this . $$ChildScope = d ( this ) ) , c = new this . $$ChildScope ) , c . $parent = b , c . $$prevSibling = b . $$childTail , b . $$childHead ? ( b . $$childTail . $$nextSibling = c , b . $$childTail = c ) : b . $$childHead = b . $$childTail = c , ( a || b != this ) && c . $on ( "$destroy" , w ) , c } , $watch : function ( d , a , b , c ) { var y = k ( d ) ; if ( y . $$watchDelegate ) return y . $$watchDelegate ( this , a , b , y , d ) ; var C = this , l = C . $$watchers , e = { fn : a , last : Z , get : y , exp : c || d , eq : ! ! b } ; return g = null , E ( a ) || ( e . fn = q ) , l || ( l = C . $$watchers =
[ ] ) , l . unshift ( e ) , t ( this , 1 ) , function ( ) { 0 <= ya ( l , e ) && t ( C , - 1 ) ; g = null } } , $watchGroup : function ( d , a ) { function c ( ) { g = ! 1 ; f ? ( f = ! 1 , a ( y , y , e ) ) : a ( y , l , e ) } var l = Array ( d . length ) , y = Array ( d . length ) , C = [ ] , e = this , g = ! 1 , f = ! 0 ; if ( ! d . length ) { var h = ! 0 ; return e . $evalAsync ( function ( ) { h && a ( y , y , e ) } ) , function ( ) { h = ! 1 } } return 1 === d . length ? this . $watch ( d [ 0 ] , function ( d , b , C ) { y [ 0 ] = d ; l [ 0 ] = b ; a ( y , d === b ? y : l , C ) } ) : ( b ( d , function ( d , a ) { var b = e . $watch ( d , function ( d , b ) { y [ a ] = d ; l [ a ] = b ; g || ( g = ! 0 , e . $evalAsync ( c ) ) } ) ; C . push ( b ) } ) , function ( ) { for ( ; C . length ; ) C . shift ( ) ( ) } ) } ,
2017-07-25 17:51:59 +00:00
$watchCollection : function ( d , a ) { function b ( d ) { l = d ; var a , b , C , e ; if ( ! B ( l ) ) { if ( p ( l ) ) if ( c ( l ) ) for ( y !== m && ( y = m , H = y . length = 0 , f ++ ) , d = l . length , H !== d && ( f ++ , y . length = H = d ) , a = 0 ; a < d ; a ++ ) e = y [ a ] , C = l [ a ] , ( b = e !== e && C !== C ) || e === C || ( f ++ , y [ a ] = C ) ; else { y !== w && ( y = w = { } , H = 0 , f ++ ) ; d = 0 ; for ( a in l ) tb . call ( l , a ) && ( d ++ , C = l [ a ] , e = y [ a ] , a in y ? ( b = e !== e && C !== C , b || e === C || ( f ++ , y [ a ] = C ) ) : ( H ++ , y [ a ] = C , f ++ ) ) ; if ( H > d ) for ( a in f ++ , y ) tb . call ( l , a ) || ( H -- , delete y [ a ] ) } else y !== l && ( y = l , f ++ ) ; return f } } b . $stateful = ! 0 ; var l , y , C , e = this , g = 1 < a . length , f = 0 , h =
2017-07-20 23:09:21 +00:00
k ( d , b ) , m = [ ] , w = { } , n = ! 0 , H = 0 ; return this . $watch ( h , function ( ) { if ( n ? ( n = ! 1 , a ( l , l , e ) ) : a ( l , C , e ) , g ) if ( p ( l ) ) if ( c ( l ) ) { C = Array ( l . length ) ; for ( var d = 0 ; d < l . length ; d ++ ) C [ d ] = l [ d ] } else for ( d in C = { } , l ) tb . call ( l , d ) && ( C [ d ] = l [ d ] ) ; else C = l } ) } , $digest : function ( ) { var d , b , c , l , y , C , L , k , w , n , H , q = a , t = [ ] ; r ( "$digest" ) ; m . $$checkUrlChange ( ) ; this === ba && null !== f && ( m . defer . cancel ( f ) , x ( ) ) ; g = null ; do { k = ! 1 ; for ( w = this ; v . length ; ) { try { H = v . shift ( ) , H . scope . $eval ( H . expression , H . locals ) } catch ( Vd ) { h ( Vd ) } g = null } a : do { if ( C = w . $$watchers ) for ( L = C . length ; L -- ; ) try { if ( d =
C [ L ] ) if ( y = d . get , ( b = y ( w ) ) === ( c = d . last ) || ( d . eq ? X ( b , c ) : "number" == typeof b && "number" == typeof c && isNaN ( b ) && isNaN ( c ) ) ) { if ( d === g ) { k = ! 1 ; break a } } else k = ! 0 , g = d , d . last = d . eq ? Ga ( b , null ) : b , l = d . fn , l ( b , c === Z ? b : c , w ) , 5 > q && ( n = 4 - q , t [ n ] || ( t [ n ] = [ ] ) , t [ n ] . push ( { msg : E ( d . exp ) ? "fn: " + ( d . exp . name || d . exp . toString ( ) ) : d . exp , newVal : b , oldVal : c } ) ) } catch ( Vd ) { h ( Vd ) } if ( ! ( C = w . $$watchersCount && w . $$childHead || w !== this && w . $$nextSibling ) ) for ( ; w !== this && ! ( C = w . $$nextSibling ) ; ) w = w . $parent } while ( w = C ) ; if ( ( k || v . length ) && ! q -- ) throw ba . $$phase =
null , e ( "infdig" , a , t ) ; } while ( k || v . length ) ; for ( ba . $$phase = null ; La . length ; ) try { La . shift ( ) ( ) } catch ( Vd ) { h ( Vd ) } } , $destroy : function ( ) { if ( ! this . $$destroyed ) { var d = this . $parent ; this . $broadcast ( "$destroy" ) ; this . $$destroyed = ! 0 ; this === ba && m . $$applicationDestroyed ( ) ; t ( this , - this . $$watchersCount ) ; for ( var a in this . $$listenerCount ) u ( this , this . $$listenerCount [ a ] , a ) ; d && d . $$childHead == this && ( d . $$childHead = this . $$nextSibling ) ; d && d . $$childTail == this && ( d . $$childTail = this . $$prevSibling ) ; this . $$prevSibling && ( this . $$prevSibling . $$nextSibling =
this . $$nextSibling ) ; this . $$nextSibling && ( this . $$nextSibling . $$prevSibling = this . $$prevSibling ) ; this . $destroy = this . $digest = this . $apply = this . $evalAsync = this . $applyAsync = q ; this . $on = this . $watch = this . $watchGroup = function ( ) { return q } ; this . $$listeners = { } ; this . $$nextSibling = null ; n ( this ) } } , $eval : function ( d , a ) { return k ( d ) ( this , a ) } , $evalAsync : function ( d , a ) { ba . $$phase || v . length || m . defer ( function ( ) { v . length && ba . $digest ( ) } ) ; v . push ( { scope : this , expression : k ( d ) , locals : a } ) } , $$postDigest : function ( d ) { La . push ( d ) } , $apply : function ( d ) { try { r ( "$apply" ) ;
try { return this . $eval ( d ) } finally { ba . $$phase = null } } catch ( pd ) { h ( pd ) } finally { try { ba . $digest ( ) } catch ( pd ) { throw h ( pd ) , pd ; } } } , $applyAsync : function ( d ) { function a ( ) { b . $eval ( d ) } var b = this ; d && A . push ( a ) ; d = k ( d ) ; aa ( ) } , $on : function ( d , a ) { var b = this . $$listeners [ d ] ; b || ( this . $$listeners [ d ] = b = [ ] ) ; b . push ( a ) ; var c = this ; do c . $$listenerCount [ d ] || ( c . $$listenerCount [ d ] = 0 ) , c . $$listenerCount [ d ] ++ ; while ( c = c . $parent ) ; var y = this ; return function ( ) { var C = b . indexOf ( a ) ; - 1 !== C && ( b [ C ] = null , u ( y , 1 , d ) ) } } , $emit : function ( d , a ) { var b , c , y ,
2017-07-25 17:51:59 +00:00
C = [ ] , l = this , e = ! 1 , g = { name : d , targetScope : l , stopPropagation : function ( ) { e = ! 0 } , preventDefault : function ( ) { g . defaultPrevented = ! 0 } , defaultPrevented : ! 1 } , f = O ( [ g ] , arguments , 1 ) ; do { b = l . $$listeners [ d ] || C ; g . currentScope = l ; c = 0 ; for ( y = b . length ; c < y ; c ++ ) if ( b [ c ] ) try { b [ c ] . apply ( null , f ) } catch ( Ig ) { h ( Ig ) } else b . splice ( c , 1 ) , c -- , y -- ; if ( e ) break ; l = l . $parent } while ( l ) ; return g . currentScope = null , g } , $broadcast : function ( d , a ) { var b = this , c = this , y = { name : d , targetScope : this , preventDefault : function ( ) { y . defaultPrevented = ! 0 } , defaultPrevented : ! 1 } ;
if ( ! this . $$listenerCount [ d ] ) return y ; for ( var C , l , e = O ( [ y ] , arguments , 1 ) ; b = c ; ) { y . currentScope = b ; c = b . $$listeners [ d ] || [ ] ; C = 0 ; for ( l = c . length ; C < l ; C ++ ) if ( c [ C ] ) try { c [ C ] . apply ( null , e ) } catch ( zb ) { h ( zb ) } else c . splice ( C , 1 ) , C -- , l -- ; if ( ! ( c = b . $$listenerCount [ d ] && b . $$childHead || b !== this && b . $$nextSibling ) ) for ( ; b !== this && ! ( c = b . $$nextSibling ) ; ) b = b . $parent } return y . currentScope = null , y } } ; var ba = new H , v = ba . $$asyncQueue = [ ] , La = ba . $$postDigestQueue = [ ] , A = ba . $$applyAsyncQueue = [ ] ; return ba } ] } function bd ( ) { var d = /^\s*(https?|ftp|mailto|tel|file):/ ,
2017-07-20 23:09:21 +00:00
a = /^\s*((https?|ftp|file|blob):|data:image\/)/ ; this . aHrefSanitizationWhitelist = function ( a ) { return F ( a ) ? ( d = a , this ) : d } ; this . imgSrcSanitizationWhitelist = function ( d ) { return F ( d ) ? ( a = d , this ) : a } ; this . $get = function ( ) { return function ( b , c ) { var l , e = c ? a : d ; return l = Ob ( b ) . href , "" === l || l . match ( e ) ? b : "unsafe:" + l } } } function qf ( d ) { if ( "self" === d ) return d ; if ( u ( d ) ) { if ( - 1 < d . indexOf ( "***" ) ) throw $b ( "iwcard" , d ) ; return d = sc ( d ) . replace ( "\\*\\*" , ".*" ) . replace ( "\\*" , "[^:/.?&;]*" ) , new RegExp ( "^" + d + "$" ) } if ( G ( d ) ) return new RegExp ( "^" +
d . source + "$" ) ; throw $b ( "imatcher" ) ; } function vd ( d ) { var a = [ ] ; return F ( d ) && b ( d , function ( d ) { a . push ( qf ( d ) ) } ) , a } function Se ( ) { this . SCE _CONTEXTS = Ab ; var d = [ "self" ] , a = [ ] ; this . resourceUrlWhitelist = function ( a ) { return arguments . length && ( d = vd ( a ) ) , d } ; this . resourceUrlBlacklist = function ( d ) { return arguments . length && ( a = vd ( d ) ) , a } ; this . $get = [ "$injector" , function ( b ) { function c ( d , a ) { return "self" === d ? Yd ( a ) : ! ! d . exec ( a . href ) } function l ( d ) { var a = function ( d ) { this . $$unwrapTrustedValue = function ( ) { return d } } ; return d && ( a . prototype =
new d ) , a . prototype . valueOf = function ( ) { return this . $$unwrapTrustedValue ( ) } , a . prototype . toString = function ( ) { return this . $$unwrapTrustedValue ( ) . toString ( ) } , a } var e = function ( d ) { throw $b ( "unsafe" ) ; } ; b . has ( "$sanitize" ) && ( e = b . get ( "$sanitize" ) ) ; var g = l ( ) , f = { } ; return f [ Ab . HTML ] = l ( g ) , f [ Ab . CSS ] = l ( g ) , f [ Ab . URL ] = l ( g ) , f [ Ab . JS ] = l ( g ) , f [ Ab . RESOURCE _URL ] = l ( f [ Ab . URL ] ) , { trustAs : function ( d , a ) { var b = f . hasOwnProperty ( d ) ? f [ d ] : null ; if ( ! b ) throw $b ( "icontext" , d , a ) ; if ( null === a || B ( a ) || "" === a ) return a ; if ( "string" != typeof a ) throw $b ( "itype" ,
2017-07-25 17:51:59 +00:00
d ) ; return new b ( a ) } , getTrusted : function ( b , l ) { if ( null === l || B ( l ) || "" === l ) return l ; var g = f . hasOwnProperty ( b ) ? f [ b ] : null ; if ( g && l instanceof g ) return l . $$unwrapTrustedValue ( ) ; if ( b === Ab . RESOURCE _URL ) { var h , k , g = Ob ( l . toString ( ) ) , m = ! 1 ; h = 0 ; for ( k = d . length ; h < k ; h ++ ) if ( c ( d [ h ] , g ) ) { m = ! 0 ; break } if ( m ) for ( h = 0 , k = a . length ; h < k ; h ++ ) if ( c ( a [ h ] , g ) ) { m = ! 1 ; break } if ( m ) return l ; throw $b ( "insecurl" , l . toString ( ) ) ; } if ( b === Ab . HTML ) return e ( l ) ; throw $b ( "unsafe" ) ; } , valueOf : function ( d ) { return d instanceof g ? d . $$unwrapTrustedValue ( ) : d } } } ] }
2017-07-20 23:09:21 +00:00
function mb ( ) { var d = ! 0 ; this . enabled = function ( a ) { return arguments . length && ( d = ! ! a ) , d } ; this . $get = [ "$parse" , "$sceDelegate" , function ( a , c ) { if ( d && 8 > jc ) throw $b ( "iequirks" ) ; var l = za ( Ab ) ; l . isEnabled = function ( ) { return d } ; l . trustAs = c . trustAs ; l . getTrusted = c . getTrusted ; l . valueOf = c . valueOf ; d || ( l . trustAs = l . getTrusted = function ( d , a ) { return a } , l . valueOf = v ) ; l . parseAs = function ( d , b ) { var c = a ( b ) ; return c . literal && c . constant ? c : a ( b , function ( a ) { return l . getTrusted ( d , a ) } ) } ; var e = l . parseAs , g = l . getTrusted , f = l . trustAs ; return b ( Ab ,
function ( d , a ) { var b = sa ( a ) ; l [ pc ( "parse_as_" + b ) ] = function ( a ) { return e ( d , a ) } ; l [ pc ( "get_trusted_" + b ) ] = function ( a ) { return g ( d , a ) } ; l [ pc ( "trust_as_" + b ) ] = function ( a ) { return f ( d , a ) } } ) , l } ] } function Te ( ) { this . $get = [ "$window" , "$document" , function ( d , a ) { var b , c = { } , l = parseInt ( ( /android (\d+)/ . exec ( sa ( ( d . navigator || { } ) . userAgent ) ) || [ ] ) [ 1 ] , 10 ) , e = /Boxee/i . test ( ( d . navigator || { } ) . userAgent ) , g = a [ 0 ] || { } , f = /^(Moz|webkit|ms)(?=[A-Z])/ , h = g . body && g . body . style , k = ! 1 , m = ! 1 ; if ( h ) { for ( var w in h ) if ( k = f . exec ( w ) ) { b = k [ 0 ] ; b = b . substr ( 0 ,
1 ) . toUpperCase ( ) + b . substr ( 1 ) ; break } b || ( b = "WebkitOpacity" in h && "webkit" ) ; k = ! ! ( "transition" in h || b + "Transition" in h ) ; m = ! ! ( "animation" in h || b + "Animation" in h ) ; ! l || k && m || ( k = u ( h . webkitTransition ) , m = u ( h . webkitAnimation ) ) } return { history : ! ( ! d . history || ! d . history . pushState || 4 > l || e ) , hasEvent : function ( d ) { if ( "input" === d && 11 >= jc ) return ! 1 ; if ( B ( c [ d ] ) ) { var a = g . createElement ( "div" ) ; c [ d ] = "on" + d in a } return c [ d ] } , csp : Ub ( ) , vendorPrefix : b , transitions : k , animations : m , android : l } } ] } function Ue ( ) { this . $get = [ "$templateCache" ,
"$http" , "$q" , "$sce" , function ( d , a , b , c ) { function l ( e , g ) { l . totalPendingRequests ++ ; u ( e ) && ! B ( d . get ( e ) ) || ( e = c . getTrustedResourceUrl ( e ) ) ; var f = a . defaults && a . defaults . transformResponse ; return la ( f ) ? f = f . filter ( function ( d ) { return d !== ob } ) : f === ob && ( f = null ) , a . get ( e , { cache : d , transformResponse : f } ) [ "finally" ] ( function ( ) { l . totalPendingRequests -- } ) . then ( function ( a ) { return d . put ( e , a . data ) , a . data } , function ( d ) { if ( ! g ) throw Za ( "tpload" , e , d . status , d . statusText ) ; return b . reject ( d ) } ) } return l . totalPendingRequests = 0 , l } ] } function Ve ( ) { this . $get =
[ "$rootScope" , "$browser" , "$location" , function ( d , a , c ) { return { findBindings : function ( d , a , c ) { d = d . getElementsByClassName ( "ng-binding" ) ; var l = [ ] ; return b ( d , function ( d ) { var e = Na . element ( d ) . data ( "$binding" ) ; e && b ( e , function ( b ) { c ? ( new RegExp ( "(^|\\s)" + sc ( a ) + "(\\s|\\||$)" ) ) . test ( b ) && l . push ( d ) : - 1 != b . indexOf ( a ) && l . push ( d ) } ) } ) , l } , findModels : function ( d , a , b ) { for ( var c = [ "ng-" , "data-ng-" , "ng\\:" ] , l = 0 ; l < c . length ; ++ l ) { var e = d . querySelectorAll ( "[" + c [ l ] + "model" + ( b ? "=" : "*=" ) + '"' + a + '"]' ) ; if ( e . length ) return e } } , getLocation : function ( ) { return c . url ( ) } ,
setLocation : function ( a ) { a !== c . url ( ) && ( c . url ( a ) , d . $digest ( ) ) } , whenStable : function ( d ) { a . notifyWhenNoOutstandingRequests ( d ) } } } ] } function gd ( ) { this . $get = [ "$rootScope" , "$browser" , "$q" , "$$q" , "$exceptionHandler" , function ( d , a , b , c , e ) { function l ( l , f , h ) { E ( l ) || ( h = f , f = l , l = q ) ; var k , m = Db . call ( arguments , 3 ) , w = F ( h ) && ! h , n = ( w ? c : b ) . defer ( ) , r = n . promise ; return k = a . defer ( function ( ) { try { n . resolve ( l . apply ( null , m ) ) } catch ( yc ) { n . reject ( yc ) , e ( yc ) } finally { delete g [ r . $$timeoutId ] } w || d . $apply ( ) } , f ) , r . $$timeoutId = k , g [ k ] = n , r } var g =
2017-07-25 17:51:59 +00:00
{ } ; return l . cancel = function ( d ) { return ! ! ( d && d . $$timeoutId in g ) && ( g [ d . $$timeoutId ] . reject ( "canceled" ) , delete g [ d . $$timeoutId ] , a . defer . cancel ( d . $$timeoutId ) ) } , l } ] } function Ob ( d ) { return jc && ( Qa . setAttribute ( "href" , d ) , d = Qa . href ) , Qa . setAttribute ( "href" , d ) , { href : Qa . href , protocol : Qa . protocol ? Qa . protocol . replace ( /:$/ , "" ) : "" , host : Qa . host , search : Qa . search ? Qa . search . replace ( /^\?/ , "" ) : "" , hash : Qa . hash ? Qa . hash . replace ( /^#/ , "" ) : "" , hostname : Qa . hostname , port : Qa . port , pathname : "/" === Qa . pathname . charAt ( 0 ) ? Qa . pathname :
2017-07-20 23:09:21 +00:00
"/" + Qa . pathname } } function Yd ( d ) { return d = u ( d ) ? Ob ( d ) : d , d . protocol === rf . protocol && d . host === rf . host } function We ( ) { this . $get = z ( a ) } function sf ( d ) { function a ( d ) { try { return decodeURIComponent ( d ) } catch ( La ) { return d } } var b = d [ 0 ] || { } , c = { } , e = "" ; return function ( ) { var d , l , g , f , h ; if ( d = b . cookie || "" , d !== e ) for ( e = d , d = e . split ( "; " ) , c = { } , g = 0 ; g < d . length ; g ++ ) l = d [ g ] , f = l . indexOf ( "=" ) , 0 < f && ( h = a ( l . substring ( 0 , f ) ) , B ( c [ h ] ) && ( c [ h ] = a ( l . substring ( f + 1 ) ) ) ) ; return c } } function hd ( ) { this . $get = sf } function Dc ( d ) { function a ( c , l ) { if ( p ( c ) ) { var e =
{ } ; return b ( c , function ( d , b ) { e [ b ] = a ( b , d ) } ) , e } return d . factory ( c + "Filter" , l ) } this . register = a ; this . $get = [ "$injector" , function ( d ) { return function ( a ) { return d . get ( a + "Filter" ) } } ] ; a ( "currency" , ge ) ; a ( "date" , he ) ; a ( "filter" , tf ) ; a ( "json" , Lg ) ; a ( "limitTo" , ie ) ; a ( "lowercase" , uf ) ; a ( "number" , je ) ; a ( "orderBy" , ke ) ; a ( "uppercase" , wd ) } function tf ( ) { return function ( d , a , b ) { if ( ! c ( d ) ) { if ( null == d ) return d ; throw h ( "filter" ) ( "notarray" , d ) ; } var l ; switch ( xd ( a ) ) { case "function" : break ; case "boolean" : case "null" : case "number" : case "string" : l =
2017-07-25 17:51:59 +00:00
! 0 ; case "object" : a = vf ( a , b , l ) ; break ; default : return d } return Array . prototype . filter . call ( d , a ) } } function vf ( d , a , b ) { var c = p ( d ) && "$" in d ; return ! 0 === a ? a = X : E ( a ) || ( a = function ( d , a ) { return ! B ( d ) && ( null === d || null === a ? d === a : ! ( p ( a ) || p ( d ) && ! A ( d ) ) && ( d = sa ( "" + d ) , a = sa ( "" + a ) , - 1 !== d . indexOf ( a ) ) ) } ) , function ( l ) { return c && ! p ( l ) ? ac ( l , d . $ , a , ! 1 ) : ac ( l , d , a , b ) } } function ac ( d , a , b , c , e ) { var l = xd ( d ) , g = xd ( a ) ; if ( "string" === g && "!" === a . charAt ( 0 ) ) return ! ac ( d , a . substring ( 1 ) , b , c ) ; if ( la ( d ) ) return d . some ( function ( d ) { return ac ( d , a , b , c ) } ) ; switch ( l ) { case "object" : var f ;
if ( c ) { for ( f in d ) if ( "$" !== f . charAt ( 0 ) && ac ( d [ f ] , a , b , ! 0 ) ) return ! 0 ; return ! e && ac ( d , a , b , ! 1 ) } if ( "object" === g ) { for ( f in a ) if ( e = a [ f ] , ! E ( e ) && ! B ( e ) && ( l = "$" === f , ! ac ( l ? d : d [ f ] , e , b , l , l ) ) ) return ! 1 ; return ! 0 } return b ( d , a ) ; case "function" : return ! 1 ; default : return b ( d , a ) } } function xd ( d ) { return null === d ? "null" : typeof d } function ge ( d ) { var a = d . NUMBER _FORMATS ; return function ( d , b , c ) { return B ( b ) && ( b = a . CURRENCY _SYM ) , B ( c ) && ( c = a . PATTERNS [ 1 ] . maxFrac ) , null == d ? d : le ( d , a . PATTERNS [ 1 ] , a . GROUP _SEP , a . DECIMAL _SEP , c ) . replace ( /\u00A4/g ,
b ) } } function je ( d ) { var a = d . NUMBER _FORMATS ; return function ( d , b ) { return null == d ? d : le ( d , a . PATTERNS [ 0 ] , a . GROUP _SEP , a . DECIMAL _SEP , b ) } } function wf ( d ) { var a , b , c , e , g , f = 0 ; - 1 < ( b = d . indexOf ( xf ) ) && ( d = d . replace ( xf , "" ) ) ; 0 < ( c = d . search ( /e/i ) ) ? ( 0 > b && ( b = c ) , b += + d . slice ( c + 1 ) , d = d . substring ( 0 , c ) ) : 0 > b && ( b = d . length ) ; for ( c = 0 ; d . charAt ( c ) == tc ; c ++ ) ; if ( c == ( g = d . length ) ) a = [ 0 ] , b = 1 ; else { for ( g -- ; d . charAt ( g ) == tc ; ) g -- ; b -= c ; a = [ ] ; for ( e = 0 ; c <= g ; c ++ , e ++ ) a [ e ] = + d . charAt ( c ) } return b > yf && ( a = a . splice ( 0 , yf - 1 ) , f = b - 1 , b = 1 ) , { d : a , e : f , i : b } } function zf ( d ,
a , b , c ) { var l = d . d , e = l . length - d . i ; if ( a = B ( a ) ? Math . min ( Math . max ( b , e ) , c ) : + a , b = a + d . i , c = l [ b ] , 0 < b ) l . splice ( b ) ; else { d . i = 1 ; l . length = b = a + 1 ; for ( var g = 0 ; g < b ; g ++ ) l [ g ] = 0 } for ( 5 <= c && l [ b - 1 ] ++ ; e < a ; e ++ ) l . push ( 0 ) ; ( a = l . reduceRight ( function ( d , a , b , c ) { return a += d , c [ b ] = a % 10 , Math . floor ( a / 10 ) } , 0 ) ) && ( l . unshift ( a ) , d . i ++ ) } function le ( d , a , b , c , e ) { if ( ! u ( d ) && ! I ( d ) || isNaN ( d ) ) return "" ; var l = ! isFinite ( d ) , g = ! 1 , f = Math . abs ( d ) + "" , h = "" ; if ( l ) h = "\u221e" ; else { g = wf ( f ) ; zf ( g , e , a . minFrac , a . maxFrac ) ; h = g . d ; f = g . i ; e = g . e ; l = [ ] ; for ( g = h . reduce ( function ( d ,
2017-07-20 23:09:21 +00:00
a ) { return d && ! a } , ! 0 ) ; 0 > f ; ) h . unshift ( 0 ) , f ++ ; 0 < f ? l = h . splice ( f , h . length ) : ( l = h , h = [ 0 ] ) ; f = [ ] ; for ( h . length >= a . lgSize && f . unshift ( h . splice ( - a . lgSize , h . length ) . join ( "" ) ) ; h . length > a . gSize ; ) f . unshift ( h . splice ( - a . gSize , h . length ) . join ( "" ) ) ; h . length && f . unshift ( h . join ( "" ) ) ; h = f . join ( b ) ; l . length && ( h += c + l . join ( "" ) ) ; e && ( h += "e+" + e ) } return 0 > d && ! g ? a . negPre + h + a . negSuf : a . posPre + h + a . posSuf } function Qc ( d , a , b ) { var c = "" ; 0 > d && ( c = "-" , d = - d ) ; for ( d = "" + d ; d . length < a ; ) d = tc + d ; return b && ( d = d . substr ( d . length - a ) ) , c + d } function Wa ( d , a , b ,
c ) { return b = b || 0 , function ( l ) { return l = l [ "get" + d ] ( ) , ( 0 < b || l > - b ) && ( l += b ) , 0 === l && - 12 == b && ( l = 12 ) , Qc ( l , a , c ) } } function Rc ( d , a ) { return function ( b , c ) { var l = b [ "get" + d ] ( ) , e = lb ( a ? "SHORT" + d : d ) ; return c [ e ] [ l ] } } function me ( d ) { var a = ( new Date ( d , 0 , 1 ) ) . getDay ( ) ; return new Date ( d , 0 , ( 4 >= a ? 5 : 12 ) - a ) } function ne ( d ) { return function ( a ) { var b = me ( a . getFullYear ( ) ) ; return a = + new Date ( a . getFullYear ( ) , a . getMonth ( ) , a . getDate ( ) + ( 4 - a . getDay ( ) ) ) - + b , a = 1 + Math . round ( a / 6048E5 ) , Qc ( a , d ) } } function Sc ( d , a ) { return 0 >= d . getFullYear ( ) ? a . ERAS [ 0 ] :
a . ERAS [ 1 ] } function he ( d ) { function a ( d ) { var a ; if ( a = d . match ( c ) ) { d = new Date ( 0 ) ; var b = 0 , l = 0 , e = a [ 8 ] ? d . setUTCFullYear : d . setFullYear , g = a [ 8 ] ? d . setUTCHours : d . setHours ; a [ 9 ] && ( b = parseInt ( a [ 9 ] + a [ 10 ] , 10 ) , l = parseInt ( a [ 9 ] + a [ 11 ] , 10 ) ) ; e . call ( d , parseInt ( a [ 1 ] , 10 ) , parseInt ( a [ 2 ] , 10 ) - 1 , parseInt ( a [ 3 ] , 10 ) ) ; b = parseInt ( a [ 4 ] || 0 , 10 ) - b ; l = parseInt ( a [ 5 ] || 0 , 10 ) - l ; e = parseInt ( a [ 6 ] || 0 , 10 ) ; a = Math . round ( 1E3 * parseFloat ( "0." + ( a [ 7 ] || 0 ) ) ) ; g . call ( d , b , l , e , a ) } return d } var c = /^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/ ;
return function ( c , l , e ) { var g , f , h = "" , k = [ ] ; if ( l = l || "mediumDate" , l = d . DATETIME _FORMATS [ l ] || l , u ( c ) && ( c = Af . test ( c ) ? parseInt ( c , 10 ) : a ( c ) ) , I ( c ) && ( c = new Date ( c ) ) , ! J ( c ) || ! isFinite ( c . getTime ( ) ) ) return c ; for ( ; l ; ) ( f = Bf . exec ( l ) ) ? ( k = O ( k , f , 1 ) , l = k . pop ( ) ) : ( k . push ( l ) , l = null ) ; var m = c . getTimezoneOffset ( ) ; return e && ( m = R ( e , m ) , c = ea ( c , e , ! 0 ) ) , b ( k , function ( a ) { g = yd [ a ] ; h += g ? g ( c , d . DATETIME _FORMATS , m ) : "''" === a ? "'" : a . replace ( /(^'|'$)/g , "" ) . replace ( /''/g , "'" ) } ) , h } } function Lg ( ) { return function ( d , a ) { return B ( a ) && ( a = 2 ) , ka ( d , a ) } } function ie ( ) { return function ( d ,
a , b ) { return a = 1 / 0 === Math . abs ( Number ( a ) ) ? Number ( a ) : parseInt ( a , 10 ) , isNaN ( a ) ? d : ( I ( d ) && ( d = d . toString ( ) ) , la ( d ) || u ( d ) ? ( b = ! b || isNaN ( b ) ? 0 : parseInt ( b , 10 ) , b = 0 > b ? Math . max ( 0 , d . length + b ) : b , 0 <= a ? d . slice ( b , b + a ) : 0 === b ? d . slice ( a , d . length ) : d . slice ( Math . max ( 0 , b + a ) , b ) ) : d ) } } function ke ( d ) { function a ( a , b ) { return b = b ? - 1 : 1 , a . map ( function ( a ) { var c = 1 , l = v ; if ( E ( a ) ) l = a ; else if ( u ( a ) && ( "+" != a . charAt ( 0 ) && "-" != a . charAt ( 0 ) || ( c = "-" == a . charAt ( 0 ) ? - 1 : 1 , a = a . substring ( 1 ) ) , "" !== a && ( l = d ( a ) , l . constant ) ) ) var e = l ( ) , l = function ( d ) { return d [ e ] } ;
return { get : l , descending : c * b } } ) } function b ( d ) { switch ( typeof d ) { case "number" : case "boolean" : case "string" : return ! 0 ; default : return ! 1 } } return function ( d , l , e ) { if ( ! c ( d ) ) return d ; la ( l ) || ( l = [ l ] ) ; 0 === l . length && ( l = [ "+" ] ) ; var g = a ( l , e ) ; return g . push ( { get : function ( ) { return { } } , descending : e ? - 1 : 1 } ) , d = Array . prototype . map . call ( d , function ( d , a ) { return { value : d , predicateValues : g . map ( function ( c ) { var l = c . get ( d ) ; return c = typeof l , null === l ? ( c = "string" , l = "null" ) : "string" === c ? l = l . toLowerCase ( ) : "object" === c && ( "function" == typeof l . valueOf &&
2017-07-25 17:51:59 +00:00
( l = l . valueOf ( ) , b ( l ) ) || A ( l ) && ( l = l . toString ( ) , b ( l ) ) || ( l = a ) ) , { value : l , type : c } } ) } } ) , d . sort ( function ( d , a ) { for ( var b = 0 , c = 0 , l = g . length ; c < l ; ++ c ) { var b = d . predicateValues [ c ] , e = a . predicateValues [ c ] , f = 0 ; if ( b . type === e . type ? b . value !== e . value && ( f = b . value < e . value ? - 1 : 1 ) : f = b . type < e . type ? - 1 : 1 , b = f * g [ c ] . descending ) break } return b } ) , d = d . map ( function ( d ) { return d . value } ) } } function hb ( d ) { return E ( d ) && ( d = { link : d } ) , d . restrict = d . restrict || "AC" , z ( d ) } function Cf ( d , a , c , e , g ) { var l = this , f = [ ] ; l . $error = { } ; l . $$success = { } ; l . $pending =
2017-07-20 23:09:21 +00:00
k ; l . $name = g ( a . name || a . ngForm || "" ) ( c ) ; l . $dirty = ! 1 ; l . $pristine = ! 0 ; l . $valid = ! 0 ; l . $invalid = ! 1 ; l . $submitted = ! 1 ; l . $$parentForm = zd ; l . $rollbackViewValue = function ( ) { b ( f , function ( d ) { d . $rollbackViewValue ( ) } ) } ; l . $commitViewValue = function ( ) { b ( f , function ( d ) { d . $commitViewValue ( ) } ) } ; l . $addControl = function ( d ) { vb ( d . $name , "input" ) ; f . push ( d ) ; d . $name && ( l [ d . $name ] = d ) ; d . $$parentForm = l } ; l . $$renameControl = function ( d , a ) { var b = d . $name ; l [ b ] === d && delete l [ b ] ; l [ a ] = d ; d . $name = a } ; l . $removeControl = function ( d ) { d . $name && l [ d . $name ] ===
d && delete l [ d . $name ] ; b ( l . $pending , function ( a , b ) { l . $setValidity ( b , null , d ) } ) ; b ( l . $error , function ( a , b ) { l . $setValidity ( b , null , d ) } ) ; b ( l . $$success , function ( a , b ) { l . $setValidity ( b , null , d ) } ) ; ya ( f , d ) ; d . $$parentForm = zd } ; Df ( { ctrl : this , $element : d , set : function ( d , a , b ) { var c = d [ a ] ; c ? - 1 === c . indexOf ( b ) && c . push ( b ) : d [ a ] = [ b ] } , unset : function ( d , a , b ) { var c = d [ a ] ; c && ( ya ( c , b ) , 0 === c . length && delete d [ a ] ) } , $animate : e } ) ; l . $setDirty = function ( ) { e . removeClass ( d , uc ) ; e . addClass ( d , Ad ) ; l . $dirty = ! 0 ; l . $pristine = ! 1 ; l . $$parentForm . $setDirty ( ) } ;
l . $setPristine = function ( ) { e . setClass ( d , uc , Ad + " ng-submitted" ) ; l . $dirty = ! 1 ; l . $pristine = ! 0 ; l . $submitted = ! 1 ; b ( f , function ( d ) { d . $setPristine ( ) } ) } ; l . $setUntouched = function ( ) { b ( f , function ( d ) { d . $setUntouched ( ) } ) } ; l . $setSubmitted = function ( ) { e . addClass ( d , "ng-submitted" ) ; l . $submitted = ! 0 ; l . $$parentForm . $setSubmitted ( ) } } function oe ( d ) { d . $formatters . push ( function ( a ) { return d . $isEmpty ( a ) ? a : a . toString ( ) } ) } function Tc ( d , a , b , c , e , g ) { var l = sa ( a [ 0 ] . type ) ; if ( ! e . android ) { var f = ! 1 ; a . on ( "compositionstart" , function ( d ) { f = ! 0 } ) ;
a . on ( "compositionend" , function ( ) { f = ! 1 ; k ( ) } ) } var h , k = function ( d ) { if ( h && ( g . defer . cancel ( h ) , h = null ) , ! f ) { var e = a . val ( ) ; d = d && d . type ; "password" === l || b . ngTrim && "false" === b . ngTrim || ( e = Ea ( e ) ) ; ( c . $viewValue !== e || "" === e && c . $$hasNativeValidators ) && c . $setViewValue ( e , d ) } } ; if ( e . hasEvent ( "input" ) ) a . on ( "input" , k ) ; else { var m = function ( d , a , b ) { h || ( h = g . defer ( function ( ) { h = null ; a && a . value === b || k ( d ) } ) ) } ; a . on ( "keydown" , function ( d ) { var a = d . keyCode ; 91 === a || 15 < a && 19 > a || 37 <= a && 40 >= a || m ( d , this , this . value ) } ) ; e . hasEvent ( "paste" ) &&
a . on ( "paste cut" , m ) } a . on ( "change" , k ) ; Uc [ l ] && c . $$hasNativeValidators && l === b . type && a . on ( "keydown wheel mousedown" , function ( d ) { if ( ! h ) { var a = this . validity , b = a . badInput , c = a . typeMismatch ; h = g . defer ( function ( ) { h = null ; a . badInput === b && a . typeMismatch === c || k ( d ) } ) } } ) ; c . $render = function ( ) { var d = c . $isEmpty ( c . $viewValue ) ? "" : c . $viewValue ; a . val ( ) !== d && a . val ( d ) } } function Ca ( d , a ) { return function ( c , l ) { var e , g ; if ( J ( c ) ) return c ; if ( u ( c ) ) { if ( '"' == c . charAt ( 0 ) && '"' == c . charAt ( c . length - 1 ) && ( c = c . substring ( 1 , c . length - 1 ) ) , ib . test ( c ) ) return new Date ( c ) ;
if ( d . lastIndex = 0 , e = d . exec ( c ) ) return e . shift ( ) , g = l ? { yyyy : l . getFullYear ( ) , MM : l . getMonth ( ) + 1 , dd : l . getDate ( ) , HH : l . getHours ( ) , mm : l . getMinutes ( ) , ss : l . getSeconds ( ) , sss : l . getMilliseconds ( ) / 1E3 } : { yyyy : 1970 , MM : 1 , dd : 1 , HH : 0 , mm : 0 , ss : 0 , sss : 0 } , b ( e , function ( d , b ) { b < a . length && ( g [ a [ b ] ] = + d ) } ) , new Date ( g . yyyy , g . MM - 1 , g . dd , g . HH , g . mm , g . ss || 0 , 1E3 * g . sss || 0 ) } return NaN } } function bc ( d , a , b , c ) { return function ( l , e , g , f , h , m , w ) { function n ( d ) { return d && ! ( d . getTime && d . getTime ( ) !== d . getTime ( ) ) } function r ( d ) { return F ( d ) && ! J ( d ) ? b ( d ) ||
k : d } lc ( l , e , g , f ) ; Tc ( l , e , g , f , h , m ) ; var q , t = f && f . $options && f . $options . timezone ; if ( f . $$parserName = d , f . $parsers . push ( function ( d ) { return f . $isEmpty ( d ) ? null : a . test ( d ) ? ( d = b ( d , q ) , t && ( d = ea ( d , t ) ) , d ) : k } ) , f . $formatters . push ( function ( d ) { if ( d && ! J ( d ) ) throw Vc ( "datefmt" , d ) ; return n ( d ) ? ( ( q = d ) && t && ( q = ea ( q , t , ! 0 ) ) , w ( "date" ) ( d , c , t ) ) : ( q = null , "" ) } ) , F ( g . min ) || g . ngMin ) { var u ; f . $validators . min = function ( d ) { return ! n ( d ) || B ( u ) || b ( d ) >= u } ; g . $observe ( "min" , function ( d ) { u = r ( d ) ; f . $validate ( ) } ) } if ( F ( g . max ) || g . ngMax ) { var H ; f . $validators . max =
function ( d ) { return ! n ( d ) || B ( H ) || b ( d ) <= H } ; g . $observe ( "max" , function ( d ) { H = r ( d ) ; f . $validate ( ) } ) } } } function lc ( d , a , b , c ) { ( c . $$hasNativeValidators = p ( a [ 0 ] . validity ) ) && c . $parsers . push ( function ( d ) { var b = a . prop ( "validity" ) || { } ; return b . badInput && ! b . typeMismatch ? k : d } ) } function pe ( d , a , b , c , e ) { if ( F ( c ) ) { if ( d = d ( c ) , ! d . constant ) throw Vc ( "constexpr" , b , c ) ; return d ( a ) } return e } function cc ( d , a ) { return d = "ngClass" + d , [ "$animate" , function ( c ) { function l ( d , a ) { var b = [ ] , c = 0 ; a : for ( ; c < d . length ; c ++ ) { for ( var l = d [ c ] , e = 0 ; e < a . length ; e ++ ) if ( l ==
a [ e ] ) continue a ; b . push ( l ) } return b } function e ( d ) { var a = [ ] ; return la ( d ) ? ( b ( d , function ( d ) { a = a . concat ( e ( d ) ) } ) , a ) : u ( d ) ? d . split ( " " ) : p ( d ) ? ( b ( d , function ( d , b ) { d && ( a = a . concat ( b . split ( " " ) ) ) } ) , a ) : d } return { restrict : "AC" , link : function ( g , f , h ) { function k ( d ) { d = m ( d , 1 ) ; h . $addClass ( d ) } function m ( d , a ) { var c = f . data ( "$classCounts" ) || Ma ( ) , l = [ ] ; return b ( d , function ( d ) { ( 0 < a || c [ d ] ) && ( c [ d ] = ( c [ d ] || 0 ) + a , c [ d ] === + ( 0 < a ) && l . push ( d ) ) } ) , f . data ( "$classCounts" , c ) , l . join ( " " ) } function w ( d , a ) { var b = l ( a , d ) , e = l ( d , a ) , b = m ( b , 1 ) , e = m ( e , - 1 ) ;
b && b . length && c . addClass ( f , b ) ; e && e . length && c . removeClass ( f , e ) } function n ( d ) { if ( ! 0 === a || g . $index % 2 === a ) { var b = e ( d || [ ] ) ; if ( r ) { if ( ! X ( d , r ) ) { var c = e ( r ) ; w ( c , b ) } } else k ( b ) } r = la ( d ) ? d . map ( function ( d ) { return za ( d ) } ) : za ( d ) } var r ; g . $watch ( h [ d ] , n , ! 0 ) ; h . $observe ( "class" , function ( a ) { n ( g . $eval ( h [ d ] ) ) } ) ; "ngClass" !== d && g . $watch ( "$index" , function ( b , c ) { var l = 1 & b ; if ( l !== ( 1 & c ) ) { var f = e ( g . $eval ( h [ d ] ) ) ; l === a ? k ( f ) : ( l = m ( f , - 1 ) , h . $removeClass ( l ) ) } } ) } } } ] } function Df ( d ) { function a ( d , a ) { a && ! g [ d ] ? ( m . addClass ( e , d ) , g [ d ] = ! 0 ) : ! a && g [ d ] &&
( m . removeClass ( e , d ) , g [ d ] = ! 1 ) } function b ( d , b ) { d = d ? "-" + ia ( d , "-" ) : "" ; a ( Wc + d , ! 0 === b ) ; a ( Ef + d , ! 1 === b ) } var c = d . ctrl , e = d . $element , g = { } , f = d . set , h = d . unset , m = d . $animate ; g [ Ef ] = ! ( g [ Wc ] = e . hasClass ( Wc ) ) ; c . $setValidity = function ( d , l , e ) { B ( l ) ? ( c . $pending || ( c . $pending = { } ) , f ( c . $pending , d , e ) ) : ( c . $pending && h ( c . $pending , d , e ) , Ff ( c . $pending ) && ( c . $pending = k ) ) ; P ( l ) ? l ? ( h ( c . $error , d , e ) , f ( c . $$success , d , e ) ) : ( f ( c . $error , d , e ) , h ( c . $$success , d , e ) ) : ( h ( c . $error , d , e ) , h ( c . $$success , d , e ) ) ; c . $pending ? ( a ( Bd , ! 0 ) , c . $valid = c . $invalid = k , b ( "" ,
2017-07-25 17:51:59 +00:00
null ) ) : ( a ( Bd , ! 1 ) , c . $valid = Ff ( c . $error ) , c . $invalid = ! c . $valid , b ( "" , c . $valid ) ) ; l = c . $pending && c . $pending [ d ] ? k : ! c . $error [ d ] && ( ! ! c . $$success [ d ] || null ) ; b ( d , l ) ; c . $$parentForm . $setValidity ( d , l , c ) } } function Ff ( d ) { if ( d ) for ( var a in d ) if ( d . hasOwnProperty ( a ) ) return ! 1 ; return ! 0 } var jc , fa , Da , Kb , ra = /^\/(.+)\/([a-z]*)$/ , sa = function ( d ) { return u ( d ) ? d . toLowerCase ( ) : d } , tb = Object . prototype . hasOwnProperty , lb = function ( d ) { return u ( d ) ? d . toUpperCase ( ) : d } , Db = [ ] . slice , ff = [ ] . splice , Gf = [ ] . push , ub = Object . prototype . toString , vc = Object . getPrototypeOf ,
2017-07-20 23:09:21 +00:00
Ta = h ( "ng" ) , Na = a . angular || ( a . angular = { } ) , wc = 0 ; jc = f . documentMode ; q . $inject = [ ] ; v . $inject = [ ] ; var Zc , la = Array . isArray , xe = /^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array\]$/ , Ea = function ( d ) { return u ( d ) ? d . trim ( ) : d } , sc = function ( d ) { return d . replace ( /([-()\[\]{}+?*.$\^|,:#<!\\])/g , "\\$1" ) . replace ( /\x08/g , "\\x08" ) } , Ub = function ( ) { if ( ! F ( Ub . rules ) ) { var d = f . querySelector ( "[ng-csp]" ) || f . querySelector ( "[data-ng-csp]" ) ; if ( d ) { var a = d . getAttribute ( "ng-csp" ) || d . getAttribute ( "data-ng-csp" ) ;
2017-07-25 17:51:59 +00:00
Ub . rules = { noUnsafeEval : ! a || - 1 !== a . indexOf ( "no-unsafe-eval" ) , noInlineStyle : ! a || - 1 !== a . indexOf ( "no-inline-style" ) } } else { d = Ub ; try { new Function ( "" ) , a = ! 1 } catch ( Z ) { a = ! 0 } d . rules = { noUnsafeEval : a , noInlineStyle : ! 1 } } } return Ub . rules } , xc = function ( ) { if ( F ( xc . name _ ) ) return xc . name _ ; var d , a , b , c , e = ec . length ; for ( a = 0 ; a < e ; ++ a ) if ( b = ec [ a ] , d = f . querySelector ( "[" + b . replace ( ":" , "\\:" ) + "jq]" ) ) { c = d . getAttribute ( b + "jq" ) ; break } return xc . name _ = c } , Ed = /:/g , ec = [ "ng-" , "data-ng-" , "ng:" , "x-ng-" ] , ye = /[A-Z]/g , Fd = ! 1 , Rb = 3 , Ae = { full : "1.4.14" ,
2017-07-20 23:09:21 +00:00
major : 1 , minor : 4 , dot : 14 , codeName : "material-distinction" } ; Oa . expando = "ng339" ; var gc = Oa . cache = { } , Qd = 1 ; Oa . _data = function ( d ) { return this . cache [ d [ this . expando ] ] || { } } ; var Pd = /([\:\-\_]+(.))/g , id = /^moz([A-Z])/ , Hc = { mouseleave : "mouseout" , mouseenter : "mouseover" } , jd = h ( "jqLite" ) , bf = /^<([\w-]+)\s*\/?>(?:<\/\1>|)$/ , Fc = /<|&#?\w+;/ , Ba = /<([\w:-]+)/ , $e = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi , Ra = { option : [ 1 , '<select multiple="multiple">' , "</select>" ] , thead : [ 1 , "<table>" , "</table>" ] , col : [ 2 ,
"<table><colgroup>" , "</colgroup></table>" ] , tr : [ 2 , "<table><tbody>" , "</tbody></table>" ] , td : [ 3 , "<table><tbody><tr>" , "</tr></tbody></table>" ] , _default : [ 0 , "" , "" ] } ; Ra . optgroup = Ra . option ; Ra . tbody = Ra . tfoot = Ra . colgroup = Ra . caption = Ra . thead ; Ra . th = Ra . td ; var ef = Node . prototype . contains || function ( d ) { return ! ! ( 16 & this . compareDocumentPosition ( d ) ) } , Sb = Oa . prototype = { ready : function ( d ) { function b ( ) { c || ( c = ! 0 , d ( ) ) } var c = ! 1 ; "complete" === f . readyState ? setTimeout ( b ) : ( this . on ( "DOMContentLoaded" , b ) , Oa ( a ) . on ( "load" , b ) ) } , toString : function ( ) { var d =
[ ] ; return b ( this , function ( a ) { d . push ( "" + a ) } ) , "[" + d . join ( ", " ) + "]" } , eq : function ( d ) { return fa ( 0 <= d ? this [ d ] : this [ this . length + d ] ) } , length : 0 , push : Gf , sort : [ ] . sort , splice : [ ] . splice } , Hb = { } ; b ( "multiple selected checked disabled readOnly required open" . split ( " " ) , function ( d ) { Hb [ sa ( d ) ] = d } ) ; var Fa = { } ; b ( "input select option textarea button form details" . split ( " " ) , function ( d ) { Fa [ d ] = ! 0 } ) ; var Wd = { ngMinlength : "minlength" , ngMaxlength : "maxlength" , ngMin : "min" , ngMax : "max" , ngPattern : "pattern" } ; b ( { data : wa , removeData : da ,
hasData : function ( d ) { for ( var a in gc [ d . ng339 ] ) return ! 0 ; return ! 1 } } , function ( d , a ) { Oa [ a ] = d } ) ; b ( { data : wa , inheritedData : Gb , scope : function ( d ) { return fa . data ( d , "$scope" ) || Gb ( d . parentNode || d , [ "$isolateScope" , "$scope" ] ) } , isolateScope : function ( d ) { return fa . data ( d , "$isolateScope" ) || fa . data ( d , "$isolateScopeNoTemplate" ) } , controller : Ic , injector : function ( d ) { return Gb ( d , "$injector" ) } , removeAttr : function ( d , a ) { d . removeAttribute ( a ) } , hasClass : md , css : function ( d , a , b ) { return a = pc ( a ) , F ( b ) ? void ( d . style [ a ] = b ) : d . style [ a ] } , attr : function ( d ,
a , b ) { var c = d . nodeType ; if ( c !== Rb && 2 !== c && 8 !== c ) if ( c = sa ( a ) , Hb [ c ] ) { if ( ! F ( b ) ) return d [ a ] || ( d . attributes . getNamedItem ( a ) || q ) . specified ? c : k ; b ? ( d [ a ] = ! 0 , d . setAttribute ( a , c ) ) : ( d [ a ] = ! 1 , d . removeAttribute ( c ) ) } else if ( F ( b ) ) d . setAttribute ( a , b ) ; else if ( d . getAttribute ) return d = d . getAttribute ( a , 2 ) , null === d ? k : d } , prop : function ( d , a , b ) { return F ( b ) ? void ( d [ a ] = b ) : d [ a ] } , text : function ( ) { function d ( d , a ) { if ( B ( a ) ) { var b = d . nodeType ; return 1 === b || b === Rb ? d . textContent : "" } d . textContent = a } return d . $dv = "" , d } ( ) , val : function ( d , a ) { if ( B ( a ) ) { if ( d . multiple &&
2017-07-25 17:51:59 +00:00
"select" === ja ( d ) ) { var c = [ ] ; return b ( d . options , function ( d ) { d . selected && c . push ( d . value || d . text ) } ) , 0 === c . length ? null : c } return d . value } d . value = a } , html : function ( d , a ) { return B ( a ) ? d . innerHTML : ( ld ( d , ! 0 ) , void ( d . innerHTML = a ) ) } , empty : nd } , function ( d , a ) { Oa . prototype [ a ] = function ( a , b ) { var c , e , l = this . length ; if ( d !== nd && B ( 2 == d . length && d !== md && d !== Ic ? a : b ) ) { if ( p ( a ) ) { for ( c = 0 ; c < l ; c ++ ) if ( d === wa ) d ( this [ c ] , a ) ; else for ( e in a ) d ( this [ c ] , e , a [ e ] ) ; return this } c = d . $dv ; l = B ( c ) ? Math . min ( l , 1 ) : l ; for ( e = 0 ; e < l ; e ++ ) { var g = d ( this [ e ] , a , b ) ;
c = c ? c + g : g } return c } for ( c = 0 ; c < l ; c ++ ) d ( this [ c ] , a , b ) ; return this } } ) ; b ( { removeData : da , on : function ( d , a , b , c ) { if ( F ( c ) ) throw jd ( "onargs" ) ; if ( Ye ( d ) ) { c = Gc ( d , ! 0 ) ; var e = c . events , l = c . handle ; l || ( l = c . handle = ig ( d , e ) ) ; c = 0 <= a . indexOf ( " " ) ? a . split ( " " ) : [ a ] ; for ( var g = c . length , f = function ( a , c , g ) { var f = e [ a ] ; f || ( f = e [ a ] = [ ] , f . specialHandlerWrapper = c , "$destroy" === a || g || d . addEventListener ( a , l , ! 1 ) ) ; f . push ( b ) } ; g -- ; ) a = c [ g ] , Hc [ a ] ? ( f ( Hc [ a ] , Ia ) , f ( a , k , ! 0 ) ) : f ( a ) } } , off : cf , one : function ( d , a , b ) { d = fa ( d ) ; d . on ( a , function aa ( ) { d . off ( a , b ) ; d . off ( a ,
aa ) } ) ; d . on ( a , b ) } , replaceWith : function ( d , a ) { var c , e = d . parentNode ; ld ( d ) ; b ( new Oa ( a ) , function ( a ) { c ? e . insertBefore ( a , c . nextSibling ) : e . replaceChild ( a , d ) ; c = a } ) } , children : function ( d ) { var a = [ ] ; return b ( d . childNodes , function ( d ) { 1 === d . nodeType && a . push ( d ) } ) , a } , contents : function ( d ) { return d . contentDocument || d . childNodes || [ ] } , append : function ( d , a ) { var b = d . nodeType ; if ( 1 === b || 11 === b ) { a = new Oa ( a ) ; for ( var b = 0 , c = a . length ; b < c ; b ++ ) d . appendChild ( a [ b ] ) } } , prepend : function ( d , a ) { if ( 1 === d . nodeType ) { var c = d . firstChild ; b ( new Oa ( a ) ,
function ( a ) { d . insertBefore ( a , c ) } ) } } , wrap : function ( d , a ) { af ( d , fa ( a ) . eq ( 0 ) . clone ( ) [ 0 ] ) } , remove : hc , detach : function ( d ) { hc ( d , ! 0 ) } , after : function ( d , a ) { var b = d , c = d . parentNode ; a = new Oa ( a ) ; for ( var e = 0 , l = a . length ; e < l ; e ++ ) { var g = a [ e ] ; c . insertBefore ( g , b . nextSibling ) ; b = g } } , addClass : nb , removeClass : Xa , toggleClass : function ( d , a , c ) { a && b ( a . split ( " " ) , function ( a ) { var b = c ; B ( b ) && ( b = ! md ( d , a ) ) ; ( b ? nb : Xa ) ( d , a ) } ) } , parent : function ( d ) { return ( d = d . parentNode ) && 11 !== d . nodeType ? d : null } , next : function ( d ) { return d . nextElementSibling } ,
2017-07-20 23:09:21 +00:00
find : function ( d , a ) { return d . getElementsByTagName ? d . getElementsByTagName ( a ) : [ ] } , clone : kd , triggerHandler : function ( d , a , c ) { var e , l , g = a . type || a , f = Gc ( d ) ; ( f = ( f = f && f . events ) && f [ g ] ) && ( e = { preventDefault : function ( ) { this . defaultPrevented = ! 0 } , isDefaultPrevented : function ( ) { return ! 0 === this . defaultPrevented } , stopImmediatePropagation : function ( ) { this . immediatePropagationStopped = ! 0 } , isImmediatePropagationStopped : function ( ) { return ! 0 === this . immediatePropagationStopped } , stopPropagation : q , type : g , target : d } , a . type && ( e = n ( e ,
2017-07-25 17:51:59 +00:00
a ) ) , a = za ( f ) , l = c ? [ e ] . concat ( c ) : [ e ] , b ( a , function ( a ) { e . isImmediatePropagationStopped ( ) || a . apply ( d , l ) } ) ) } } , function ( d , a ) { Oa . prototype [ a ] = function ( a , b , c ) { for ( var e , l = 0 , g = this . length ; l < g ; l ++ ) B ( e ) ? ( e = d ( this [ l ] , a , b , c ) , F ( e ) && ( e = fa ( e ) ) ) : ta ( e , d ( this [ l ] , a , b , c ) ) ; return F ( e ) ? e : this } ; Oa . prototype . bind = Oa . prototype . on ; Oa . prototype . unbind = Oa . prototype . off } ) ; Nb . prototype = { put : function ( d , a ) { this [ pb ( d , this . nextUid ) ] = a } , get : function ( d ) { return this [ pb ( d , this . nextUid ) ] } , remove : function ( d ) { var a = this [ d = pb ( d , this . nextUid ) ] ;
2017-07-20 23:09:21 +00:00
return delete this [ d ] , a } } ; var Xe = [ function ( ) { this . $get = [ function ( ) { return Nb } ] } ] , Jc = /^[^\(]*\(\s*([^\)]*)\)/m , Hf = /,/ , qe = /^\s*(_?)(\S+?)\1\s*$/ , ic = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm , Wb = h ( "$injector" ) ; eb . $$annotate = function ( d , a , c ) { var e ; if ( "function" == typeof d ) { if ( ! ( e = d . $inject ) ) { if ( e = [ ] , d . length ) { if ( a ) throw u ( c ) && c || ( c = d . name || Rd ( d ) ) , Wb ( "strictdi" , c ) ; a = d . toString ( ) . replace ( ic , "" ) ; a = a . match ( Jc ) ; b ( a [ 1 ] . split ( Hf ) , function ( d ) { d . replace ( qe , function ( d , a , b ) { e . push ( b ) } ) } ) } d . $inject = e } } else la ( d ) ? ( a = d . length -
1 , kb ( d [ a ] , "fn" ) , e = d . slice ( 0 , a ) ) : kb ( d , "fn" , ! 0 ) ; return e } ; var re = h ( "$animate" ) , Me = function ( ) { this . $get = function ( ) { } } , Kd = function ( ) { var d = new Nb , a = [ ] ; this . $get = [ "$$AnimateRunner" , "$rootScope" , function ( c , e ) { function l ( d , a , c ) { var e = ! 1 ; return a && ( a = u ( a ) ? a . split ( " " ) : la ( a ) ? a : [ ] , b ( a , function ( a ) { a && ( e = ! 0 , d [ a ] = c ) } ) ) , e } function g ( ) { b ( a , function ( a ) { var c = d . get ( a ) ; if ( c ) { var e = yb ( a . attr ( "class" ) ) , l = "" , g = "" ; b ( c , function ( d , a ) { d !== ! ! e [ a ] && ( d ? l += ( l . length ? " " : "" ) + a : g += ( g . length ? " " : "" ) + a ) } ) ; b ( a , function ( d ) { l && nb ( d ,
l ) ; g && Xa ( d , g ) } ) ; d . remove ( a ) } } ) ; a . length = 0 } return { enabled : q , on : q , off : q , pin : q , push : function ( b , f , h , k ) { return k && k ( ) , h = h || { } , h . from && b . css ( h . from ) , h . to && b . css ( h . to ) , ( h . addClass || h . removeClass ) && ( f = h . addClass , k = h . removeClass , h = d . get ( b ) || { } , f = l ( h , f , ! 0 ) , k = l ( h , k , ! 1 ) , ( f || k ) && ( d . put ( b , h ) , a . push ( b ) , 1 === a . length && e . $$postDigest ( g ) ) ) , b = new c , b . complete ( ) , b } } } ] } , Vb = [ "$provide" , function ( d ) { var a = this ; this . $$registeredAnimations = Object . create ( null ) ; this . register = function ( b , c ) { if ( b && "." !== b . charAt ( 0 ) ) throw re ( "notcsel" ,
b ) ; var e = b + "-animation" ; a . $$registeredAnimations [ b . substr ( 1 ) ] = e ; d . factory ( e , c ) } ; this . classNameFilter = function ( d ) { if ( 1 === arguments . length && ( this . $$classNameFilter = d instanceof RegExp ? d : null ) && /(\s+|\/)ng-animate(\s+|\/)/ . test ( this . $$classNameFilter . toString ( ) ) ) throw re ( "nongcls" , "ng-animate" ) ; return this . $$classNameFilter } ; this . $get = [ "$$animateQueue" , function ( d ) { function a ( d , a , b ) { if ( b ) { var c ; a : { for ( c = 0 ; c < b . length ; c ++ ) { var e = b [ c ] ; if ( 1 === e . nodeType ) { c = e ; break a } } c = void 0 } ! c || c . parentNode || c . previousElementSibling ||
( b = null ) } b ? b . after ( d ) : a . prepend ( d ) } return { on : d . on , off : d . off , pin : d . pin , enabled : d . enabled , cancel : function ( d ) { d . end && d . end ( ) } , enter : function ( b , c , e , l ) { return c = c && fa ( c ) , e = e && fa ( e ) , c = c || e . parent ( ) , a ( b , c , e ) , d . push ( b , "enter" , Ya ( l ) ) } , move : function ( b , c , e , l ) { return c = c && fa ( c ) , e = e && fa ( e ) , c = c || e . parent ( ) , a ( b , c , e ) , d . push ( b , "move" , Ya ( l ) ) } , leave : function ( a , b ) { return d . push ( a , "leave" , Ya ( b ) , function ( ) { a . remove ( ) } ) } , addClass : function ( a , b , c ) { return c = Ya ( c ) , c . addClass = Ib ( c . addclass , b ) , d . push ( a , "addClass" , c ) } , removeClass : function ( a ,
b , c ) { return c = Ya ( c ) , c . removeClass = Ib ( c . removeClass , b ) , d . push ( a , "removeClass" , c ) } , setClass : function ( a , b , c , e ) { return e = Ya ( e ) , e . addClass = Ib ( e . addClass , b ) , e . removeClass = Ib ( e . removeClass , c ) , d . push ( a , "setClass" , e ) } , animate : function ( a , b , c , e , l ) { return l = Ya ( l ) , l . from = l . from ? n ( l . from , b ) : b , l . to = l . to ? n ( l . to , c ) : c , l . tempClasses = Ib ( l . tempClasses , e || "ng-inline-animate" ) , d . push ( a , "animate" , l ) } } } ] } ] , Ne = function ( ) { this . $get = [ "$$rAF" , function ( d ) { function a ( a ) { b . push ( a ) ; 1 < b . length || d ( function ( ) { for ( var d = 0 ; d < b . length ; d ++ ) b [ d ] ( ) ;
b = [ ] } ) } var b = [ ] ; return function ( ) { var d = ! 1 ; return a ( function ( ) { d = ! 0 } ) , function ( b ) { d ? b ( ) : a ( b ) } } } ] } , fd = function ( ) { this . $get = [ "$q" , "$sniffer" , "$$animateAsyncRun" , "$document" , "$timeout" , function ( d , a , c , e , g ) { function l ( d ) { this . setHost ( d ) ; var a = c ( ) ; this . _doneCallbacks = [ ] ; this . _tick = function ( d ) { var b = e [ 0 ] ; b && b . hidden ? g ( d , 0 , ! 1 ) : a ( d ) } ; this . _state = 0 } return l . chain = function ( d , a ) { function b ( ) { c === d . length ? a ( ! 0 ) : d [ c ] ( function ( d ) { ! 1 === d ? a ( ! 1 ) : ( c ++ , b ( ) ) } ) } var c = 0 ; b ( ) } , l . all = function ( d , a ) { function c ( b ) { l = l && b ; ++ e ===
d . length && a ( l ) } var e = 0 , l = ! 0 ; b ( d , function ( d ) { d . done ( c ) } ) } , l . prototype = { setHost : function ( d ) { this . host = d || { } } , done : function ( d ) { 2 === this . _state ? d ( ) : this . _doneCallbacks . push ( d ) } , progress : q , getPromise : function ( ) { if ( ! this . promise ) { var a = this ; this . promise = d ( function ( d , b ) { a . done ( function ( a ) { ! 1 === a ? b ( ) : d ( ) } ) } ) } return this . promise } , then : function ( d , a ) { return this . getPromise ( ) . then ( d , a ) } , "catch" : function ( d ) { return this . getPromise ( ) [ "catch" ] ( d ) } , "finally" : function ( d ) { return this . getPromise ( ) [ "finally" ] ( d ) } , pause : function ( ) { this . host . pause &&
this . host . pause ( ) } , resume : function ( ) { this . host . resume && this . host . resume ( ) } , end : function ( ) { this . host . end && this . host . end ( ) ; this . _resolve ( ! 0 ) } , cancel : function ( ) { this . host . cancel && this . host . cancel ( ) ; this . _resolve ( ! 1 ) } , complete : function ( d ) { var a = this ; 0 === a . _state && ( a . _state = 1 , a . _tick ( function ( ) { a . _resolve ( d ) } ) ) } , _resolve : function ( d ) { 2 !== this . _state && ( b ( this . _doneCallbacks , function ( a ) { a ( d ) } ) , this . _doneCallbacks . length = 0 , this . _state = 2 ) } } , l } ] } , Le = function ( ) { this . $get = [ "$$rAF" , "$q" , "$$AnimateRunner" , function ( d ,
a , b ) { return function ( a , c ) { function e ( ) { return d ( function ( ) { l . addClass && ( a . addClass ( l . addClass ) , l . addClass = null ) ; l . removeClass && ( a . removeClass ( l . removeClass ) , l . removeClass = null ) ; l . to && ( a . css ( l . to ) , l . to = null ) ; g || f . complete ( ) ; g = ! 0 } ) , f } var l = c || { } ; l . $$prepared || ( l = Ga ( l ) ) ; l . cleanupStyles && ( l . from = l . to = null ) ; l . from && ( a . css ( l . from ) , l . from = null ) ; var g , f = new b ; return { start : e , end : e } } } ] } , Za = h ( "$compile" ) ; Lb . $inject = [ "$provide" , "$$sanitizeUriProvider" ] ; var Ud = /^((?:x|data)[\:\-_])/i , gf = h ( "$controller" ) , Kc = /^(\S+)(\s+as\s+([\w$]+))?$/ ,
fc = function ( ) { this . $get = [ "$document" , function ( d ) { return function ( a ) { return a ? ! a . nodeType && a instanceof fa && ( a = a [ 0 ] ) : a = d [ 0 ] . body , a . offsetWidth + 1 } } ] } , Xd = "application/json" , Lc = { "Content-Type" : Xd + ";charset=utf-8" } , hf = /^\[|^\{(?!\{)/ , qd = { "[" : /]$/ , "{" : /}$/ } , Ja = /^\)\]\}',?\n/ , If = h ( "$http" ) , jf = function ( d ) { return function ( ) { throw If ( "legacy" , d ) ; } } , Yb = Na . $interpolateMinErr = h ( "$interpolate" ) ; Yb . throwNoconcat = function ( d ) { throw Yb ( "noconcat" , d ) ; } ; Yb . interr = function ( d , a ) { return Yb ( "interr" , d , a . toString ( ) ) } ; var mc =
/^([^\?#]*)(\?([^#]*))?(#(.*))?$/ , lf = { http : 80 , https : 443 , ftp : 21 } , Jb = h ( "$location" ) , se = { $$html5 : ! 1 , $$replace : ! 1 , absUrl : Nc ( "$$absUrl" ) , url : function ( d ) { if ( B ( d ) ) return this . $$url ; var a = mc . exec ( d ) ; return ( a [ 1 ] || "" === d ) && this . path ( decodeURIComponent ( a [ 1 ] ) ) , ( a [ 2 ] || a [ 1 ] || "" === d ) && this . search ( a [ 3 ] || "" ) , this . hash ( a [ 5 ] || "" ) , this } , protocol : Nc ( "$$protocol" ) , host : Nc ( "$$host" ) , port : Nc ( "$$port" ) , path : cb ( "$$path" , function ( d ) { return d = null !== d ? d . toString ( ) : "" , "/" == d . charAt ( 0 ) ? d : "/" + d } ) , search : function ( d , a ) { switch ( arguments . length ) { case 0 : return this . $$search ;
case 1 : if ( u ( d ) || I ( d ) ) d = d . toString ( ) , this . $$search = pa ( d ) ; else { if ( ! p ( d ) ) throw Jb ( "isrcharg" ) ; d = Ga ( d , { } ) ; b ( d , function ( a , b ) { null == a && delete d [ b ] } ) ; this . $$search = d } break ; default : B ( a ) || null === a ? delete this . $$search [ d ] : this . $$search [ d ] = a } return this . $$compose ( ) , this } , hash : cb ( "$$hash" , function ( d ) { return null !== d ? d . toString ( ) : "" } ) , replace : function ( ) { return this . $$replace = ! 0 , this } } ; b ( [ be , ae , $d ] , function ( d ) { d . prototype = Object . create ( se ) ; d . prototype . state = function ( a ) { if ( ! arguments . length ) return this . $$state ;
if ( d !== $d || ! this . $$html5 ) throw Jb ( "nostate" ) ; return this . $$state = B ( a ) ? null : a , this } } ) ; var ab = h ( "$parse" ) , sb = Function . prototype . call , mf = Function . prototype . apply , ce = Function . prototype . bind , Cd = Ma ( ) ; b ( "+ - * / % === !== == != < > <= >= && || ! = |" . split ( " " ) , function ( d ) { Cd [ d ] = ! 0 } ) ; var Jf = { n : "\n" , f : "\f" , r : "\r" , t : "\t" , v : "\x0B" , "'" : "'" , '"' : '"' } , Pa = function ( d ) { this . options = d } ; Pa . prototype = { constructor : Pa , lex : function ( d ) { this . text = d ; this . index = 0 ; for ( this . tokens = [ ] ; this . index < this . text . length ; ) if ( d = this . text . charAt ( this . index ) ,
'"' === d || "'" === d ) this . readString ( d ) ; else if ( this . isNumber ( d ) || "." === d && this . isNumber ( this . peek ( ) ) ) this . readNumber ( ) ; else if ( this . isIdent ( d ) ) this . readIdent ( ) ; else if ( this . is ( d , "(){}[].,;:?" ) ) this . tokens . push ( { index : this . index , text : d } ) , this . index ++ ; else if ( this . isWhitespace ( d ) ) this . index ++ ; else { var a = d + this . peek ( ) , b = a + this . peek ( 2 ) , c = Cd [ a ] , e = Cd [ b ] ; Cd [ d ] || c || e ? ( d = e ? b : c ? a : d , this . tokens . push ( { index : this . index , text : d , operator : ! 0 } ) , this . index += d . length ) : this . throwError ( "Unexpected next character " , this . index ,
2017-07-25 17:51:59 +00:00
this . index + 1 ) } return this . tokens } , is : function ( d , a ) { return - 1 !== a . indexOf ( d ) } , peek : function ( d ) { return d = d || 1 , this . index + d < this . text . length && this . text . charAt ( this . index + d ) } , isNumber : function ( d ) { return "0" <= d && "9" >= d && "string" == typeof d } , isWhitespace : function ( d ) { return " " === d || "\r" === d || "\t" === d || "\n" === d || "\x0B" === d || "\u00a0" === d } , isIdent : function ( d ) { return "a" <= d && "z" >= d || "A" <= d && "Z" >= d || "_" === d || "$" === d } , isExpOperator : function ( d ) { return "-" === d || "+" === d || this . isNumber ( d ) } , throwError : function ( d , a , b ) { throw b =
2017-07-20 23:09:21 +00:00
b || this . index , a = F ( a ) ? "s " + a + "-" + this . index + " [" + this . text . substring ( a , b ) + "]" : " " + b , ab ( "lexerr" , d , a , this . text ) ; } , readNumber : function ( ) { for ( var d = "" , a = this . index ; this . index < this . text . length ; ) { var b = sa ( this . text . charAt ( this . index ) ) ; if ( "." == b || this . isNumber ( b ) ) d += b ; else { var c = this . peek ( ) ; if ( "e" == b && this . isExpOperator ( c ) ) d += b ; else if ( this . isExpOperator ( b ) && c && this . isNumber ( c ) && "e" == d . charAt ( d . length - 1 ) ) d += b ; else { if ( ! this . isExpOperator ( b ) || c && this . isNumber ( c ) || "e" != d . charAt ( d . length - 1 ) ) break ; this . throwError ( "Invalid exponent" ) } } this . index ++ } this . tokens . push ( { index : a ,
2017-04-11 11:04:48 +00:00
text : d , constant : ! 0 , value : Number ( d ) } ) } , readIdent : function ( ) { for ( var d = this . index ; this . index < this . text . length ; ) { var a = this . text . charAt ( this . index ) ; if ( ! this . isIdent ( a ) && ! this . isNumber ( a ) ) break ; this . index ++ } this . tokens . push ( { index : d , text : this . text . slice ( d , this . index ) , identifier : ! 0 } ) } , readString : function ( d ) { var a = this . index ; this . index ++ ; for ( var b = "" , c = d , e = ! 1 ; this . index < this . text . length ; ) { var g = this . text . charAt ( this . index ) , c = c + g ; if ( e ) "u" === g ? ( e = this . text . substring ( this . index + 1 , this . index + 5 ) , e . match ( /[\da-f]{4}/i ) ||
2017-07-20 23:09:21 +00:00
this . throwError ( "Invalid unicode escape [\\u" + e + "]" ) , this . index += 4 , b += String . fromCharCode ( parseInt ( e , 16 ) ) ) : b += Jf [ g ] || g , e = ! 1 ; else if ( "\\" === g ) e = ! 0 ; else { if ( g === d ) return this . index ++ , void this . tokens . push ( { index : a , text : c , constant : ! 0 , value : b } ) ; b += g } this . index ++ } this . throwError ( "Unterminated quote" , a ) } } ; var Q = function ( d , a ) { this . lexer = d ; this . options = a } ; Q . Program = "Program" ; Q . ExpressionStatement = "ExpressionStatement" ; Q . AssignmentExpression = "AssignmentExpression" ; Q . ConditionalExpression = "ConditionalExpression" ;
Q . LogicalExpression = "LogicalExpression" ; Q . BinaryExpression = "BinaryExpression" ; Q . UnaryExpression = "UnaryExpression" ; Q . CallExpression = "CallExpression" ; Q . MemberExpression = "MemberExpression" ; Q . Identifier = "Identifier" ; Q . Literal = "Literal" ; Q . ArrayExpression = "ArrayExpression" ; Q . Property = "Property" ; Q . ObjectExpression = "ObjectExpression" ; Q . ThisExpression = "ThisExpression" ; Q . NGValueParameter = "NGValueParameter" ; Q . prototype = { ast : function ( d ) { return this . text = d , this . tokens = this . lexer . lex ( d ) , d = this . program ( ) , 0 !== this . tokens . length &&
this . throwError ( "is an unexpected token" , this . tokens [ 0 ] ) , d } , program : function ( ) { for ( var d = [ ] ; ; ) if ( 0 < this . tokens . length && ! this . peek ( "}" , ")" , ";" , "]" ) && d . push ( this . expressionStatement ( ) ) , ! this . expect ( ";" ) ) return { type : Q . Program , body : d } } , expressionStatement : function ( ) { return { type : Q . ExpressionStatement , expression : this . filterChain ( ) } } , filterChain : function ( ) { for ( var d = this . expression ( ) ; this . expect ( "|" ) ; ) d = this . filter ( d ) ; return d } , expression : function ( ) { return this . assignment ( ) } , assignment : function ( ) { var d =
this . ternary ( ) ; return this . expect ( "=" ) && ( d = { type : Q . AssignmentExpression , left : d , right : this . assignment ( ) , operator : "=" } ) , d } , ternary : function ( ) { var d , a , b = this . logicalOR ( ) ; return this . expect ( "?" ) && ( d = this . expression ( ) , this . consume ( ":" ) ) ? ( a = this . expression ( ) , { type : Q . ConditionalExpression , test : b , alternate : d , consequent : a } ) : b } , logicalOR : function ( ) { for ( var d = this . logicalAND ( ) ; this . expect ( "||" ) ; ) d = { type : Q . LogicalExpression , operator : "||" , left : d , right : this . logicalAND ( ) } ; return d } , logicalAND : function ( ) { for ( var d =
this . equality ( ) ; this . expect ( "&&" ) ; ) d = { type : Q . LogicalExpression , operator : "&&" , left : d , right : this . equality ( ) } ; return d } , equality : function ( ) { for ( var d , a = this . relational ( ) ; d = this . expect ( "==" , "!=" , "===" , "!==" ) ; ) a = { type : Q . BinaryExpression , operator : d . text , left : a , right : this . relational ( ) } ; return a } , relational : function ( ) { for ( var d , a = this . additive ( ) ; d = this . expect ( "<" , ">" , "<=" , ">=" ) ; ) a = { type : Q . BinaryExpression , operator : d . text , left : a , right : this . additive ( ) } ; return a } , additive : function ( ) { for ( var d , a = this . multiplicative ( ) ; d =
this . expect ( "+" , "-" ) ; ) a = { type : Q . BinaryExpression , operator : d . text , left : a , right : this . multiplicative ( ) } ; return a } , multiplicative : function ( ) { for ( var d , a = this . unary ( ) ; d = this . expect ( "*" , "/" , "%" ) ; ) a = { type : Q . BinaryExpression , operator : d . text , left : a , right : this . unary ( ) } ; return a } , unary : function ( ) { var d ; return ( d = this . expect ( "+" , "-" , "!" ) ) ? { type : Q . UnaryExpression , operator : d . text , prefix : ! 0 , argument : this . unary ( ) } : this . primary ( ) } , primary : function ( ) { var d ; this . expect ( "(" ) ? ( d = this . filterChain ( ) , this . consume ( ")" ) ) : this . expect ( "[" ) ?
d = this . arrayDeclaration ( ) : this . expect ( "{" ) ? d = this . object ( ) : this . constants . hasOwnProperty ( this . peek ( ) . text ) ? d = Ga ( this . constants [ this . consume ( ) . text ] ) : this . peek ( ) . identifier ? d = this . identifier ( ) : this . peek ( ) . constant ? d = this . constant ( ) : this . throwError ( "not a primary expression" , this . peek ( ) ) ; for ( var a ; a = this . expect ( "(" , "[" , "." ) ; ) "(" === a . text ? ( d = { type : Q . CallExpression , callee : d , arguments : this . parseArguments ( ) } , this . consume ( ")" ) ) : "[" === a . text ? ( d = { type : Q . MemberExpression , object : d , property : this . expression ( ) ,
computed : ! 0 } , this . consume ( "]" ) ) : "." === a . text ? d = { type : Q . MemberExpression , object : d , property : this . identifier ( ) , computed : ! 1 } : this . throwError ( "IMPOSSIBLE" ) ; return d } , filter : function ( d ) { d = [ d ] ; for ( var a = { type : Q . CallExpression , callee : this . identifier ( ) , arguments : d , filter : ! 0 } ; this . expect ( ":" ) ; ) d . push ( this . expression ( ) ) ; return a } , parseArguments : function ( ) { var d = [ ] ; if ( ")" !== this . peekToken ( ) . text ) { do d . push ( this . expression ( ) ) ; while ( this . expect ( "," ) ) } return d } , identifier : function ( ) { var d = this . consume ( ) ; return d . identifier ||
this . throwError ( "is not a valid identifier" , d ) , { type : Q . Identifier , name : d . text } } , constant : function ( ) { return { type : Q . Literal , value : this . consume ( ) . value } } , arrayDeclaration : function ( ) { var d = [ ] ; if ( "]" !== this . peekToken ( ) . text ) { do { if ( this . peek ( "]" ) ) break ; d . push ( this . expression ( ) ) } while ( this . expect ( "," ) ) } return this . consume ( "]" ) , { type : Q . ArrayExpression , elements : d } } , object : function ( ) { var d , a = [ ] ; if ( "}" !== this . peekToken ( ) . text ) { do { if ( this . peek ( "}" ) ) break ; d = { type : Q . Property , kind : "init" } ; this . peek ( ) . constant ? d . key =
this . constant ( ) : this . peek ( ) . identifier ? d . key = this . identifier ( ) : this . throwError ( "invalid key" , this . peek ( ) ) ; this . consume ( ":" ) ; d . value = this . expression ( ) ; a . push ( d ) } while ( this . expect ( "," ) ) } return this . consume ( "}" ) , { type : Q . ObjectExpression , properties : a } } , throwError : function ( d , a ) { throw ab ( "syntax" , a . text , d , a . index + 1 , this . text , this . text . substring ( a . index ) ) ; } , consume : function ( d ) { if ( 0 === this . tokens . length ) throw ab ( "ueoe" , this . text ) ; var a = this . expect ( d ) ; return a || this . throwError ( "is unexpected, expecting [" +
2017-07-25 17:51:59 +00:00
d + "]" , this . peek ( ) ) , a } , peekToken : function ( ) { if ( 0 === this . tokens . length ) throw ab ( "ueoe" , this . text ) ; return this . tokens [ 0 ] } , peek : function ( d , a , b , c ) { return this . peekAhead ( 0 , d , a , b , c ) } , peekAhead : function ( d , a , b , c , e ) { if ( this . tokens . length > d ) { d = this . tokens [ d ] ; var g = d . text ; if ( g === a || g === b || g === c || g === e || ! ( a || b || c || e ) ) return d } return ! 1 } , expect : function ( d , a , b , c ) { return ! ! ( d = this . peek ( d , a , b , c ) ) && ( this . tokens . shift ( ) , d ) } , constants : { "true" : { type : Q . Literal , value : ! 0 } , "false" : { type : Q . Literal , value : ! 1 } , "null" : { type : Q . Literal ,
2017-07-20 23:09:21 +00:00
value : null } , undefined : { type : Q . Literal , value : k } , "this" : { type : Q . ThisExpression } } } ; ud . prototype = { compile : function ( d , a ) { var c = this , e = this . astBuilder . ast ( d ) ; this . state = { nextId : 0 , filters : { } , expensiveChecks : a , fn : { vars : [ ] , body : [ ] , own : { } } , assign : { vars : [ ] , body : [ ] , own : { } } , inputs : [ ] } ; Sa ( e , c . $filter ) ; var g , l = "" ; return this . stage = "assign" , ( g = nf ( e ) ) && ( this . state . computing = "assign" , l = this . nextId ( ) , this . recurse ( g , l ) , this . return _ ( l ) , l = "fn.assign=" + this . generateFunction ( "assign" , "s,v,l" ) ) , g = ee ( e . body ) , c . stage = "inputs" ,
b ( g , function ( d , a ) { var b = "fn" + a ; c . state [ b ] = { vars : [ ] , body : [ ] , own : { } } ; c . state . computing = b ; var e = c . nextId ( ) ; c . recurse ( d , e ) ; c . return _ ( e ) ; c . state . inputs . push ( b ) ; d . watchId = a } ) , this . state . computing = "fn" , this . stage = "main" , this . recurse ( e ) , l = '"' + this . USE + " " + this . STRICT + '";\n' + this . filterPrefix ( ) + "var fn=" + this . generateFunction ( "fn" , "s,l,a,i" ) + l + this . watchFns ( ) + "return fn;" , l = ( new Function ( "$filter" , "ensureSafeMemberName" , "ensureSafeObject" , "ensureSafeFunction" , "getStringValue" , "ensureSafeAssignContext" , "ifDefined" ,
"plus" , "text" , l ) ) ( this . $filter , Zb , fb , Oc , sd , Pc , de , rc , d ) , this . state = this . stage = k , l . literal = fe ( e ) , l . constant = e . constant , l } , USE : "use" , STRICT : "strict" , watchFns : function ( ) { var d = [ ] , a = this . state . inputs , c = this ; return b ( a , function ( a ) { d . push ( "var " + a + "=" + c . generateFunction ( a , "s" ) ) } ) , a . length && d . push ( "fn.inputs=[" + a . join ( "," ) + "];" ) , d . join ( "" ) } , generateFunction : function ( d , a ) { return "function(" + a + "){" + this . varsPrefix ( d ) + this . body ( d ) + "};" } , filterPrefix : function ( ) { var d = [ ] , a = this ; return b ( this . state . filters , function ( b ,
c ) { d . push ( b + "=$filter(" + a . escape ( c ) + ")" ) } ) , d . length ? "var " + d . join ( "," ) + ";" : "" } , varsPrefix : function ( d ) { return this . state [ d ] . vars . length ? "var " + this . state [ d ] . vars . join ( "," ) + ";" : "" } , body : function ( d ) { return this . state [ d ] . body . join ( "" ) } , recurse : function ( d , a , c , e , g , f ) { var l , h , m , w , n = this ; if ( e = e || q , ! f && F ( d . watchId ) ) a = a || this . nextId ( ) , this . if _ ( "i" , this . lazyAssign ( a , this . computedMember ( "i" , d . watchId ) ) , this . lazyRecurse ( d , a , c , e , g , ! 0 ) ) ; else switch ( d . type ) { case Q . Program : b ( d . body , function ( a , b ) { n . recurse ( a . expression ,
k , k , function ( d ) { h = d } ) ; b !== d . body . length - 1 ? n . current ( ) . body . push ( h , ";" ) : n . return _ ( h ) } ) ; break ; case Q . Literal : w = this . escape ( d . value ) ; this . assign ( a , w ) ; e ( w ) ; break ; case Q . UnaryExpression : this . recurse ( d . argument , k , k , function ( d ) { h = d } ) ; w = d . operator + "(" + this . ifDefined ( h , 0 ) + ")" ; this . assign ( a , w ) ; e ( w ) ; break ; case Q . BinaryExpression : this . recurse ( d . left , k , k , function ( d ) { l = d } ) ; this . recurse ( d . right , k , k , function ( d ) { h = d } ) ; w = "+" === d . operator ? this . plus ( l , h ) : "-" === d . operator ? this . ifDefined ( l , 0 ) + d . operator + this . ifDefined ( h ,
0 ) : "(" + l + ")" + d . operator + "(" + h + ")" ; this . assign ( a , w ) ; e ( w ) ; break ; case Q . LogicalExpression : a = a || this . nextId ( ) ; n . recurse ( d . left , a ) ; n . if _ ( "&&" === d . operator ? a : n . not ( a ) , n . lazyRecurse ( d . right , a ) ) ; e ( a ) ; break ; case Q . ConditionalExpression : a = a || this . nextId ( ) ; n . recurse ( d . test , a ) ; n . if _ ( a , n . lazyRecurse ( d . alternate , a ) , n . lazyRecurse ( d . consequent , a ) ) ; e ( a ) ; break ; case Q . Identifier : a = a || this . nextId ( ) ; c && ( c . context = "inputs" === n . stage ? "s" : this . assign ( this . nextId ( ) , this . getHasOwnProperty ( "l" , d . name ) + "?l:s" ) , c . computed = ! 1 ,
c . name = d . name ) ; Zb ( d . name ) ; n . if _ ( "inputs" === n . stage || n . not ( n . getHasOwnProperty ( "l" , d . name ) ) , function ( ) { n . if _ ( "inputs" === n . stage || "s" , function ( ) { g && 1 !== g && n . if _ ( n . not ( n . nonComputedMember ( "s" , d . name ) ) , n . lazyAssign ( n . nonComputedMember ( "s" , d . name ) , "{}" ) ) ; n . assign ( a , n . nonComputedMember ( "s" , d . name ) ) } ) } , a && n . lazyAssign ( a , n . nonComputedMember ( "l" , d . name ) ) ) ; ( n . state . expensiveChecks || "constructor" == d . name ) && n . addEnsureSafeObject ( a ) ; e ( a ) ; break ; case Q . MemberExpression : l = c && ( c . context = this . nextId ( ) ) || this . nextId ( ) ;
a = a || this . nextId ( ) ; n . recurse ( d . object , l , k , function ( ) { n . if _ ( n . notNull ( l ) , function ( ) { g && 1 !== g && n . addEnsureSafeAssignContext ( l ) ; d . computed ? ( h = n . nextId ( ) , n . recurse ( d . property , h ) , n . getStringValue ( h ) , n . addEnsureSafeMemberName ( h ) , g && 1 !== g && n . if _ ( n . not ( n . computedMember ( l , h ) ) , n . lazyAssign ( n . computedMember ( l , h ) , "{}" ) ) , w = n . ensureSafeObject ( n . computedMember ( l , h ) ) , n . assign ( a , w ) , c && ( c . computed = ! 0 , c . name = h ) ) : ( Zb ( d . property . name ) , g && 1 !== g && n . if _ ( n . not ( n . nonComputedMember ( l , d . property . name ) ) , n . lazyAssign ( n . nonComputedMember ( l ,
d . property . name ) , "{}" ) ) , w = n . nonComputedMember ( l , d . property . name ) , ( n . state . expensiveChecks || "constructor" == d . property . name ) && ( w = n . ensureSafeObject ( w ) ) , n . assign ( a , w ) , c && ( c . computed = ! 1 , c . name = d . property . name ) ) } , function ( ) { n . assign ( a , "undefined" ) } ) ; e ( a ) } , ! ! g ) ; break ; case Q . CallExpression : a = a || this . nextId ( ) ; d . filter ? ( h = n . filter ( d . callee . name ) , m = [ ] , b ( d . arguments , function ( d ) { var a = n . nextId ( ) ; n . recurse ( d , a ) ; m . push ( a ) } ) , w = h + "(" + m . join ( "," ) + ")" , n . assign ( a , w ) , e ( a ) ) : ( h = n . nextId ( ) , l = { } , m = [ ] , n . recurse ( d . callee ,
h , l , function ( ) { n . if _ ( n . notNull ( h ) , function ( ) { n . addEnsureSafeFunction ( h ) ; b ( d . arguments , function ( d ) { n . recurse ( d , n . nextId ( ) , k , function ( d ) { m . push ( n . ensureSafeObject ( d ) ) } ) } ) ; l . name ? ( n . state . expensiveChecks || n . addEnsureSafeObject ( l . context ) , w = n . member ( l . context , l . name , l . computed ) + "(" + m . join ( "," ) + ")" ) : w = h + "(" + m . join ( "," ) + ")" ; w = n . ensureSafeObject ( w ) ; n . assign ( a , w ) } , function ( ) { n . assign ( a , "undefined" ) } ) ; e ( a ) } ) ) ; break ; case Q . AssignmentExpression : if ( h = this . nextId ( ) , l = { } , ! td ( d . left ) ) throw ab ( "lval" ) ; this . recurse ( d . left ,
k , l , function ( ) { n . if _ ( n . notNull ( l . context ) , function ( ) { n . recurse ( d . right , h ) ; n . addEnsureSafeObject ( n . member ( l . context , l . name , l . computed ) ) ; n . addEnsureSafeAssignContext ( l . context ) ; w = n . member ( l . context , l . name , l . computed ) + d . operator + h ; n . assign ( a , w ) ; e ( a || w ) } ) } , 1 ) ; break ; case Q . ArrayExpression : m = [ ] ; b ( d . elements , function ( d ) { n . recurse ( d , n . nextId ( ) , k , function ( d ) { m . push ( d ) } ) } ) ; w = "[" + m . join ( "," ) + "]" ; this . assign ( a , w ) ; e ( w ) ; break ; case Q . ObjectExpression : m = [ ] ; b ( d . properties , function ( d ) { n . recurse ( d . value , n . nextId ( ) ,
2017-07-25 17:51:59 +00:00
k , function ( a ) { m . push ( n . escape ( d . key . type === Q . Identifier ? d . key . name : "" + d . key . value ) + ":" + a ) } ) } ) ; w = "{" + m . join ( "," ) + "}" ; this . assign ( a , w ) ; e ( w ) ; break ; case Q . ThisExpression : this . assign ( a , "s" ) ; e ( "s" ) ; break ; case Q . NGValueParameter : this . assign ( a , "v" ) , e ( "v" ) } } , getHasOwnProperty : function ( d , a ) { var b = d + "." + a , c = this . current ( ) . own ; return c . hasOwnProperty ( b ) || ( c [ b ] = this . nextId ( ! 1 , d + "&&(" + this . escape ( a ) + " in " + d + ")" ) ) , c [ b ] } , assign : function ( d , a ) { if ( d ) return this . current ( ) . body . push ( d , "=" , a , ";" ) , d } , filter : function ( d ) { return this . state . filters . hasOwnProperty ( d ) ||
2017-04-11 11:04:48 +00:00
( this . state . filters [ d ] = this . nextId ( ! 0 ) ) , this . state . filters [ d ] } , ifDefined : function ( d , a ) { return "ifDefined(" + d + "," + this . escape ( a ) + ")" } , plus : function ( d , a ) { return "plus(" + d + "," + a + ")" } , return _ : function ( d ) { this . current ( ) . body . push ( "return " , d , ";" ) } , if _ : function ( d , a , b ) { if ( ! 0 === d ) a ( ) ; else { var c = this . current ( ) . body ; c . push ( "if(" , d , "){" ) ; a ( ) ; c . push ( "}" ) ; b && ( c . push ( "else{" ) , b ( ) , c . push ( "}" ) ) } } , not : function ( d ) { return "!(" + d + ")" } , notNull : function ( d ) { return d + "!=null" } , nonComputedMember : function ( d , a ) { return d + "." + a } ,
computedMember : function ( d , a ) { return d + "[" + a + "]" } , member : function ( d , a , b ) { return b ? this . computedMember ( d , a ) : this . nonComputedMember ( d , a ) } , addEnsureSafeObject : function ( d ) { this . current ( ) . body . push ( this . ensureSafeObject ( d ) , ";" ) } , addEnsureSafeMemberName : function ( d ) { this . current ( ) . body . push ( this . ensureSafeMemberName ( d ) , ";" ) } , addEnsureSafeFunction : function ( d ) { this . current ( ) . body . push ( this . ensureSafeFunction ( d ) , ";" ) } , addEnsureSafeAssignContext : function ( d ) { this . current ( ) . body . push ( this . ensureSafeAssignContext ( d ) ,
2017-07-20 23:09:21 +00:00
";" ) } , ensureSafeObject : function ( d ) { return "ensureSafeObject(" + d + ",text)" } , ensureSafeMemberName : function ( d ) { return "ensureSafeMemberName(" + d + ",text)" } , ensureSafeFunction : function ( d ) { return "ensureSafeFunction(" + d + ",text)" } , getStringValue : function ( d ) { this . assign ( d , "getStringValue(" + d + ",text)" ) } , ensureSafeAssignContext : function ( d ) { return "ensureSafeAssignContext(" + d + ",text)" } , lazyRecurse : function ( d , a , b , c , e , g ) { var l = this ; return function ( ) { l . recurse ( d , a , b , c , e , g ) } } , lazyAssign : function ( d , a ) { var b = this ; return function ( ) { b . assign ( d ,
a ) } } , stringEscapeRegex : /[^ a-zA-Z0-9]/g , stringEscapeFn : function ( d ) { return "\\u" + ( "0000" + d . charCodeAt ( 0 ) . toString ( 16 ) ) . slice ( - 4 ) } , escape : function ( d ) { if ( u ( d ) ) return "'" + d . replace ( this . stringEscapeRegex , this . stringEscapeFn ) + "'" ; if ( I ( d ) ) return d . toString ( ) ; if ( ! 0 === d ) return "true" ; if ( ! 1 === d ) return "false" ; if ( null === d ) return "null" ; if ( "undefined" == typeof d ) return "undefined" ; throw ab ( "esc" ) ; } , nextId : function ( d , a ) { var b = "v" + this . state . nextId ++ ; return d || this . current ( ) . vars . push ( b + ( a ? "=" + a : "" ) ) , b } , current : function ( ) { return this . state [ this . state . computing ] } } ;
of . prototype = { compile : function ( d , a ) { var c = this , e = this . astBuilder . ast ( d ) ; this . expression = d ; this . expensiveChecks = a ; Sa ( e , c . $filter ) ; var g , l ; ( g = nf ( e ) ) && ( l = this . recurse ( g ) ) ; g = ee ( e . body ) ; var f ; g && ( f = [ ] , b ( g , function ( d , a ) { var b = c . recurse ( d ) ; d . input = b ; f . push ( b ) ; d . watchId = a } ) ) ; var h = [ ] ; return b ( e . body , function ( d ) { h . push ( c . recurse ( d . expression ) ) } ) , g = 0 === e . body . length ? function ( ) { } : 1 === e . body . length ? h [ 0 ] : function ( d , a ) { var c ; return b ( h , function ( b ) { c = b ( d , a ) } ) , c } , l && ( g . assign = function ( d , a , b ) { return l ( d , b , a ) } ) , f &&
( g . inputs = f ) , g . literal = fe ( e ) , g . constant = e . constant , g } , recurse : function ( d , a , c ) { var e , g , l , f = this ; if ( d . input ) return this . inputs ( d . input , d . watchId ) ; switch ( d . type ) { case Q . Literal : return this . value ( d . value , a ) ; case Q . UnaryExpression : return g = this . recurse ( d . argument ) , this [ "unary" + d . operator ] ( g , a ) ; case Q . BinaryExpression : return e = this . recurse ( d . left ) , g = this . recurse ( d . right ) , this [ "binary" + d . operator ] ( e , g , a ) ; case Q . LogicalExpression : return e = this . recurse ( d . left ) , g = this . recurse ( d . right ) , this [ "binary" + d . operator ] ( e ,
g , a ) ; case Q . ConditionalExpression : return this [ "ternary?:" ] ( this . recurse ( d . test ) , this . recurse ( d . alternate ) , this . recurse ( d . consequent ) , a ) ; case Q . Identifier : return Zb ( d . name , f . expression ) , f . identifier ( d . name , f . expensiveChecks || "constructor" == d . name , a , c , f . expression ) ; case Q . MemberExpression : return e = this . recurse ( d . object , ! 1 , ! ! c ) , d . computed || ( Zb ( d . property . name , f . expression ) , g = d . property . name ) , d . computed && ( g = this . recurse ( d . property ) ) , d . computed ? this . computedMember ( e , g , a , c , f . expression ) : this . nonComputedMember ( e ,
g , f . expensiveChecks , a , c , f . expression ) ; case Q . CallExpression : return l = [ ] , b ( d . arguments , function ( d ) { l . push ( f . recurse ( d ) ) } ) , d . filter && ( g = this . $filter ( d . callee . name ) ) , d . filter || ( g = this . recurse ( d . callee , ! 0 ) ) , d . filter ? function ( d , b , c , e ) { for ( var f = [ ] , h = 0 ; h < l . length ; ++ h ) f . push ( l [ h ] ( d , b , c , e ) ) ; return d = g . apply ( k , f , e ) , a ? { context : k , name : k , value : d } : d } : function ( d , b , c , e ) { var h , k = g ( d , b , c , e ) ; if ( null != k . value ) { fb ( k . context , f . expression ) ; Oc ( k . value , f . expression ) ; h = [ ] ; for ( var m = 0 ; m < l . length ; ++ m ) h . push ( fb ( l [ m ] ( d , b , c , e ) ,
f . expression ) ) ; h = fb ( k . value . apply ( k . context , h ) , f . expression ) } return a ? { value : h } : h } ; case Q . AssignmentExpression : return e = this . recurse ( d . left , ! 0 , 1 ) , g = this . recurse ( d . right ) , function ( d , b , c , l ) { var h = e ( d , b , c , l ) ; return d = g ( d , b , c , l ) , fb ( h . value , f . expression ) , Pc ( h . context ) , h . context [ h . name ] = d , a ? { value : d } : d } ; case Q . ArrayExpression : return l = [ ] , b ( d . elements , function ( d ) { l . push ( f . recurse ( d ) ) } ) , function ( d , b , c , e ) { for ( var g = [ ] , f = 0 ; f < l . length ; ++ f ) g . push ( l [ f ] ( d , b , c , e ) ) ; return a ? { value : g } : g } ; case Q . ObjectExpression : return l =
[ ] , b ( d . properties , function ( d ) { l . push ( { key : d . key . type === Q . Identifier ? d . key . name : "" + d . key . value , value : f . recurse ( d . value ) } ) } ) , function ( d , b , c , e ) { for ( var g = { } , f = 0 ; f < l . length ; ++ f ) g [ l [ f ] . key ] = l [ f ] . value ( d , b , c , e ) ; return a ? { value : g } : g } ; case Q . ThisExpression : return function ( d ) { return a ? { value : d } : d } ; case Q . NGValueParameter : return function ( d , b , c , e ) { return a ? { value : c } : c } } } , "unary+" : function ( d , a ) { return function ( b , c , e , g ) { return b = d ( b , c , e , g ) , b = F ( b ) ? + b : 0 , a ? { value : b } : b } } , "unary-" : function ( d , a ) { return function ( b , c ,
e , g ) { return b = d ( b , c , e , g ) , b = F ( b ) ? - b : 0 , a ? { value : b } : b } } , "unary!" : function ( d , a ) { return function ( b , c , e , g ) { return b = ! d ( b , c , e , g ) , a ? { value : b } : b } } , "binary+" : function ( d , a , b ) { return function ( c , e , g , l ) { var f = d ( c , e , g , l ) ; return c = a ( c , e , g , l ) , f = rc ( f , c ) , b ? { value : f } : f } } , "binary-" : function ( d , a , b ) { return function ( c , e , g , l ) { var f = d ( c , e , g , l ) ; return c = a ( c , e , g , l ) , f = ( F ( f ) ? f : 0 ) - ( F ( c ) ? c : 0 ) , b ? { value : f } : f } } , "binary*" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) * a ( c , e , g , l ) , b ? { value : c } : c } } , "binary/" : function ( d , a ,
b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) / a ( c , e , g , l ) , b ? { value : c } : c } } , "binary%" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) % a ( c , e , g , l ) , b ? { value : c } : c } } , "binary===" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) === a ( c , e , g , l ) , b ? { value : c } : c } } , "binary!==" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) !== a ( c , e , g , l ) , b ? { value : c } : c } } , "binary==" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) == a ( c , e , g , l ) , b ? { value : c } : c } } , "binary!=" : function ( d , a ,
b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) != a ( c , e , g , l ) , b ? { value : c } : c } } , "binary<" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) < a ( c , e , g , l ) , b ? { value : c } : c } } , "binary>" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) > a ( c , e , g , l ) , b ? { value : c } : c } } , "binary<=" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) <= a ( c , e , g , l ) , b ? { value : c } : c } } , "binary>=" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) >= a ( c , e , g , l ) , b ? { value : c } : c } } , "binary&&" : function ( d , a , b ) { return function ( c ,
e , g , l ) { return c = d ( c , e , g , l ) && a ( c , e , g , l ) , b ? { value : c } : c } } , "binary||" : function ( d , a , b ) { return function ( c , e , g , l ) { return c = d ( c , e , g , l ) || a ( c , e , g , l ) , b ? { value : c } : c } } , "ternary?:" : function ( d , a , b , c ) { return function ( e , g , l , f ) { return e = d ( e , g , l , f ) ? a ( e , g , l , f ) : b ( e , g , l , f ) , c ? { value : e } : e } } , value : function ( d , a ) { return function ( ) { return a ? { context : k , name : k , value : d } : d } } , identifier : function ( d , a , b , c , e ) { return function ( g , l , f , h ) { return g = l && d in l ? l : g , c && 1 !== c && g && ! g [ d ] && ( g [ d ] = { } ) , l = g ? g [ d ] : k , a && fb ( l , e ) , b ? { context : g , name : d , value : l } :
l } } , computedMember : function ( d , a , b , c , e ) { return function ( g , l , f , h ) { var k , m , n = d ( g , l , f , h ) ; return null != n && ( k = a ( g , l , f , h ) , k = sd ( k ) , Zb ( k , e ) , c && 1 !== c && ( Pc ( n ) , n && ! n [ k ] && ( n [ k ] = { } ) ) , m = n [ k ] , fb ( m , e ) ) , b ? { context : n , name : k , value : m } : m } } , nonComputedMember : function ( d , a , b , c , e , g ) { return function ( l , f , h , m ) { return l = d ( l , f , h , m ) , e && 1 !== e && ( Pc ( l ) , l && ! l [ a ] && ( l [ a ] = { } ) ) , f = null != l ? l [ a ] : k , ( b || "constructor" == a ) && fb ( f , g ) , c ? { context : l , name : a , value : f } : f } } , inputs : function ( d , a ) { return function ( b , c , e , g ) { return g ? g [ a ] : d ( b , c , e ) } } } ; var db =
function ( d , a , b ) { this . lexer = d ; this . $filter = a ; this . options = b ; this . ast = new Q ( this . lexer ) ; this . astCompiler = b . csp ? new of ( this . ast , a ) : new ud ( this . ast , a ) } ; db . prototype = { constructor : db , parse : function ( d ) { return this . astCompiler . compile ( d , this . options . expensiveChecks ) } } ; var Kg = Object . prototype . valueOf , $b = h ( "$sce" ) , Ab = { HTML : "html" , CSS : "css" , URL : "url" , RESOURCE _URL : "resourceUrl" , JS : "js" } , Za = h ( "$compile" ) , Qa = f . createElement ( "a" ) , rf = Ob ( a . location . href ) ; sf . $inject = [ "$document" ] ; Dc . $inject = [ "$provide" ] ; var yf = 22 ,
xf = "." , tc = "0" ; ge . $inject = [ "$locale" ] ; je . $inject = [ "$locale" ] ; var yd = { yyyy : Wa ( "FullYear" , 4 ) , yy : Wa ( "FullYear" , 2 , 0 , ! 0 ) , y : Wa ( "FullYear" , 1 ) , MMMM : Rc ( "Month" ) , MMM : Rc ( "Month" , ! 0 ) , MM : Wa ( "Month" , 2 , 1 ) , M : Wa ( "Month" , 1 , 1 ) , dd : Wa ( "Date" , 2 ) , d : Wa ( "Date" , 1 ) , HH : Wa ( "Hours" , 2 ) , H : Wa ( "Hours" , 1 ) , hh : Wa ( "Hours" , 2 , - 12 ) , h : Wa ( "Hours" , 1 , - 12 ) , mm : Wa ( "Minutes" , 2 ) , m : Wa ( "Minutes" , 1 ) , ss : Wa ( "Seconds" , 2 ) , s : Wa ( "Seconds" , 1 ) , sss : Wa ( "Milliseconds" , 3 ) , EEEE : Rc ( "Day" ) , EEE : Rc ( "Day" , ! 0 ) , a : function ( d , a ) { return 12 > d . getHours ( ) ? a . AMPMS [ 0 ] : a . AMPMS [ 1 ] } ,
2017-07-25 17:51:59 +00:00
Z : function ( d , a , b ) { return d = - 1 * b , ( 0 <= d ? "+" : "" ) + ( Qc ( Math [ 0 < d ? "floor" : "ceil" ] ( d / 60 ) , 2 ) + Qc ( Math . abs ( d % 60 ) , 2 ) ) } , ww : ne ( 2 ) , w : ne ( 1 ) , G : Sc , GG : Sc , GGG : Sc , GGGG : function ( d , a ) { return 0 >= d . getFullYear ( ) ? a . ERANAMES [ 0 ] : a . ERANAMES [ 1 ] } } , Bf = /((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/ , Af = /^\-?\d+$/ ; he . $inject = [ "$locale" ] ; var uf = z ( sa ) , wd = z ( lb ) ; ke . $inject = [ "$parse" ] ; var cd = z ( { restrict : "E" , compile : function ( d , a ) { if ( ! a . href && ! a . xlinkHref ) return function ( d , a ) { if ( "a" === a [ 0 ] . nodeName . toLowerCase ( ) ) { var b =
2017-07-20 23:09:21 +00:00
"[object SVGAnimatedString]" === ub . call ( a . prop ( "href" ) ) ? "xlink:href" : "href" ; a . on ( "click" , function ( d ) { a . attr ( b ) || d . preventDefault ( ) } ) } } } } ) , Eb = { } ; b ( Hb , function ( d , a ) { function b ( d , b , e ) { d . $watch ( e [ c ] , function ( d ) { e . $set ( a , ! ! d ) } ) } if ( "multiple" != d ) { var c = rb ( "ng-" + a ) , e = b ; "checked" === d && ( e = function ( d , a , e ) { e . ngModel !== e [ c ] && b ( d , a , e ) } ) ; Eb [ c ] = function ( ) { return { restrict : "A" , priority : 100 , link : e } } } } ) ; b ( Wd , function ( d , a ) { Eb [ a ] = function ( ) { return { priority : 100 , link : function ( d , b , c ) { return "ngPattern" === a && "/" == c . ngPattern . charAt ( 0 ) &&
( b = c . ngPattern . match ( ra ) ) ? void c . $set ( "ngPattern" , new RegExp ( b [ 1 ] , b [ 2 ] ) ) : void d . $watch ( c [ a ] , function ( d ) { c . $set ( a , d ) } ) } } } } ) ; b ( [ "src" , "srcset" , "href" ] , function ( d ) { var a = rb ( "ng-" + d ) ; Eb [ a ] = function ( ) { return { priority : 99 , link : function ( b , c , e ) { var g = d , f = d ; "href" === d && "[object SVGAnimatedString]" === ub . call ( c . prop ( "href" ) ) && ( f = "xlinkHref" , e . $attr [ f ] = "xlink:href" , g = null ) ; e . $observe ( a , function ( a ) { a ? ( e . $set ( f , a ) , jc && g && c . prop ( g , e [ f ] ) ) : "href" === d && e . $set ( f , null ) } ) } } } } ) ; var zd = { $addControl : q , $$renameControl : function ( d ,
2017-07-25 17:51:59 +00:00
a ) { d . $name = a } , $removeControl : q , $setValidity : q , $setDirty : q , $setPristine : q , $setSubmitted : q } ; Cf . $inject = [ "$element" , "$attrs" , "$scope" , "$animate" , "$interpolate" ] ; var nc = function ( d ) { return [ "$timeout" , "$parse" , function ( a , b ) { function c ( d ) { return "" === d ? b ( 'this[""]' ) . assign : b ( d ) . assign || q } return { name : "form" , restrict : d ? "EAC" : "E" , require : [ "form" , "^^?form" ] , controller : Cf , compile : function ( b , e ) { b . addClass ( uc ) . addClass ( Wc ) ; var g = e . name ? "name" : ! ( ! d || ! e . ngForm ) && "ngForm" ; return { pre : function ( d , b , e , f ) { var l = f [ 0 ] ; if ( ! ( "action" in
2017-07-20 23:09:21 +00:00
e ) ) { var h = function ( a ) { d . $apply ( function ( ) { l . $commitViewValue ( ) ; l . $setSubmitted ( ) } ) ; a . preventDefault ( ) } ; b [ 0 ] . addEventListener ( "submit" , h , ! 1 ) ; b . on ( "$destroy" , function ( ) { a ( function ( ) { b [ 0 ] . removeEventListener ( "submit" , h , ! 1 ) } , 0 , ! 1 ) } ) } ( f [ 1 ] || l . $$parentForm ) . $addControl ( l ) ; var m = g ? c ( l . $name ) : q ; g && ( m ( d , l ) , e . $observe ( g , function ( a ) { l . $name !== a && ( m ( d , k ) , l . $$parentForm . $$renameControl ( l , a ) , ( m = c ( l . $name ) ) ( d , l ) ) } ) ) ; b . on ( "$destroy" , function ( ) { l . $$parentForm . $removeControl ( l ) ; m ( d , k ) ; n ( l , zd ) } ) } } } } } ] } , Be = nc ( ) , Va = nc ( ! 0 ) ,
2017-07-25 17:51:59 +00:00
ib = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/ , Mg = /^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:\/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i , og = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i , Kf = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/ , Lf = /^(\d{4})-(\d{2})-(\d{2})$/ , Xc = /^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/ , te = /^(\d{4})-W(\d\d)$/ , Mf = /^(\d{4})-(\d\d)$/ ,
2017-07-20 23:09:21 +00:00
ue = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/ , Uc = Ma ( ) ; b ( [ "date" , "datetime-local" , "month" , "time" , "week" ] , function ( d ) { Uc [ d ] = ! 0 } ) ; var Yc = { text : function ( d , a , b , c , e , g ) { Tc ( d , a , b , c , e , g ) ; oe ( c ) } , date : bc ( "date" , Lf , Ca ( Lf , [ "yyyy" , "MM" , "dd" ] ) , "yyyy-MM-dd" ) , "datetime-local" : bc ( "datetimelocal" , Xc , Ca ( Xc , "yyyy MM dd HH mm ss sss" . split ( " " ) ) , "yyyy-MM-ddTHH:mm:ss.sss" ) , time : bc ( "time" , ue , Ca ( ue , [ "HH" , "mm" , "ss" , "sss" ] ) , "HH:mm:ss.sss" ) , week : bc ( "week" , te , function ( d , a ) { if ( J ( d ) ) return d ; if ( u ( d ) ) { te . lastIndex = 0 ; var b = te . exec ( d ) ;
if ( b ) { var c = + b [ 1 ] , e = + b [ 2 ] , g = b = 0 , f = 0 , l = 0 , h = me ( c ) , e = 7 * ( e - 1 ) ; return a && ( b = a . getHours ( ) , g = a . getMinutes ( ) , f = a . getSeconds ( ) , l = a . getMilliseconds ( ) ) , new Date ( c , 0 , h . getDate ( ) + e , b , g , f , l ) } } return NaN } , "yyyy-Www" ) , month : bc ( "month" , Mf , Ca ( Mf , [ "yyyy" , "MM" ] ) , "yyyy-MM" ) , number : function ( d , a , b , c , e , g ) { if ( lc ( d , a , b , c ) , Tc ( d , a , b , c , e , g ) , c . $$parserName = "number" , c . $parsers . push ( function ( d ) { return c . $isEmpty ( d ) ? null : Kf . test ( d ) ? parseFloat ( d ) : k } ) , c . $formatters . push ( function ( d ) { if ( ! c . $isEmpty ( d ) ) { if ( ! I ( d ) ) throw Vc ( "numfmt" , d ) ;
2017-07-25 17:51:59 +00:00
d = d . toString ( ) } return d } ) , F ( b . min ) || b . ngMin ) { var f ; c . $validators . min = function ( d ) { return c . $isEmpty ( d ) || B ( f ) || d >= f } ; b . $observe ( "min" , function ( d ) { F ( d ) && ! I ( d ) && ( d = parseFloat ( d , 10 ) ) ; f = I ( d ) && ! isNaN ( d ) ? d : k ; c . $validate ( ) } ) } if ( F ( b . max ) || b . ngMax ) { var l ; c . $validators . max = function ( d ) { return c . $isEmpty ( d ) || B ( l ) || d <= l } ; b . $observe ( "max" , function ( d ) { F ( d ) && ! I ( d ) && ( d = parseFloat ( d , 10 ) ) ; l = I ( d ) && ! isNaN ( d ) ? d : k ; c . $validate ( ) } ) } } , url : function ( d , a , b , c , e , g ) { Tc ( d , a , b , c , e , g ) ; oe ( c ) ; c . $$parserName = "url" ; c . $validators . url = function ( d ,
2017-07-20 23:09:21 +00:00
a ) { var b = d || a ; return c . $isEmpty ( b ) || Mg . test ( b ) } } , email : function ( d , a , b , c , e , g ) { Tc ( d , a , b , c , e , g ) ; oe ( c ) ; c . $$parserName = "email" ; c . $validators . email = function ( d , a ) { var b = d || a ; return c . $isEmpty ( b ) || og . test ( b ) } } , radio : function ( d , a , b , c ) { B ( b . name ) && a . attr ( "name" , ++ wc ) ; a . on ( "click" , function ( d ) { a [ 0 ] . checked && c . $setViewValue ( b . value , d && d . type ) } ) ; c . $render = function ( ) { a [ 0 ] . checked = b . value == c . $viewValue } ; b . $observe ( "value" , c . $render ) } , checkbox : function ( d , a , b , c , e , g , f , h ) { var l = pe ( h , d , "ngTrueValue" , b . ngTrueValue , ! 0 ) ,
k = pe ( h , d , "ngFalseValue" , b . ngFalseValue , ! 1 ) ; a . on ( "click" , function ( d ) { c . $setViewValue ( a [ 0 ] . checked , d && d . type ) } ) ; c . $render = function ( ) { a [ 0 ] . checked = c . $viewValue } ; c . $isEmpty = function ( d ) { return ! 1 === d } ; c . $formatters . push ( function ( d ) { return X ( d , l ) } ) ; c . $parsers . push ( function ( d ) { return d ? l : k } ) } , hidden : q , button : q , submit : q , reset : q , file : q } , oc = [ "$browser" , "$sniffer" , "$filter" , "$parse" , function ( d , a , b , c ) { return { restrict : "E" , require : [ "?ngModel" ] , link : { pre : function ( e , g , f , l ) { l [ 0 ] && ( Yc [ sa ( f . type ) ] || Yc . text ) ( e , g , f , l [ 0 ] ,
a , d , b , c ) } } } } ] , Bb = /^(true|false|\d+)$/ , Id = function ( ) { return { restrict : "A" , priority : 100 , compile : function ( d , a ) { return Bb . test ( a . ngValue ) ? function ( d , a , b ) { b . $set ( "value" , d . $eval ( b . ngValue ) ) } : function ( d , a , b ) { d . $watch ( b . ngValue , function ( d ) { b . $set ( "value" , d ) } ) } } } } , Gd = [ "$compile" , function ( d ) { return { restrict : "AC" , compile : function ( a ) { return d . $$addBindingClass ( a ) , function ( a , b , c ) { d . $$addBindingInfo ( b , c . ngBind ) ; b = b [ 0 ] ; a . $watch ( c . ngBind , function ( d ) { b . textContent = B ( d ) ? "" : d } ) } } } } ] , De = [ "$interpolate" , "$compile" , function ( d ,
a ) { return { compile : function ( b ) { return a . $$addBindingClass ( b ) , function ( b , c , e ) { b = d ( c . attr ( e . $attr . ngBindTemplate ) ) ; a . $$addBindingInfo ( c , b . expressions ) ; c = c [ 0 ] ; e . $observe ( "ngBindTemplate" , function ( d ) { c . textContent = B ( d ) ? "" : d } ) } } } } ] , Ce = [ "$sce" , "$parse" , "$compile" , function ( d , a , b ) { return { restrict : "A" , compile : function ( c , e ) { var g = a ( e . ngBindHtml ) , f = a ( e . ngBindHtml , function ( a ) { return d . valueOf ( a ) } ) ; return b . $$addBindingClass ( c ) , function ( a , c , e ) { b . $$addBindingInfo ( c , e . ngBindHtml ) ; a . $watch ( f , function ( ) { var b = g ( a ) ;
c . html ( d . getTrustedHtml ( b ) || "" ) } ) } } } } ] , Hd = z ( { restrict : "A" , require : "ngModel" , link : function ( d , a , b , c ) { c . $viewChangeListeners . push ( function ( ) { d . $eval ( b . ngChange ) } ) } } ) , Ac = cc ( "" , ! 0 ) , Ee = cc ( "Odd" , 0 ) , Tf = cc ( "Even" , 1 ) , Uf = hb ( { compile : function ( d , a ) { a . $set ( "ngCloak" , k ) ; d . removeClass ( "ng-cloak" ) } } ) , Vf = [ function ( ) { return { restrict : "A" , scope : ! 0 , controller : "@" , priority : 500 } } ] , Ke = { } , pg = { blur : ! 0 , focus : ! 0 } ; b ( "click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste" . split ( " " ) ,
function ( d ) { var a = rb ( "ng-" + d ) ; Ke [ a ] = [ "$parse" , "$rootScope" , function ( b , c ) { return { restrict : "A" , compile : function ( e , g ) { var f = b ( g [ a ] , null , ! 0 ) ; return function ( a , b ) { b . on ( d , function ( b ) { var e = function ( ) { f ( a , { $event : b } ) } ; pg [ d ] && c . $$phase ? a . $evalAsync ( e ) : a . $apply ( e ) } ) } } } } ] } ) ; var Xf = [ "$animate" , function ( d ) { return { multiElement : ! 0 , transclude : "element" , priority : 600 , terminal : ! 0 , restrict : "A" , $$tlb : ! 0 , link : function ( a , b , c , e , g ) { var l , h , k ; a . $watch ( c . ngIf , function ( a ) { a ? h || g ( function ( a , e ) { h = e ; a [ a . length ++ ] = f . createComment ( " end ngIf: " +
c . ngIf + " " ) ; l = { clone : a } ; d . enter ( a , b . parent ( ) , b ) } ) : ( k && ( k . remove ( ) , k = null ) , h && ( h . $destroy ( ) , h = null ) , l && ( k = Tb ( l . clone ) , d . leave ( k ) . then ( function ( ) { k = null } ) , l = null ) ) } ) } } } ] , Yf = [ "$templateRequest" , "$anchorScroll" , "$animate" , function ( d , a , b ) { return { restrict : "ECA" , priority : 400 , terminal : ! 0 , transclude : "element" , controller : Na . noop , compile : function ( c , e ) { var g = e . ngInclude || e . src , f = e . onload || "" , l = e . autoscroll ; return function ( c , e , h , k , m ) { var n , w , r , q = 0 , t = function ( ) { w && ( w . remove ( ) , w = null ) ; n && ( n . $destroy ( ) , n = null ) ; r &&
( b . leave ( r ) . then ( function ( ) { w = null } ) , w = r , r = null ) } ; c . $watch ( g , function ( g ) { var h = function ( ) { ! F ( l ) || l && ! c . $eval ( l ) || a ( ) } , w = ++ q ; g ? ( d ( g , ! 0 ) . then ( function ( d ) { if ( ! c . $$destroyed && w === q ) { var a = c . $new ( ) ; k . template = d ; d = m ( a , function ( d ) { t ( ) ; b . enter ( d , null , e ) . then ( h ) } ) ; n = a ; r = d ; n . $emit ( "$includeContentLoaded" , g ) ; c . $eval ( f ) } } , function ( ) { c . $$destroyed || w !== q || ( t ( ) , c . $emit ( "$includeContentError" , g ) ) } ) , c . $emit ( "$includeContentRequested" , g ) ) : ( t ( ) , k . template = null ) } ) } } } } ] , hg = [ "$compile" , function ( d ) { return { restrict : "ECA" ,
priority : - 400 , require : "ngInclude" , link : function ( a , b , c , e ) { /SVG/ . test ( b [ 0 ] . toString ( ) ) ? ( b . empty ( ) , d ( Ze ( e . template , f ) . childNodes ) ( a , function ( d ) { b . append ( d ) } , { futureParentElement : b } ) ) : ( b . html ( e . template ) , d ( b . contents ( ) ) ( a ) ) } } } ] , Zf = hb ( { priority : 450 , compile : function ( ) { return { pre : function ( d , a , b ) { d . $eval ( b . ngInit ) } } } } ) , fg = function ( ) { return { restrict : "A" , priority : 100 , require : "ngModel" , link : function ( d , a , c , e ) { var g = a . attr ( c . $attr . ngList ) || ", " , f = "false" !== c . ngTrim , l = f ? Ea ( g ) : g ; e . $parsers . push ( function ( d ) { if ( ! B ( d ) ) { var a =
[ ] ; return d && b ( d . split ( l ) , function ( d ) { d && a . push ( f ? Ea ( d ) : d ) } ) , a } } ) ; e . $formatters . push ( function ( d ) { return la ( d ) ? d . join ( g ) : k } ) ; e . $isEmpty = function ( d ) { return ! d || ! d . length } } } } , Wc = "ng-valid" , Ef = "ng-invalid" , uc = "ng-pristine" , Ad = "ng-dirty" , Bd = "ng-pending" , Vc = h ( "ngModel" ) , Nf = [ "$scope" , "$exceptionHandler" , "$attrs" , "$element" , "$parse" , "$animate" , "$timeout" , "$rootScope" , "$q" , "$interpolate" , function ( d , a , c , e , g , f , h , m , n , w ) { this . $modelValue = this . $viewValue = Number . NaN ; this . $$rawModelValue = k ; this . $validators = { } ; this . $asyncValidators =
{ } ; this . $parsers = [ ] ; this . $formatters = [ ] ; this . $viewChangeListeners = [ ] ; this . $untouched = ! 0 ; this . $touched = ! 1 ; this . $pristine = ! 0 ; this . $dirty = ! 1 ; this . $valid = ! 0 ; this . $invalid = ! 1 ; this . $error = { } ; this . $$success = { } ; this . $pending = k ; this . $name = w ( c . name || "" , ! 1 ) ( d ) ; this . $$parentForm = zd ; var l , r = g ( c . ngModel ) , t = r . assign , u = r , x = t , p = null , v = this ; this . $$setOptions = function ( d ) { if ( ( v . $options = d ) && d . getterSetter ) { var a = g ( c . ngModel + "()" ) , b = g ( c . ngModel + "($$$p)" ) ; u = function ( d ) { var b = r ( d ) ; return E ( b ) && ( b = a ( d ) ) , b } ; x = function ( d ,
a ) { E ( r ( d ) ) ? b ( d , { $$$p : v . $modelValue } ) : t ( d , v . $modelValue ) } } else if ( ! r . assign ) throw Vc ( "nonassign" , c . ngModel , Y ( e ) ) ; } ; this . $render = q ; this . $isEmpty = function ( d ) { return B ( d ) || "" === d || null === d || d !== d } ; var A = 0 ; Df ( { ctrl : this , $element : e , set : function ( d , a ) { d [ a ] = ! 0 } , unset : function ( d , a ) { delete d [ a ] } , $animate : f } ) ; this . $setPristine = function ( ) { v . $dirty = ! 1 ; v . $pristine = ! 0 ; f . removeClass ( e , Ad ) ; f . addClass ( e , uc ) } ; this . $setDirty = function ( ) { v . $dirty = ! 0 ; v . $pristine = ! 1 ; f . removeClass ( e , uc ) ; f . addClass ( e , Ad ) ; v . $$parentForm . $setDirty ( ) } ;
this . $setUntouched = function ( ) { v . $touched = ! 1 ; v . $untouched = ! 0 ; f . setClass ( e , "ng-untouched" , "ng-touched" ) } ; this . $setTouched = function ( ) { v . $touched = ! 0 ; v . $untouched = ! 1 ; f . setClass ( e , "ng-touched" , "ng-untouched" ) } ; this . $rollbackViewValue = function ( ) { h . cancel ( p ) ; v . $viewValue = v . $$lastCommittedViewValue ; v . $render ( ) } ; this . $validate = function ( ) { if ( ! I ( v . $modelValue ) || ! isNaN ( v . $modelValue ) ) { var d = v . $$rawModelValue , a = v . $valid , b = v . $modelValue , c = v . $options && v . $options . allowInvalid ; v . $$runValidators ( d , v . $$lastCommittedViewValue ,
2017-07-25 17:51:59 +00:00
function ( e ) { c || a === e || ( v . $modelValue = e ? d : k , v . $modelValue !== b && v . $$writeModelToScope ( ) ) } ) } } ; this . $$runValidators = function ( d , a , c ) { function e ( ) { var c = ! 0 ; return b ( v . $validators , function ( b , e ) { var y = b ( d , a ) ; c = c && y ; f ( e , y ) } ) , ! ! c || ( b ( v . $asyncValidators , function ( d , a ) { f ( a , null ) } ) , ! 1 ) } function g ( ) { var e = [ ] , y = ! 0 ; b ( v . $asyncValidators , function ( b , c ) { var g = b ( d , a ) ; if ( ! g || ! E ( g . then ) ) throw Vc ( "nopromise" , g ) ; f ( c , k ) ; e . push ( g . then ( function ( ) { f ( c , ! 0 ) } , function ( d ) { y = ! 1 ; f ( c , ! 1 ) } ) ) } ) ; e . length ? n . all ( e ) . then ( function ( ) { h === A &&
2017-07-20 23:09:21 +00:00
c ( y ) } , q ) : h === A && c ( ! 0 ) } function f ( d , a ) { h === A && v . $setValidity ( d , a ) } A ++ ; var h = A ; ( function ( ) { var d = v . $$parserName || "parse" ; return B ( l ) ? ( f ( d , null ) , ! 0 ) : ( l || ( b ( v . $validators , function ( d , a ) { f ( a , null ) } ) , b ( v . $asyncValidators , function ( d , a ) { f ( a , null ) } ) ) , f ( d , l ) , l ) } ) ( ) && e ( ) ? g ( ) : h === A && c ( ! 1 ) } ; this . $commitViewValue = function ( ) { var d = v . $viewValue ; h . cancel ( p ) ; ( v . $$lastCommittedViewValue !== d || "" === d && v . $$hasNativeValidators ) && ( v . $$lastCommittedViewValue = d , v . $pristine && this . $setDirty ( ) , this . $$parseAndValidate ( ) ) } ; this . $$parseAndValidate =
2017-07-25 17:51:59 +00:00
function ( ) { var a = v . $$lastCommittedViewValue ; if ( l = ! B ( a ) || k ) for ( var b = 0 ; b < v . $parsers . length ; b ++ ) if ( a = v . $parsers [ b ] ( a ) , B ( a ) ) { l = ! 1 ; break } I ( v . $modelValue ) && isNaN ( v . $modelValue ) && ( v . $modelValue = u ( d ) ) ; var c = v . $modelValue , e = v . $options && v . $options . allowInvalid ; v . $$rawModelValue = a ; e && ( v . $modelValue = a , v . $modelValue !== c && v . $$writeModelToScope ( ) ) ; v . $$runValidators ( a , v . $$lastCommittedViewValue , function ( d ) { e || ( v . $modelValue = d ? a : k , v . $modelValue !== c && v . $$writeModelToScope ( ) ) } ) } ; this . $$writeModelToScope = function ( ) { x ( d ,
2017-07-20 23:09:21 +00:00
v . $modelValue ) ; b ( v . $viewChangeListeners , function ( d ) { try { d ( ) } catch ( kg ) { a ( kg ) } } ) } ; this . $setViewValue = function ( d , a ) { v . $viewValue = d ; v . $options && ! v . $options . updateOnDefault || v . $$debounceViewValueCommit ( a ) } ; this . $$debounceViewValueCommit = function ( a ) { var b = 0 , c = v . $options ; c && F ( c . debounce ) && ( c = c . debounce , I ( c ) ? b = c : I ( c [ a ] ) ? b = c [ a ] : I ( c [ "default" ] ) && ( b = c [ "default" ] ) ) ; h . cancel ( p ) ; b ? p = h ( function ( ) { v . $commitViewValue ( ) } , b ) : m . $$phase ? v . $commitViewValue ( ) : d . $apply ( function ( ) { v . $commitViewValue ( ) } ) } ; d . $watch ( function ( ) { var a =
u ( d ) ; if ( a !== v . $modelValue && ( v . $modelValue === v . $modelValue || a === a ) ) { v . $modelValue = v . $$rawModelValue = a ; l = k ; for ( var b = v . $formatters , c = b . length , e = a ; c -- ; ) e = b [ c ] ( e ) ; v . $viewValue !== e && ( v . $viewValue = v . $$lastCommittedViewValue = e , v . $render ( ) , v . $$runValidators ( a , e , q ) ) } return a } ) } ] , Ie = [ "$rootScope" , function ( d ) { return { restrict : "A" , require : [ "ngModel" , "^?form" , "^?ngModelOptions" ] , controller : Nf , priority : 1 , compile : function ( a ) { return a . addClass ( uc ) . addClass ( "ng-untouched" ) . addClass ( Wc ) , { pre : function ( d , a , b , c ) { var e =
2017-04-11 11:04:48 +00:00
c [ 0 ] ; a = c [ 1 ] || e . $$parentForm ; e . $$setOptions ( c [ 2 ] && c [ 2 ] . $options ) ; a . $addControl ( e ) ; b . $observe ( "name" , function ( d ) { e . $name !== d && e . $$parentForm . $$renameControl ( e , d ) } ) ; d . $on ( "$destroy" , function ( ) { e . $$parentForm . $removeControl ( e ) } ) } , post : function ( a , b , c , e ) { var g = e [ 0 ] ; g . $options && g . $options . updateOn && b . on ( g . $options . updateOn , function ( d ) { g . $$debounceViewValueCommit ( d && d . type ) } ) ; b . on ( "blur" , function ( b ) { g . $touched || ( d . $$phase ? a . $evalAsync ( g . $setTouched ) : a . $apply ( g . $setTouched ) ) } ) } } } } } ] , qg = /(\s+|^)default(\s+|$)/ ,
2017-07-20 23:09:21 +00:00
gg = function ( ) { return { restrict : "A" , controller : [ "$scope" , "$attrs" , function ( d , a ) { var b = this ; this . $options = Ga ( d . $eval ( a . ngModelOptions ) ) ; F ( this . $options . updateOn ) ? ( this . $options . updateOnDefault = ! 1 , this . $options . updateOn = Ea ( this . $options . updateOn . replace ( qg , function ( ) { return b . $options . updateOnDefault = ! 0 , " " } ) ) ) : this . $options . updateOnDefault = ! 0 } ] } } , $f = hb ( { terminal : ! 0 , priority : 1E3 } ) , rg = h ( "ngOptions" ) , ve = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/ ,
He = [ "$compile" , "$parse" , function ( d , a ) { function e ( d , b , e ) { function g ( d , a , b , c , e ) { this . selectValue = d ; this . viewValue = a ; this . label = b ; this . group = c ; this . disabled = e } function f ( d ) { var a ; if ( ! k && c ( d ) ) a = d ; else { a = [ ] ; for ( var b in d ) d . hasOwnProperty ( b ) && "$" !== b . charAt ( 0 ) && a . push ( b ) } return a } var l = d . match ( ve ) ; if ( ! l ) throw rg ( "iexp" , d , Y ( b ) ) ; var h = l [ 5 ] || l [ 7 ] , k = l [ 6 ] ; d = / as / . test ( l [ 0 ] ) && l [ 1 ] ; var m = l [ 9 ] ; b = a ( l [ 2 ] ? l [ 1 ] : h ) ; var n = d && a ( d ) || b , w = m && a ( m ) , r = m ? function ( d , a ) { return w ( e , a ) } : function ( d ) { return pb ( d ) } , q = function ( d ,
2017-07-25 17:51:59 +00:00
a ) { return r ( d , A ( d , a ) ) } , t = a ( l [ 2 ] || l [ 1 ] ) , u = a ( l [ 3 ] || "" ) , x = a ( l [ 4 ] || "" ) , v = a ( l [ 8 ] ) , p = { } , A = k ? function ( d , a ) { return p [ k ] = a , p [ h ] = d , p } : function ( d ) { return p [ h ] = d , p } ; return { trackBy : m , getTrackByValue : q , getWatchables : a ( v , function ( d ) { var a = [ ] ; d = d || [ ] ; for ( var b = f ( d ) , c = b . length , g = 0 ; g < c ; g ++ ) { var h = d === b ? g : b [ g ] , k = A ( d [ h ] , h ) , h = r ( d [ h ] , k ) ; a . push ( h ) ; ( l [ 2 ] || l [ 1 ] ) && ( h = t ( e , k ) , a . push ( h ) ) ; l [ 4 ] && ( k = x ( e , k ) , a . push ( k ) ) } return a } ) , getOptions : function ( ) { for ( var d = [ ] , a = { } , b = v ( e ) || [ ] , c = f ( b ) , l = c . length , h = 0 ; h < l ; h ++ ) { var k = b === c ? h : c [ h ] ,
2017-07-20 23:09:21 +00:00
w = A ( b [ k ] , k ) , p = n ( e , w ) , k = r ( p , w ) , E = t ( e , w ) , z = u ( e , w ) , w = x ( e , w ) , p = new g ( k , p , E , z , w ) ; d . push ( p ) ; a [ k ] = p } return { items : d , selectValueMap : a , getOptionFromViewValue : function ( d ) { return a [ q ( d ) ] } , getViewValueFromOption : function ( d ) { return m ? Na . copy ( d . viewValue ) : d . viewValue } } } } } var g = f . createElement ( "option" ) , l = f . createElement ( "optgroup" ) ; return { restrict : "A" , terminal : ! 0 , require : [ "select" , "?ngModel" ] , link : { pre : function ( d , a , b , c ) { c [ 0 ] . registerOption = q } , post : function ( a , c , f , h ) { function k ( d , a ) { d . element = a ; a . disabled = d . disabled ;
d . label !== a . label && ( a . label = d . label , a . textContent = d . label ) ; d . value !== a . value && ( a . value = d . selectValue ) } function m ( d , a , b , c ) { return a && sa ( a . nodeName ) === b ? b = a : ( b = c . cloneNode ( ! 1 ) , a ? d . insertBefore ( b , a ) : d . appendChild ( b ) ) , b } function n ( d ) { for ( var a ; d ; ) a = d . nextSibling , hc ( d ) , d = a } function w ( d ) { var a = t && t [ 0 ] , b = E && E [ 0 ] ; if ( a || b ) for ( ; d && ( d === a || d === b || 8 === d . nodeType || "option" === ja ( d ) && "" === d . value ) ; ) d = d . nextSibling ; return d } function r ( ) { var d = z && u . readValue ( ) ; z = G . getOptions ( ) ; var a = { } , b = c [ 0 ] . firstChild ; if ( A && c . prepend ( t ) ,
b = w ( b ) , z . items . forEach ( function ( d ) { var e , y ; d . group ? ( e = a [ d . group ] , e || ( e = m ( c [ 0 ] , b , "optgroup" , l ) , b = e . nextSibling , e . label = d . group , e = a [ d . group ] = { groupElement : e , currentOptionElement : e . firstChild } ) , y = m ( e . groupElement , e . currentOptionElement , "option" , g ) , k ( d , y ) , e . currentOptionElement = y . nextSibling ) : ( y = m ( c [ 0 ] , b , "option" , g ) , k ( d , y ) , b = y . nextSibling ) } ) , Object . keys ( a ) . forEach ( function ( d ) { n ( a [ d ] . currentOptionElement ) } ) , n ( b ) , q . $render ( ) , ! q . $isEmpty ( d ) ) { var e = u . readValue ( ) ; ( G . trackBy || x ? X ( d , e ) : d === e ) || ( q . $setViewValue ( e ) ,
2017-07-25 17:51:59 +00:00
q . $render ( ) ) } } var q = h [ 1 ] ; if ( q ) { var t , u = h [ 0 ] , x = f . multiple ; h = 0 ; for ( var v = c . children ( ) , p = v . length ; h < p ; h ++ ) if ( "" === v [ h ] . value ) { t = v . eq ( h ) ; break } var A = ! ! t , E = fa ( g . cloneNode ( ! 1 ) ) ; E . val ( "?" ) ; var z , G = e ( f . ngOptions , c , a ) ; x ? ( q . $isEmpty = function ( d ) { return ! d || 0 === d . length } , u . writeValue = function ( d ) { z . items . forEach ( function ( d ) { d . element . selected = ! 1 } ) ; d && d . forEach ( function ( d ) { ( d = z . getOptionFromViewValue ( d ) ) && ! d . disabled && ( d . element . selected = ! 0 ) } ) } , u . readValue = function ( ) { var d = c . val ( ) || [ ] , a = [ ] ; return b ( d , function ( d ) { ( d =
z . selectValueMap [ d ] ) && ! d . disabled && a . push ( z . getViewValueFromOption ( d ) ) } ) , a } , G . trackBy && a . $watchCollection ( function ( ) { if ( la ( q . $viewValue ) ) return q . $viewValue . map ( function ( d ) { return G . getTrackByValue ( d ) } ) } , function ( ) { q . $render ( ) } ) ) : ( u . writeValue = function ( d ) { var a = z . getOptionFromViewValue ( d ) ; a && ! a . disabled ? ( c [ 0 ] . value !== a . selectValue && ( E . remove ( ) , A || t . remove ( ) , c [ 0 ] . value = a . selectValue , a . element . selected = ! 0 ) , a . element . setAttribute ( "selected" , "selected" ) ) : null === d || A ? ( E . remove ( ) , A || c . prepend ( t ) , c . val ( "" ) ,
2017-07-20 23:09:21 +00:00
t . prop ( "selected" , ! 0 ) , t . attr ( "selected" , ! 0 ) ) : ( A || t . remove ( ) , c . prepend ( E ) , c . val ( "?" ) , E . prop ( "selected" , ! 0 ) , E . attr ( "selected" , ! 0 ) ) } , u . readValue = function ( ) { var d = z . selectValueMap [ c . val ( ) ] ; return d && ! d . disabled ? ( A || t . remove ( ) , E . remove ( ) , z . getViewValueFromOption ( d ) ) : null } , G . trackBy && a . $watch ( function ( ) { return G . getTrackByValue ( q . $viewValue ) } , function ( ) { q . $render ( ) } ) ) ; A ? ( t . remove ( ) , d ( t ) ( a ) , t . removeClass ( "ng-scope" ) ) : t = fa ( g . cloneNode ( ! 1 ) ) ; r ( ) ; a . $watchCollection ( G . getWatchables , r ) } } } } } ] , ag = [ "$locale" , "$interpolate" ,
"$log" , function ( d , a , c ) { var e = /{}/g , g = /^when(Minus)?(.+)$/ ; return { link : function ( f , h , l ) { function k ( d ) { h . text ( d || "" ) } var m , n = l . count , w = l . $attr . when && h . attr ( l . $attr . when ) , r = l . offset || 0 , t = f . $eval ( w ) || { } , u = { } , x = a . startSymbol ( ) , v = a . endSymbol ( ) , p = x + n + "-" + r + v , A = Na . noop ; b ( l , function ( d , a ) { var b = g . exec ( a ) ; b && ( b = ( b [ 1 ] ? "-" : "" ) + sa ( b [ 2 ] ) , t [ b ] = h . attr ( l . $attr [ a ] ) ) } ) ; b ( t , function ( d , b ) { u [ b ] = a ( d . replace ( e , p ) ) } ) ; f . $watch ( n , function ( a ) { var b = parseFloat ( a ) , e = isNaN ( b ) ; e || b in t || ( b = d . pluralCat ( b - r ) ) ; b === m || e && I ( m ) && isNaN ( m ) ||
( A ( ) , e = u [ b ] , B ( e ) ? ( null != a && c . debug ( "ngPluralize: no rule defined for '" + b + "' in " + w ) , A = q , k ( ) ) : A = f . $watch ( e , k ) , m = b ) } ) } } } ] , Bc = [ "$parse" , "$animate" , function ( d , a ) { var e = h ( "ngRepeat" ) , g = function ( d , a , b , c , e , g , f ) { d [ b ] = c ; e && ( d [ e ] = g ) ; d . $index = a ; d . $first = 0 === a ; d . $last = a === f - 1 ; d . $middle = ! ( d . $first || d . $last ) ; d . $odd = ! ( d . $even = 0 === ( 1 & a ) ) } ; return { restrict : "A" , multiElement : ! 0 , transclude : "element" , priority : 1E3 , terminal : ! 0 , $$tlb : ! 0 , compile : function ( h , l ) { var m = l . ngRepeat , n = f . createComment ( " end ngRepeat: " + m + " " ) , w =
m . match ( /^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/ ) ; if ( ! w ) throw e ( "iexp" , m ) ; var r = w [ 1 ] , q = w [ 2 ] , t = w [ 3 ] , u = w [ 4 ] , w = r . match ( /^(?:(\s*[\$\w]+)|\(\s*([\$\w]+)\s*,\s*([\$\w]+)\s*\))$/ ) ; if ( ! w ) throw e ( "iidexp" , r ) ; var x = w [ 3 ] || w [ 1 ] , v = w [ 2 ] ; if ( t && ( ! /^[$a-zA-Z_][$a-zA-Z0-9_]*$/ . test ( t ) || /^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/ . test ( t ) ) ) throw e ( "badident" , t ) ; var p , A , E , z , G = { $id : pb } ; return u ? p = d ( u ) : ( E = function ( d , a ) { return pb ( a ) } ,
2017-07-25 17:51:59 +00:00
z = function ( d ) { return d } ) , function ( d , f , h , l , w ) { p && ( A = function ( a , b , c ) { return v && ( G [ v ] = a ) , G [ x ] = b , G . $index = c , p ( d , G ) } ) ; var r = Ma ( ) ; d . $watchCollection ( q , function ( y ) { var C , h , l , q , u , p , G , B , J , P , F = f [ 0 ] , ia = Ma ( ) ; if ( t && ( d [ t ] = y ) , c ( y ) ) B = y , h = A || E ; else for ( P in h = A || z , B = [ ] , y ) tb . call ( y , P ) && "$" !== P . charAt ( 0 ) && B . push ( P ) ; q = B . length ; P = Array ( q ) ; for ( C = 0 ; C < q ; C ++ ) if ( u = y === B ? C : B [ C ] , p = y [ u ] , G = h ( u , p , C ) , r [ G ] ) J = r [ G ] , delete r [ G ] , ia [ G ] = J , P [ C ] = J ; else { if ( ia [ G ] ) throw b ( P , function ( d ) { d && d . scope && ( r [ d . id ] = d ) } ) , e ( "dupes" , m , G , p ) ; P [ C ] = { id : G ,
scope : k , clone : k } ; ia [ G ] = ! 0 } for ( l in r ) { if ( J = r [ l ] , G = Tb ( J . clone ) , a . leave ( G ) , G [ 0 ] . parentNode ) for ( C = 0 , h = G . length ; C < h ; C ++ ) G [ C ] . $$NG _REMOVED = ! 0 ; J . scope . $destroy ( ) } for ( C = 0 ; C < q ; C ++ ) if ( u = y === B ? C : B [ C ] , p = y [ u ] , J = P [ C ] , J . scope ) { l = F ; do l = l . nextSibling ; while ( l && l . $$NG _REMOVED ) ; J . clone [ 0 ] != l && a . move ( Tb ( J . clone ) , null , F ) ; F = J . clone [ J . clone . length - 1 ] ; g ( J . scope , C , x , p , v , u , q ) } else w ( function ( d , b ) { J . scope = b ; var c = n . cloneNode ( ! 1 ) ; d [ d . length ++ ] = c ; a . enter ( d , null , F ) ; F = c ; J . clone = d ; ia [ J . id ] = J ; g ( J . scope , C , x , p , v , u , q ) } ) ; r = ia } ) } } } } ] ,
2017-07-20 23:09:21 +00:00
Fe = [ "$animate" , function ( d ) { return { restrict : "A" , multiElement : ! 0 , link : function ( a , b , c ) { a . $watch ( c . ngShow , function ( a ) { d [ a ? "removeClass" : "addClass" ] ( b , "ng-hide" , { tempClasses : "ng-hide-animate" } ) } ) } } } ] , Wf = [ "$animate" , function ( d ) { return { restrict : "A" , multiElement : ! 0 , link : function ( a , b , c ) { a . $watch ( c . ngHide , function ( a ) { d [ a ? "addClass" : "removeClass" ] ( b , "ng-hide" , { tempClasses : "ng-hide-animate" } ) } ) } } } ] , Ge = hb ( function ( d , a , c ) { d . $watch ( c . ngStyle , function ( d , c ) { c && d !== c && b ( c , function ( d , b ) { a . css ( b , "" ) } ) ; d && a . css ( d ) } , ! 0 ) } ) ,
2017-07-25 17:51:59 +00:00
bg = [ "$animate" , function ( d ) { return { require : "ngSwitch" , controller : [ "$scope" , function ( ) { this . cases = { } } ] , link : function ( a , c , e , g ) { var h = [ ] , l = [ ] , k = [ ] , m = [ ] , n = function ( d , a ) { return function ( ) { d . splice ( a , 1 ) } } ; a . $watch ( e . ngSwitch || e . on , function ( a ) { var c , e ; c = 0 ; for ( e = k . length ; c < e ; ++ c ) d . cancel ( k [ c ] ) ; c = k . length = 0 ; for ( e = m . length ; c < e ; ++ c ) { var w = Tb ( l [ c ] . clone ) ; m [ c ] . $destroy ( ) ; ( k [ c ] = d . leave ( w ) ) . then ( n ( k , c ) ) } l . length = 0 ; m . length = 0 ; ( h = g . cases [ "!" + a ] || g . cases [ "?" ] ) && b ( h , function ( a ) { a . transclude ( function ( b , c ) { m . push ( c ) ; var e =
2017-07-20 23:09:21 +00:00
a . element ; b [ b . length ++ ] = f . createComment ( " end ngSwitchWhen: " ) ; l . push ( { clone : b } ) ; d . enter ( b , e . parent ( ) , e ) } ) } ) } ) } } } ] , cg = hb ( { transclude : "element" , priority : 1200 , require : "^ngSwitch" , multiElement : ! 0 , link : function ( d , a , b , c , e ) { c . cases [ "!" + b . ngSwitchWhen ] = c . cases [ "!" + b . ngSwitchWhen ] || [ ] ; c . cases [ "!" + b . ngSwitchWhen ] . push ( { transclude : e , element : a } ) } } ) , dg = hb ( { transclude : "element" , priority : 1200 , require : "^ngSwitch" , multiElement : ! 0 , link : function ( d , a , b , c , e ) { c . cases [ "?" ] = c . cases [ "?" ] || [ ] ; c . cases [ "?" ] . push ( { transclude : e ,
element : a } ) } } ) , eg = hb ( { restrict : "EAC" , link : function ( d , a , b , c , e ) { if ( ! e ) throw h ( "ngTransclude" ) ( "orphan" , Y ( a ) ) ; e ( function ( d ) { a . empty ( ) ; a . append ( d ) } ) } } ) , Pf = [ "$templateCache" , function ( d ) { return { restrict : "E" , terminal : ! 0 , compile : function ( a , b ) { "text/ng-template" == b . type && d . put ( b . id , a [ 0 ] . text ) } } } ] , we = { $setViewValue : q , $render : q } , sg = [ "$element" , "$scope" , "$attrs" , function ( d , a , b ) { var c = this , e = new Nb ; c . ngModelCtrl = we ; c . unknownOption = fa ( f . createElement ( "option" ) ) ; c . renderUnknownOption = function ( a ) { a = "? " + pb ( a ) + " ?" ;
c . unknownOption . val ( a ) ; d . prepend ( c . unknownOption ) ; d . val ( a ) } ; a . $on ( "$destroy" , function ( ) { c . renderUnknownOption = q } ) ; c . removeUnknownOption = function ( ) { c . unknownOption . parent ( ) && c . unknownOption . remove ( ) } ; c . readValue = function ( ) { return c . removeUnknownOption ( ) , d . val ( ) } ; c . writeValue = function ( a ) { c . hasOption ( a ) ? ( c . removeUnknownOption ( ) , d . val ( a ) , "" === a && c . emptyOption . prop ( "selected" , ! 0 ) ) : null == a && c . emptyOption ? ( c . removeUnknownOption ( ) , d . val ( "" ) ) : c . renderUnknownOption ( a ) } ; c . addOption = function ( d , a ) { if ( 8 !== a [ 0 ] . nodeType ) { vb ( d ,
'"option value"' ) ; "" === d && ( c . emptyOption = a ) ; var b = e . get ( d ) || 0 ; e . put ( d , b + 1 ) ; c . ngModelCtrl . $render ( ) ; a [ 0 ] . hasAttribute ( "selected" ) && ( a [ 0 ] . selected = ! 0 ) } } ; c . removeOption = function ( d ) { var a = e . get ( d ) ; a && ( 1 === a ? ( e . remove ( d ) , "" === d && ( c . emptyOption = k ) ) : e . put ( d , a - 1 ) ) } ; c . hasOption = function ( d ) { return ! ! e . get ( d ) } ; c . registerOption = function ( d , a , b , e , g ) { if ( e ) { var f ; b . $observe ( "value" , function ( d ) { F ( f ) && c . removeOption ( f ) ; f = d ; c . addOption ( d , a ) } ) } else g ? d . $watch ( g , function ( d , e ) { b . $set ( "value" , d ) ; e !== d && c . removeOption ( e ) ;
c . addOption ( d , a ) } ) : c . addOption ( b . value , a ) ; a . on ( "$destroy" , function ( ) { c . removeOption ( b . value ) ; c . ngModelCtrl . $render ( ) } ) } } ] , Qf = function ( ) { return { restrict : "E" , require : [ "select" , "?ngModel" ] , controller : sg , priority : 1 , link : { pre : function ( d , a , c , e ) { var g = e [ 1 ] ; if ( g ) { var f = e [ 0 ] ; if ( f . ngModelCtrl = g , a . on ( "change" , function ( ) { d . $apply ( function ( ) { g . $setViewValue ( f . readValue ( ) ) } ) } ) , c . multiple ) { f . readValue = function ( ) { var d = [ ] ; return b ( a . find ( "option" ) , function ( a ) { a . selected && d . push ( a . value ) } ) , d } ; f . writeValue = function ( d ) { var c =
new Nb ( d ) ; b ( a . find ( "option" ) , function ( d ) { d . selected = F ( c . get ( d . value ) ) } ) } ; var h , l = NaN ; d . $watch ( function ( ) { l !== g . $viewValue || X ( h , g . $viewValue ) || ( h = za ( g . $viewValue ) , g . $render ( ) ) ; l = g . $viewValue } ) ; g . $isEmpty = function ( d ) { return ! d || 0 === d . length } } } } , post : function ( d , a , b , c ) { var e = c [ 1 ] ; if ( e ) { var g = c [ 0 ] ; e . $render = function ( ) { g . writeValue ( e . $viewValue ) } } } } } } , Sf = [ "$interpolate" , function ( d ) { return { restrict : "E" , priority : 100 , compile : function ( a , b ) { if ( F ( b . value ) ) var c = d ( b . value , ! 0 ) ; else { var e = d ( a . text ( ) , ! 0 ) ; e || b . $set ( "value" ,
a . text ( ) ) } return function ( d , a , b ) { var g = a . parent ( ) ; ( g = g . data ( "$selectController" ) || g . parent ( ) . data ( "$selectController" ) ) && g . registerOption ( d , a , b , c , e ) } } } } ] , Rf = z ( { restrict : "E" , terminal : ! 1 } ) , oa = function ( ) { return { restrict : "A" , require : "?ngModel" , link : function ( d , a , b , c ) { c && ( b . required = ! 0 , c . $validators . required = function ( d , a ) { return ! b . required || ! c . $isEmpty ( a ) } , b . $observe ( "required" , function ( ) { c . $validate ( ) } ) ) } } } , dd = function ( ) { return { restrict : "A" , require : "?ngModel" , link : function ( d , a , b , c ) { if ( c ) { var e , g = b . ngPattern ||
b . pattern ; b . $observe ( "pattern" , function ( d ) { if ( u ( d ) && 0 < d . length && ( d = new RegExp ( "^" + d + "$" ) ) , d && ! d . test ) throw h ( "ngPattern" ) ( "noregexp" , g , d , Y ( a ) ) ; e = d || k ; c . $validate ( ) } ) ; c . $validators . pattern = function ( d , a ) { return c . $isEmpty ( a ) || B ( e ) || e . test ( a ) } } } } } , ed = function ( ) { return { restrict : "A" , require : "?ngModel" , link : function ( d , a , b , c ) { if ( c ) { var e = - 1 ; b . $observe ( "maxlength" , function ( d ) { d = parseInt ( d , 10 ) ; e = isNaN ( d ) ? - 1 : d ; c . $validate ( ) } ) ; c . $validators . maxlength = function ( d , a ) { return 0 > e || c . $isEmpty ( a ) || a . length <= e } } } } } ,
Je = function ( ) { return { restrict : "A" , require : "?ngModel" , link : function ( d , a , b , c ) { if ( c ) { var e = 0 ; b . $observe ( "minlength" , function ( d ) { e = parseInt ( d , 10 ) || 0 ; c . $validate ( ) } ) ; c . $validators . minlength = function ( d , a ) { return c . $isEmpty ( a ) || a . length >= e } } } } } ; a . angular . bootstrap ? a . console && console . log ( "WARNING: Tried to load angular more than once." ) : ( ua ( ) , ze ( Na ) , Na . module ( "ngLocale" , [ ] , [ "$provide" , function ( d ) { function a ( d ) { d += "" ; var a = d . indexOf ( "." ) ; return - 1 == a ? 0 : d . length - a - 1 } d . value ( "$locale" , { DATETIME _FORMATS : { AMPMS : [ "AM" ,
2017-04-11 11:04:48 +00:00
"PM" ] , DAY : "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" . split ( " " ) , ERANAMES : [ "Before Christ" , "Anno Domini" ] , ERAS : [ "BC" , "AD" ] , FIRSTDAYOFWEEK : 6 , MONTH : "January February March April May June July August September October November December" . split ( " " ) , SHORTDAY : "Sun Mon Tue Wed Thu Fri Sat" . split ( " " ) , SHORTMONTH : "Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec" . split ( " " ) , STANDALONEMONTH : "January February March April May June July August September October November December" . split ( " " ) , WEEKENDRANGE : [ 5 ,
6 ] , fullDate : "EEEE, MMMM d, y" , longDate : "MMMM d, y" , medium : "MMM d, y h:mm:ss a" , mediumDate : "MMM d, y" , mediumTime : "h:mm:ss a" , "short" : "M/d/yy h:mm a" , shortDate : "M/d/yy" , shortTime : "h:mm a" } , NUMBER _FORMATS : { CURRENCY _SYM : "$" , DECIMAL _SEP : "." , GROUP _SEP : "," , PATTERNS : [ { gSize : 3 , lgSize : 3 , maxFrac : 3 , minFrac : 0 , minInt : 1 , negPre : "-" , negSuf : "" , posPre : "" , posSuf : "" } , { gSize : 3 , lgSize : 3 , maxFrac : 2 , minFrac : 2 , minInt : 1 , negPre : "-\u00a4" , negSuf : "" , posPre : "\u00a4" , posSuf : "" } ] } , id : "en-us" , localeID : "en_US" , pluralCat : function ( d ,
2017-07-20 23:09:21 +00:00
b ) { var c = 0 | d , e = b ; return k === e && ( e = Math . min ( a ( d ) , 3 ) ) , Math . pow ( 10 , e ) , 1 == c && 0 == e ? "one" : "other" } } ) } ] ) , fa ( f ) . ready ( function ( ) { Ka ( f , U ) } ) ) } ( window , document ) ; ! window . angular . $$csp ( ) . noInlineStyle && window . angular . element ( document . head ) . prepend ( '<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}</style>' ) ;
var duScrollDefaultEasing = function ( a ) { return . 5 > a ? Math . pow ( 2 * a , 2 ) / 2 : 1 - Math . pow ( 2 * ( 1 - a ) , 2 ) / 2 } , duScroll = angular . module ( "duScroll" , [ "duScroll.scrollspy" , "duScroll.smoothScroll" , "duScroll.scrollContainer" , "duScroll.spyContext" , "duScroll.scrollHelpers" ] ) . value ( "duScrollDuration" , 350 ) . value ( "duScrollSpyWait" , 100 ) . value ( "duScrollGreedy" , ! 1 ) . value ( "duScrollOffset" , 0 ) . value ( "duScrollEasing" , duScrollDefaultEasing ) . value ( "duScrollCancelOnEvents" , "scroll mousedown mousewheel touchmove keydown" ) . value ( "duScrollBottomSpy" ,
2017-04-11 07:10:36 +00:00
! 1 ) . value ( "duScrollActiveClass" , "active" ) ; "undefined" != typeof module && module && module . exports && ( module . exports = duScroll ) ;
2017-07-20 23:09:21 +00:00
angular . module ( "duScroll.scrollHelpers" , [ "duScroll.requestAnimation" ] ) . run ( [ "$window" , "$q" , "cancelAnimation" , "requestAnimation" , "duScrollEasing" , "duScrollDuration" , "duScrollOffset" , "duScrollCancelOnEvents" , function ( a , f , k , h , c , b , e , g ) { var r = { } , m = function ( a ) { return "undefined" != typeof HTMLDocument && a instanceof HTMLDocument || a . nodeType && a . nodeType === a . DOCUMENT _NODE } , n = function ( a ) { return "undefined" != typeof HTMLElement && a instanceof HTMLElement || a . nodeType && a . nodeType === a . ELEMENT _NODE } , t = function ( a ) { return n ( a ) ||
m ( a ) ? a : a [ 0 ] } ; r . duScrollTo = function ( b , c , e , g ) { var f ; if ( angular . isElement ( b ) ? f = this . duScrollToElement : angular . isDefined ( e ) && ( f = this . duScrollToAnimated ) , f ) return f . apply ( this , arguments ) ; f = t ( this ) ; return m ( f ) ? a . scrollTo ( b , c ) : ( f . scrollLeft = b , void ( f . scrollTop = c ) ) } ; var x , q ; r . duScrollToAnimated = function ( a , b , e , m ) { e && ! m && ( m = c ) ; var n = this . duScrollLeft ( ) , r = this . duScrollTop ( ) , t = Math . round ( a - n ) , v = Math . round ( b - r ) , A = null , E = 0 , G = this , z = function ( a ) { ( ! a || E && 0 < a . which ) && ( g && G . unbind ( g , z ) , k ( x ) , q . reject ( ) , x = null ) } ; if ( x &&
z ( ) , q = f . defer ( ) , 0 === e || ! t && ! v ) return 0 === e && G . duScrollTo ( a , b ) , q . resolve ( ) , q . promise ; var B = function ( a ) { null === A && ( A = a ) ; E = a - A ; a = E >= e ? 1 : m ( E / e ) ; G . scrollTo ( n + Math . ceil ( t * a ) , r + Math . ceil ( v * a ) ) ; 1 > a ? x = h ( B ) : ( g && G . unbind ( g , z ) , x = null , q . resolve ( ) ) } ; return G . duScrollTo ( n , r ) , g && G . bind ( g , z ) , x = h ( B ) , q . promise } ; r . duScrollToElement = function ( a , b , c , g ) { var f = t ( this ) ; angular . isNumber ( b ) && ! isNaN ( b ) || ( b = e ) ; a = this . duScrollTop ( ) + t ( a ) . getBoundingClientRect ( ) . top - b ; return n ( f ) && ( a -= f . getBoundingClientRect ( ) . top ) , this . duScrollTo ( 0 ,
a , c , g ) } ; r . duScrollLeft = function ( b , c , e ) { if ( angular . isNumber ( b ) ) return this . duScrollTo ( b , this . duScrollTop ( ) , c , e ) ; b = t ( this ) ; return m ( b ) ? a . scrollX || document . documentElement . scrollLeft || document . body . scrollLeft : b . scrollLeft } ; r . duScrollTop = function ( b , c , e ) { if ( angular . isNumber ( b ) ) return this . duScrollTo ( this . duScrollLeft ( ) , b , c , e ) ; b = t ( this ) ; return m ( b ) ? a . scrollY || document . documentElement . scrollTop || document . body . scrollTop : b . scrollTop } ; r . duScrollToElementAnimated = function ( a , c , e , g ) { return this . duScrollToElement ( a ,
c , e || b , g ) } ; r . duScrollTopAnimated = function ( a , c , e ) { return this . duScrollTop ( a , c || b , e ) } ; r . duScrollLeftAnimated = function ( a , c , e ) { return this . duScrollLeft ( a , c || b , e ) } ; angular . forEach ( r , function ( a , b ) { angular . element . prototype [ b ] = a ; var c = b . replace ( /^duScroll/ , "scroll" ) ; angular . isUndefined ( angular . element . prototype [ c ] ) && ( angular . element . prototype [ c ] = a ) } ) } ] ) ;
angular . module ( "duScroll.polyfill" , [ ] ) . factory ( "polyfill" , [ "$window" , function ( a ) { var f = [ "webkit" , "moz" , "o" , "ms" ] ; return function ( k , h ) { if ( a [ k ] ) return a [ k ] ; for ( var c , b = k . substr ( 0 , 1 ) . toUpperCase ( ) + k . substr ( 1 ) , e = 0 ; e < f . length ; e ++ ) if ( c = f [ e ] + b , a [ c ] ) return a [ c ] ; return h } } ] ) ;
angular . module ( "duScroll.requestAnimation" , [ "duScroll.polyfill" ] ) . factory ( "requestAnimation" , [ "polyfill" , "$timeout" , function ( a , f ) { var k = 0 ; return a ( "requestAnimationFrame" , function ( a , c ) { var b = ( new Date ) . getTime ( ) , e = Math . max ( 0 , 16 - ( b - k ) ) , g = f ( function ( ) { a ( b + e ) } , e ) ; return k = b + e , g } ) } ] ) . factory ( "cancelAnimation" , [ "polyfill" , "$timeout" , function ( a , f ) { return a ( "cancelAnimationFrame" , function ( a ) { f . cancel ( a ) } ) } ] ) ;
angular . module ( "duScroll.spyAPI" , [ "duScroll.scrollContainerAPI" ] ) . factory ( "spyAPI" , [ "$rootScope" , "$timeout" , "$window" , "$document" , "scrollContainerAPI" , "duScrollGreedy" , "duScrollSpyWait" , "duScrollBottomSpy" , "duScrollActiveClass" , function ( a , f , k , h , c , b , e , g , r ) { var m = function ( c ) { var m = ! 1 , n = ! 1 , q = function ( ) { n = ! 1 ; var e ; e = c . container [ 0 ] ; var f = 0 ; "undefined" != typeof HTMLElement && e instanceof HTMLElement || e . nodeType && e . nodeType === e . ELEMENT _NODE ? ( f = e . getBoundingClientRect ( ) . top , e = Math . round ( e . scrollTop + e . clientHeight ) >=
e . scrollHeight ) : e = Math . round ( k . pageYOffset + k . innerHeight ) >= ( h [ 0 ] . body . scrollHeight || h [ 0 ] . documentElement . scrollHeight ) ; var m , q , t , x , p , v , A = g && e ? "bottom" : "top" ; x = c . spies ; q = c . currentlyActive ; t = void 0 ; for ( m = 0 ; m < x . length ; m ++ ) p = x [ m ] , ( v = p . getTargetPosition ( ) ) && ( g && e || 20 > v . top + p . offset - f && ( b || - 1 * v . top + f ) < v . height ) && ( ! t || t [ A ] < v [ A ] ) && ( t = { spy : p } , t [ A ] = v [ A ] ) ; t && ( t = t . spy ) ; q === t || b && ! t || ( q && ( q . $element . removeClass ( r ) , a . $broadcast ( "duScrollspy:becameInactive" , q . $element , angular . element ( q . getTargetElement ( ) ) ) ) , t &&
( t . $element . addClass ( r ) , a . $broadcast ( "duScrollspy:becameActive" , t . $element , angular . element ( t . getTargetElement ( ) ) ) ) , c . currentlyActive = t ) } ; return e ? function ( ) { m ? n = ! 0 : ( q ( ) , m = f ( function ( ) { m = ! 1 ; n && q ( ) } , e , ! 1 ) ) } : q } , n = { } , t = function ( a ) { var b = a . $id , c = { spies : [ ] } ; return c . handler = m ( c ) , n [ b ] = c , a . $on ( "$destroy" , function ( ) { x ( a ) } ) , b } , x = function ( a ) { a = a . $id ; var b = n [ a ] , c = b . container ; c && c . off ( "scroll" , b . handler ) ; delete n [ a ] } , q = t ( a ) , v = function ( a ) { return n [ a . $id ] ? n [ a . $id ] : a . $parent ? v ( a . $parent ) : n [ q ] } , z = function ( a ) { var b ,
c , e = a . $scope ; if ( e ) return v ( e ) ; for ( c in n ) if ( b = n [ c ] , - 1 !== b . spies . indexOf ( a ) ) return b } ; return { addSpy : function ( a ) { var b = z ( a ) ; if ( b ) { b . spies . push ( a ) ; var e ; if ( e = b . container ) a : { for ( e = b . container ; e . parentNode ; ) if ( e = e . parentNode , e === document ) { e = ! 0 ; break a } e = ! 1 } e || ( b . container && b . container . off ( "scroll" , b . handler ) , b . container = c . getContainer ( a . $scope ) , b . container . on ( "scroll" , b . handler ) . triggerHandler ( "scroll" ) ) } } , removeSpy : function ( b ) { var c = z ( b ) ; b === c . currentlyActive && ( a . $broadcast ( "duScrollspy:becameInactive" ,
c . currentlyActive . $element ) , c . currentlyActive = null ) ; var e = c . spies . indexOf ( b ) ; - 1 !== e && c . spies . splice ( e , 1 ) ; b . $element = null } , createContext : t , destroyContext : x , getContextForScope : v } } ] ) ;
angular . module ( "duScroll.scrollContainerAPI" , [ ] ) . factory ( "scrollContainerAPI" , [ "$document" , function ( a ) { var f = { } , k = function ( a ) { return f [ a . $id ] ? a . $id : a . $parent ? k ( a . $parent ) : void 0 } ; return { getContainerId : k , getContainer : function ( h ) { return ( h = k ( h ) ) ? f [ h ] : a } , setContainer : function ( a , c ) { var b = a . $id ; return f [ b ] = c , b } , removeContainer : function ( a ) { ( a = k ( a ) ) && delete f [ a ] } } } ] ) ;
angular . module ( "duScroll.smoothScroll" , [ "duScroll.scrollHelpers" , "duScroll.scrollContainerAPI" ] ) . directive ( "duSmoothScroll" , [ "duScrollDuration" , "duScrollOffset" , "scrollContainerAPI" , function ( a , f , k ) { return { link : function ( h , c , b ) { c . on ( "click" , function ( c ) { if ( b . href && - 1 !== b . href . indexOf ( "#" ) || "" !== b . duSmoothScroll ) { var e = b . href ? b . href . replace ( /.*(?=#[^\s]+$)/ , "" ) . substring ( 1 ) : b . duSmoothScroll ; if ( ( e = document . getElementById ( e ) || document . getElementsByName ( e ) [ 0 ] ) && e . getBoundingClientRect ) { c . stopPropagation &&
c . stopPropagation ( ) ; c . preventDefault && c . preventDefault ( ) ; c = b . offset ? parseInt ( b . offset , 10 ) : f ; var r = b . duration ? parseInt ( b . duration , 10 ) : a ; k . getContainer ( h ) . duScrollToElement ( angular . element ( e ) , isNaN ( c ) ? 0 : c , isNaN ( r ) ? 0 : r ) } } } ) } } } ] ) ; angular . module ( "duScroll.spyContext" , [ "duScroll.spyAPI" ] ) . directive ( "duSpyContext" , [ "spyAPI" , function ( a ) { return { restrict : "A" , scope : ! 0 , compile : function ( f , k , h ) { return { pre : function ( c , b , e , g ) { a . createContext ( c ) } } } } } ] ) ;
angular . module ( "duScroll.scrollContainer" , [ "duScroll.scrollContainerAPI" ] ) . directive ( "duScrollContainer" , [ "scrollContainerAPI" , function ( a ) { return { restrict : "A" , scope : ! 0 , compile : function ( f , k , h ) { return { pre : function ( c , b , e , g ) { e . $observe ( "duScrollContainer" , function ( e ) { angular . isString ( e ) && ( e = document . getElementById ( e ) ) ; e = angular . isElement ( e ) ? angular . element ( e ) : b ; a . setContainer ( c , e ) ; c . $on ( "$destroy" , function ( ) { a . removeContainer ( c ) } ) } ) } } } } } ] ) ;
angular . module ( "duScroll.scrollspy" , [ "duScroll.spyAPI" ] ) . directive ( "duScrollspy" , [ "spyAPI" , "duScrollOffset" , "$timeout" , "$rootScope" , function ( a , f , k , h ) { var c = function ( a , c , g , f ) { angular . isElement ( a ) ? this . target = a : angular . isString ( a ) && ( this . targetId = a ) ; this . $scope = c ; this . $element = g ; this . offset = f } ; return c . prototype . getTargetElement = function ( ) { return ! this . target && this . targetId && ( this . target = document . getElementById ( this . targetId ) || document . getElementsByName ( this . targetId ) [ 0 ] ) , this . target } , c . prototype . getTargetPosition =
function ( ) { var a = this . getTargetElement ( ) ; return a ? a . getBoundingClientRect ( ) : void 0 } , c . prototype . flushTargetCache = function ( ) { this . targetId && ( this . target = void 0 ) } , { link : function ( b , e , g ) { var r , m = g . ngHref || g . href ; if ( m && - 1 !== m . indexOf ( "#" ) ? r = m . replace ( /.*(?=#[^\s]+$)/ , "" ) . substring ( 1 ) : g . duScrollspy ? r = g . duScrollspy : g . duSmoothScroll && ( r = g . duSmoothScroll ) , r ) { var n = k ( function ( ) { var k = new c ( r , b , e , - ( g . offset ? parseInt ( g . offset , 10 ) : f ) ) ; a . addSpy ( k ) ; b . $on ( "$locationChangeSuccess" , k . flushTargetCache . bind ( k ) ) ; var m =
h . $on ( "$stateChangeSuccess" , k . flushTargetCache . bind ( k ) ) ; b . $on ( "$destroy" , function ( ) { a . removeSpy ( k ) ; m ( ) } ) } , 0 , ! 1 ) ; b . $on ( "$destroy" , function ( ) { k . cancel ( n ) } ) } } } } ] ) ;
! function ( ) { var a = { TAB : 9 , ENTER : 13 , ESC : 27 , SPACE : 32 , LEFT : 37 , UP : 38 , RIGHT : 39 , DOWN : 40 , SHIFT : 16 , CTRL : 17 , ALT : 18 , PAGE _UP : 33 , PAGE _DOWN : 34 , HOME : 36 , END : 35 , BACKSPACE : 8 , DELETE : 46 , COMMAND : 91 , MAP : { 91 : "COMMAND" , 8 : "BACKSPACE" , 9 : "TAB" , 13 : "ENTER" , 16 : "SHIFT" , 17 : "CTRL" , 18 : "ALT" , 19 : "PAUSEBREAK" , 20 : "CAPSLOCK" , 27 : "ESC" , 32 : "SPACE" , 33 : "PAGE_UP" , 34 : "PAGE_DOWN" , 35 : "END" , 36 : "HOME" , 37 : "LEFT" , 38 : "UP" , 39 : "RIGHT" , 40 : "DOWN" , 43 : "+" , 44 : "PRINTSCREEN" , 45 : "INSERT" , 46 : "DELETE" , 48 : "0" , 49 : "1" , 50 : "2" , 51 : "3" , 52 : "4" , 53 : "5" , 54 : "6" , 55 : "7" , 56 : "8" ,
2017-04-11 07:10:36 +00:00
57 : "9" , 59 : ";" , 61 : "=" , 65 : "A" , 66 : "B" , 67 : "C" , 68 : "D" , 69 : "E" , 70 : "F" , 71 : "G" , 72 : "H" , 73 : "I" , 74 : "J" , 75 : "K" , 76 : "L" , 77 : "M" , 78 : "N" , 79 : "O" , 80 : "P" , 81 : "Q" , 82 : "R" , 83 : "S" , 84 : "T" , 85 : "U" , 86 : "V" , 87 : "W" , 88 : "X" , 89 : "Y" , 90 : "Z" , 96 : "0" , 97 : "1" , 98 : "2" , 99 : "3" , 100 : "4" , 101 : "5" , 102 : "6" , 103 : "7" , 104 : "8" , 105 : "9" , 106 : "*" , 107 : "+" , 109 : "-" , 110 : "." , 111 : "/" , 112 : "F1" , 113 : "F2" , 114 : "F3" , 115 : "F4" , 116 : "F5" , 117 : "F6" , 118 : "F7" , 119 : "F8" , 120 : "F9" , 121 : "F10" , 122 : "F11" , 123 : "F12" , 144 : "NUMLOCK" , 145 : "SCROLLLOCK" , 186 : ";" , 187 : "=" , 188 : "," , 189 : "-" , 190 : "." ,
2017-07-20 23:09:21 +00:00
191 : "/" , 192 : "`" , 219 : "[" , 220 : "\\" , 221 : "]" , 222 : "'" } , isControl : function ( f ) { switch ( f . which ) { case a . COMMAND : case a . SHIFT : case a . CTRL : case a . ALT : return ! 0 } return ! ! ( f . metaKey || f . ctrlKey || f . altKey ) } , isFunctionKey : function ( a ) { return a = a . which ? a . which : a , 112 <= a && 123 >= a } , isVerticalMovement : function ( f ) { return ~ [ a . UP , a . DOWN ] . indexOf ( f ) } , isHorizontalMovement : function ( f ) { return ~ [ a . LEFT , a . RIGHT , a . BACKSPACE , a . DELETE ] . indexOf ( f ) } , toSeparator : function ( f ) { var c = { ENTER : "\n" , TAB : "\t" , SPACE : " " } [ f ] ; return c ? c : a [ f ] ? void 0 :
f } } ; void 0 === angular . element . prototype . querySelectorAll && ( angular . element . prototype . querySelectorAll = function ( a ) { return angular . element ( this [ 0 ] . querySelectorAll ( a ) ) } ) ; void 0 === angular . element . prototype . closest && ( angular . element . prototype . closest = function ( a ) { for ( var c = this [ 0 ] , b = c . matches || c . webkitMatchesSelector || c . mozMatchesSelector || c . msMatchesSelector ; c ; ) { if ( b . bind ( c ) ( a ) ) return c ; c = c . parentElement } return ! 1 } ) ; var f = 0 , k = angular . module ( "ui.select" , [ ] ) . constant ( "uiSelectConfig" , { theme : "bootstrap" , searchEnabled : ! 0 ,
sortable : ! 1 , placeholder : "" , refreshDelay : 1E3 , closeOnSelect : ! 0 , skipFocusser : ! 1 , dropdownPosition : "auto" , removeSelected : ! 0 , generateId : function ( ) { return f ++ } , appendToBody : ! 1 } ) . service ( "uiSelectMinErr" , function ( ) { var a = angular . $$minErr ( "ui.select" ) ; return function ( ) { var c = a . apply ( this , arguments ) . message . replace ( /\nhttp:\/\/errors.angularjs.org\/.*/ , "" ) ; return Error ( c ) } } ) . directive ( "uisTranscludeAppend" , function ( ) { return { link : function ( a , c , b , e , g ) { g ( a , function ( a ) { c . append ( a ) } ) } } } ) . filter ( "highlight" , function ( ) { return function ( a ,
c ) { return c && a ? ( "" + a ) . replace ( new RegExp ( ( "" + c ) . replace ( /([.?*+^$[\]\\(){}|-])/g , "\\$1" ) , "gi" ) , '<span class="ui-select-highlight">$&</span>' ) : a } } ) . factory ( "uisOffset" , [ "$document" , "$window" , function ( a , c ) { return function ( b ) { var e = b [ 0 ] . getBoundingClientRect ( ) ; return { width : e . width || b . prop ( "offsetWidth" ) , height : e . height || b . prop ( "offsetHeight" ) , top : e . top + ( c . pageYOffset || a [ 0 ] . documentElement . scrollTop ) , left : e . left + ( c . pageXOffset || a [ 0 ] . documentElement . scrollLeft ) } } } ] ) ; k . directive ( "uiSelectChoices" , [ "uiSelectConfig" ,
"uisRepeatParser" , "uiSelectMinErr" , "$compile" , "$window" , function ( a , c , b , e , g ) { return { restrict : "EA" , require : "^uiSelect" , replace : ! 0 , transclude : ! 0 , templateUrl : function ( b ) { b . addClass ( "ui-select-choices" ) ; return ( b . parent ( ) . attr ( "theme" ) || a . theme ) + "/choices.tpl.html" } , compile : function ( e , f ) { if ( ! f . repeat ) throw b ( "repeat" , "Expected 'repeat' expression." ) ; var h = f . groupBy , k = f . groupFilter ; if ( h ) { var m = e . querySelectorAll ( ".ui-select-choices-group" ) ; if ( 1 !== m . length ) throw b ( "rows" , "Expected 1 .ui-select-choices-group but got '{0}'." ,
m . length ) ; m . attr ( "ng-repeat" , c . getGroupNgRepeatExpression ( ) ) } var m = c . parse ( f . repeat ) , q = e . querySelectorAll ( ".ui-select-choices-row" ) ; if ( 1 !== q . length ) throw b ( "rows" , "Expected 1 .ui-select-choices-row but got '{0}'." , q . length ) ; q . attr ( "ng-repeat" , m . repeatExpression ( h ) ) . attr ( "ng-if" , "$select.open" ) ; var r = e . querySelectorAll ( ".ui-select-choices-row-inner" ) ; if ( 1 !== r . length ) throw b ( "rows" , "Expected 1 .ui-select-choices-row-inner but got '{0}'." , r . length ) ; r . attr ( "uis-transclude-append" , "" ) ; return ( g . document . addEventListener ?
q : r ) . attr ( "ng-click" , "$select.select(" + m . itemName + ",$select.skipFocusser,$event)" ) , function ( b , c , e , g ) { g . parseRepeatAttr ( e . repeat , h , k ) ; g . disableChoiceExpression = e . uiDisableChoice ; g . onHighlightCallback = e . onHighlight ; g . dropdownPosition = e . position ? e . position . toLowerCase ( ) : a . dropdownPosition ; b . $on ( "$destroy" , function ( ) { q . remove ( ) } ) ; b . $watch ( "$select.search" , function ( a ) { a && ! g . open && g . multiple && g . activate ( ! 1 , ! 0 ) ; g . activeIndex = g . tagging . isActivated ? - 1 : 0 ; ! e . minimumInputLength || g . search . length >= e . minimumInputLength ?
g . refresh ( e . refresh ) : g . items = [ ] } ) ; e . $observe ( "refreshDelay" , function ( ) { var c = b . $eval ( e . refreshDelay ) ; g . refreshDelay = void 0 !== c ? c : a . refreshDelay } ) } } } } ] ) ; k . controller ( "uiSelectCtrl" , [ "$scope" , "$element" , "$timeout" , "$filter" , "$$uisDebounce" , "uisRepeatParser" , "uiSelectMinErr" , "uiSelectConfig" , "$parse" , "$injector" , "$window" , function ( f , c , b , e , g , k , m , n , t , x , q ) { function h ( a , b , c ) { if ( a . findIndex ) return a . findIndex ( b , c ) ; var e ; a = Object ( a ) ; for ( var g = a . length >>> 0 , f = 0 ; g > f ; f ++ ) if ( e = a [ f ] , b . call ( c , e , f , a ) ) return f ; return - 1 }
function r ( ) { ( p . resetSearchInput || void 0 === p . resetSearchInput && n . resetSearchInput ) && ( p . search = u , p . selected && p . items . length && ! p . multiple && ( p . activeIndex = h ( p . items , function ( a ) { return angular . equals ( this , a ) } , p . selected ) ) ) } function A ( a , b ) { var c , e , g = [ ] ; for ( c = 0 ; c < b . length ; c ++ ) for ( e = 0 ; e < a . length ; e ++ ) a [ e ] . name == [ b [ c ] ] && g . push ( a [ e ] ) ; return g } function B ( b ) { var c = ! 0 ; switch ( b ) { case a . DOWN : ! p . open && p . multiple ? p . activate ( ! 1 , ! 0 ) : p . activeIndex < p . items . length - 1 && p . activeIndex ++ ; break ; case a . UP : ! p . open && p . multiple ?
p . activate ( ! 1 , ! 0 ) : ( 0 < p . activeIndex || 0 === p . search . length && p . tagging . isActivated && - 1 < p . activeIndex ) && p . activeIndex -- ; break ; case a . TAB : p . multiple && ! p . open || p . select ( p . items [ p . activeIndex ] , ! 0 ) ; break ; case a . ENTER : p . open && ( p . tagging . isActivated || 0 <= p . activeIndex ) ? p . select ( p . items [ p . activeIndex ] , p . skipFocusser ) : p . activate ( ! 1 , ! 0 ) ; break ; case a . ESC : p . close ( ) ; break ; default : c = ! 1 } return c } function F ( ) { var a = c . querySelectorAll ( ".ui-select-choices-content" ) , b = a . querySelectorAll ( ".ui-select-choices-row" ) ; if ( 1 > b . length ) throw m ( "choices" ,
2017-04-11 11:04:48 +00:00
"Expected multiple .ui-select-choices-row but got '{0}'." , b . length ) ; if ( ! ( 0 > p . activeIndex ) ) { var b = b [ p . activeIndex ] , e = b . offsetTop + b . clientHeight - a [ 0 ] . scrollTop , g = a [ 0 ] . offsetHeight ; e > g ? a [ 0 ] . scrollTop += e - g : e < b . clientHeight && ( p . isGrouped && 0 === p . activeIndex ? a [ 0 ] . scrollTop = 0 : a [ 0 ] . scrollTop -= b . clientHeight - e ) } } var p = this , u = "" ; p . placeholder = n . placeholder ; p . searchEnabled = n . searchEnabled ; p . sortable = n . sortable ; p . refreshDelay = n . refreshDelay ; p . paste = n . paste ; p . removeSelected = n . removeSelected ; p . closeOnSelect = ! 0 ;
2017-07-20 23:09:21 +00:00
p . skipFocusser = ! 1 ; p . search = u ; p . activeIndex = 0 ; p . items = [ ] ; p . open = ! 1 ; p . focus = ! 1 ; p . disabled = ! 1 ; p . selected = void 0 ; p . dropdownPosition = "auto" ; p . focusser = void 0 ; p . resetSearchInput = ! 0 ; p . setSearchToAnswer = ! 1 ; p . searchBy = void 0 ; p . multiple = void 0 ; p . disableChoiceExpression = void 0 ; p . tagging = { isActivated : ! 1 , fct : void 0 } ; p . taggingTokens = { isActivated : ! 1 , tokens : void 0 } ; p . lockChoiceExpression = void 0 ; p . clickTriggeredSelect = ! 1 ; p . $filter = e ; p . $element = c ; e = p ; var I ; try { I = x . get ( "$animate" ) } catch ( P ) { I = null } if ( e . $animate = I , p . searchInput =
c . querySelectorAll ( "input.ui-select-search" ) , 1 !== p . searchInput . length ) throw m ( "searchInput" , "Expected 1 input.ui-select-search but got '{0}'." , p . searchInput . length ) ; p . isEmpty = function ( ) { return angular . isUndefined ( p . selected ) || null === p . selected || "" === p . selected || p . multiple && 0 === p . selected . length } ; p . activate = function ( a , e ) { if ( ! p . disabled && ! p . open ) { e || r ( ) ; f . $broadcast ( "uis:activate" ) ; p . open = ! 0 ; p . activeIndex = p . activeIndex >= p . items . length ? 0 : p . activeIndex ; - 1 === p . activeIndex && ! 1 !== p . taggingLabel && ( p . activeIndex =
0 ) ; var g = c . querySelectorAll ( ".ui-select-choices-content" ) , h = c . querySelectorAll ( ".ui-select-search" ) ; if ( p . $animate && p . $animate . on && p . $animate . enabled ( g [ 0 ] ) ) { var k = function ( c , e ) { "start" === e && 0 === p . items . length ? ( p . $animate . off ( "removeClass" , h [ 0 ] , k ) , b ( function ( ) { p . focusSearchInput ( a ) } ) ) : "close" === e && ( p . $animate . off ( "enter" , g [ 0 ] , k ) , b ( function ( ) { p . focusSearchInput ( a ) } ) ) } ; 0 < p . items . length ? p . $animate . on ( "enter" , g [ 0 ] , k ) : p . $animate . on ( "removeClass" , h [ 0 ] , k ) } else b ( function ( ) { p . focusSearchInput ( a ) ; ! p . tagging . isActivated &&
1 < p . items . length && F ( ) } ) } } ; p . focusSearchInput = function ( a ) { p . search = a || p . search ; p . searchInput [ 0 ] . focus ( ) } ; p . findGroupByName = function ( a ) { return p . groups && p . groups . filter ( function ( b ) { return b . name === a } ) [ 0 ] } ; p . parseRepeatAttr = function ( a , b , c ) { function e ( a ) { var e = f . $eval ( b ) ; if ( p . groups = [ ] , angular . forEach ( a , function ( a ) { var b = angular . isFunction ( e ) ? e ( a ) : a [ e ] , c = p . findGroupByName ( b ) ; c ? c . items . push ( a ) : p . groups . push ( { name : b , items : [ a ] } ) } ) , c ) a = f . $eval ( c ) , angular . isFunction ( a ) ? p . groups = a ( p . groups ) : angular . isArray ( a ) &&
( p . groups = A ( p . groups , a ) ) ; p . items = [ ] ; p . groups . forEach ( function ( a ) { p . items = p . items . concat ( a . items ) } ) } function g ( a ) { p . items = a } p . setItemsFn = b ? e : g ; p . parserResult = k . parse ( a ) ; p . isGrouped = ! ! b ; p . itemProperty = p . parserResult . itemName ; var h = p . parserResult . source , n = function ( ) { var a = h ( f ) ; f . $uisSource = Object . keys ( a ) . map ( function ( b ) { var c = { } ; return c [ p . parserResult . keyName ] = b , c . value = a [ b ] , c } ) } ; p . parserResult . keyName && ( n ( ) , p . parserResult . source = t ( "$uisSource" + p . parserResult . filters ) , f . $watch ( h , function ( a , b ) { a !== b &&
2017-04-11 11:04:48 +00:00
n ( ) } , ! 0 ) ) ; p . refreshItems = function ( a ) { a = a || p . parserResult . source ( f ) ; var b = p . selected ; p . isEmpty ( ) || angular . isArray ( b ) && ! b . length || ! p . removeSelected ? p . setItemsFn ( a ) : void 0 !== a && ( a = a . filter ( function ( a ) { return angular . isArray ( b ) ? b . every ( function ( b ) { return ! angular . equals ( a , b ) } ) : ! angular . equals ( a , b ) } ) , p . setItemsFn ( a ) ) ; "auto" !== p . dropdownPosition && "up" !== p . dropdownPosition || f . calculateDropdownPos ( ) ; f . $broadcast ( "uis:refresh" ) } ; f . $watchCollection ( p . parserResult . source , function ( a ) { if ( void 0 === a || null === a ) p . items =
2017-07-25 17:51:59 +00:00
[ ] ; else { if ( ! angular . isArray ( a ) ) throw m ( "items" , "Expected an array but got '{0}'." , a ) ; p . refreshItems ( a ) ; angular . isDefined ( p . ngModel . $modelValue ) && ( p . ngModel . $modelValue = null ) } } ) } ; var J ; p . refresh = function ( a ) { void 0 !== a && ( J && b . cancel ( J ) , J = b ( function ( ) { f . $eval ( a ) } , p . refreshDelay ) ) } ; p . isActive = function ( a ) { if ( ! p . open ) return ! 1 ; var b = p . items . indexOf ( a [ p . itemProperty ] ) , c = b == p . activeIndex ; return ! ( ! c || 0 > b ) && ( c && ! angular . isUndefined ( p . onHighlightCallback ) && a . $eval ( p . onHighlightCallback ) , c ) } ; var E = function ( a ) { return p . selected &&
2017-07-20 23:09:21 +00:00
angular . isArray ( p . selected ) && 0 < p . selected . filter ( function ( b ) { return angular . equals ( b , a ) } ) . length } ; p . isDisabled = function ( a ) { if ( p . open ) { var b , c = p . items . indexOf ( a [ p . itemProperty ] ) , e = ! 1 ; return 0 <= c && ( ! angular . isUndefined ( p . disableChoiceExpression ) || p . multiple ) && ( b = p . items [ c ] , e = ! ! a . $eval ( p . disableChoiceExpression ) || E ( b ) , b . _uiSelectChoiceDisabled = e ) , e } } ; p . select = function ( a , c , e ) { if ( ! ( void 0 !== a && a . _uiSelectChoiceDisabled || ! ( p . items || p . search || p . tagging . isActivated ) || a && a . _uiSelectChoiceDisabled ) ) { if ( p . tagging . isActivated ) { if ( ! 1 ===
p . taggingLabel ) if ( 0 > p . activeIndex ) { if ( a = void 0 !== p . tagging . fct ? p . tagging . fct ( p . search ) : p . search , ! a || angular . equals ( p . items [ 0 ] , a ) ) return } else a = p . items [ p . activeIndex ] ; else if ( 0 === p . activeIndex ) { if ( void 0 === a ) return ; if ( void 0 !== p . tagging . fct && "string" == typeof a ) { if ( a = p . tagging . fct ( a ) , ! a ) return } else "string" == typeof a && ( a = a . replace ( p . taggingLabel , "" ) . trim ( ) ) } if ( E ( a ) ) return void p . close ( c ) } f . $broadcast ( "uis:select" , a ) ; var g = { } ; g [ p . parserResult . itemName ] = a ; b ( function ( ) { p . onSelectCallback ( f , { $item : a , $model : p . parserResult . modelMapper ( f ,
g ) } ) } ) ; p . closeOnSelect && p . close ( c ) ; e && "click" === e . type && ( p . clickTriggeredSelect = ! 0 ) } } ; p . close = function ( a ) { p . open && ( p . ngModel && p . ngModel . $setTouched && p . ngModel . $setTouched ( ) , r ( ) , ( p . setSearchToAnswer || void 0 === p . setSearchToAnswer && n . setSearchToAnswer ) && ( console . log ( "searchBy: " + p . searchBy ) , p . searchBy && ( console . log ( "_setSearchToAnswer" ) , p . resetSearchInput = ! 1 , p . search = p . selected [ p . searchBy ] ) ) , p . open = ! 1 , f . $broadcast ( "uis:close" , a ) ) } ; p . setFocus = function ( ) { p . focus || p . focusInput [ 0 ] . focus ( ) } ; p . clear = function ( a ) { p . select ( void 0 ) ;
a . stopPropagation ( ) ; b ( function ( ) { p . focusser [ 0 ] . focus ( ) } , 0 , ! 1 ) } ; p . toggle = function ( a ) { p . open ? ( p . close ( ) , a . preventDefault ( ) , a . stopPropagation ( ) ) : p . activate ( ) } ; p . isLocked = function ( a , b ) { var c , e = p . selected [ b ] ; return e && ! angular . isUndefined ( p . lockChoiceExpression ) && ( c = ! ! a . $eval ( p . lockChoiceExpression ) , e . _uiSelectChoiceLocked = c ) , c } ; var G = null , N = ! 1 ; p . sizeSearchInput = function ( ) { var a = p . searchInput [ 0 ] , c = p . searchInput . parent ( ) . parent ( ) [ 0 ] , e = function ( b ) { if ( 0 === b ) return ! 1 ; var c = b - a . offsetLeft - 10 ; return 50 > c && ( c =
b ) , p . searchInput . css ( "width" , c + "px" ) , ! 0 } ; p . searchInput . css ( "width" , "10px" ) ; b ( function ( ) { null !== G || e ( c . clientWidth * ! ! a . offsetParent ) || ( G = f . $watch ( function ( ) { N || ( N = ! 0 , f . $$postDigest ( function ( ) { N = ! 1 ; e ( c . clientWidth * ! ! a . offsetParent ) && ( G ( ) , G = null ) } ) ) } , angular . noop ) ) } ) } ; p . searchInput . on ( "keydown" , function ( c ) { var e = c . which ; ~ [ a . ENTER , a . ESC ] . indexOf ( e ) && ( c . preventDefault ( ) , c . stopPropagation ( ) ) ; f . $apply ( function ( ) { var g = ! 1 ; if ( ( 0 < p . items . length || p . tagging . isActivated ) && ( B ( e ) , p . taggingTokens . isActivated ) ) { for ( var f =
0 ; f < p . taggingTokens . tokens . length ; f ++ ) p . taggingTokens . tokens [ f ] === a . MAP [ c . keyCode ] && 0 < p . search . length && ( g = ! 0 ) ; g && b ( function ( ) { p . searchInput . triggerHandler ( "tagged" ) ; var b = p . search . replace ( a . MAP [ c . keyCode ] , "" ) . trim ( ) ; p . tagging . fct && ( b = p . tagging . fct ( b ) ) ; b && p . select ( b , ! 0 ) } ) } } ) ; a . isVerticalMovement ( e ) && 0 < p . items . length && F ( ) ; e !== a . ENTER && e !== a . ESC || ( c . preventDefault ( ) , c . stopPropagation ( ) ) } ) ; p . searchInput . on ( "paste" , function ( b ) { var c ; if ( c = window . clipboardData && window . clipboardData . getData ? window . clipboardData . getData ( "Text" ) :
( b . originalEvent || b ) . clipboardData . getData ( "text/plain" ) , c = p . search + c , c && 0 < c . length ) if ( p . taggingTokens . isActivated ) { for ( var e = [ ] , g = 0 ; g < p . taggingTokens . tokens . length ; g ++ ) { var f = a . toSeparator ( p . taggingTokens . tokens [ g ] ) || p . taggingTokens . tokens [ g ] ; if ( - 1 < c . indexOf ( f ) ) { e = c . split ( f ) ; break } } if ( 0 === e . length && ( e = [ c ] ) , 0 < e . length ) c = p . search , angular . forEach ( e , function ( a ) { ( a = p . tagging . fct ? p . tagging . fct ( a ) : a ) && p . select ( a , ! 0 ) } ) , p . search = c || u , b . preventDefault ( ) , b . stopPropagation ( ) } else p . paste && ( p . paste ( c ) , p . search =
u , b . preventDefault ( ) , b . stopPropagation ( ) ) } ) ; p . searchInput . on ( "tagged" , function ( ) { b ( function ( ) { r ( ) } ) } ) ; var K = g ( function ( ) { p . sizeSearchInput ( ) } , 50 ) ; angular . element ( q ) . bind ( "resize" , K ) ; f . $on ( "$destroy" , function ( ) { p . searchInput . off ( "keyup keydown tagged blur paste" ) ; angular . element ( q ) . off ( "resize" , K ) } ) } ] ) ; k . directive ( "uiSelect" , [ "$document" , "uiSelectConfig" , "uiSelectMinErr" , "uisOffset" , "$compile" , "$parse" , "$timeout" , function ( a , c , b , e , g , f , k ) { return { restrict : "EA" , templateUrl : function ( a , b ) { return ( b . theme ||
c . theme ) + ( angular . isDefined ( b . multiple ) ? "/select-multiple.tpl.html" : "/select.tpl.html" ) } , replace : ! 0 , transclude : ! 0 , require : [ "uiSelect" , "^ngModel" ] , scope : ! 0 , controller : "uiSelectCtrl" , controllerAs : "$select" , compile : function ( g , h ) { var m = /{(.*)}\s*{(.*)}/ . exec ( h . ngClass ) ; m && ( m = "{" + m [ 1 ] + ", " + m [ 2 ] + "}" , h . ngClass = m , g . attr ( "ng-class" , m ) ) ; return angular . isDefined ( h . multiple ) ? g . append ( "<ui-select-multiple/>" ) . removeAttr ( "multiple" ) : g . append ( "<ui-select-single/>" ) , h . inputId && ( g . querySelectorAll ( "input.ui-select-search" ) [ 0 ] . id =
h . inputId ) , function ( g , h , m , n , r ) { function t ( a ) { if ( u . open ) { var b = ! 1 ; if ( b = window . jQuery ? window . jQuery . contains ( h [ 0 ] , a . target ) : h [ 0 ] . contains ( a . target ) , ! b && ! u . clickTriggeredSelect ) { var c ; u . skipFocusser ? c = ! 0 : ( b = [ "input" , "button" , "textarea" , "select" ] , ( c = ( c = angular . element ( a . target ) . controller ( "uiSelect" ) ) && c !== u ) || ( c = ~ b . indexOf ( a . target . tagName . toLowerCase ( ) ) ) ) ; u . close ( c ) ; g . $digest ( ) } u . clickTriggeredSelect = ! 1 } } function q ( ) { null !== x && ( x . replaceWith ( h ) , x = null , h [ 0 ] . style . position = "" , h [ 0 ] . style . left = "" , h [ 0 ] . style . top =
"" , h [ 0 ] . style . width = v , u . setFocus ( ) ) } var u = n [ 0 ] ; n = n [ 1 ] ; u . generatedId = c . generateId ( ) ; u . baseTitle = m . title || "Select box" ; u . focusserTitle = u . baseTitle + " focus" ; u . focusserId = "focusser-" + u . generatedId ; u . closeOnSelect = angular . isDefined ( m . closeOnSelect ) ? f ( m . closeOnSelect ) ( ) : c . closeOnSelect ; g . $watch ( "skipFocusser" , function ( ) { var a = g . $eval ( m . skipFocusser ) ; u . skipFocusser = void 0 !== a ? a : c . skipFocusser } ) ; u . onSelectCallback = f ( m . onSelect ) ; u . onRemoveCallback = f ( m . onRemove ) ; u . ngModel = n ; u . choiceGrouped = function ( a ) { return u . isGrouped &&
a && a . name } ; m . tabindex && m . $observe ( "tabindex" , function ( a ) { u . focusInput . attr ( "tabindex" , a ) ; h . removeAttr ( "tabindex" ) } ) ; g . $watch ( "searchEnabled" , function ( ) { var a = g . $eval ( m . searchEnabled ) ; u . searchEnabled = void 0 !== a ? a : c . searchEnabled } ) ; g . $watch ( "sortable" , function ( ) { var a = g . $eval ( m . sortable ) ; u . sortable = void 0 !== a ? a : c . sortable } ) ; m . $observe ( "limit" , function ( ) { u . limit = angular . isDefined ( m . limit ) ? parseInt ( m . limit , 10 ) : void 0 } ) ; g . $watch ( "removeSelected" , function ( ) { var a = g . $eval ( m . removeSelected ) ; u . removeSelected =
2017-07-25 17:51:59 +00:00
void 0 !== a ? a : c . removeSelected } ) ; m . $observe ( "disabled" , function ( ) { u . disabled = void 0 !== m . disabled && m . disabled } ) ; m . $observe ( "resetSearchInput" , function ( ) { var a = g . $eval ( m . resetSearchInput ) ; u . resetSearchInput = void 0 === a || a } ) ; m . $observe ( "setSearchToAnswer" , function ( ) { var a = g . $eval ( m . setSearchToAnswer ) ; u . setSearchToAnswer = void 0 === a || a } ) ; m . $observe ( "searchBy" , function ( ) { u . searchBy = m . searchBy } ) ; m . $observe ( "paste" , function ( ) { u . paste = g . $eval ( m . paste ) } ) ; m . $observe ( "tagging" , function ( ) { if ( void 0 !== m . tagging ) { var a =
2017-07-20 23:09:21 +00:00
g . $eval ( m . tagging ) ; u . tagging = { isActivated : ! 0 , fct : ! 0 !== a ? a : void 0 } } else u . tagging = { isActivated : ! 1 , fct : void 0 } } ) ; m . $observe ( "taggingLabel" , function ( ) { void 0 !== m . tagging && ( "false" === m . taggingLabel ? u . taggingLabel = ! 1 : u . taggingLabel = void 0 !== m . taggingLabel ? m . taggingLabel : "(new)" ) } ) ; m . $observe ( "taggingTokens" , function ( ) { if ( void 0 !== m . tagging ) { var a = void 0 !== m . taggingTokens ? m . taggingTokens . split ( "|" ) : [ "," , "ENTER" ] ; u . taggingTokens = { isActivated : ! 0 , tokens : a } } } ) ; angular . isDefined ( m . autofocus ) && k ( function ( ) { u . setFocus ( ) } ) ;
angular . isDefined ( m . focusOn ) && g . $on ( m . focusOn , function ( ) { k ( function ( ) { u . setFocus ( ) } ) } ) ; a . on ( "click" , t ) ; g . $on ( "$destroy" , function ( ) { a . off ( "click" , t ) } ) ; r ( g , function ( a ) { a = angular . element ( "<div>" ) . append ( a ) ; var c = a . querySelectorAll ( ".ui-select-match" ) ; if ( c . removeAttr ( "ui-select-match" ) , c . removeAttr ( "data-ui-select-match" ) , 1 !== c . length ) throw b ( "transcluded" , "Expected 1 .ui-select-match but got '{0}'." , c . length ) ; h . querySelectorAll ( ".ui-select-match" ) . replaceWith ( c ) ; c = a . querySelectorAll ( ".ui-select-choices" ) ;
if ( c . removeAttr ( "ui-select-choices" ) , c . removeAttr ( "data-ui-select-choices" ) , 1 !== c . length ) throw b ( "transcluded" , "Expected 1 .ui-select-choices but got '{0}'." , c . length ) ; h . querySelectorAll ( ".ui-select-choices" ) . replaceWith ( c ) ; a = a . querySelectorAll ( ".ui-select-no-choice" ) ; a . removeAttr ( "ui-select-no-choice" ) ; a . removeAttr ( "data-ui-select-no-choice" ) ; 1 == a . length && h . querySelectorAll ( ".ui-select-no-choice" ) . replaceWith ( a ) } ) ; r = g . $eval ( m . appendToBody ) ; ( void 0 !== r ? r : c . appendToBody ) && ( g . $watch ( "$select.open" ,
function ( b ) { b ? ( b = e ( h ) , x = angular . element ( '<div class="ui-select-placeholder"></div>' ) , x [ 0 ] . style . width = b . width + "px" , x [ 0 ] . style . height = b . height + "px" , h . after ( x ) , v = h [ 0 ] . style . width , a . find ( "body" ) . append ( h ) , h [ 0 ] . style . position = "absolute" , h [ 0 ] . style . left = b . left + "px" , h [ 0 ] . style . top = b . top + "px" , h [ 0 ] . style . width = b . width + "px" ) : q ( ) } ) , g . $on ( "$destroy" , function ( ) { q ( ) } ) ) ; var x = null , v = "" , A = null ; g . $watch ( "$select.open" , function ( ) { "auto" !== u . dropdownPosition && "up" !== u . dropdownPosition || g . calculateDropdownPos ( ) } ) ; var G =
function ( a , b ) { a || e ( h ) ; b = b || e ( A ) ; A [ 0 ] . style . position = "absolute" ; A [ 0 ] . style . top = - 1 * b . height + "px" ; h . addClass ( "direction-up" ) } , B = function ( ) { k ( function ( ) { if ( "up" === u . dropdownPosition ) G ( ) ; else { h . removeClass ( "direction-up" ) ; var b = e ( h ) , c = e ( A ) ; b . top + b . height + c . height > ( a [ 0 ] . documentElement . scrollTop || a [ 0 ] . body . scrollTop ) + a [ 0 ] . documentElement . clientHeight ? G ( b , c ) : ( h . removeClass ( "direction-up" ) , b || e ( h ) , c || e ( A ) , A [ 0 ] . style . position = "" , A [ 0 ] . style . top = "" ) } A [ 0 ] . style . opacity = 1 } ) } ; g . calculateDropdownPos = function ( ) { if ( u . open ) { if ( A =
angular . element ( h ) . querySelectorAll ( ".ui-select-dropdown" ) , 0 !== A . length ) if ( A [ 0 ] . style . opacity = 0 , ! e ( A ) . height && u . $animate && u . $animate . on && u . $animate . enabled ( A ) ) { var a = ! 0 ; u . $animate . on ( "enter" , A , function ( b , c ) { "close" === c && a && ( B ( ) , a = ! 1 ) } ) } else B ( ) } else null !== A && 0 !== A . length && ( A [ 0 ] . style . opacity = 0 , A [ 0 ] . style . position = "" , A [ 0 ] . style . top = "" , h . removeClass ( "direction-up" ) ) } } } } } ] ) ; k . directive ( "uiSelectMatch" , [ "uiSelectConfig" , function ( a ) { function c ( a , c ) { return a [ 0 ] . hasAttribute ( c ) ? a . attr ( c ) : a [ 0 ] . hasAttribute ( "data-" +
2017-07-25 17:51:59 +00:00
c ) ? a . attr ( "data-" + c ) : a [ 0 ] . hasAttribute ( "x-" + c ) ? a . attr ( "x-" + c ) : void 0 } return { restrict : "EA" , require : "^uiSelect" , replace : ! 0 , transclude : ! 0 , templateUrl : function ( b ) { b . addClass ( "ui-select-match" ) ; var e = b . parent ( ) ; b = c ( e , "theme" ) || a . theme ; e = angular . isDefined ( c ( e , "multiple" ) ) ; return b + ( e ? "/match-multiple.tpl.html" : "/match.tpl.html" ) } , link : function ( b , c , g , f ) { function e ( a ) { f . allowClear = ! ! angular . isDefined ( a ) && ( "" === a || "true" === a . toLowerCase ( ) ) } f . lockChoiceExpression = g . uiLockChoice ; g . $observe ( "placeholder" , function ( b ) { f . placeholder =
2017-07-20 23:09:21 +00:00
void 0 !== b ? b : a . placeholder } ) ; g . $observe ( "allowClear" , e ) ; e ( g . allowClear ) ; f . multiple && f . sizeSearchInput ( ) } } } ] ) ; k . directive ( "uiSelectMultiple" , [ "uiSelectMinErr" , "$timeout" , function ( f , c ) { return { restrict : "EA" , require : [ "^uiSelect" , "^ngModel" ] , controller : [ "$scope" , "$timeout" , function ( a , c ) { var b , e = this , f = a . $select ; angular . isUndefined ( f . selected ) && ( f . selected = [ ] ) ; a . $evalAsync ( function ( ) { b = a . ngModel } ) ; e . activeMatchIndex = - 1 ; e . updateModel = function ( ) { b . $setViewValue ( Date . now ( ) ) ; e . refreshComponent ( ) } ; e . refreshComponent =
function ( ) { f . refreshItems ( ) ; f . sizeSearchInput ( ) } ; e . removeChoice = function ( b ) { var g = f . selected [ b ] ; if ( ! g . _uiSelectChoiceLocked ) { var h = { } ; h [ f . parserResult . itemName ] = g ; f . selected . splice ( b , 1 ) ; e . activeMatchIndex = - 1 ; f . sizeSearchInput ( ) ; c ( function ( ) { f . onRemoveCallback ( a , { $item : g , $model : f . parserResult . modelMapper ( a , h ) } ) } ) ; e . updateModel ( ) } } ; e . getPlaceholder = function ( ) { return f . selected && f . selected . length ? void 0 : f . placeholder } } ] , controllerAs : "$selectMultiple" , link : function ( b , e , g , h ) { function k ( a ) { return angular . isNumber ( a . selectionStart ) ?
2017-07-25 17:51:59 +00:00
a . selectionStart : a . value . length } function n ( b ) { function c ( ) { switch ( b ) { case a . LEFT : return ~ z . activeMatchIndex ? m : g ; case a . RIGHT : return ~ z . activeMatchIndex && f !== g ? h : ( q . activate ( ) , ! 1 ) ; case a . BACKSPACE : return ~ z . activeMatchIndex ? ( z . removeChoice ( f ) , m ) : g ; case a . DELETE : return ! ! ~ z . activeMatchIndex && ( z . removeChoice ( z . activeMatchIndex ) , f ) } } var e = k ( q . searchInput [ 0 ] ) , g = q . selected . length - 1 , f = z . activeMatchIndex , h = z . activeMatchIndex + 1 , m = z . activeMatchIndex - 1 , n = f ; return ! ( 0 < e || q . search . length && b == a . RIGHT ) && ( q . close ( ) , n =
c ( ) , q . selected . length && ! 1 !== n ? z . activeMatchIndex = Math . min ( g , Math . max ( 0 , n ) ) : z . activeMatchIndex = - 1 , ! 0 ) } function r ( a ) { return void 0 === a || void 0 === q . search ? ! 1 : 0 < a . filter ( function ( a ) { return void 0 !== q . search . toUpperCase ( ) && void 0 !== a && a . toUpperCase ( ) === q . search . toUpperCase ( ) } ) . length } function x ( a , b ) { var c = - 1 ; if ( angular . isArray ( a ) ) for ( var e = angular . copy ( a ) , g = 0 ; g < e . length ; g ++ ) if ( void 0 === q . tagging . fct ) e [ g ] + " " + q . taggingLabel === b && ( c = g ) ; else { var f = e [ g ] ; angular . isObject ( f ) && ( f . isTag = ! 0 ) ; angular . equals ( f , b ) &&
( c = g ) } return c } var q = h [ 0 ] , v = b . ngModel = h [ 1 ] , z = b . $selectMultiple ; q . multiple = ! 0 ; q . focusInput = q . searchInput ; v . $isEmpty = function ( a ) { return ! a || 0 === a . length } ; v . $parsers . unshift ( function ( ) { for ( var a , c = [ ] , e = q . selected . length - 1 ; 0 <= e ; e -- ) a = { } , a [ q . parserResult . itemName ] = q . selected [ e ] , a = q . parserResult . modelMapper ( b , a ) , c . unshift ( a ) ; return c } ) ; v . $formatters . unshift ( function ( a ) { var c , e = q . parserResult && q . parserResult . source ( b , { $select : { search : "" } } ) , g = { } ; if ( ! e ) return a ; var f = [ ] , h = function ( a , e ) { if ( a && a . length ) { for ( var h =
2017-07-20 23:09:21 +00:00
a . length - 1 ; 0 <= h ; h -- ) { if ( g [ q . parserResult . itemName ] = a [ h ] , c = q . parserResult . modelMapper ( b , g ) , q . parserResult . trackByExp ) { var k = /(\w*)\./ . exec ( q . parserResult . trackByExp ) , m = /\.([^\s]+)/ . exec ( q . parserResult . trackByExp ) ; if ( k && 0 < k . length && k [ 1 ] == q . parserResult . itemName && m && 0 < m . length && c [ m [ 1 ] ] == e [ m [ 1 ] ] ) return f . unshift ( a [ h ] ) , ! 0 } if ( angular . equals ( c , e ) ) return f . unshift ( a [ h ] ) , ! 0 } return ! 1 } } ; if ( ! a ) return f ; for ( var k = a . length - 1 ; 0 <= k ; k -- ) h ( q . selected , a [ k ] ) || h ( e , a [ k ] ) || f . unshift ( a [ k ] ) ; return f } ) ; b . $watchCollection ( function ( ) { return v . $modelValue } ,
function ( a , b ) { b != a && ( angular . isDefined ( v . $modelValue ) && ( v . $modelValue = null ) , z . refreshComponent ( ) ) } ) ; v . $render = function ( ) { if ( ! angular . isArray ( v . $viewValue ) ) { if ( ! angular . isUndefined ( v . $viewValue ) && null !== v . $viewValue ) throw f ( "multiarr" , "Expected model value to be array but got '{0}'" , v . $viewValue ) ; q . selected = [ ] } q . selected = v . $viewValue ; z . refreshComponent ( ) ; b . $evalAsync ( ) } ; b . $on ( "uis:select" , function ( a , b ) { q . selected . length >= q . limit || ( q . selected . push ( b ) , z . updateModel ( ) ) } ) ; b . $on ( "uis:activate" , function ( ) { z . activeMatchIndex =
- 1 } ) ; b . $watch ( "$select.disabled" , function ( a , b ) { b && ! a && q . sizeSearchInput ( ) } ) ; q . searchInput . on ( "keydown" , function ( c ) { var e = c . which ; b . $apply ( function ( ) { var b = ! 1 ; a . isHorizontalMovement ( e ) && ( b = n ( e ) ) ; b && e != a . TAB && ( c . preventDefault ( ) , c . stopPropagation ( ) ) } ) } ) ; q . searchInput . on ( "keyup" , function ( c ) { if ( ( a . isVerticalMovement ( c . which ) || b . $evalAsync ( function ( ) { q . activeIndex = ! 1 === q . taggingLabel ? - 1 : 0 } ) , q . tagging . isActivated && 0 < q . search . length ) && ! ( c . which === a . TAB || a . isControl ( c ) || a . isFunctionKey ( c ) || c . which === a . ESC ||
a . isVerticalMovement ( c . which ) || ( q . activeIndex = ! 1 === q . taggingLabel ? - 1 : 0 , ! 1 === q . taggingLabel ) ) ) { var e , g , f , h , k = angular . copy ( q . items ) ; c = angular . copy ( q . items ) ; var m = ! 1 , n = - 1 ; if ( void 0 !== q . tagging . fct ) { if ( f = q . $filter ( "filter" ) ( k , { isTag : ! 0 } ) , 0 < f . length && ( h = f [ 0 ] ) , 0 < k . length && h && ( m = ! 0 , k = k . slice ( 1 , k . length ) , c = c . slice ( 1 , c . length ) ) , e = q . tagging . fct ( q . search ) , c . some ( function ( a ) { return angular . equals ( a , e ) } ) || q . selected . some ( function ( a ) { return angular . equals ( a , e ) } ) ) return void b . $evalAsync ( function ( ) { q . activeIndex =
0 ; q . items = k } ) ; e && ( e . isTag = ! 0 ) } else { if ( f = q . $filter ( "filter" ) ( k , function ( a ) { return a . match ( q . taggingLabel ) } ) , 0 < f . length && ( h = f [ 0 ] ) , g = k [ 0 ] , void 0 !== g && 0 < k . length && h && ( m = ! 0 , k = k . slice ( 1 , k . length ) , c = c . slice ( 1 , c . length ) ) , e = q . search + " " + q . taggingLabel , - 1 < x ( q . selected , q . search ) ) return ; if ( r ( c . concat ( q . selected ) ) ) return void ( m && ( k = c , b . $evalAsync ( function ( ) { q . activeIndex = 0 ; q . items = k } ) ) ) ; if ( r ( c ) ) return void ( m && ( q . items = c . slice ( 1 , c . length ) ) ) } m && ( n = x ( q . selected , e ) ) ; - 1 < n ? k = k . slice ( n + 1 , k . length - 1 ) : ( k = [ ] , e && k . push ( e ) ,
k = k . concat ( c ) ) ; b . $evalAsync ( function ( ) { if ( q . activeIndex = 0 , q . items = k , q . isGrouped ) { var a = e ? k . slice ( 1 ) : k ; q . setItemsFn ( a ) ; e && ( q . items . unshift ( e ) , q . groups . unshift ( { name : "" , items : [ e ] , tagging : ! 0 } ) ) } } ) } } ) ; q . searchInput . on ( "blur" , function ( ) { c ( function ( ) { z . activeMatchIndex = - 1 } ) } ) } } } ] ) ; k . directive ( "uiSelectNoChoice" , [ "uiSelectConfig" , function ( a ) { return { restrict : "EA" , require : "^uiSelect" , replace : ! 0 , transclude : ! 0 , templateUrl : function ( c ) { c . addClass ( "ui-select-no-choice" ) ; return ( c . parent ( ) . attr ( "theme" ) || a . theme ) +
"/no-choice.tpl.html" } } } ] ) ; k . directive ( "uiSelectSingle" , [ "$timeout" , "$compile" , function ( f , c ) { return { restrict : "EA" , require : [ "^uiSelect" , "^ngModel" ] , link : function ( b , e , g , h ) { var k = h [ 0 ] , n = h [ 1 ] ; n . $parsers . unshift ( function ( a ) { var c = { } ; return c [ k . parserResult . itemName ] = a , k . parserResult . modelMapper ( b , c ) } ) ; n . $formatters . unshift ( function ( a ) { var c , e = k . parserResult && k . parserResult . source ( b , { $select : { search : "" } } ) , g = { } ; if ( e ) { var f = function ( e ) { return g [ k . parserResult . itemName ] = e , c = k . parserResult . modelMapper ( b , g ) ,
c === a } ; if ( k . selected && f ( k . selected ) ) return k . selected ; for ( var h = e . length - 1 ; 0 <= h ; h -- ) if ( f ( e [ h ] ) ) return e [ h ] } return a } ) ; b . $watch ( "$select.selected" , function ( a ) { n . $viewValue !== a && n . $setViewValue ( a ) } ) ; n . $render = function ( ) { k . selected = n . $viewValue } ; b . $on ( "uis:select" , function ( a , b ) { k . selected = b } ) ; b . $on ( "uis:close" , function ( a , b ) { f ( function ( ) { k . focusser . prop ( "disabled" , ! 1 ) ; b || k . focusser [ 0 ] . focus ( ) } , 0 , ! 1 ) } ) ; b . $on ( "uis:activate" , function ( ) { r . prop ( "disabled" , ! 0 ) } ) ; var r = angular . element ( "<input ng-disabled='$select.disabled' class='ui-select-focusser ui-select-offscreen' type='text' id='{{ $select.focusserId }}' aria-label='{{ $select.focusserTitle }}' aria-haspopup='true' role='button' />" ) ;
c ( r ) ( b ) ; k . focusser = r ; k . focusInput = r ; e . parent ( ) . append ( r ) ; r . bind ( "focus" , function ( ) { b . $evalAsync ( function ( ) { k . focus = ! 0 } ) } ) ; r . bind ( "blur" , function ( ) { b . $evalAsync ( function ( ) { k . focus = ! 1 } ) } ) ; r . bind ( "keydown" , function ( c ) { return c . which === a . BACKSPACE ? ( c . preventDefault ( ) , c . stopPropagation ( ) , k . select ( void 0 ) , void b . $apply ( ) ) : void ( c . which === a . TAB || a . isControl ( c ) || a . isFunctionKey ( c ) || c . which === a . ESC || ( c . which != a . DOWN && c . which != a . UP && c . which != a . ENTER && c . which != a . SPACE || ( c . preventDefault ( ) , c . stopPropagation ( ) ,
k . activate ( ) ) , b . $digest ( ) ) ) } ) ; r . bind ( "keyup input" , function ( c ) { c . which === a . TAB || a . isControl ( c ) || a . isFunctionKey ( c ) || c . which === a . ESC || c . which == a . ENTER || c . which === a . BACKSPACE || ( k . activate ( r . val ( ) ) , r . val ( "" ) , b . $digest ( ) ) } ) } } } ] ) ; k . directive ( "uiSelectSort" , [ "$timeout" , "uiSelectConfig" , "uiSelectMinErr" , function ( a , c , b ) { return { require : [ "^^uiSelect" , "^ngModel" ] , link : function ( c , g , f , h ) { if ( null === c [ f . uiSelectSort ] ) throw b ( "sort" , "Expected a list to sort" ) ; var e = h [ 0 ] , k = h [ 1 ] , m = angular . extend ( { axis : "horizontal" } ,
c . $eval ( f . uiSelectSortOptions ) ) . axis ; c . $watch ( function ( ) { return e . sortable } , function ( a ) { a ? g . attr ( "draggable" , ! 0 ) : g . removeAttr ( "draggable" ) } ) ; g . on ( "dragstart" , function ( a ) { g . addClass ( "dragging" ) ; ( a . dataTransfer || a . originalEvent . dataTransfer ) . setData ( "text" , c . $index . toString ( ) ) } ) ; g . on ( "dragend" , function ( ) { z ( "dragging" ) } ) ; var r , v = function ( a , b ) { this . splice ( b , 0 , this . splice ( a , 1 ) [ 0 ] ) } , z = function ( a ) { angular . forEach ( e . $element . querySelectorAll ( "." + a ) , function ( b ) { angular . element ( b ) . removeClass ( a ) } ) } , A = function ( a ) { a . preventDefault ( ) ;
( "vertical" === m ? a . offsetY || a . layerY || ( a . originalEvent ? a . originalEvent . offsetY : 0 ) : a . offsetX || a . layerX || ( a . originalEvent ? a . originalEvent . offsetX : 0 ) ) < this [ "vertical" === m ? "offsetHeight" : "offsetWidth" ] / 2 ? ( z ( "dropping-after" ) , g . addClass ( "dropping-before" ) ) : ( z ( "dropping-before" ) , g . addClass ( "dropping-after" ) ) } , B = function ( b ) { b . preventDefault ( ) ; var c = parseInt ( ( b . dataTransfer || b . originalEvent . dataTransfer ) . getData ( "text" ) , 10 ) ; a . cancel ( r ) ; r = a ( function ( ) { F ( c ) } , 20 ) } , F = function ( a ) { var b = c . $eval ( f . uiSelectSort ) ,
e = b [ a ] , h = null , h = g . hasClass ( "dropping-before" ) ? a < c . $index ? c . $index - 1 : c . $index : a < c . $index ? c . $index : c . $index + 1 ; v . apply ( b , [ a , h ] ) ; k . $setViewValue ( Date . now ( ) ) ; c . $apply ( function ( ) { c . $emit ( "uiSelectSort:change" , { array : b , item : e , from : a , to : h } ) } ) ; z ( "dropping" ) ; z ( "dropping-before" ) ; z ( "dropping-after" ) ; g . off ( "drop" , B ) } ; g . on ( "dragenter" , function ( ) { g . hasClass ( "dragging" ) || ( g . addClass ( "dropping" ) , g . on ( "dragover" , A ) , g . on ( "drop" , B ) ) } ) ; g . on ( "dragleave" , function ( a ) { a . target == g && ( z ( "dropping" ) , z ( "dropping-before" ) , z ( "dropping-after" ) ,
g . off ( "dragover" , A ) , g . off ( "drop" , B ) ) } ) } } } ] ) ; k . factory ( "$$uisDebounce" , [ "$timeout" , function ( a ) { return function ( c , b ) { var e ; return function ( ) { var g = this , f = Array . prototype . slice . call ( arguments ) ; e && a . cancel ( e ) ; e = a ( function ( ) { c . apply ( g , f ) } , b ) } } } ] ) ; k . service ( "uisRepeatParser" , [ "uiSelectMinErr" , "$parse" , function ( a , c ) { this . parse = function ( b ) { var e ; if ( e = b . match ( /^\s*(?:([\s\S]+?)\s+as\s+)?(?:([\$\w][\$\w]*)|(?:\(\s*([\$\w][\$\w]*)\s*,\s*([\$\w][\$\w]*)\s*\)))\s+in\s+(\s*[\s\S]+?)?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/ ) ,
! e ) throw a ( "iexp" , "Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'." , b ) ; b = e [ 5 ] ; var g = "" ; if ( e [ 3 ] ) { b = e [ 5 ] . replace ( /(^\()|(\)$)/g , "" ) ; var f = e [ 5 ] . match ( /^\s*(?:[\s\S]+?)(?:[^\|]|\|\|)+([\s\S]*)\s*$/ ) ; f && f [ 1 ] . trim ( ) && ( g = f [ 1 ] , b = b . replace ( g , "" ) ) } return { itemName : e [ 4 ] || e [ 2 ] , keyName : e [ 3 ] , source : c ( b ) , filters : g , trackByExp : e [ 6 ] , modelMapper : c ( e [ 1 ] || e [ 4 ] || e [ 2 ] ) , repeatExpression : function ( a ) { a = this . itemName + " in " + ( a ? "$group.items" : "$select.items" ) ; return this . trackByExp && ( a +=
2017-04-11 07:10:36 +00:00
" track by " + this . trackByExp ) , a } } } ; this . getGroupNgRepeatExpression = function ( ) { return "$group in $select.groups" } } ] ) } ( ) ;
2017-07-20 23:09:21 +00:00
angular . module ( "ui.select" ) . run ( [ "$templateCache" , function ( a ) { a . put ( "bootstrap/choices.tpl.html" , '<ul class="ui-select-choices ui-select-choices-content ui-select-dropdown dropdown-menu" role="listbox" ng-show="$select.open && $select.items.length > 0"><li class="ui-select-choices-group" id="ui-select-choices-{{ $select.generatedId }}"><div class="divider" ng-show="$select.isGrouped && $index > 0"></div><div ng-show="$select.isGrouped" class="ui-select-choices-group-label dropdown-header" ng-bind="$group.name"></div><div ng-attr-id="ui-select-choices-row-{{ $select.generatedId }}-{{$index}}" class="ui-select-choices-row" ng-class="{active: $select.isActive(this), disabled: $select.isDisabled(this)}" role="option"><a href="" class="ui-select-choices-row-inner"></a></div></li></ul>' ) ; a . put ( "bootstrap/match-multiple.tpl.html" ,
2017-04-11 07:10:36 +00:00
'<span class="ui-select-match"><span ng-repeat="$item in $select.selected"><span class="ui-select-match-item btn btn-default btn-xs" tabindex="-1" type="button" ng-disabled="$select.disabled" ng-click="$selectMultiple.activeMatchIndex = $index;" ng-class="{\'btn-primary\':$selectMultiple.activeMatchIndex === $index, \'select-locked\':$select.isLocked(this, $index)}" ui-select-sort="$select.selected"><span class="close ui-select-match-close" ng-hide="$select.disabled" ng-click="$selectMultiple.removeChoice($index)"> ×</span> <span uis-transclude-append=""></span></span></span></span>' ) ;
2017-07-20 23:09:21 +00:00
a . put ( "bootstrap/match.tpl.html" , '<div class="ui-select-match" ng-hide="$select.open && $select.searchEnabled" ng-disabled="$select.disabled" ng-class="{\'btn-default-focus\':$select.focus}"><span tabindex="-1" class="btn btn-default form-control ui-select-toggle" aria-label="{{ $select.baseTitle }} activate" ng-disabled="$select.disabled" ng-click="$select.activate()" style="outline: 0;"><span ng-show="$select.isEmpty()" class="ui-select-placeholder text-muted">{{$select.placeholder}}</span> <span ng-hide="$select.isEmpty()" class="ui-select-match-text pull-left" ng-class="{\'ui-select-allow-clear\': $select.allowClear && !$select.isEmpty()}" ng-transclude=""></span> <i class="caret pull-right" ng-click="$select.toggle($event)"></i> <a ng-show="$select.allowClear && !$select.isEmpty() && ($select.disabled !== true)" aria-label="{{ $select.baseTitle }} clear" style="margin-right: 10px" ng-click="$select.clear($event)" class="btn btn-xs btn-link pull-right"><i class="glyphicon glyphicon-remove" aria-hidden="true"></i></a></span></div>' ) ;
a . put ( "bootstrap/no-choice.tpl.html" , '<ul class="ui-select-no-choice dropdown-menu" ng-show="$select.items.length == 0"><li ng-transclude=""></li></ul>' ) ; a . put ( "bootstrap/select-multiple.tpl.html" , '<div class="ui-select-container ui-select-multiple ui-select-bootstrap dropdown form-control" ng-class="{open: $select.open}"><div><div class="ui-select-match"></div><input type="search" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" class="ui-select-search input-xs" placeholder="{{$selectMultiple.getPlaceholder()}}" ng-disabled="$select.disabled" ng-hide="$select.disabled" ng-click="$select.activate()" ng-model="$select.search" role="combobox" aria-label="{{ $select.baseTitle }}" ondrop="return false;"></div><div class="ui-select-choices"></div><div class="ui-select-no-choice"></div></div>' ) ;
a . put ( "bootstrap/select.tpl.html" , '<div class="ui-select-container ui-select-bootstrap dropdown" ng-class="{open: $select.open}"><div class="ui-select-match"></div><input type="search" autocomplete="off" tabindex="-1" aria-expanded="true" aria-label="{{ $select.baseTitle }}" aria-owns="ui-select-choices-{{ $select.generatedId }}" aria-activedescendant="ui-select-choices-row-{{ $select.generatedId }}-{{ $select.activeIndex }}" class="form-control ui-select-search" placeholder="{{$select.placeholder}}" ng-model="$select.search" ng-show="$select.searchEnabled && $select.open"><div class="ui-select-choices"></div><div class="ui-select-no-choice"></div></div>' ) ;
a . put ( "select2/choices.tpl.html" , '<ul tabindex="-1" class="ui-select-choices ui-select-choices-content select2-results"><li class="ui-select-choices-group" ng-class="{\'select2-result-with-children\': $select.choiceGrouped($group) }"><div ng-show="$select.choiceGrouped($group)" class="ui-select-choices-group-label select2-result-label" ng-bind="$group.name"></div><ul role="listbox" id="ui-select-choices-{{ $select.generatedId }}" ng-class="{\'select2-result-sub\': $select.choiceGrouped($group), \'select2-result-single\': !$select.choiceGrouped($group) }"><li role="option" ng-attr-id="ui-select-choices-row-{{ $select.generatedId }}-{{$index}}" class="ui-select-choices-row" ng-class="{\'select2-highlighted\': $select.isActive(this), \'select2-disabled\': $select.isDisabled(this)}"><div class="select2-result-label ui-select-choices-row-inner"></div></li></ul></li></ul>' ) ;
a . put ( "select2/match-multiple.tpl.html" , '<span class="ui-select-match"><li class="ui-select-match-item select2-search-choice" ng-repeat="$item in $select.selected" ng-class="{\'select2-search-choice-focus\':$selectMultiple.activeMatchIndex === $index, \'select2-locked\':$select.isLocked(this, $index)}" ui-select-sort="$select.selected"><span uis-transclude-append=""></span> <a href="javascript:;" class="ui-select-match-close select2-search-choice-close" ng-click="$selectMultiple.removeChoice($index)" tabindex="-1"></a></li></span>' ) ;
a . put ( "select2/match.tpl.html" , '<a class="select2-choice ui-select-match" ng-class="{\'select2-default\': $select.isEmpty()}" ng-click="$select.toggle($event)" aria-label="{{ $select.baseTitle }} select"><span ng-show="$select.isEmpty()" class="select2-chosen">{{$select.placeholder}}</span> <span ng-hide="$select.isEmpty()" class="select2-chosen" ng-transclude=""></span> <abbr ng-if="$select.allowClear && !$select.isEmpty()" class="select2-search-choice-close" ng-click="$select.clear($event)"></abbr> <span class="select2-arrow ui-select-toggle"><b></b></span></a>' ) ;
a . put ( "select2/select-multiple.tpl.html" , '<div class="ui-select-container ui-select-multiple select2 select2-container select2-container-multi" ng-class="{\'select2-container-active select2-dropdown-open open\': $select.open, \'select2-container-disabled\': $select.disabled}"><ul class="select2-choices"><span class="ui-select-match"></span><li class="select2-search-field"><input type="search" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="combobox" aria-expanded="true" aria-owns="ui-select-choices-{{ $select.generatedId }}" aria-label="{{ $select.baseTitle }}" aria-activedescendant="ui-select-choices-row-{{ $select.generatedId }}-{{ $select.activeIndex }}" class="select2-input ui-select-search" placeholder="{{$selectMultiple.getPlaceholder()}}" ng-disabled="$select.disabled" ng-hide="$select.disabled" ng-model="$select.search" ng-click="$select.activate()" style="width: 34px;" ondrop="return false;"></li></ul><div class="ui-select-dropdown select2-drop select2-with-searchbox select2-drop-active" ng-class="{\'select2-display-none\': !$select.open || $select.items.length === 0}"><div class="ui-select-choices"></div></div></div>' ) ;
a . put ( "select2/select.tpl.html" , '<div class="ui-select-container select2 select2-container" ng-class="{\'select2-container-active select2-dropdown-open open\': $select.open, \'select2-container-disabled\': $select.disabled, \'select2-container-active\': $select.focus, \'select2-allowclear\': $select.allowClear && !$select.isEmpty()}"><div class="ui-select-match"></div><div class="ui-select-dropdown select2-drop select2-with-searchbox select2-drop-active" ng-class="{\'select2-display-none\': !$select.open}"><div class="select2-search" ng-show="$select.searchEnabled"><input type="search" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="combobox" aria-expanded="true" aria-owns="ui-select-choices-{{ $select.generatedId }}" aria-label="{{ $select.baseTitle }}" aria-activedescendant="ui-select-choices-row-{{ $select.generatedId }}-{{ $select.activeIndex }}" class="ui-select-search select2-input" ng-model="$select.search"></div><div class="ui-select-choices"></div></div></div>' ) ;
a . put ( "selectize/choices.tpl.html" , '<div ng-show="$select.open" class="ui-select-choices ui-select-dropdown selectize-dropdown single"><div class="ui-select-choices-content selectize-dropdown-content"><div class="ui-select-choices-group optgroup" role="listbox"><div ng-show="$select.isGrouped" class="ui-select-choices-group-label optgroup-header" ng-bind="$group.name"></div><div role="option" class="ui-select-choices-row" ng-class="{active: $select.isActive(this), disabled: $select.isDisabled(this)}"><div class="option ui-select-choices-row-inner" data-selectable=""></div></div></div></div></div>' ) ;
a . put ( "selectize/match.tpl.html" , '<div ng-hide="$select.searchEnabled && ($select.open || $select.isEmpty())" class="ui-select-match" ng-transclude=""></div>' ) ; a . put ( "selectize/select.tpl.html" , '<div class="ui-select-container selectize-control single" ng-class="{\'open\': $select.open}"><div class="selectize-input" ng-class="{\'focus\': $select.open, \'disabled\': $select.disabled, \'selectize-focus\' : $select.focus}" ng-click="$select.open && !$select.searchEnabled ? $select.toggle($event) : $select.activate()" ng-focus"$select.open="" &&="" !$select.searchenabled="" ?="" $select.toggle($event)="" :="" $select.activate()"=""><div class="ui-select-match" ng-hide="$select.setSearchToAnswer"></div><input type="search" autocomplete="off" tabindex="-1" class="ui-select-search ui-select-toggle" ng-click="$select.toggle($event)" placeholder="{{$select.placeholder}}" ng-model="$select.search" ng-hide="(!$select.searchEnabled || ($select.selected && !$select.open)) && !$select.setSearchToAnswer" ng-disabled="$select.disabled" aria-label="{{ $select.baseTitle }}"></div><div class="ui-select-choices"></div></div>' ) } ] ) ;
! function ( a ) { function f ( f , c ) { return { restrict : "A" , scope : { isBusy : "=vBusy" , busyLabel : "@vBusyLabel" , busyText : "@vBusyText" } , compile : function ( b , e ) { var g = a . element ( b . find ( "span" ) ) ; return g [ 0 ] || ( b . html ( "<span>" + b . html ( ) + "</span>" ) , g = a . element ( b . find ( "span" ) ) ) , function ( a , b ) { var f = g . html ( ) , h = a . busyLabel || c . busyLabel , k = a . busyText ; a . $watch ( "isBusy" , function ( a ) { a ? ( b . addClass ( c . states . busy ) , g . html ( h ) ) : ( b . removeClass ( c . states . busy ) , g . html ( k || f ) ) } ) ; e . $observe ( "vBusyLabel" , function ( a ) { h = a } ) ; e . $observe ( "vBusyText" ,
function ( a ) { k = a } ) } } } } function k ( f , c ) { return { restrict : "A" , link : function ( b , e ) { function g ( ) { e . removeClass ( c . states . pressed ) ; t . unbind ( n , g ) } var h = "undefined" != typeof f [ 0 ] . documentElement . ontouchstart , k = h ? "touchstart" : "mousedown" , n = h ? "touchend" : "mouseup" , t = a . element ( f [ 0 ] . body ) ; e . bind ( k , function ( b ) { var h = b . pageX , k = b . pageY , m = e [ 0 ] . getBoundingClientRect ( ) ; b = e [ 0 ] . querySelector ( "v-ripple" ) ; a . element ( b ) . remove ( ) ; b = f [ 0 ] . createElement ( "v-ripple" ) ; b . style . height = b . style . width = Math . max ( m . width , m . height ) + "px" ; e . append ( b ) ;
h = h - m . left - b . offsetWidth / 2 - t [ 0 ] . scrollLeft ; k = k - m . top - b . offsetHeight / 2 - t [ 0 ] . scrollTop ; b . style . left = h + "px" ; b . style . top = k + "px" ; e . addClass ( c . states . pressed ) ; t . bind ( n , g ) } ) } } } a . module ( "vButton.config" , [ ] ) . constant ( "buttonConfig" , { busyLabel : "Loading" , states : { busy : "is-busy" , pressed : "is-pressed" } } ) ; a . module ( "vButton.directives" , [ ] ) ; a . module ( "vButton" , [ "vButton.config" , "vButton.directives" ] ) ; a . module ( "vButton.directives" ) . directive ( "vBusy" , f ) ; f . $inject = [ "$document" , "buttonConfig" ] ; a . module ( "vButton.directives" ) . directive ( "vPressable" ,
k ) ; k . $inject = [ "$document" , "buttonConfig" ] } ( angular ) ;
( function ( a , f , k ) { function h ( a , b ) { b = b || { } ; f . forEach ( b , function ( a , c ) { delete b [ c ] } ) ; for ( var c in a ) ! a . hasOwnProperty ( c ) || "$" === c . charAt ( 0 ) && "$" === c . charAt ( 1 ) || ( b [ c ] = a [ c ] ) ; return b } var c = f . $$minErr ( "$resource" ) , b = /^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/ ; f . module ( "ngResource" , [ "ng" ] ) . provider ( "$resource" , function ( ) { var a = /^https?:\/\/[^\/]*/ , g = this ; this . defaults = { stripTrailingSlashes : ! 0 , actions : { get : { method : "GET" } , save : { method : "POST" } , query : { method : "GET" , isArray : ! 0 } , remove : { method : "DELETE" } , "delete" : { method : "DELETE" } } } ;
2017-07-25 17:51:59 +00:00
this . $get = [ "$http" , "$log" , "$q" , function ( e , m , n ) { function r ( a , b ) { this . template = a ; this . defaults = z ( { } , g . defaults , b ) ; this . urlParams = { } } function x ( a , t , u , I ) { function p ( a , e ) { var g = { } ; return e = z ( { } , t , e ) , v ( e , function ( e , h ) { B ( e ) && ( e = e ( ) ) ; var m ; if ( e && e . charAt && "@" == e . charAt ( 0 ) ) { m = a ; var n = e . substr ( 1 ) ; if ( null == n || "" === n || "hasOwnProperty" === n || ! b . test ( "." + n ) ) throw c ( "badmember" , n ) ; for ( var n = n . split ( "." ) , r = 0 , t = n . length ; r < t && f . isDefined ( m ) ; r ++ ) { var q = n [ r ] ; m = null !== m ? m [ q ] : k } } else m = e ; g [ h ] = m } ) , g } function E ( a ) { return a . resource }
2017-07-20 23:09:21 +00:00
function G ( a ) { h ( a || { } , this ) } var F = new r ( a , I ) ; return u = z ( { } , g . defaults . actions , u ) , G . prototype . toJSON = function ( ) { var a = z ( { } , this ) ; return delete a . $promise , delete a . $resolved , a } , v ( u , function ( a , b ) { var g = /^(POST|PUT|PATCH)$/i . test ( a . method ) ; G [ b ] = function ( r , t , u , x ) { var J , I , S , N = { } ; switch ( arguments . length ) { case 4 : S = x , I = u ; case 3 : case 2 : if ( ! B ( t ) ) { N = r ; J = t ; I = u ; break } if ( B ( r ) ) { I = r ; S = t ; break } I = t ; S = u ; case 1 : B ( r ) ? I = r : g ? J = r : N = r ; break ; case 0 : break ; default : throw c ( "badargs" , arguments . length ) ; } var P = this instanceof G ,
K = P ? J : a . isArray ? [ ] : new G ( J ) , W = { } , ja = a . interceptor && a . interceptor . response || E , V = a . interceptor && a . interceptor . responseError || k ; return v ( a , function ( a , b ) { switch ( b ) { default : W [ b ] = A ( a ) ; break ; case "params" : case "isArray" : case "interceptor" : break ; case "timeout" : a && ! f . isNumber ( a ) && m . debug ( "ngResource:\n Only numeric values are allowed as `timeout`.\n Promises are not supported in $resource, because the same value would be used for multiple requests.\n If you need support for cancellable $resource actions, you should upgrade to version 1.5 or higher." ) } } ) ,
g && ( W . data = J ) , F . setUrlParams ( W , z ( { } , p ( J , a . params || { } ) , N ) , a . url ) , N = e ( W ) . then ( function ( e ) { var g = e . data , k = K . $promise ; if ( g ) { if ( f . isArray ( g ) !== ! ! a . isArray ) throw c ( "badcfg" , b , a . isArray ? "array" : "object" , f . isArray ( g ) ? "array" : "object" , W . method , W . url ) ; a . isArray ? ( K . length = 0 , v ( g , function ( a ) { "object" == typeof a ? K . push ( new G ( a ) ) : K . push ( a ) } ) ) : ( h ( g , K ) , K . $promise = k ) } return K . $resolved = ! 0 , e . resource = K , e } , function ( a ) { return K . $resolved = ! 0 , ( S || q ) ( a ) , n . reject ( a ) } ) , N = N . then ( function ( a ) { var b = ja ( a ) ; return ( I || q ) ( b , a . headers ) ,
b } , V ) , P ? N : ( K . $promise = N , K . $resolved = ! 1 , K ) } ; G . prototype [ "$" + b ] = function ( a , c , e ) { return B ( a ) && ( e = c , c = a , a = { } ) , a = G [ b ] . call ( this , a , this , c , e ) , a . $promise || a } } ) , G . bind = function ( b ) { return x ( a , z ( { } , t , b ) , u ) } , G } var q = f . noop , v = f . forEach , z = f . extend , A = f . copy , B = f . isFunction ; return r . prototype = { setUrlParams : function ( b , e , g ) { var h , k , m = this , n = g || m . template , r = "" , t = m . urlParams = { } ; v ( n . split ( /\W/ ) , function ( a ) { if ( "hasOwnProperty" === a ) throw c ( "badname" ) ; ! /^\d+$/ . test ( a ) && a && ( new RegExp ( "(^|[^\\\\]):" + a + "(\\W|$)" ) ) . test ( n ) &&
( t [ a ] = ! 0 ) } ) ; n = n . replace ( /\\:/g , ":" ) ; n = n . replace ( a , function ( a ) { return r = a , "" } ) ; e = e || { } ; v ( m . urlParams , function ( a , b ) { h = e . hasOwnProperty ( b ) ? e [ b ] : m . defaults [ b ] ; f . isDefined ( h ) && null !== h ? ( k = encodeURIComponent ( h ) . replace ( /%40/gi , "@" ) . replace ( /%3A/gi , ":" ) . replace ( /%24/g , "$" ) . replace ( /%2C/gi , "," ) . replace ( /%20/g , "%20" ) . replace ( /%26/gi , "&" ) . replace ( /%3D/gi , "=" ) . replace ( /%2B/gi , "+" ) , n = n . replace ( new RegExp ( ":" + b + "(\\W|$)" , "g" ) , function ( a , b ) { return k + b } ) ) : n = n . replace ( new RegExp ( "(/?):" + b + "(\\W|$)" , "g" ) , function ( a ,
b , c ) { return "/" == c . charAt ( 0 ) ? c : b + c } ) } ) ; m . defaults . stripTrailingSlashes && ( n = n . replace ( /\/+$/ , "" ) || "/" ) ; n = n . replace ( /\/\.(?=\w+($|\?))/ , "." ) ; b . url = r + n . replace ( /\/\\\./ , "/." ) ; v ( e , function ( a , c ) { m . urlParams [ c ] || ( b . params = b . params || { } , b . params [ c ] = a ) } ) } } , x } ] } ) } ) ( window , window . angular ) ; "undefined" != typeof module && "undefined" != typeof exports && module . exports === exports && ( module . exports = "ui.router" ) ;
( function ( a , f , k ) { function h ( a , b ) { return R ( new ( R ( function ( ) { } , { prototype : a } ) ) , b ) } function c ( a ) { return ca ( arguments , function ( b ) { b !== a && ca ( b , function ( b , c ) { a . hasOwnProperty ( c ) || ( a [ c ] = b ) } ) } ) , a } function b ( a ) { if ( Object . keys ) return Object . keys ( a ) ; var b = [ ] ; return ca ( a , function ( a , c ) { b . push ( c ) } ) , b } function e ( a , b , c ) { if ( Array . prototype . indexOf ) return a . indexOf ( b , Number ( c ) || 0 ) ; var e = a . length >>> 0 ; c = Number ( c ) || 0 ; c = 0 > c ? Math . ceil ( c ) : Math . floor ( c ) ; for ( 0 > c && ( c += e ) ; e > c ; c ++ ) if ( c in a && a [ c ] === b ) return c ; return - 1 } function g ( a ,
c , g , f ) { var h , k = [ ] , m ; for ( m in g . path ) { if ( g . path [ m ] !== f . path [ m ] ) break ; k . push ( g . path [ m ] ) } g = { } ; f = [ ] ; for ( var n in k ) if ( k [ n ] && k [ n ] . params && ( h = b ( k [ n ] . params ) , h . length ) ) for ( var w in h ) 0 <= e ( f , h [ w ] ) || ( f . push ( h [ w ] ) , g [ h [ w ] ] = a [ h [ w ] ] ) ; return R ( { } , g , c ) } function r ( a , b , c ) { if ( ! c ) { c = [ ] ; for ( var e in a ) c . push ( e ) } for ( e = 0 ; e < c . length ; e ++ ) { var g = c [ e ] ; if ( a [ g ] != b [ g ] ) return ! 1 } return ! 0 } function m ( a , b ) { var c = { } ; return ca ( a , function ( a ) { c [ a ] = b [ a ] } ) , c } function n ( a ) { var b = { } , c = Array . prototype . concat . apply ( Array . prototype , Array . prototype . slice . call ( arguments ,
1 ) ) ; return ca ( c , function ( c ) { c in a && ( b [ c ] = a [ c ] ) } ) , b } function t ( a ) { var b = { } , c = Array . prototype . concat . apply ( Array . prototype , Array . prototype . slice . call ( arguments , 1 ) ) , g ; for ( g in a ) - 1 == e ( c , g ) && ( b [ g ] = a [ g ] ) ; return b } function x ( a , b ) { var c = ka ( a ) , e = c ? [ ] : { } ; return ca ( a , function ( a , g ) { b ( a , g ) && ( e [ c ? e . length : g ] = a ) } ) , e } function q ( a , b ) { var c = ka ( a ) ? [ ] : { } ; return ca ( a , function ( a , e ) { c [ e ] = b ( a , e ) } ) , c } function v ( a , g ) { var f = { } , h = [ ] , m = R ( a . when ( f ) , { $$promises : f , $$values : f } ) ; this . study = function ( n ) { function w ( a , b ) { if ( 2 !== v [ b ] ) { if ( x . push ( b ) ,
1 === v [ b ] ) throw x . splice ( 0 , e ( x , b ) ) , Error ( "Cyclic dependency: " + x . join ( " -> " ) ) ; if ( v [ b ] = 1 , T ( a ) ) u . push ( b , [ function ( ) { return g . get ( a ) } ] , h ) ; else { var c = g . annotate ( a ) ; ca ( c , function ( a ) { a !== b && n . hasOwnProperty ( a ) && w ( n [ a ] , a ) } ) ; u . push ( b , a , c ) } x . pop ( ) ; v [ b ] = 2 } } function r ( a ) { return M ( a ) && a . then && a . $$promises } if ( ! M ( n ) ) throw Error ( "'invocables' must be an object" ) ; var q = b ( n || { } ) , u = [ ] , x = [ ] , v = { } ; return ca ( n , w ) , n = x = v = null , function ( b , e , h ) { function n ( ) { -- G || ( J || c ( E , e . $$values ) , p . $$values = E , p . $$promises = p . $$promises || ! 0 ,
delete p . $$inheritedValues , v . resolve ( E ) ) } function w ( a ) { p . $$failure = a ; v . reject ( a ) } function x ( c , e , f ) { function k ( a ) { r . reject ( a ) ; w ( a ) } function m ( ) { if ( ! X ( p . $$failure ) ) try { r . resolve ( g . invoke ( e , h , E ) ) , r . promise . then ( function ( a ) { E [ c ] = a ; n ( ) } , k ) } catch ( Gb ) { k ( Gb ) } } var r = a . defer ( ) , t = 0 ; ca ( f , function ( a ) { A . hasOwnProperty ( a ) && ! b . hasOwnProperty ( a ) && ( t ++ , A [ a ] . then ( function ( b ) { E [ a ] = b ; -- t || m ( ) } , k ) ) } ) ; t || m ( ) ; A [ c ] = r . promise } if ( r ( b ) && h === k && ( h = e , e = b , b = null ) , b ) { if ( ! M ( b ) ) throw Error ( "'locals' must be an object" ) ; } else b = f ;
if ( e ) { if ( ! r ( e ) ) throw Error ( "'parent' must be a promise returned by $resolve.resolve()" ) ; } else e = m ; var v = a . defer ( ) , p = v . promise , A = p . $$promises = { } , E = R ( { } , b ) , G = 1 + u . length / 3 , J = ! 1 ; if ( X ( e . $$failure ) ) return w ( e . $$failure ) , p ; e . $$inheritedValues && c ( E , t ( e . $$inheritedValues , q ) ) ; R ( A , e . $$promises ) ; e . $$values ? ( J = c ( E , t ( e . $$values , q ) ) , p . $$inheritedValues = t ( e . $$values , q ) , n ( ) ) : ( e . $$inheritedValues && ( p . $$inheritedValues = t ( e . $$inheritedValues , q ) ) , e . then ( n , w ) ) ; for ( var z = 0 , B = u . length ; B > z ; z += 3 ) b . hasOwnProperty ( u [ z ] ) ? n ( ) :
x ( u [ z ] , u [ z + 1 ] , u [ z + 2 ] ) ; return p } } ; this . resolve = function ( a , b , c , e ) { return this . study ( a ) ( b , c , e ) } } function z ( a , b , c ) { this . fromConfig = function ( a , b , c ) { return X ( a . template ) ? this . fromString ( a . template , b ) : X ( a . templateUrl ) ? this . fromUrl ( a . templateUrl , b ) : X ( a . templateProvider ) ? this . fromProvider ( a . templateProvider , b , c ) : null } ; this . fromString = function ( a , b ) { return O ( a ) ? a ( b ) : a } ; this . fromUrl = function ( c , e ) { return O ( c ) && ( c = c ( e ) ) , null == c ? null : a . get ( c , { cache : b , headers : { Accept : "text/html" } } ) . then ( function ( a ) { return a . data } ) } ;
this . fromProvider = function ( a , b , e ) { return c . invoke ( a , null , e || { params : b } ) } } function A ( a , b , c ) { function e ( b , c , e , g ) { if ( v . push ( b ) , u [ b ] ) return u [ b ] ; if ( ! /^\w+([-.]+\w+)*(?:\[\])?$/ . test ( b ) ) throw Error ( "Invalid parameter name '" + b + "' in pattern '" + a + "'" ) ; if ( x [ b ] ) throw Error ( "Duplicate parameter name '" + b + "' in pattern '" + a + "'" ) ; return x [ b ] = new ha . Param ( b , c , e , g ) , x [ b ] } function g ( a , b , c , e ) { a = a . replace ( /[\\\[\]\^$*+?.()|{}]/g , "\\$&" ) ; if ( ! b ) return a ; switch ( c ) { case ! 1 : c = [ "(" , ")" + ( e ? "?" : "" ) ] ; break ; case ! 0 : a = a . replace ( /\/$/ ,
"" ) ; c = [ "(?:/(" , ")|/)?" ] ; break ; default : c = [ "(" + c + "|" , ")?" ] } return a + c [ 0 ] + b + c [ 1 ] } function f ( c , e ) { var g , f , m , n , w ; return g = c [ 2 ] || c [ 3 ] , w = b . params [ g ] , m = a . substring ( t , c . index ) , f = e ? c [ 4 ] : c [ 4 ] || ( "*" == c [ 1 ] ? ".*" : null ) , f && ( n = ha . type ( f ) || h ( ha . type ( "string" ) , { pattern : new RegExp ( f , b . caseInsensitive ? "i" : k ) } ) ) , { id : g , regexp : f , segment : m , type : n , cfg : w } } b = R ( { params : { } } , M ( b ) ? b : { } ) ; var m , n = /([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g , w = /([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g ,
r = "^" , t = 0 , q = this . segments = [ ] , u = c ? c . params : { } , x = this . params = c ? c . params . $$new ( ) : new ha . ParamSet , v = [ ] ; this . source = a ; for ( var p , A ; ( m = n . exec ( a ) ) && ( p = f ( m , ! 1 ) , ! ( 0 <= p . segment . indexOf ( "?" ) ) ) ; ) A = e ( p . id , p . type , p . cfg , "path" ) , r += g ( p . segment , A . type . pattern . source , A . squash , A . isOptional ) , q . push ( p . segment ) , t = n . lastIndex ; c = a . substring ( t ) ; m = c . indexOf ( "?" ) ; if ( 0 <= m ) { var E = this . sourceSearch = c . substring ( m ) ; if ( c = c . substring ( 0 , m ) , this . sourcePath = a . substring ( 0 , t + m ) , 0 < E . length ) for ( t = 0 ; m = w . exec ( E ) ; ) p = f ( m , ! 0 ) , A = e ( p . id , p . type ,
p . cfg , "search" ) , t = n . lastIndex } else this . sourcePath = a , this . sourceSearch = "" ; r += g ( c ) + ( ! 1 === b . strict ? "/?" : "" ) + "$" ; q . push ( c ) ; this . regexp = new RegExp ( r , b . caseInsensitive ? "i" : k ) ; this . prefix = q [ 0 ] ; this . $$paramNames = v } function B ( a ) { R ( this , a ) } function F ( ) { function a ( a ) { return null != a ? a . toString ( ) . replace ( /~/g , "~~" ) . replace ( /\//g , "~2F" ) : a } function c ( a ) { return O ( a ) || ka ( a ) && O ( a [ a . length - 1 ] ) } function g ( ) { for ( ; E . length ; ) { var a = E . shift ( ) ; if ( a . pattern ) throw Error ( "You cannot override a type's .pattern at runtime." ) ;
f . extend ( v [ a . name ] , n . invoke ( a . def ) ) } } function m ( a ) { R ( this , a || { } ) } ha = this ; var n , r = ! 1 , t = ! 0 , u = ! 1 , v = { } , p = ! 0 , E = [ ] , G = { string : { encode : a , decode : function ( a ) { return null != a ? a . toString ( ) . replace ( /~2F/g , "/" ) . replace ( /~~/g , "~" ) : a } , is : function ( a ) { return null == a || ! X ( a ) || "string" == typeof a } , pattern : /[^\/]*/ } , "int" : { encode : a , decode : function ( a ) { return parseInt ( a , 10 ) } , is : function ( a ) { return X ( a ) && this . decode ( a . toString ( ) ) === a } , pattern : /\d+/ } , bool : { encode : function ( a ) { return a ? 1 : 0 } , decode : function ( a ) { return 0 !== parseInt ( a ,
10 ) } , is : function ( a ) { return ! 0 === a || ! 1 === a } , pattern : /0|1/ } , date : { encode : function ( a ) { return this . is ( a ) ? [ a . getFullYear ( ) , ( "0" + ( a . getMonth ( ) + 1 ) ) . slice ( - 2 ) , ( "0" + a . getDate ( ) ) . slice ( - 2 ) ] . join ( "-" ) : k } , decode : function ( a ) { return this . is ( a ) ? a : ( a = this . capture . exec ( a ) ) ? new Date ( a [ 1 ] , a [ 2 ] - 1 , a [ 3 ] ) : k } , is : function ( a ) { return a instanceof Date && ! isNaN ( a . valueOf ( ) ) } , equals : function ( a , b ) { return this . is ( a ) && this . is ( b ) && a . toISOString ( ) === b . toISOString ( ) } , pattern : /[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1])/ ,
capture : /([0-9]{4})-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])/ } , json : { encode : f . toJson , decode : f . fromJson , is : f . isObject , equals : f . equals , pattern : /[^\/]*/ } , any : { encode : f . identity , decode : f . identity , equals : f . equals , pattern : /.*/ } } ; F . $$getDefaultValue = function ( a ) { if ( ! c ( a . value ) ) return a . value ; if ( ! n ) throw Error ( "Injectable functions cannot be called at configuration time" ) ; return n . invoke ( a . value ) } ; this . caseInsensitive = function ( a ) { return X ( a ) && ( r = a ) , r } ; this . strictMode = function ( a ) { return X ( a ) && ( t = a ) , t } ; this . defaultSquashPolicy =
function ( a ) { if ( ! X ( a ) ) return u ; if ( ! 0 !== a && ! 1 !== a && ! T ( a ) ) throw Error ( "Invalid squash policy: " + a + ". Valid policies: false, true, arbitrary-string" ) ; return u = a , a } ; this . compile = function ( a , b ) { return new A ( a , R ( { strict : t , caseInsensitive : r } , b ) ) } ; this . isMatcher = function ( a ) { if ( ! M ( a ) ) return ! 1 ; var b = ! 0 ; return ca ( A . prototype , function ( c , e ) { O ( c ) && ( b = b && X ( a [ e ] ) && O ( a [ e ] ) ) } ) , b } ; this . type = function ( a , b , c ) { if ( ! X ( b ) ) return v [ a ] ; if ( v . hasOwnProperty ( a ) ) throw Error ( "A type named '" + a + "' has already been defined." ) ; return v [ a ] =
new B ( R ( { name : a } , b ) ) , c && ( E . push ( { name : a , def : c } ) , p || g ( ) ) , this } ; ca ( G , function ( a , b ) { v [ b ] = new B ( R ( { name : b } , a ) ) } ) ; v = h ( v , { } ) ; this . $get = [ "$injector" , function ( a ) { return n = a , p = ! 1 , g ( ) , ca ( G , function ( a , b ) { v [ b ] || ( v [ b ] = new B ( a ) ) } ) , this } ] ; this . Param = function ( a , g , h , m ) { function w ( ) { if ( ! n ) throw Error ( "Injectable functions cannot be called at configuration time" ) ; var a = n . invoke ( h . $$fn ) ; if ( null !== a && a !== k && ! r . type . is ( a ) ) throw Error ( "Default value (" + a + ") for parameter '" + r . id + "' is not an instance of Type (" + r . type . name +
2017-07-25 17:51:59 +00:00
")" ) ; return a } var r = this ; h = function ( a ) { var g = M ( a ) ? b ( a ) : [ ] ; return - 1 === e ( g , "value" ) && - 1 === e ( g , "type" ) && - 1 === e ( g , "squash" ) && - 1 === e ( g , "array" ) && ( a = { value : a } ) , a . $$fn = c ( a . value ) ? a . value : function ( ) { return a . value } , a } ( h ) ; g = function ( b , c , e ) { if ( b . type && c ) throw Error ( "Param '" + a + "' has two type configurations." ) ; return c ? c : b . type ? f . isString ( b . type ) ? v [ b . type ] : b . type instanceof B ? b . type : new B ( b . type ) : "config" === e ? v . any : v . string } ( h , g , m ) ; var t = function ( ) { var b = { array : "search" === m && "auto" } , c = a . match ( /\[\]$/ ) ? { array : ! 0 } :
2017-07-20 23:09:21 +00:00
{ } ; return R ( b , c , h ) . array } ( ) ; g = t ? g . $asArray ( t , "search" === m ) : g ; "string" !== g . name || t || "path" !== m || h . value !== k || ( h . value = "" ) ; var p = h . value !== k , A = function ( a , b ) { var c = a . squash ; if ( ! b || ! 1 === c ) return ! 1 ; if ( ! X ( c ) || null == c ) return u ; if ( ! 0 === c || T ( c ) ) return c ; throw Error ( "Invalid squash policy: '" + c + "'. Valid policies: false, true, or arbitrary string" ) ; } ( h , p ) , E = function ( a , b , c , g ) { var f , h ; b = [ { from : "" , to : c || b ? k : "" } , { from : null , to : c || b ? k : "" } ] ; return f = ka ( a . replace ) ? a . replace : [ ] , T ( g ) && f . push ( { from : g , to : k } ) , h = q ( f , function ( a ) { return a . from } ) ,
x ( b , function ( a ) { return - 1 === e ( h , a . from ) } ) . concat ( f ) } ( h , t , p , A ) ; R ( this , { id : a , type : g , location : m , array : t , squash : A , replace : E , isOptional : p , value : function ( a ) { function b ( a ) { return function ( b ) { return b . from === a } } return a = function ( a ) { var c = q ( x ( r . replace , b ( a ) ) , function ( a ) { return a . to } ) ; return c . length ? c [ 0 ] : a } ( a ) , X ( a ) ? r . type . $normalize ( a ) : w ( ) } , dynamic : k , config : h , toString : function ( ) { return "{Param:" + a + " " + g + " squash: '" + A + "' optional: " + p + "}" } } ) } ; m . prototype = { $$new : function ( ) { return h ( this , R ( new m , { $$parent : this } ) ) } ,
$$keys : function ( ) { for ( var a = [ ] , c = [ ] , g = this , f = b ( m . prototype ) ; g ; ) c . push ( g ) , g = g . $$parent ; return c . reverse ( ) , ca ( c , function ( c ) { ca ( b ( c ) , function ( b ) { - 1 === e ( a , b ) && - 1 === e ( f , b ) && a . push ( b ) } ) } ) , a } , $$values : function ( a ) { var b = { } , c = this ; return ca ( c . $$keys ( ) , function ( e ) { b [ e ] = c [ e ] . value ( a && a [ e ] ) } ) , b } , $$equals : function ( a , b ) { var c = ! 0 , e = this ; return ca ( e . $$keys ( ) , function ( g ) { e [ g ] . type . equals ( a && a [ g ] , b && b [ g ] ) || ( c = ! 1 ) } ) , c } , $$validates : function ( a ) { var b , c , e , g , h , m = this . $$keys ( ) ; for ( b = 0 ; b < m . length && ( c = this [ m [ b ] ] , e = a [ m [ b ] ] ,
2017-07-25 17:51:59 +00:00
e !== k && null !== e || ! c . isOptional ) ; b ++ ) if ( ( g = c . type . $normalize ( e ) , ! c . type . is ( g ) ) || ( h = c . type . encode ( g ) , f . isString ( h ) && ! c . type . pattern . exec ( h ) ) ) return ! 1 ; return ! 0 } , $$parent : k } ; this . ParamSet = m } function p ( a , b ) { function c ( a ) { a = /^\^((?:\\[^a-zA-Z0-9]|[^\\\[\]\^$*+?.()|{}]+)*)/ . exec ( a . source ) ; return null != a ? a [ 1 ] . replace ( /\\(.)/g , "$1" ) : "" } function e ( a , b ) { return a . replace ( /\$(\$|\d{1,2})/ , function ( a , c ) { return b [ "$" === c ? 0 : Number ( c ) ] } ) } function g ( a , b , c ) { if ( ! c ) return ! 1 ; a = a . invoke ( b , b , { $match : c } ) ; return ! X ( a ) || a } function h ( b ,
c , e , g , h ) { function t ( a ) { function c ( a ) { a = a ( e , b ) ; return ! ! a && ( T ( a ) && b . replace ( ) . url ( a ) , ! 0 ) } if ( ! a || ! a . defaultPrevented ) { u && b . url ( ) === u ; u = k ; var g = n . length ; for ( a = 0 ; g > a ; a ++ ) if ( c ( n [ a ] ) ) return ; w && c ( w ) } } function q ( ) { return m = m || c . $on ( "$locationChangeSuccess" , t ) } var u , x = g . baseHref ( ) , v = b . url ( ) ; return r || q ( ) , { sync : function ( ) { t ( ) } , listen : function ( ) { return q ( ) } , update : function ( a ) { return a ? void ( v = b . url ( ) ) : void ( b . url ( ) !== v && ( b . url ( v ) , b . replace ( ) ) ) } , push : function ( a , c , e ) { a = a . format ( c || { } ) ; null !== a && c && c [ "#" ] && ( a += "#" +
c [ "#" ] ) ; b . url ( a ) ; u = e && e . $$avoidResync ? b . url ( ) : k ; e && e . replace && b . replace ( ) } , href : function ( c , e , g ) { if ( ! c . validates ( e ) ) return null ; var k = a . html5Mode ( ) ; f . isObject ( k ) && ( k = k . enabled ) ; k = k && h . history ; c = c . format ( e ) ; g = g || { } ; k || null === c || ( c = "#" + a . hashPrefix ( ) + c ) ; null !== c && e && e [ "#" ] && ( c += "#" + e [ "#" ] ) ; e = c ; var m = g . absolute ; if ( c = "/" === x ? e : k ? x . slice ( 0 , - 1 ) + e : m ? x . slice ( 1 ) + e : e , ! g . absolute || ! c ) return c ; g = ! k && c ? "/" : "" ; k = b . port ( ) ; return k = 80 === k || 443 === k ? "" : ":" + k , [ b . protocol ( ) , "://" , b . host ( ) , k , g , c ] . join ( "" ) } } } var m , n = [ ] ,
w = null , r = ! 1 ; this . rule = function ( a ) { if ( ! O ( a ) ) throw Error ( "'rule' must be a function" ) ; return n . push ( a ) , this } ; this . otherwise = function ( a ) { if ( T ( a ) ) { var b = a ; a = function ( ) { return b } } else if ( ! O ( a ) ) throw Error ( "'rule' must be a function" ) ; return w = a , this } ; this . when = function ( a , f ) { var h , k = T ( f ) ; if ( T ( a ) && ( a = b . compile ( a ) ) , ! k && ! O ( f ) && ! ka ( f ) ) throw Error ( "invalid 'handler' in when()" ) ; var m = { matcher : function ( a , c ) { return k && ( h = b . compile ( c ) , c = [ "$match" , function ( a ) { return h . format ( a ) } ] ) , R ( function ( b , e ) { return g ( b , c , a . exec ( e . path ( ) ,
e . search ( ) ) ) } , { prefix : T ( a . prefix ) ? a . prefix : "" } ) } , regex : function ( a , b ) { if ( a . global || a . sticky ) throw Error ( "when() RegExp must not be global or sticky" ) ; return k && ( h = b , b = [ "$match" , function ( a ) { return e ( h , a ) } ] ) , R ( function ( c , e ) { return g ( c , b , a . exec ( e . path ( ) ) ) } , { prefix : c ( a ) } ) } } , n = { matcher : b . isMatcher ( a ) , regex : a instanceof RegExp } , w ; for ( w in n ) if ( n [ w ] ) return this . rule ( m [ w ] ( a , f ) ) ; throw Error ( "invalid 'what' in when()" ) ; } ; this . deferIntercept = function ( a ) { a === k && ( a = ! 0 ) ; r = a } ; this . $get = h ; h . $inject = [ "$location" , "$rootScope" ,
"$injector" , "$browser" , "$sniffer" ] } function u ( a , c ) { function w ( a , b ) { if ( ! a ) return k ; var c = T ( a ) , e = c ? a : a . name , g = e ; if ( 0 === g . indexOf ( "." ) || 0 === g . indexOf ( "^" ) ) { if ( ! b ) throw Error ( "No reference point given for path '" + e + "'" ) ; b = w ( b ) ; for ( var g = e . split ( "." ) , f = 0 , h = g . length , m = b ; h > f ; f ++ ) if ( "" !== g [ f ] || 0 !== f ) { if ( "^" !== g [ f ] ) break ; if ( ! m . parent ) throw Error ( "Path '" + e + "' not valid for state '" + b . name + "'" ) ; m = m . parent } else m = b ; g = g . slice ( f ) . join ( "." ) ; e = m . name + ( m . name && g ? "." : "" ) + g } e = G [ e ] ; return ! e || ! c && ( c || e !== a && e . self !==
a ) ? k : e } function t ( a , b ) { J [ a ] || ( J [ a ] = [ ] ) ; J [ a ] . push ( b ) } function u ( a ) { for ( a = J [ a ] || [ ] ; a . length ; ) x ( a . shift ( ) ) } function x ( b ) { b = h ( b , { self : b , resolve : b . resolve || { } , toString : function ( ) { return this . name } } ) ; var c = b . name ; if ( ! T ( c ) || 0 <= c . indexOf ( "@" ) ) throw Error ( "State must have a valid name" ) ; if ( G . hasOwnProperty ( c ) ) throw Error ( "State '" + c + "' is already defined" ) ; var e = - 1 !== c . indexOf ( "." ) ? c . substring ( 0 , c . lastIndexOf ( "." ) ) : T ( b . parent ) ? b . parent : M ( b . parent ) && T ( b . parent . name ) ? b . parent . name : "" ; if ( e && ! G [ e ] ) return t ( e ,
b . self ) ; for ( var g in B ) O ( B [ g ] ) && ( b [ g ] = B [ g ] ( b , B . $delegates [ g ] ) ) ; return G [ c ] = b , ! b [ z ] && b . url && a . when ( b . url , [ "$match" , "$stateParams" , function ( a , c ) { E . $current . navigable == b && r ( a , c ) || E . transitionTo ( b , a , { inherit : ! 0 , location : ! 1 } ) } ] ) , u ( c ) , b } function v ( a , c , n , t , u , x , v , J , B ) { function ia ( b , e , g , f ) { e = a . $broadcast ( "$stateNotFound" , b , e , g ) ; if ( e . defaultPrevented ) return v . update ( ) , ua ; if ( ! e . retry ) return null ; if ( f . $retry ) return v . update ( ) , N ; var h = E . transition = c . when ( e . retry ) ; return h . then ( function ( ) { return h !== E . transition ?
I : ( b . options . $retry = ! 0 , E . transitionTo ( b . to , b . toParams , b . options ) ) } , function ( ) { return ua } ) , v . update ( ) , h } function F ( a , b , e , g , h , k ) { var w = e ? b : m ( a . params . $$keys ( ) , b ) ; h . resolve = u . resolve ( a . resolve , { $stateParams : w } , h . resolve , a ) ; b = [ h . resolve . then ( function ( a ) { h . globals = a } ) ] ; return g && b . push ( g ) , c . all ( b ) . then ( function ( ) { var b = [ ] ; return ca ( a . views , function ( c , e ) { var g = c . resolve && c . resolve !== a . resolve ? c . resolve : { } ; g . $template = [ function ( ) { return n . load ( e , { view : c , locals : h . globals , params : w , notify : k . notify } ) || "" } ] ;
b . push ( u . resolve ( g , h . globals , h . resolve , a ) . then ( function ( b ) { if ( O ( c . controllerProvider ) || ka ( c . controllerProvider ) ) { var k = f . extend ( { } , g , h . globals ) ; b . $$controller = t . invoke ( c . controllerProvider , null , k ) } else b . $$controller = c . controller ; b . $$state = a ; b . $$controllerAs = c . controllerAs ; h [ e ] = b } ) ) } ) , c . all ( b ) . then ( function ( ) { return h . globals } ) } ) . then ( function ( a ) { return h } ) } var I = c . reject ( Error ( "transition superseded" ) ) , na = c . reject ( Error ( "transition prevented" ) ) , ua = c . reject ( Error ( "transition aborted" ) ) , N = c . reject ( Error ( "transition failed" ) ) ;
2017-07-20 23:09:21 +00:00
return A . locals = { resolve : null , globals : { $stateParams : { } } } , E = { params : { } , current : A . self , $current : A , transition : null } , E . reload = function ( a ) { return E . transitionTo ( E . current , x , { reload : a || ! 0 , inherit : ! 1 , notify : ! 0 } ) } , E . go = function ( a , b , c ) { return E . transitionTo ( a , b , R ( { inherit : ! 0 , relative : E . $current } , c ) ) } , E . transitionTo = function ( b , e , f ) { e = e || { } ; f = R ( { location : ! 0 , inherit : ! 1 , relative : null , notify : ! 0 , reload : ! 1 , $retry : ! 1 } , f || { } ) ; var k , n = E . $current , r = E . params , q = n . path , u = w ( b , f . relative ) , G = e [ "#" ] ; if ( ! X ( u ) ) { var J = { to : b , toParams : e ,
options : f } , B = ia ( J , n . self , r , f ) ; if ( B ) return B ; if ( b = J . to , e = J . toParams , f = J . options , u = w ( b , f . relative ) , ! X ( u ) ) { if ( ! f . relative ) throw Error ( "No such state '" + b + "'" ) ; throw Error ( "Could not resolve '" + b + "' from state '" + f . relative + "'" ) ; } } if ( u [ z ] ) throw Error ( "Cannot transition to abstract state '" + b + "'" ) ; if ( f . inherit && ( e = g ( x , e || { } , E . $current , u ) ) , ! u . params . $$validates ( e ) ) return N ; e = u . params . $$values ( e ) ; b = u ; var ua = b . path , K = 0 , u = ua [ K ] , J = A . locals , S = [ ] ; if ( f . reload ) { if ( T ( f . reload ) || M ( f . reload ) ) { if ( M ( f . reload ) && ! f . reload . name ) throw Error ( "Invalid reload state object" ) ;
B = ! 0 === f . reload ? q [ 0 ] : w ( f . reload ) ; if ( f . reload && ! B ) throw Error ( "No such reload state '" + ( T ( f . reload ) ? f . reload : f . reload . name ) + "'" ) ; for ( ; u && u === q [ K ] && u !== B ; ) J = S [ K ] = u . locals , K ++ , u = ua [ K ] } } else for ( ; u && u === q [ K ] && u . ownParams . $$equals ( e , r ) ; ) J = S [ K ] = u . locals , K ++ , u = ua [ K ] ; if ( p ( b , e , n , r , J , f ) ) return G && ( e [ "#" ] = G ) , E . params = e , ea ( E . params , x ) , ea ( m ( b . params . $$keys ( ) , x ) , b . locals . globals . $stateParams ) , f . location && b . navigable && b . navigable . url && ( v . push ( b . navigable . url , e , { $$avoidResync : ! 0 , replace : "replace" === f . location } ) ,
v . update ( ! 0 ) ) , E . transition = null , c . when ( E . current ) ; if ( e = m ( b . params . $$keys ( ) , e || { } ) , G && ( e [ "#" ] = G ) , f . notify && a . $broadcast ( "$stateChangeStart" , b . self , e , n . self , r , f ) . defaultPrevented ) return a . $broadcast ( "$stateChangeCancel" , b . self , e , n . self , r ) , null == E . transition && v . update ( ) , na ; G = c . when ( J ) ; for ( B = K ; B < ua . length ; B ++ , u = ua [ B ] ) J = S [ B ] = h ( J ) , G = F ( u , e , u === b , G , J , f ) ; var P = E . transition = G . then ( function ( ) { var c , g ; if ( E . transition !== P ) return I ; for ( c = q . length - 1 ; c >= K ; c -- ) g = q [ c ] , g . self . onExit && t . invoke ( g . self . onExit , g . self , g . locals . globals ) ,
g . locals = null ; for ( c = K ; c < ua . length ; c ++ ) g = ua [ c ] , g . locals = S [ c ] , g . self . onEnter && t . invoke ( g . self . onEnter , g . self , g . locals . globals ) ; return E . transition !== P ? I : ( E . $current = b , E . current = b . self , E . params = e , ea ( E . params , x ) , E . transition = null , f . location && b . navigable && v . push ( b . navigable . url , b . navigable . locals . globals . $stateParams , { $$avoidResync : ! 0 , replace : "replace" === f . location } ) , f . notify && a . $broadcast ( "$stateChangeSuccess" , b . self , e , n . self , r ) , v . update ( ! 0 ) , E . current ) } , function ( g ) { return E . transition !== P ? I : ( E . transition =
2017-07-25 17:51:59 +00:00
null , k = a . $broadcast ( "$stateChangeError" , b . self , e , n . self , r , g ) , k . defaultPrevented || v . update ( ) , c . reject ( g ) ) } ) ; return P } , E . is = function ( a , b , c ) { c = R ( { relative : E . $current } , c || { } ) ; a = w ( a , c . relative ) ; return X ( a ) ? E . $current === a && ( ! b || r ( a . params . $$values ( b ) , x ) ) : k } , E . includes = function ( a , c , g ) { if ( g = R ( { relative : E . $current } , g || { } ) , T ( a ) && - 1 < a . indexOf ( "*" ) ) { a = a . split ( "." ) ; for ( var f = E . $current . name . split ( "." ) , h = 0 , m = a . length ; m > h ; h ++ ) "*" === a [ h ] && ( f [ h ] = "*" ) ; if ( "**" === a [ 0 ] && ( f = f . slice ( e ( f , a [ 1 ] ) ) , f . unshift ( "**" ) ) , "**" === a [ a . length -
1 ] && ( f . splice ( e ( f , a [ a . length - 2 ] ) + 1 , Number . MAX _VALUE ) , f . push ( "**" ) ) , a . length != f . length || f . join ( "" ) !== a . join ( "" ) ) return ! 1 ; a = E . $current . name } g = w ( a , g . relative ) ; return X ( g ) ? ! ! X ( E . $current . includes [ g . name ] ) && ( ! c || r ( g . params . $$values ( c ) , x , b ( c ) ) ) : k } , E . href = function ( a , b , c ) { c = R ( { lossy : ! 0 , inherit : ! 0 , absolute : ! 1 , relative : E . $current } , c || { } ) ; a = w ( a , c . relative ) ; if ( ! X ( a ) ) return null ; c . inherit && ( b = g ( x , b || { } , E . $current , a ) ) ; var e = a && c . lossy ? a . navigable : a ; return e && e . url !== k && null !== e . url ? v . href ( e . url , m ( a . params . $$keys ( ) . concat ( "#" ) ,
b || { } ) , { absolute : c . absolute } ) : null } , E . get = function ( a , c ) { if ( 0 === arguments . length ) return q ( b ( G ) , function ( a ) { return G [ a ] . self } ) ; var e = w ( a , c || E . $current ) ; return e && e . self ? e . self : null } , E } function p ( a , b , c , e , g , f ) { function h ( a , b , c ) { var e = a . params . $$keys ( ) . filter ( function ( b ) { return "search" != a . params [ b ] . location } ) , e = n . apply ( { } , [ a . params ] . concat ( e ) ) ; return ( new ha . ParamSet ( e ) ) . $$equals ( b , c ) } return ! ( f . reload || a !== c || ! ( g === c . locals || ! 1 === a . self . reloadOnSearch && h ( c , e , b ) ) ) || void 0 } var A , E , G = { } , J = { } , z = "abstract" ,
B = { parent : function ( a ) { return X ( a . parent ) && a . parent ? w ( a . parent ) : ( a = /^(.+)\.[^.]+$/ . exec ( a . name ) ) ? w ( a [ 1 ] ) : A } , data : function ( a ) { return a . parent && a . parent . data && ( a . data = a . self . data = h ( a . parent . data , a . data ) ) , a . data } , url : function ( a ) { var b = a . url , e = { params : a . params || { } } ; if ( T ( b ) ) return "^" == b . charAt ( 0 ) ? c . compile ( b . substring ( 1 ) , e ) : ( a . parent . navigable || A ) . url . concat ( b , e ) ; if ( ! b || c . isMatcher ( b ) ) return b ; throw Error ( "Invalid url '" + b + "' in state '" + a + "'" ) ; } , navigable : function ( a ) { return a . url ? a : a . parent ? a . parent . navigable :
2017-07-20 23:09:21 +00:00
null } , ownParams : function ( a ) { var b = a . url && a . url . params || new ha . ParamSet ; return ca ( a . params || { } , function ( a , c ) { b [ c ] || ( b [ c ] = new ha . Param ( c , null , a , "config" ) ) } ) , b } , params : function ( a ) { var b = n ( a . ownParams , a . ownParams . $$keys ( ) ) ; return a . parent && a . parent . params ? R ( a . parent . params . $$new ( ) , b ) : new ha . ParamSet } , views : function ( a ) { var b = { } ; return ca ( X ( a . views ) ? a . views : { "" : a } , function ( c , e ) { 0 > e . indexOf ( "@" ) && ( e += "@" + a . parent . name ) ; b [ e ] = c } ) , b } , path : function ( a ) { return a . parent ? a . parent . path . concat ( a ) : [ ] } , includes : function ( a ) { var b =
a . parent ? R ( { } , a . parent . includes ) : { } ; return b [ a . name ] = ! 0 , b } , $delegates : { } } ; A = x ( { name : "" , url : "^" , views : null , "abstract" : ! 0 } ) ; A . navigable = null ; this . decorator = function ( a , b ) { return T ( a ) && ! X ( b ) ? B [ a ] : O ( b ) && T ( a ) ? ( B [ a ] && ! B . $delegates [ a ] && ( B . $delegates [ a ] = B [ a ] ) , B [ a ] = b , this ) : this } ; this . state = function ( a , b ) { return M ( a ) ? b = a : b . name = a , x ( b ) , this } ; this . $get = v ; v . $inject = "$rootScope $q $view $injector $resolve $stateParams $urlRouter $location $urlMatcherFactory" . split ( " " ) } function I ( ) { function a ( a , b ) { return { load : function ( a ,
c ) { var e ; return c = R ( { template : null , controller : null , view : null , locals : null , notify : ! 0 , async : ! 0 , params : { } } , c ) , c . view && ( e = b . fromConfig ( c . view , c . params , c . locals ) ) , e } } } this . $get = a ; a . $inject = [ "$rootScope" , "$templateFactory" ] } function J ( a , b , c , e ) { function g ( a , b ) { function c ( a ) { return 1 === pa && 4 <= qa ? ! ! m . enabled ( a ) : 1 === pa && 2 <= qa ? ! ! m . enabled ( ) : ! ! k } var e = { enter : function ( a , b , c ) { b . after ( a ) ; c ( ) } , leave : function ( a , b ) { a . remove ( ) ; b ( ) } } ; if ( a . noanimation ) return e ; if ( m ) return { enter : function ( a , b , g ) { c ( a ) ? 2 < f . version . minor ? m . enter ( a ,
null , b ) . then ( g ) : m . enter ( a , null , b , g ) : e . enter ( a , b , g ) } , leave : function ( a , b ) { c ( a ) ? 2 < f . version . minor ? m . leave ( a ) . then ( b ) : m . leave ( a , b ) : e . leave ( a , b ) } } ; if ( k ) { var g = k && k ( b , a ) ; return { enter : function ( a , b , c ) { g . enter ( a , null , b ) ; c ( ) } , leave : function ( a , b ) { g . leave ( a ) ; b ( ) } } } return e } var h = function ( ) { return b . has ? function ( a ) { return b . has ( a ) ? b . get ( a ) : null } : function ( a ) { try { return b . get ( a ) } catch ( jb ) { return null } } } ( ) , k = h ( "$animator" ) , m = h ( "$animate" ) ; return { restrict : "ECA" , terminal : ! 0 , priority : 400 , transclude : "element" , compile : function ( b ,
h , k ) { return function ( b , h , m ) { function n ( ) { var a = r , b = q ; b && ( b . _willBeDestroyed = ! 0 ) ; t ? ( p . leave ( t , function ( ) { a && a . remove ( ) ; b && b . $destroy ( ) ; r = null } ) , r = t ) : ( a && a . remove ( ) , b && b . $destroy ( ) , r = null ) ; q = t = null } function w ( g ) { var w = G ( b , m , h , e ) , r = w && a . $current && a . $current . locals [ w ] ; ! g && r === u || b . _willBeDestroyed || ( g = b . $new ( ) , u = a . $current . locals [ w ] , g . $emit ( "$viewContentLoading" , w ) , t = k ( g , function ( a ) { p . enter ( a , h , function ( ) { q && q . $emit ( "$viewContentAnimationEnded" ) ; ( f . isDefined ( v ) && ! v || b . $eval ( v ) ) && c ( a ) } ) ; n ( ) } ) , q = g , q . $emit ( "$viewContentLoaded" ,
w ) , q . $eval ( x ) ) } var r , t , q , u , x = m . onload || "" , v = m . autoscroll , p = g ( m , b ) ; b . $on ( "$stateChangeSuccess" , function ( ) { w ( ! 1 ) } ) ; w ( ! 0 ) } } } } function E ( a , b , c , e ) { return { restrict : "ECA" , priority : - 400 , compile : function ( g ) { var f = g . html ( ) ; return function ( g , h , k ) { var m = c . $current ; k = G ( g , k , h , e ) ; if ( m = m && m . locals [ k ] ) { h . data ( "$uiView" , { name : k , state : m . $$state } ) ; h . html ( m . $template ? m . $template : f ) ; k = a ( h . contents ( ) ) ; if ( m . $$controller ) { m . $scope = g ; m . $element = h ; var n = b ( m . $$controller , m ) ; m . $$controllerAs && ( g [ m . $$controllerAs ] = n ) ; h . data ( "$ngControllerController" ,
n ) ; h . children ( ) . data ( "$ngControllerController" , n ) } k ( g ) } } } } } function G ( a , b , c , e ) { a = e ( b . uiView || b . name || "" ) ( a ) ; c = c . inheritedData ( "$uiView" ) ; return 0 <= a . indexOf ( "@" ) ? a : a + "@" + ( c ? c . state . name : "" ) } function N ( a , b ) { var c , e = a . match ( /^\s*({[^}]*})\s*$/ ) ; if ( e && ( a = b + "(" + e [ 1 ] + ")" ) , c = a . replace ( /\n/g , " " ) . match ( /^([^(]+?)\s*(\((.*)\))?$/ ) , ! c || 4 !== c . length ) throw Error ( "Invalid state ref '" + a + "'" ) ; return { state : c [ 1 ] , paramExpr : c [ 3 ] || null } } function K ( a ) { return ( a = a . parent ( ) . inheritedData ( "$uiView" ) ) && a . state && a . state . name ?
a . state : void 0 } function P ( a ) { var b = "[object SVGAnimatedString]" === Object . prototype . toString . call ( a . prop ( "href" ) ) , c = "FORM" === a [ 0 ] . nodeName ; return { attr : c ? "action" : b ? "xlink:href" : "href" , isAnchor : "A" === a . prop ( "tagName" ) . toUpperCase ( ) , clickable : ! c } } function V ( a , b , c , e , g ) { return function ( f ) { var h = f . which || f . button , k = g ( ) ; if ( ! ( 1 < h || f . ctrlKey || f . metaKey || f . shiftKey || a . attr ( "target" ) ) ) { var m = c ( function ( ) { b . go ( k . state , k . params , k . options ) } ) ; f . preventDefault ( ) ; var n = e . isAnchor && ! k . href ? 1 : 0 ; f . preventDefault = function ( ) { 0 >=
n -- && c . cancel ( m ) } } } } function S ( a , b ) { return { relative : K ( a ) || b . $current , inherit : ! 0 } } function W ( a , b ) { return { restrict : "A" , require : [ "?^uiSrefActive" , "?^uiSrefActiveEq" ] , link : function ( c , e , g , h ) { var k = N ( g . uiSref , a . current . name ) , m = { state : k . state , href : null , params : null } , n = P ( e ) , w = h [ 1 ] || h [ 0 ] ; m . options = R ( S ( e , a ) , g . uiSrefOpts ? c . $eval ( g . uiSrefOpts ) : { } ) ; var r = function ( b ) { b && ( m . params = f . copy ( b ) ) ; m . href = a . href ( k . state , m . params , m . options ) ; w && w . $$addStateInfo ( k . state , m . params ) ; null !== m . href && g . $set ( n . attr , m . href ) } ; k . paramExpr &&
( c . $watch ( k . paramExpr , function ( a ) { a !== m . params && r ( a ) } , ! 0 ) , m . params = f . copy ( c . $eval ( k . paramExpr ) ) ) ; r ( ) ; n . clickable && e . bind ( "click" , V ( e , a , b , n , function ( ) { return m } ) ) } } } function ja ( a , b ) { return { restrict : "A" , require : [ "?^uiSrefActive" , "?^uiSrefActiveEq" ] , link : function ( c , e , g , f ) { function h ( b ) { n . state = b [ 0 ] ; n . params = b [ 1 ] ; n . options = b [ 2 ] ; n . href = a . href ( n . state , n . params , n . options ) ; m && m . $$addStateInfo ( n . state , n . params ) ; n . href && g . $set ( k . attr , n . href ) } var k = P ( e ) , m = f [ 1 ] || f [ 0 ] ; f = "[" + [ g . uiState , g . uiStateParams || null , g . uiStateOpts ||
null ] . map ( function ( a ) { return a || "null" } ) . join ( ", " ) + "]" ; var n = { state : null , params : null , options : null , href : null } ; c . $watch ( f , h , ! 0 ) ; h ( c . $eval ( f ) ) ; k . clickable && e . bind ( "click" , V ( e , a , b , k , function ( ) { return n } ) ) } } } function ya ( a , b , c ) { return { restrict : "A" , controller : [ "$scope" , "$element" , "$attrs" , "$timeout" , function ( b , e , g , f ) { function h ( c , g , f ) { var h = a . get ( c , K ( e ) ) , k , m = g ; if ( ! T ( c ) ) throw Error ( "state should be a string" ) ; k = M ( m ) ? c + Y ( m ) : ( m = b . $eval ( m ) , M ( m ) ? c + Y ( m ) : c ) ; r . push ( { state : h || { name : c } , params : g , hash : k } ) ; t [ k ] = f } function k ( ) { for ( var b =
0 ; b < r . length ; b ++ ) a . includes ( r [ b ] . state . name , r [ b ] . params ) ? m ( e , t [ r [ b ] . hash ] ) : e . removeClass ( t [ r [ b ] . hash ] ) , a . is ( r [ b ] . state . name , r [ b ] . params ) ? m ( e , n ) : e . removeClass ( n ) } function m ( a , b ) { f ( function ( ) { a . addClass ( b ) } ) } var n , w , r = [ ] , t = { } ; n = c ( g . uiSrefActiveEq || "" , ! 1 ) ( b ) ; try { w = b . $eval ( g . uiSrefActive ) } catch ( Ma ) { } w = w || c ( g . uiSrefActive || "" , ! 1 ) ( b ) ; M ( w ) && ca ( w , function ( c , e ) { if ( T ( c ) ) { var g = N ( c , a . current . name ) ; h ( g . state , b . $eval ( g . paramExpr ) , e ) } } ) ; this . $$addStateInfo = function ( a , b ) { M ( w ) && 0 < r . length || ( h ( a , b , w ) , k ( ) ) } ; b . $on ( "$stateChangeSuccess" ,
k ) ; k ( ) } ] } } function Ga ( a ) { var b = function ( b , c ) { return a . is ( b , c ) } ; return b . $stateful = ! 0 , b } function za ( a ) { var b = function ( b , c , e ) { return a . includes ( b , c , e ) } ; return b . $stateful = ! 0 , b } var X = f . isDefined , O = f . isFunction , T = f . isString , M = f . isObject , ka = f . isArray , ca = f . forEach , R = f . extend , ea = f . copy , Y = f . toJson ; f . module ( "ui.router.util" , [ "ng" ] ) ; f . module ( "ui.router.router" , [ "ui.router.util" ] ) ; f . module ( "ui.router.state" , [ "ui.router.router" , "ui.router.util" ] ) ; f . module ( "ui.router" , [ "ui.router.state" ] ) ; f . module ( "ui.router.compat" ,
[ "ui.router" ] ) ; v . $inject = [ "$q" , "$injector" ] ; f . module ( "ui.router.util" ) . service ( "$resolve" , v ) ; z . $inject = [ "$http" , "$templateCache" , "$injector" ] ; f . module ( "ui.router.util" ) . service ( "$templateFactory" , z ) ; var ha ; A . prototype . concat = function ( a , b ) { var c = { caseInsensitive : ha . caseInsensitive ( ) , strict : ha . strictMode ( ) , squash : ha . defaultSquashPolicy ( ) } ; return new A ( this . sourcePath + a + this . sourceSearch , R ( c , b ) , this ) } ; A . prototype . toString = function ( ) { return this . source } ; A . prototype . exec = function ( a , b ) { function c ( a ) { function b ( a ) { return a . split ( "" ) . reverse ( ) . join ( "" ) }
a = b ( a ) . split ( /-(?!\\)/ ) ; a = q ( a , b ) ; return q ( a , function ( a ) { return a . replace ( /\\-/g , "-" ) } ) . reverse ( ) } var e = this . regexp . exec ( a ) ; if ( ! e ) return null ; b = b || { } ; var g , f , h , k = this . parameters ( ) , m = k . length , n = this . segments . length - 1 , w = { } ; if ( n !== e . length - 1 ) throw Error ( "Unbalanced capture group in route '" + this . source + "'" ) ; var r , t ; for ( g = 0 ; n > g ; g ++ ) { h = k [ g ] ; r = this . params [ h ] ; t = e [ g + 1 ] ; for ( f = 0 ; f < r . replace . length ; f ++ ) r . replace [ f ] . from === t && ( t = r . replace [ f ] . to ) ; t && ! 0 === r . array && ( t = c ( t ) ) ; X ( t ) && ( t = r . type . decode ( t ) ) ; w [ h ] = r . value ( t ) } for ( ; m >
g ; g ++ ) { h = k [ g ] ; w [ h ] = this . params [ h ] . value ( b [ h ] ) ; r = this . params [ h ] ; t = b [ h ] ; for ( f = 0 ; f < r . replace . length ; f ++ ) r . replace [ f ] . from === t && ( t = r . replace [ f ] . to ) ; X ( t ) && ( t = r . type . decode ( t ) ) ; w [ h ] = r . value ( t ) } return w } ; A . prototype . parameters = function ( a ) { return X ( a ) ? this . params [ a ] || null : this . $$paramNames } ; A . prototype . validates = function ( a ) { return this . params . $$validates ( a ) } ; A . prototype . format = function ( a ) { function b ( a ) { return encodeURIComponent ( a ) . replace ( /-/g , function ( a ) { return "%5C%" + a . charCodeAt ( 0 ) . toString ( 16 ) . toUpperCase ( ) } ) }
2017-07-25 17:51:59 +00:00
a = a || { } ; var c = this . segments , e = this . parameters ( ) , g = this . params ; if ( ! this . validates ( a ) ) return null ; var f , h = ! 1 , k = c . length - 1 , m = e . length , n = c [ 0 ] ; for ( f = 0 ; m > f ; f ++ ) { var r = k > f , t = e [ f ] , u = g [ t ] , x = u . value ( a [ t ] ) , v = u . isOptional && u . type . equals ( u . value ( ) , x ) , p = ! ! v && u . squash , x = u . type . encode ( x ) ; r ? ( r = c [ f + 1 ] , t = f + 1 === k , ! 1 === p ? ( null != x && ( n += ka ( x ) ? q ( x , b ) . join ( "-" ) : encodeURIComponent ( x ) ) , n += r ) : ! 0 === p ? ( p = n . match ( /\/$/ ) ? /\/?(.*)/ : /(.*)/ , n += r . match ( p ) [ 1 ] ) : T ( p ) && ( n += p + r ) , t && ! 0 === u . squash && "/" === n . slice ( - 1 ) && ( n = n . slice ( 0 , - 1 ) ) ) : null ==
2017-07-20 23:09:21 +00:00
x || v && ! 1 !== p || ( ka ( x ) || ( x = [ x ] ) , 0 === x . length ) || ( x = q ( x , encodeURIComponent ) . join ( "&" + t + "=" ) , n += ( h ? "&" : "?" ) + ( t + "=" + x ) , h = ! 0 ) } return n } ; B . prototype . is = function ( a , b ) { return ! 0 } ; B . prototype . encode = function ( a , b ) { return a } ; B . prototype . decode = function ( a , b ) { return a } ; B . prototype . equals = function ( a , b ) { return a == b } ; B . prototype . $subPattern = function ( ) { var a = this . pattern . toString ( ) ; return a . substr ( 1 , a . length - 2 ) } ; B . prototype . pattern = /.*/ ; B . prototype . toString = function ( ) { return "{Type:" + this . name + "}" } ; B . prototype . $normalize =
function ( a ) { return this . is ( a ) ? a : this . decode ( a ) } ; B . prototype . $asArray = function ( a , b ) { if ( ! a ) return this ; if ( "auto" === a && ! b ) throw Error ( "'auto' array mode is for query parameters only" ) ; return new function ( a , b ) { function c ( a , b ) { return function ( ) { return a [ b ] . apply ( a , arguments ) } } function e ( a ) { return ka ( a ) ? a : X ( a ) ? [ a ] : [ ] } function g ( a ) { return ! a } function f ( a , c ) { return function ( f ) { if ( ka ( f ) && 0 === f . length ) return f ; f = e ( f ) ; f = q ( f , a ) ; if ( ! 0 === c ) f = 0 === x ( f , g ) . length ; else a : switch ( f . length ) { case 0 : f = k ; break a ; case 1 : f =
"auto" === b ? f [ 0 ] : f } return f } } this . encode = f ( c ( a , "encode" ) ) ; this . decode = f ( c ( a , "decode" ) ) ; this . is = f ( c ( a , "is" ) , ! 0 ) ; this . equals = function ( a ) { return function ( b , c ) { var g = e ( b ) , f = e ( c ) ; if ( g . length !== f . length ) return ! 1 ; for ( var h = 0 ; h < g . length ; h ++ ) if ( ! a ( g [ h ] , f [ h ] ) ) return ! 1 ; return ! 0 } } ( c ( a , "equals" ) ) ; this . pattern = a . pattern ; this . $normalize = f ( c ( a , "$normalize" ) ) ; this . name = a . name ; this . $arrayMode = b } ( this , a ) } ; f . module ( "ui.router.util" ) . provider ( "$urlMatcherFactory" , F ) ; f . module ( "ui.router.util" ) . run ( [ "$urlMatcherFactory" ,
function ( a ) { } ] ) ; p . $inject = [ "$locationProvider" , "$urlMatcherFactoryProvider" ] ; f . module ( "ui.router.router" ) . provider ( "$urlRouter" , p ) ; u . $inject = [ "$urlRouterProvider" , "$urlMatcherFactoryProvider" ] ; f . module ( "ui.router.state" ) . factory ( "$stateParams" , function ( ) { return { } } ) . provider ( "$state" , u ) ; I . $inject = [ ] ; f . module ( "ui.router.state" ) . provider ( "$view" , I ) ; f . module ( "ui.router.state" ) . provider ( "$uiViewScroll" , function ( ) { var a = ! 1 ; this . useAnchorScroll = function ( ) { a = ! 0 } ; this . $get = [ "$anchorScroll" , "$timeout" , function ( b ,
c ) { return a ? b : function ( a ) { return c ( function ( ) { a [ 0 ] . scrollIntoView ( ) } , 0 , ! 1 ) } } ] } ) ; var pa = f . version . major , qa = f . version . minor ; J . $inject = [ "$state" , "$injector" , "$uiViewScroll" , "$interpolate" ] ; E . $inject = [ "$compile" , "$controller" , "$state" , "$interpolate" ] ; f . module ( "ui.router.state" ) . directive ( "uiView" , J ) ; f . module ( "ui.router.state" ) . directive ( "uiView" , E ) ; W . $inject = [ "$state" , "$timeout" ] ; ja . $inject = [ "$state" , "$timeout" ] ; ya . $inject = [ "$state" , "$stateParams" , "$interpolate" ] ; f . module ( "ui.router.state" ) . directive ( "uiSref" ,
W ) . directive ( "uiSrefActive" , ya ) . directive ( "uiSrefActiveEq" , ya ) . directive ( "uiState" , ja ) ; Ga . $inject = [ "$state" ] ; za . $inject = [ "$state" ] ; f . module ( "ui.router.state" ) . filter ( "isState" , Ga ) . filter ( "includedByState" , za ) } ) ( window , window . angular ) ; angular . module ( "ui.bootstrap" , "ui.bootstrap.tpls ui.bootstrap.collapse ui.bootstrap.accordion ui.bootstrap.alert ui.bootstrap.buttons ui.bootstrap.carousel ui.bootstrap.dateparser ui.bootstrap.position ui.bootstrap.datepicker ui.bootstrap.dropdown ui.bootstrap.stackedMap ui.bootstrap.modal ui.bootstrap.pagination ui.bootstrap.tooltip ui.bootstrap.popover ui.bootstrap.progressbar ui.bootstrap.rating ui.bootstrap.tabs ui.bootstrap.timepicker ui.bootstrap.typeahead" . split ( " " ) ) ;
2017-04-11 07:10:36 +00:00
angular . module ( "ui.bootstrap.tpls" , "template/accordion/accordion-group.html template/accordion/accordion.html template/alert/alert.html template/carousel/carousel.html template/carousel/slide.html template/datepicker/datepicker.html template/datepicker/day.html template/datepicker/month.html template/datepicker/popup.html template/datepicker/year.html template/modal/backdrop.html template/modal/window.html template/pagination/pager.html template/pagination/pagination.html template/tooltip/tooltip-html-popup.html template/tooltip/tooltip-popup.html template/tooltip/tooltip-template-popup.html template/popover/popover-html.html template/popover/popover-template.html template/popover/popover.html template/progressbar/bar.html template/progressbar/progress.html template/progressbar/progressbar.html template/rating/rating.html template/tabs/tab.html template/tabs/tabset.html template/timepicker/timepicker.html template/typeahead/typeahead-match.html template/typeahead/typeahead-popup.html" . split ( " " ) ) ;
2017-07-20 23:09:21 +00:00
angular . module ( "ui.bootstrap.collapse" , [ ] ) . directive ( "uibCollapse" , [ "$animate" , "$injector" , function ( a , f ) { var k = f . has ( "$animateCss" ) ? f . get ( "$animateCss" ) : null ; return { link : function ( f , c , b ) { function e ( ) { c . removeClass ( "collapsing" ) . addClass ( "collapse" ) . css ( { height : "auto" } ) } function g ( ) { c . css ( { height : "0" } ) ; c . removeClass ( "collapsing" ) . addClass ( "collapse" ) } f . $watch ( b . uibCollapse , function ( b ) { b ? c . hasClass ( "collapse" ) || c . hasClass ( "in" ) ? ( c . css ( { height : c [ 0 ] . scrollHeight + "px" } ) . removeClass ( "collapse" ) . addClass ( "collapsing" ) . attr ( "aria-expanded" ,
! 1 ) . attr ( "aria-hidden" , ! 0 ) , k ? k ( c , { removeClass : "in" , to : { height : "0" } } ) . start ( ) [ "finally" ] ( g ) : a . removeClass ( c , "in" , { to : { height : "0" } } ) . then ( g ) ) : g ( ) : ( c . removeClass ( "collapse" ) . addClass ( "collapsing" ) . attr ( "aria-expanded" , ! 0 ) . attr ( "aria-hidden" , ! 1 ) , k ? k ( c , { addClass : "in" , easing : "ease" , to : { height : c [ 0 ] . scrollHeight + "px" } } ) . start ( ) [ "finally" ] ( e ) : a . addClass ( c , "in" , { to : { height : c [ 0 ] . scrollHeight + "px" } } ) . then ( e ) ) } ) } } } ] ) ;
angular . module ( "ui.bootstrap.collapse" ) . value ( "$collapseSuppressWarning" , ! 1 ) . directive ( "collapse" , [ "$animate" , "$injector" , "$log" , "$collapseSuppressWarning" , function ( a , f , k , h ) { var c = f . has ( "$animateCss" ) ? f . get ( "$animateCss" ) : null ; return { link : function ( b , e , g ) { function f ( ) { e . removeClass ( "collapsing" ) . addClass ( "collapse in" ) . css ( { height : "auto" } ) } function m ( ) { e . css ( { height : "0" } ) ; e . removeClass ( "collapsing" ) . addClass ( "collapse" ) } h || k . warn ( "collapse is now deprecated. Use uib-collapse instead." ) ; b . $watch ( g . collapse ,
function ( b ) { b ? e . hasClass ( "collapse" ) || e . hasClass ( "in" ) ? ( e . css ( { height : e [ 0 ] . scrollHeight + "px" } ) . removeClass ( "collapse in" ) . addClass ( "collapsing" ) . attr ( "aria-expanded" , ! 1 ) . attr ( "aria-hidden" , ! 0 ) , c ? c ( e , { to : { height : "0" } } ) . start ( ) . done ( m ) : a . animate ( e , { } , { height : "0" } ) . then ( m ) ) : m ( ) : ( e . removeClass ( "collapse" ) . addClass ( "collapsing" ) . attr ( "aria-expanded" , ! 0 ) . attr ( "aria-hidden" , ! 1 ) , c ? c ( e , { easing : "ease" , to : { height : e [ 0 ] . scrollHeight + "px" } } ) . start ( ) . done ( f ) : a . animate ( e , { } , { height : e [ 0 ] . scrollHeight + "px" } ) . then ( f ) ) } ) } } } ] ) ;
angular . module ( "ui.bootstrap.accordion" , [ "ui.bootstrap.collapse" ] ) . constant ( "uibAccordionConfig" , { closeOthers : ! 0 } ) . controller ( "UibAccordionController" , [ "$scope" , "$attrs" , "uibAccordionConfig" , function ( a , f , k ) { this . groups = [ ] ; this . closeOthers = function ( h ) { ( angular . isDefined ( f . closeOthers ) ? a . $eval ( f . closeOthers ) : k . closeOthers ) && angular . forEach ( this . groups , function ( a ) { a !== h && ( a . isOpen = ! 1 ) } ) } ; this . addGroup = function ( a ) { var c = this ; this . groups . push ( a ) ; a . $on ( "$destroy" , function ( b ) { c . removeGroup ( a ) } ) } ; this . removeGroup =
function ( a ) { a = this . groups . indexOf ( a ) ; - 1 !== a && this . groups . splice ( a , 1 ) } } ] ) . directive ( "uibAccordion" , function ( ) { return { controller : "UibAccordionController" , controllerAs : "accordion" , transclude : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/accordion/accordion.html" } } } ) . directive ( "uibAccordionGroup" , function ( ) { return { require : "^uibAccordion" , transclude : ! 0 , replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/accordion/accordion-group.html" } , scope : { heading : "@" , isOpen : "=?" , isDisabled : "=?" } ,
controller : function ( ) { this . setHeading = function ( a ) { this . heading = a } } , link : function ( a , f , k , h ) { h . addGroup ( a ) ; a . openClass = k . openClass || "panel-open" ; a . panelClass = k . panelClass ; a . $watch ( "isOpen" , function ( c ) { f . toggleClass ( a . openClass , ! ! c ) ; c && h . closeOthers ( a ) } ) ; a . toggleOpen = function ( c ) { a . isDisabled || c && 32 !== c . which || ( a . isOpen = ! a . isOpen ) } } } } ) . directive ( "uibAccordionHeading" , function ( ) { return { transclude : ! 0 , template : "" , replace : ! 0 , require : "^uibAccordionGroup" , link : function ( a , f , k , h , c ) { h . setHeading ( c ( a , angular . noop ) ) } } } ) . directive ( "uibAccordionTransclude" ,
function ( ) { return { require : [ "?^uibAccordionGroup" , "?^accordionGroup" ] , link : function ( a , f , k , h ) { h = h [ 0 ] ? h [ 0 ] : h [ 1 ] ; a . $watch ( function ( ) { return h [ k . uibAccordionTransclude ] } , function ( a ) { a && ( f . find ( "span" ) . html ( "" ) , f . find ( "span" ) . append ( a ) ) } ) } } } ) ;
angular . module ( "ui.bootstrap.accordion" ) . value ( "$accordionSuppressWarning" , ! 1 ) . controller ( "AccordionController" , [ "$scope" , "$attrs" , "$controller" , "$log" , "$accordionSuppressWarning" , function ( a , f , k , h , c ) { c || h . warn ( "AccordionController is now deprecated. Use UibAccordionController instead." ) ; angular . extend ( this , k ( "UibAccordionController" , { $scope : a , $attrs : f } ) ) } ] ) . directive ( "accordion" , [ "$log" , "$accordionSuppressWarning" , function ( a , f ) { return { restrict : "EA" , controller : "AccordionController" , controllerAs : "accordion" ,
transclude : ! 0 , replace : ! 1 , templateUrl : function ( a , f ) { return f . templateUrl || "template/accordion/accordion.html" } , link : function ( ) { f || a . warn ( "accordion is now deprecated. Use uib-accordion instead." ) } } } ] ) . directive ( "accordionGroup" , [ "$log" , "$accordionSuppressWarning" , function ( a , f ) { return { require : "^accordion" , restrict : "EA" , transclude : ! 0 , replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/accordion/accordion-group.html" } , scope : { heading : "@" , isOpen : "=?" , isDisabled : "=?" } , controller : function ( ) { this . setHeading =
function ( a ) { this . heading = a } } , link : function ( k , h , c , b ) { f || a . warn ( "accordion-group is now deprecated. Use uib-accordion-group instead." ) ; b . addGroup ( k ) ; k . openClass = c . openClass || "panel-open" ; k . panelClass = c . panelClass ; k . $watch ( "isOpen" , function ( a ) { h . toggleClass ( k . openClass , ! ! a ) ; a && b . closeOthers ( k ) } ) ; k . toggleOpen = function ( a ) { k . isDisabled || a && 32 !== a . which || ( k . isOpen = ! k . isOpen ) } } } } ] ) . directive ( "accordionHeading" , [ "$log" , "$accordionSuppressWarning" , function ( a , f ) { return { restrict : "EA" , transclude : ! 0 , template : "" ,
replace : ! 0 , require : "^accordionGroup" , link : function ( k , h , c , b , e ) { f || a . warn ( "accordion-heading is now deprecated. Use uib-accordion-heading instead." ) ; b . setHeading ( e ( k , angular . noop ) ) } } } ] ) . directive ( "accordionTransclude" , [ "$log" , "$accordionSuppressWarning" , function ( a , f ) { return { require : "^accordionGroup" , link : function ( k , h , c , b ) { f || a . warn ( "accordion-transclude is now deprecated. Use uib-accordion-transclude instead." ) ; k . $watch ( function ( ) { return b [ c . accordionTransclude ] } , function ( a ) { a && ( h . find ( "span" ) . html ( "" ) ,
h . find ( "span" ) . append ( a ) ) } ) } } } ] ) ;
angular . module ( "ui.bootstrap.alert" , [ ] ) . controller ( "UibAlertController" , [ "$scope" , "$attrs" , "$interpolate" , "$timeout" , function ( a , f , k , h ) { a . closeable = ! ! f . close ; ( f = angular . isDefined ( f . dismissOnTimeout ) ? k ( f . dismissOnTimeout ) ( a . $parent ) : null ) && h ( function ( ) { a . close ( ) } , parseInt ( f , 10 ) ) } ] ) . directive ( "uibAlert" , function ( ) { return { controller : "UibAlertController" , controllerAs : "alert" , templateUrl : function ( a , f ) { return f . templateUrl || "template/alert/alert.html" } , transclude : ! 0 , replace : ! 0 , scope : { type : "@" , close : "&" } } } ) ;
angular . module ( "ui.bootstrap.alert" ) . value ( "$alertSuppressWarning" , ! 1 ) . controller ( "AlertController" , [ "$scope" , "$attrs" , "$controller" , "$log" , "$alertSuppressWarning" , function ( a , f , k , h , c ) { c || h . warn ( "AlertController is now deprecated. Use UibAlertController instead." ) ; angular . extend ( this , k ( "UibAlertController" , { $scope : a , $attrs : f } ) ) } ] ) . directive ( "alert" , [ "$log" , "$alertSuppressWarning" , function ( a , f ) { return { controller : "AlertController" , controllerAs : "alert" , templateUrl : function ( a , f ) { return f . templateUrl ||
"template/alert/alert.html" } , transclude : ! 0 , replace : ! 0 , scope : { type : "@" , close : "&" } , link : function ( ) { f || a . warn ( "alert is now deprecated. Use uib-alert instead." ) } } } ] ) ;
angular . module ( "ui.bootstrap.buttons" , [ ] ) . constant ( "uibButtonConfig" , { activeClass : "active" , toggleEvent : "click" } ) . controller ( "UibButtonsController" , [ "uibButtonConfig" , function ( a ) { this . activeClass = a . activeClass || "active" ; this . toggleEvent = a . toggleEvent || "click" } ] ) . directive ( "uibBtnRadio" , function ( ) { return { require : [ "uibBtnRadio" , "ngModel" ] , controller : "UibButtonsController" , controllerAs : "buttons" , link : function ( a , f , k , h ) { var c = h [ 0 ] , b = h [ 1 ] ; f . find ( "input" ) . css ( { display : "none" } ) ; b . $render = function ( ) { f . toggleClass ( c . activeClass ,
angular . equals ( b . $modelValue , a . $eval ( k . uibBtnRadio ) ) ) } ; f . on ( c . toggleEvent , function ( ) { if ( ! k . disabled ) { var e = f . hasClass ( c . activeClass ) ; e && ! angular . isDefined ( k . uncheckable ) || a . $apply ( function ( ) { b . $setViewValue ( e ? null : a . $eval ( k . uibBtnRadio ) ) ; b . $render ( ) } ) } } ) } } } ) . directive ( "uibBtnCheckbox" , function ( ) { return { require : [ "uibBtnCheckbox" , "ngModel" ] , controller : "UibButtonsController" , controllerAs : "button" , link : function ( a , f , k , h ) { function c ( b , c ) { return angular . isDefined ( b ) ? a . $eval ( b ) : c } var b = h [ 0 ] , e = h [ 1 ] ; f . find ( "input" ) . css ( { display : "none" } ) ;
e . $render = function ( ) { f . toggleClass ( b . activeClass , angular . equals ( e . $modelValue , c ( k . btnCheckboxTrue , ! 0 ) ) ) } ; f . on ( b . toggleEvent , function ( ) { k . disabled || a . $apply ( function ( ) { e . $setViewValue ( f . hasClass ( b . activeClass ) ? c ( k . btnCheckboxFalse , ! 1 ) : c ( k . btnCheckboxTrue , ! 0 ) ) ; e . $render ( ) } ) } ) } } } ) ;
angular . module ( "ui.bootstrap.buttons" ) . value ( "$buttonsSuppressWarning" , ! 1 ) . controller ( "ButtonsController" , [ "$controller" , "$log" , "$buttonsSuppressWarning" , function ( a , f , k ) { k || f . warn ( "ButtonsController is now deprecated. Use UibButtonsController instead." ) ; angular . extend ( this , a ( "UibButtonsController" ) ) } ] ) . directive ( "btnRadio" , [ "$log" , "$buttonsSuppressWarning" , function ( a , f ) { return { require : [ "btnRadio" , "ngModel" ] , controller : "ButtonsController" , controllerAs : "buttons" , link : function ( k , h , c , b ) { f || a . warn ( "btn-radio is now deprecated. Use uib-btn-radio instead." ) ;
var e = b [ 0 ] , g = b [ 1 ] ; h . find ( "input" ) . css ( { display : "none" } ) ; g . $render = function ( ) { h . toggleClass ( e . activeClass , angular . equals ( g . $modelValue , k . $eval ( c . btnRadio ) ) ) } ; h . bind ( e . toggleEvent , function ( ) { if ( ! c . disabled ) { var a = h . hasClass ( e . activeClass ) ; a && ! angular . isDefined ( c . uncheckable ) || k . $apply ( function ( ) { g . $setViewValue ( a ? null : k . $eval ( c . btnRadio ) ) ; g . $render ( ) } ) } } ) } } } ] ) . directive ( "btnCheckbox" , [ "$document" , "$log" , "$buttonsSuppressWarning" , function ( a , f , k ) { return { require : [ "btnCheckbox" , "ngModel" ] , controller : "ButtonsController" ,
controllerAs : "button" , link : function ( h , c , b , e ) { function g ( a , b ) { var c = h . $eval ( a ) ; return angular . isDefined ( c ) ? c : b } k || f . warn ( "btn-checkbox is now deprecated. Use uib-btn-checkbox instead." ) ; var r = e [ 0 ] , m = e [ 1 ] ; c . find ( "input" ) . css ( { display : "none" } ) ; m . $render = function ( ) { c . toggleClass ( r . activeClass , angular . equals ( m . $modelValue , g ( b . btnCheckboxTrue , ! 0 ) ) ) } ; c . bind ( r . toggleEvent , function ( ) { b . disabled || h . $apply ( function ( ) { m . $setViewValue ( c . hasClass ( r . activeClass ) ? g ( b . btnCheckboxFalse , ! 1 ) : g ( b . btnCheckboxTrue , ! 0 ) ) ;
m . $render ( ) } ) } ) ; c . on ( "keypress" , function ( e ) { b . disabled || 32 !== e . which || a [ 0 ] . activeElement !== c [ 0 ] || h . $apply ( function ( ) { m . $setViewValue ( c . hasClass ( r . activeClass ) ? g ( b . btnCheckboxFalse , ! 1 ) : g ( b . btnCheckboxTrue , ! 0 ) ) ; m . $render ( ) } ) } ) } } } ] ) ;
angular . module ( "ui.bootstrap.carousel" , [ ] ) . controller ( "UibCarouselController" , [ "$scope" , "$element" , "$interval" , "$animate" , function ( a , f , k , h ) { function c ( b , c , g ) { A || ( angular . extend ( b , { direction : g , active : ! 0 } ) , angular . extend ( t . currentSlide || { } , { direction : g , active : ! 1 } ) , h . enabled ( ) && ! a . noTransition && ! a . $currentTransition && b . $element && 1 < t . slides . length && ( b . $element . data ( v , b . direction ) , t . currentSlide && t . currentSlide . $element && t . currentSlide . $element . data ( v , b . direction ) , a . $currentTransition = ! 0 , q ? h . on ( "addClass" ,
b . $element , function ( b , c ) { "close" === c && ( a . $currentTransition = null , h . off ( "addClass" , b ) ) } ) : b . $element . one ( "$animate:close" , function ( ) { a . $currentTransition = null } ) ) , t . currentSlide = b , z = c , e ( ) ) } function b ( a ) { if ( angular . isUndefined ( x [ a ] . index ) ) return x [ a ] ; var b ; x . length ; for ( b = 0 ; b < x . length ; ++ b ) if ( x [ b ] . index == a ) return x [ b ] } function e ( ) { g ( ) ; var b = + a . interval ; ! isNaN ( b ) && 0 < b && ( m = k ( r , b ) ) } function g ( ) { m && ( k . cancel ( m ) , m = null ) } function r ( ) { var b = + a . interval ; n && ! isNaN ( b ) && 0 < b && x . length ? a . next ( ) : a . pause ( ) } var m , n , t =
this , x = t . slides = a . slides = [ ] , q = 4 <= angular . version . minor , v = "uib-slideDirection" , z = - 1 ; t . currentSlide = null ; var A = ! 1 ; t . select = a . select = function ( b , e ) { var g = a . indexOfSlide ( b ) ; void 0 === e && ( e = g > t . getCurrentIndex ( ) ? "next" : "prev" ) ; b && b !== t . currentSlide && ! a . $currentTransition && c ( b , g , e ) } ; a . $on ( "$destroy" , function ( ) { A = ! 0 } ) ; t . getCurrentIndex = function ( ) { return t . currentSlide && angular . isDefined ( t . currentSlide . index ) ? + t . currentSlide . index : z } ; a . indexOfSlide = function ( a ) { return angular . isDefined ( a . index ) ? + a . index : x . indexOf ( a ) } ;
a . next = function ( ) { var c = ( t . getCurrentIndex ( ) + 1 ) % x . length ; return 0 === c && a . noWrap ( ) ? void a . pause ( ) : t . select ( b ( c ) , "next" ) } ; a . prev = function ( ) { var c = 0 > t . getCurrentIndex ( ) - 1 ? x . length - 1 : t . getCurrentIndex ( ) - 1 ; return a . noWrap ( ) && c === x . length - 1 ? void a . pause ( ) : t . select ( b ( c ) , "prev" ) } ; a . isActive = function ( a ) { return t . currentSlide === a } ; a . $watch ( "interval" , e ) ; a . $watchCollection ( "slides" , function ( b ) { b . length || ( a . $currentTransition = null ) } ) ; a . $on ( "$destroy" , g ) ; a . play = function ( ) { n || ( n = ! 0 , e ( ) ) } ; a . pause = function ( ) { a . noPause ||
( n = ! 1 , g ( ) ) } ; t . addSlide = function ( b , c ) { b . $element = c ; x . push ( b ) ; 1 === x . length || b . active ? ( t . select ( x [ x . length - 1 ] ) , 1 === x . length && a . play ( ) ) : b . active = ! 1 } ; t . removeSlide = function ( a ) { angular . isDefined ( a . index ) && x . sort ( function ( a , b ) { return + a . index > + b . index } ) ; var b = x . indexOf ( a ) ; x . splice ( b , 1 ) ; 0 < x . length && a . active ? b >= x . length ? t . select ( x [ b - 1 ] ) : t . select ( x [ b ] ) : z > b && z -- ; 0 === x . length && ( t . currentSlide = null ) } ; a . $watch ( "noTransition" , function ( a ) { f . data ( "uib-noTransition" , a ) } ) } ] ) . directive ( "uibCarousel" , [ function ( ) { return { transclude : ! 0 ,
replace : ! 0 , controller : "UibCarouselController" , controllerAs : "carousel" , require : "carousel" , templateUrl : function ( a , f ) { return f . templateUrl || "template/carousel/carousel.html" } , scope : { interval : "=" , noTransition : "=" , noPause : "=" , noWrap : "&" } } } ] ) . directive ( "uibSlide" , function ( ) { return { require : "^uibCarousel" , restrict : "EA" , transclude : ! 0 , replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/carousel/slide.html" } , scope : { active : "=?" , actual : "=?" , index : "=?" } , link : function ( a , f , k , h ) { h . addSlide ( a , f ) ; a . $on ( "$destroy" ,
function ( ) { h . removeSlide ( a ) } ) ; a . $watch ( "active" , function ( c ) { c && h . select ( a ) } ) } } } ) . animation ( ".item" , [ "$injector" , "$animate" , function ( a , f ) { function k ( a , b , e ) { a . removeClass ( b ) ; e && e ( ) } var h = null ; return a . has ( "$animateCss" ) && ( h = a . get ( "$animateCss" ) ) , { beforeAddClass : function ( a , b , e ) { if ( "active" == b && a . parent ( ) && a . parent ( ) . parent ( ) && ! a . parent ( ) . parent ( ) . data ( "uib-noTransition" ) ) { var c = ! 1 ; b = a . data ( "uib-slideDirection" ) ; var r = "next" == b ? "left" : "right" , m = k . bind ( this , a , r + " " + b , e ) ; return a . addClass ( b ) , h ? h ( a , { addClass : r } ) . start ( ) . done ( m ) :
f . addClass ( a , r ) . then ( function ( ) { c || m ( ) ; e ( ) } ) , function ( ) { c = ! 0 } } e ( ) } , beforeRemoveClass : function ( a , b , e ) { if ( "active" === b && a . parent ( ) && a . parent ( ) . parent ( ) && ! a . parent ( ) . parent ( ) . data ( "uib-noTransition" ) ) { var c = ! 1 ; b = "next" == a . data ( "uib-slideDirection" ) ? "left" : "right" ; var r = k . bind ( this , a , b , e ) ; return h ? h ( a , { addClass : b } ) . start ( ) . done ( r ) : f . addClass ( a , b ) . then ( function ( ) { c || r ( ) ; e ( ) } ) , function ( ) { c = ! 0 } } e ( ) } } } ] ) ;
angular . module ( "ui.bootstrap.carousel" ) . value ( "$carouselSuppressWarning" , ! 1 ) . controller ( "CarouselController" , [ "$scope" , "$element" , "$controller" , "$log" , "$carouselSuppressWarning" , function ( a , f , k , h , c ) { c || h . warn ( "CarouselController is now deprecated. Use UibCarouselController instead." ) ; angular . extend ( this , k ( "UibCarouselController" , { $scope : a , $element : f } ) ) } ] ) . directive ( "carousel" , [ "$log" , "$carouselSuppressWarning" , function ( a , f ) { return { transclude : ! 0 , replace : ! 0 , controller : "CarouselController" , controllerAs : "carousel" ,
require : "carousel" , templateUrl : function ( a , f ) { return f . templateUrl || "template/carousel/carousel.html" } , scope : { interval : "=" , noTransition : "=" , noPause : "=" , noWrap : "&" } , link : function ( ) { f || a . warn ( "carousel is now deprecated. Use uib-carousel instead." ) } } } ] ) . directive ( "slide" , [ "$log" , "$carouselSuppressWarning" , function ( a , f ) { return { require : "^carousel" , transclude : ! 0 , replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/carousel/slide.html" } , scope : { active : "=?" , actual : "=?" , index : "=?" } , link : function ( k ,
h , c , b ) { f || a . warn ( "slide is now deprecated. Use uib-slide instead." ) ; b . addSlide ( k , h ) ; k . $on ( "$destroy" , function ( ) { b . removeSlide ( k ) } ) ; k . $watch ( "active" , function ( a ) { a && b . select ( k ) } ) } } } ] ) ;
2017-07-25 17:51:59 +00:00
angular . module ( "ui.bootstrap.dateparser" , [ ] ) . service ( "uibDateParser" , [ "$log" , "$locale" , "orderByFilter" , function ( a , f , k ) { function h ( a ) { var c = [ ] , e = a . split ( "" ) ; return angular . forEach ( b , function ( b , g ) { var f = a . indexOf ( g ) ; if ( - 1 < f ) { a = a . split ( "" ) ; e [ f ] = "(" + b . regex + ")" ; a [ f ] = "$" ; for ( var h = f + 1 , k = f + g . length ; h < k ; h ++ ) e [ h ] = "" , a [ h ] = "$" ; a = a . join ( "" ) ; c . push ( { index : f , apply : b . apply } ) } } ) , { regex : new RegExp ( "^" + e . join ( "" ) + "$" ) , map : k ( c , "index" ) } } var c , b , e = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g ; this . init = function ( ) { c = f . id ; this . parsers =
2017-07-20 23:09:21 +00:00
{ } ; b = { yyyy : { regex : "\\d{4}" , apply : function ( a ) { this . year = + a } } , yy : { regex : "\\d{2}" , apply : function ( a ) { this . year = + a + 2E3 } } , y : { regex : "\\d{1,4}" , apply : function ( a ) { this . year = + a } } , MMMM : { regex : f . DATETIME _FORMATS . MONTH . join ( "|" ) , apply : function ( a ) { this . month = f . DATETIME _FORMATS . MONTH . indexOf ( a ) } } , MMM : { regex : f . DATETIME _FORMATS . SHORTMONTH . join ( "|" ) , apply : function ( a ) { this . month = f . DATETIME _FORMATS . SHORTMONTH . indexOf ( a ) } } , MM : { regex : "0[1-9]|1[0-2]" , apply : function ( a ) { this . month = a - 1 } } , M : { regex : "[1-9]|1[0-2]" , apply : function ( a ) { this . month =
2017-04-11 11:04:48 +00:00
a - 1 } } , dd : { regex : "[0-2][0-9]{1}|3[0-1]{1}" , apply : function ( a ) { this . date = + a } } , d : { regex : "[1-2]?[0-9]{1}|3[0-1]{1}" , apply : function ( a ) { this . date = + a } } , EEEE : { regex : f . DATETIME _FORMATS . DAY . join ( "|" ) } , EEE : { regex : f . DATETIME _FORMATS . SHORTDAY . join ( "|" ) } , HH : { regex : "(?:0|1)[0-9]|2[0-3]" , apply : function ( a ) { this . hours = + a } } , hh : { regex : "0[0-9]|1[0-2]" , apply : function ( a ) { this . hours = + a } } , H : { regex : "1?[0-9]|2[0-3]" , apply : function ( a ) { this . hours = + a } } , h : { regex : "[0-9]|1[0-2]" , apply : function ( a ) { this . hours = + a } } , mm : { regex : "[0-5][0-9]" ,
2017-07-20 23:09:21 +00:00
apply : function ( a ) { this . minutes = + a } } , m : { regex : "[0-9]|[1-5][0-9]" , apply : function ( a ) { this . minutes = + a } } , sss : { regex : "[0-9][0-9][0-9]" , apply : function ( a ) { this . milliseconds = + a } } , ss : { regex : "[0-5][0-9]" , apply : function ( a ) { this . seconds = + a } } , s : { regex : "[0-9]|[1-5][0-9]" , apply : function ( a ) { this . seconds = + a } } , a : { regex : f . DATETIME _FORMATS . AMPMS . join ( "|" ) , apply : function ( a ) { 12 === this . hours && ( this . hours = 0 ) ; "PM" === a && ( this . hours += 12 ) } } } } ; this . init ( ) ; this . parse = function ( b , k , m ) { if ( ! angular . isString ( b ) || ! k ) return b ; k = f . DATETIME _FORMATS [ k ] ||
k ; k = k . replace ( e , "\\$&" ) ; f . id !== c && this . init ( ) ; this . parsers [ k ] || ( this . parsers [ k ] = h ( k ) ) ; var g = this . parsers [ k ] ; k = g . map ; if ( ( b = b . match ( g . regex ) ) && b . length ) { var r , x ; angular . isDate ( m ) && ! isNaN ( m . getTime ( ) ) ? r = { year : m . getFullYear ( ) , month : m . getMonth ( ) , date : m . getDate ( ) , hours : m . getHours ( ) , minutes : m . getMinutes ( ) , seconds : m . getSeconds ( ) , milliseconds : m . getMilliseconds ( ) } : ( m && a . warn ( "dateparser:" , "baseDate is not a valid date" ) , r = { year : 1900 , month : 0 , date : 1 , hours : 0 , minutes : 0 , seconds : 0 , milliseconds : 0 } ) ; for ( var g = 1 , q =
2017-07-25 17:51:59 +00:00
b . length ; g < q ; g ++ ) { var v = k [ g - 1 ] ; v . apply && v . apply . call ( r , b [ g ] ) } k = r . year ; b = r . month ; g = r . date ; return ! ( 1 > g ) && ( 1 === b && 28 < g ? 29 === g && ( 0 === k % 4 && 0 !== k % 100 || 0 === k % 400 ) : 3 !== b && 5 !== b && 8 !== b && 10 !== b || 31 > g ) && ( angular . isDate ( m ) && ! isNaN ( m . getTime ( ) ) ? ( x = new Date ( m ) , x . setFullYear ( r . year , r . month , r . date , r . hours , r . minutes , r . seconds , r . milliseconds || 0 ) ) : x = new Date ( r . year , r . month , r . date , r . hours , r . minutes , r . seconds , r . milliseconds || 0 ) ) , x } } } ] ) ;
2017-07-20 23:09:21 +00:00
angular . module ( "ui.bootstrap.dateparser" ) . value ( "$dateParserSuppressWarning" , ! 1 ) . service ( "dateParser" , [ "$log" , "$dateParserSuppressWarning" , "uibDateParser" , function ( a , f , k ) { f || a . warn ( "dateParser is now deprecated. Use uibDateParser instead." ) ; angular . extend ( this , k ) } ] ) ;
angular . module ( "ui.bootstrap.position" , [ ] ) . factory ( "$uibPosition" , [ "$document" , "$window" , function ( a , f ) { function k ( a , c ) { return a . currentStyle ? a . currentStyle [ c ] : f . getComputedStyle ? f . getComputedStyle ( a ) [ c ] : a . style [ c ] } return { position : function ( f ) { var c = this . offset ( f ) , b = { top : 0 , left : 0 } , e ; e = a [ 0 ] ; for ( var g = f [ 0 ] . offsetParent || e ; g && g !== e && "static" === ( k ( g , "position" ) || "static" ) ; ) g = g . offsetParent ; e = g || e ; e != a [ 0 ] && ( b = this . offset ( angular . element ( e ) ) , b . top += e . clientTop - e . scrollTop , b . left += e . clientLeft - e . scrollLeft ) ;
e = f [ 0 ] . getBoundingClientRect ( ) ; return { width : e . width || f . prop ( "offsetWidth" ) , height : e . height || f . prop ( "offsetHeight" ) , top : c . top - b . top , left : c . left - b . left } } , offset : function ( h ) { var c = h [ 0 ] . getBoundingClientRect ( ) ; return { width : c . width || h . prop ( "offsetWidth" ) , height : c . height || h . prop ( "offsetHeight" ) , top : c . top + ( f . pageYOffset || a [ 0 ] . documentElement . scrollTop ) , left : c . left + ( f . pageXOffset || a [ 0 ] . documentElement . scrollLeft ) } } , positionElements : function ( a , c , b , e ) { var g , f , h , k = b . split ( "-" ) ; b = k [ 0 ] ; k = k [ 1 ] || "center" ; g = e ? this . offset ( a ) :
this . position ( a ) ; f = c . prop ( "offsetWidth" ) ; h = c . prop ( "offsetHeight" ) ; a = { center : function ( ) { return g . left + g . width / 2 - f / 2 } , left : function ( ) { return g . left } , right : function ( ) { return g . left + g . width } } ; c = { center : function ( ) { return g . top + g . height / 2 - h / 2 } , top : function ( ) { return g . top } , bottom : function ( ) { return g . top + g . height } } ; switch ( b ) { case "right" : b = { top : c [ k ] ( ) , left : a [ b ] ( ) } ; break ; case "left" : b = { top : c [ k ] ( ) , left : g . left - f } ; break ; case "bottom" : b = { top : c [ b ] ( ) , left : a [ k ] ( ) } ; break ; default : b = { top : g . top - h , left : a [ k ] ( ) } } return b } } } ] ) ;
angular . module ( "ui.bootstrap.position" ) . value ( "$positionSuppressWarning" , ! 1 ) . service ( "$position" , [ "$log" , "$positionSuppressWarning" , "$uibPosition" , function ( a , f , k ) { f || a . warn ( "$position is now deprecated. Use $uibPosition instead." ) ; angular . extend ( this , k ) } ] ) ;
2017-04-11 07:10:36 +00:00
angular . module ( "ui.bootstrap.datepicker" , [ "ui.bootstrap.dateparser" , "ui.bootstrap.position" ] ) . value ( "$datepickerSuppressError" , ! 1 ) . constant ( "uibDatepickerConfig" , { formatDay : "dd" , formatMonth : "MMMM" , formatYear : "yyyy" , formatDayHeader : "EEE" , formatDayTitle : "MMMM yyyy" , formatMonthTitle : "yyyy" , datepickerMode : "day" , minMode : "day" , maxMode : "year" , showWeeks : ! 0 , startingDay : 0 , yearRange : 20 , minDate : null , maxDate : null , shortcutPropagation : ! 1 } ) . controller ( "UibDatepickerController" , [ "$scope" , "$attrs" , "$parse" , "$interpolate" ,
2017-07-20 23:09:21 +00:00
"$log" , "dateFilter" , "uibDatepickerConfig" , "$datepickerSuppressError" , function ( a , f , k , h , c , b , e , g ) { var r = this , m = { $setViewValue : angular . noop } ; this . modes = [ "day" , "month" , "year" ] ; angular . forEach ( "formatDay formatMonth formatYear formatDayHeader formatDayTitle formatMonthTitle showWeeks startingDay yearRange shortcutPropagation" . split ( " " ) , function ( b , c ) { r [ b ] = angular . isDefined ( f [ b ] ) ? 6 > c ? h ( f [ b ] ) ( a . $parent ) : a . $parent . $eval ( f [ b ] ) : e [ b ] } ) ; angular . forEach ( [ "minDate" , "maxDate" ] , function ( b ) { f [ b ] ? a . $parent . $watch ( k ( f [ b ] ) ,
function ( a ) { r [ b ] = a ? new Date ( a ) : null ; r . refreshView ( ) } ) : r [ b ] = e [ b ] ? new Date ( e [ b ] ) : null } ) ; angular . forEach ( [ "minMode" , "maxMode" ] , function ( b ) { f [ b ] ? a . $parent . $watch ( k ( f [ b ] ) , function ( c ) { r [ b ] = angular . isDefined ( c ) ? c : f [ b ] ; a [ b ] = r [ b ] ; ( "minMode" == b && r . modes . indexOf ( a . datepickerMode ) < r . modes . indexOf ( r [ b ] ) || "maxMode" == b && r . modes . indexOf ( a . datepickerMode ) > r . modes . indexOf ( r [ b ] ) ) && ( a . datepickerMode = r [ b ] ) } ) : ( r [ b ] = e [ b ] || null , a [ b ] = r [ b ] ) } ) ; a . datepickerMode = a . datepickerMode || e . datepickerMode ; a . uniqueId = "datepicker-" + a . $id +
2017-07-25 17:51:59 +00:00
"-" + Math . floor ( 1E4 * Math . random ( ) ) ; angular . isDefined ( f . initDate ) ? ( this . activeDate = a . $parent . $eval ( f . initDate ) || new Date , a . $parent . $watch ( f . initDate , function ( a ) { a && ( m . $isEmpty ( m . $modelValue ) || m . $invalid ) && ( r . activeDate = a , r . refreshView ( ) ) } ) ) : this . activeDate = new Date ; a . isActive = function ( b ) { return 0 === r . compare ( b . date , r . activeDate ) && ( a . activeDateId = b . uid , ! 0 ) } ; this . init = function ( a ) { m = a ; m . $render = function ( ) { r . render ( ) } } ; this . render = function ( ) { if ( m . $viewValue ) { var a = new Date ( m . $viewValue ) ; isNaN ( a ) ? g || c . error ( 'Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.' ) :
2017-07-20 23:09:21 +00:00
this . activeDate = a } this . refreshView ( ) } ; this . refreshView = function ( ) { if ( this . element ) { this . _refreshView ( ) ; var a = m . $viewValue ? new Date ( m . $viewValue ) : null ; m . $setValidity ( "dateDisabled" , ! a || this . element && ! this . isDisabled ( a ) ) } } ; this . createDateObject = function ( a , c ) { var e = m . $viewValue ? new Date ( m . $viewValue ) : null ; return { date : a , label : b ( a , c ) , selected : e && 0 === this . compare ( a , e ) , disabled : this . isDisabled ( a ) , current : 0 === this . compare ( a , new Date ) , customClass : this . customClass ( a ) } } ; this . isDisabled = function ( b ) { return this . minDate &&
0 > this . compare ( b , this . minDate ) || this . maxDate && 0 < this . compare ( b , this . maxDate ) || f . dateDisabled && a . dateDisabled ( { date : b , mode : a . datepickerMode } ) } ; this . customClass = function ( b ) { return a . customClass ( { date : b , mode : a . datepickerMode } ) } ; this . split = function ( a , b ) { for ( var c = [ ] ; 0 < a . length ; ) c . push ( a . splice ( 0 , b ) ) ; return c } ; a . select = function ( b ) { if ( a . datepickerMode === r . minMode ) { var c = m . $viewValue ? new Date ( m . $viewValue ) : new Date ( 0 , 0 , 0 , 0 , 0 , 0 , 0 ) ; c . setFullYear ( b . getFullYear ( ) , b . getMonth ( ) , b . getDate ( ) ) ; m . $setViewValue ( c ) ;
m . $render ( ) } else r . activeDate = b , a . datepickerMode = r . modes [ r . modes . indexOf ( a . datepickerMode ) - 1 ] } ; a . move = function ( a ) { var b = r . activeDate . getFullYear ( ) + a * ( r . step . years || 0 ) ; a = r . activeDate . getMonth ( ) + a * ( r . step . months || 0 ) ; r . activeDate . setFullYear ( b , a , 1 ) ; r . refreshView ( ) } ; a . toggleMode = function ( b ) { b = b || 1 ; a . datepickerMode === r . maxMode && 1 === b || a . datepickerMode === r . minMode && - 1 === b || ( a . datepickerMode = r . modes [ r . modes . indexOf ( a . datepickerMode ) + b ] ) } ; a . keys = { 13 : "enter" , 32 : "space" , 33 : "pageup" , 34 : "pagedown" , 35 : "end" , 36 : "home" ,
37 : "left" , 38 : "up" , 39 : "right" , 40 : "down" } ; a . $on ( "uib:datepicker.focus" , function ( ) { r . element [ 0 ] . focus ( ) } ) ; a . keydown = function ( b ) { var c = a . keys [ b . which ] ; ! c || b . shiftKey || b . altKey || ( ( b . preventDefault ( ) , r . shortcutPropagation || b . stopPropagation ( ) , "enter" === c || "space" === c ) ? r . isDisabled ( r . activeDate ) || a . select ( r . activeDate ) : ! b . ctrlKey || "up" !== c && "down" !== c ? ( r . handleKeyDown ( c , b ) , r . refreshView ( ) ) : a . toggleMode ( "up" === c ? 1 : - 1 ) ) } } ] ) . controller ( "UibDaypickerController" , [ "$scope" , "$element" , "dateFilter" , function ( a , f ,
2017-07-25 17:51:59 +00:00
k ) { function h ( a , c ) { return 1 !== c || 0 !== a % 4 || 0 === a % 100 && 0 !== a % 400 ? b [ c ] : 29 } function c ( a ) { a = new Date ( a ) ; a . setDate ( a . getDate ( ) + 4 - ( a . getDay ( ) || 7 ) ) ; var b = a . getTime ( ) ; return a . setMonth ( 0 ) , a . setDate ( 1 ) , Math . floor ( Math . round ( ( b - a ) / 864E5 ) / 7 ) + 1 } var b = [ 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 ] ; this . step = { months : 1 } ; this . element = f ; this . init = function ( b ) { angular . extend ( b , this ) ; a . showWeeks = b . showWeeks ; b . refreshView ( ) } ; this . getDates = function ( a , b ) { for ( var c , e = Array ( b ) , g = new Date ( a ) , f = 0 ; f < b ; ) c = new Date ( g ) , e [ f ++ ] = c , g . setDate ( g . getDate ( ) +
2017-07-20 23:09:21 +00:00
1 ) ; return e } ; this . _refreshView = function ( ) { var b = this . activeDate . getFullYear ( ) , g = this . activeDate . getMonth ( ) , f = new Date ( this . activeDate ) ; f . setFullYear ( b , g , 1 ) ; b = this . startingDay - f . getDay ( ) ; b = 0 < b ? 7 - b : - b ; f = new Date ( f ) ; 0 < b && f . setDate ( - b + 1 ) ; f = this . getDates ( f , 42 ) ; for ( b = 0 ; 42 > b ; b ++ ) f [ b ] = angular . extend ( this . createDateObject ( f [ b ] , this . formatDay ) , { secondary : f [ b ] . getMonth ( ) !== g , uid : a . uniqueId + "-" + b } ) ; a . labels = Array ( 7 ) ; for ( g = 0 ; 7 > g ; g ++ ) a . labels [ g ] = { abbr : k ( f [ g ] . date , this . formatDayHeader ) , full : k ( f [ g ] . date , "EEEE" ) } ;
2017-07-25 17:51:59 +00:00
if ( a . title = k ( this . activeDate , this . formatDayTitle ) , a . rows = this . split ( f , 7 ) , a . showWeeks ) for ( a . weekNumbers = [ ] , g = ( 11 - this . startingDay ) % 7 , f = a . rows . length , b = 0 ; b < f ; b ++ ) a . weekNumbers . push ( c ( a . rows [ b ] [ g ] . date ) ) } ; this . compare = function ( a , b ) { return new Date ( a . getFullYear ( ) , a . getMonth ( ) , a . getDate ( ) ) - new Date ( b . getFullYear ( ) , b . getMonth ( ) , b . getDate ( ) ) } ; this . handleKeyDown = function ( a , b ) { var c = this . activeDate . getDate ( ) ; if ( "left" === a ) -- c ; else if ( "up" === a ) c -= 7 ; else if ( "right" === a ) c += 1 ; else if ( "down" === a ) c += 7 ; else if ( "pageup" ===
2017-07-20 23:09:21 +00:00
a || "pagedown" === a ) { var e = this . activeDate . getMonth ( ) + ( "pageup" === a ? - 1 : 1 ) ; this . activeDate . setMonth ( e , 1 ) ; c = Math . min ( h ( this . activeDate . getFullYear ( ) , this . activeDate . getMonth ( ) ) , c ) } else "home" === a ? c = 1 : "end" === a && ( c = h ( this . activeDate . getFullYear ( ) , this . activeDate . getMonth ( ) ) ) ; this . activeDate . setDate ( c ) } } ] ) . controller ( "UibMonthpickerController" , [ "$scope" , "$element" , "dateFilter" , function ( a , f , k ) { this . step = { years : 1 } ; this . element = f ; this . init = function ( a ) { angular . extend ( a , this ) ; a . refreshView ( ) } ; this . _refreshView =
function ( ) { for ( var f , c = Array ( 12 ) , b = this . activeDate . getFullYear ( ) , e = 0 ; 12 > e ; e ++ ) f = new Date ( this . activeDate ) , f . setFullYear ( b , e , 1 ) , c [ e ] = angular . extend ( this . createDateObject ( f , this . formatMonth ) , { uid : a . uniqueId + "-" + e } ) ; a . title = k ( this . activeDate , this . formatMonthTitle ) ; a . rows = this . split ( c , 3 ) } ; this . compare = function ( a , c ) { return new Date ( a . getFullYear ( ) , a . getMonth ( ) ) - new Date ( c . getFullYear ( ) , c . getMonth ( ) ) } ; this . handleKeyDown = function ( a , c ) { var b = this . activeDate . getMonth ( ) ; if ( "left" === a ) -- b ; else if ( "up" === a ) b -=
3 ; else if ( "right" === a ) b += 1 ; else if ( "down" === a ) b += 3 ; else if ( "pageup" === a || "pagedown" === a ) { var e = this . activeDate . getFullYear ( ) + ( "pageup" === a ? - 1 : 1 ) ; this . activeDate . setFullYear ( e ) } else "home" === a ? b = 0 : "end" === a && ( b = 11 ) ; this . activeDate . setMonth ( b ) } } ] ) . controller ( "UibYearpickerController" , [ "$scope" , "$element" , "dateFilter" , function ( a , f , k ) { var h ; this . element = f ; this . yearpickerInit = function ( ) { h = this . yearRange ; this . step = { years : h } } ; this . _refreshView = function ( ) { for ( var c , b = Array ( h ) , e = 0 , g = parseInt ( ( this . activeDate . getFullYear ( ) -
2017-07-25 17:51:59 +00:00
1 ) / h , 10 ) * h + 1 ; e < h ; e ++ ) c = new Date ( this . activeDate ) , c . setFullYear ( g + e , 0 , 1 ) , b [ e ] = angular . extend ( this . createDateObject ( c , this . formatYear ) , { uid : a . uniqueId + "-" + e } ) ; a . title = [ b [ 0 ] . label , b [ h - 1 ] . label ] . join ( " - " ) ; a . rows = this . split ( b , 5 ) } ; this . compare = function ( a , b ) { return a . getFullYear ( ) - b . getFullYear ( ) } ; this . handleKeyDown = function ( a , b ) { var c = this . activeDate . getFullYear ( ) ; "left" === a ? -- c : "up" === a ? c -= 5 : "right" === a ? c += 1 : "down" === a ? c += 5 : "pageup" === a || "pagedown" === a ? c += ( "pageup" === a ? - 1 : 1 ) * this . step . years : "home" ===
2017-07-20 23:09:21 +00:00
a ? c = parseInt ( ( this . activeDate . getFullYear ( ) - 1 ) / h , 10 ) * h + 1 : "end" === a && ( c = parseInt ( ( this . activeDate . getFullYear ( ) - 1 ) / h , 10 ) * h + 1 + h - 1 ) ; this . activeDate . setFullYear ( c ) } } ] ) . directive ( "uibDatepicker" , function ( ) { return { replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/datepicker.html" } , scope : { datepickerMode : "=?" , dateDisabled : "&" , customClass : "&" , shortcutPropagation : "&?" } , require : [ "uibDatepicker" , "^ngModel" ] , controller : "UibDatepickerController" , controllerAs : "datepicker" , link : function ( a ,
f , k , h ) { h [ 0 ] . init ( h [ 1 ] ) } } } ) . directive ( "uibDaypicker" , function ( ) { return { replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/day.html" } , require : [ "^?uibDatepicker" , "uibDaypicker" , "^?datepicker" ] , controller : "UibDaypickerController" , link : function ( a , f , k , h ) { h [ 1 ] . init ( h [ 0 ] || h [ 2 ] ) } } } ) . directive ( "uibMonthpicker" , function ( ) { return { replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/month.html" } , require : [ "^?uibDatepicker" , "uibMonthpicker" , "^?datepicker" ] ,
controller : "UibMonthpickerController" , link : function ( a , f , k , h ) { h [ 1 ] . init ( h [ 0 ] || h [ 2 ] ) } } } ) . directive ( "uibYearpicker" , function ( ) { return { replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/year.html" } , require : [ "^?uibDatepicker" , "uibYearpicker" , "^?datepicker" ] , controller : "UibYearpickerController" , link : function ( a , f , k , h ) { a = h [ 0 ] || h [ 2 ] ; angular . extend ( a , h [ 1 ] ) ; a . yearpickerInit ( ) ; a . refreshView ( ) } } } ) . constant ( "uibDatepickerPopupConfig" , { datepickerPopup : "yyyy-MM-dd" , datepickerPopupTemplateUrl : "template/datepicker/popup.html" ,
datepickerTemplateUrl : "template/datepicker/datepicker.html" , html5Types : { date : "yyyy-MM-dd" , "datetime-local" : "yyyy-MM-ddTHH:mm:ss.sss" , month : "yyyy-MM" } , currentText : "Today" , clearText : "Clear" , closeText : "Done" , closeOnDateSelection : ! 0 , appendToBody : ! 1 , showButtonBar : ! 0 , onOpenFocus : ! 0 } ) . controller ( "UibDatepickerPopupController" , [ "$scope" , "$element" , "$attrs" , "$compile" , "$parse" , "$document" , "$rootScope" , "$uibPosition" , "dateFilter" , "uibDateParser" , "uibDatepickerPopupConfig" , "$timeout" , function ( a , f , k , h , c , b , e ,
g , r , m , n , t ) { function x ( a ) { return a . replace ( /([A-Z])/g , function ( a ) { return "-" + a . toLowerCase ( ) } ) } function q ( b ) { angular . isNumber ( b ) && ( b = new Date ( b ) ) ; if ( ! b ) return null ; if ( angular . isDate ( b ) && ! isNaN ( b ) ) return b ; if ( angular . isString ( b ) ) return b = m . parse ( b , B , a . date ) , isNaN ( b ) ? void 0 : b } function v ( a , b ) { var c = a || b ; return k . ngRequired || c ? ( angular . isNumber ( c ) && ( c = new Date ( c ) ) , c ) ? angular . isDate ( c ) && ! isNaN ( c ) ? ! 0 : angular . isString ( c ) ? ( c = m . parse ( c , B ) , ! isNaN ( c ) ) : ! 1 : ! 0 : ! 0 } function z ( b ) { var c = K [ 0 ] , e = f [ 0 ] . contains ( b . target ) ;
b = void 0 !== c . contains && c . contains ( b . target ) ; ! a . isOpen || e || b || a . $apply ( function ( ) { a . isOpen = ! 1 } ) } function A ( b ) { 27 === b . which && a . isOpen ? ( b . preventDefault ( ) , b . stopPropagation ( ) , a . $apply ( function ( ) { a . isOpen = ! 1 } ) , f [ 0 ] . focus ( ) ) : 40 !== b . which || a . isOpen || ( b . preventDefault ( ) , b . stopPropagation ( ) , a . $apply ( function ( ) { a . isOpen = ! 0 } ) ) } var B , F , p , u , I , J , E , G , N , K , P = { } , V = ! 1 ; a . watchData = { } ; this . init = function ( g ) { if ( N = g , F = angular . isDefined ( k . closeOnDateSelection ) ? a . $parent . $eval ( k . closeOnDateSelection ) : n . closeOnDateSelection ,
p = angular . isDefined ( k . datepickerAppendToBody ) ? a . $parent . $eval ( k . datepickerAppendToBody ) : n . appendToBody , u = angular . isDefined ( k . onOpenFocus ) ? a . $parent . $eval ( k . onOpenFocus ) : n . onOpenFocus , I = angular . isDefined ( k . datepickerPopupTemplateUrl ) ? k . datepickerPopupTemplateUrl : n . datepickerPopupTemplateUrl , J = angular . isDefined ( k . datepickerTemplateUrl ) ? k . datepickerTemplateUrl : n . datepickerTemplateUrl , a . showButtonBar = angular . isDefined ( k . showButtonBar ) ? a . $parent . $eval ( k . showButtonBar ) : n . showButtonBar , n . html5Types [ k . type ] ?
( B = n . html5Types [ k . type ] , V = ! 0 ) : ( B = k . datepickerPopup || k . uibDatepickerPopup || n . datepickerPopup , k . $observe ( "uibDatepickerPopup" , function ( a , b ) { var c = a || n . datepickerPopup ; if ( c !== B && ( B = c , N . $modelValue = null , ! B ) ) throw Error ( "uibDatepickerPopup must have a date format specified." ) ; } ) ) , ! B ) throw Error ( "uibDatepickerPopup must have a date format specified." ) ; if ( V && k . datepickerPopup ) throw Error ( "HTML5 date input types do not support custom formats." ) ; if ( E = angular . element ( "<div uib-datepicker-popup-wrap><div uib-datepicker></div></div>" ) ,
E . attr ( { "ng-model" : "date" , "ng-change" : "dateSelection(date)" , "template-url" : I } ) , G = angular . element ( E . children ( ) [ 0 ] ) , G . attr ( "template-url" , J ) , V && "month" === k . type && ( G . attr ( "datepicker-mode" , '"month"' ) , G . attr ( "min-mode" , "month" ) ) , k . datepickerOptions ) ( g = a . $parent . $eval ( k . datepickerOptions ) ) && g . initDate && ( a . initDate = g . initDate , G . attr ( "init-date" , "initDate" ) , delete g . initDate ) , angular . forEach ( g , function ( a , b ) { G . attr ( x ( b ) , a ) } ) ; angular . forEach ( "minMode maxMode minDate maxDate datepickerMode initDate shortcutPropagation" . split ( " " ) ,
function ( b ) { if ( k [ b ] ) { var e = c ( k [ b ] ) ; if ( a . $parent . $watch ( e , function ( c ) { a . watchData [ b ] = c ; "minDate" !== b && "maxDate" !== b || ( P [ b ] = new Date ( c ) ) } ) , G . attr ( x ( b ) , "watchData." + b ) , "datepickerMode" === b ) { var g = e . assign ; a . $watch ( "watchData." + b , function ( b , c ) { angular . isFunction ( g ) && b !== c && g ( a . $parent , b ) } ) } } } ) ; k . dateDisabled && G . attr ( "date-disabled" , "dateDisabled({ date: date, mode: mode })" ) ; k . showWeeks && G . attr ( "show-weeks" , k . showWeeks ) ; k . customClass && G . attr ( "custom-class" , "customClass({ date: date, mode: mode })" ) ; V ?
N . $formatters . push ( function ( b ) { return a . date = b , b } ) : ( N . $$parserName = "date" , N . $validators . date = v , N . $parsers . unshift ( q ) , N . $formatters . push ( function ( b ) { return a . date = b , N . $isEmpty ( b ) ? b : r ( b , B ) } ) ) ; N . $viewChangeListeners . push ( function ( ) { a . date = m . parse ( N . $viewValue , B , a . date ) } ) ; f . bind ( "keydown" , A ) ; K = h ( E ) ( a ) ; E . remove ( ) ; p ? b . find ( "body" ) . append ( K ) : f . after ( K ) ; a . $on ( "$destroy" , function ( ) { ! 0 === a . isOpen && ( e . $$phase || a . $apply ( function ( ) { a . isOpen = ! 1 } ) ) ; K . remove ( ) ; f . unbind ( "keydown" , A ) ; b . unbind ( "click" , z ) } ) } ; a . getText =
function ( b ) { return a [ b + "Text" ] || n [ b + "Text" ] } ; a . isDisabled = function ( b ) { return "today" === b && ( b = new Date ) , a . watchData . minDate && 0 > a . compare ( b , P . minDate ) || a . watchData . maxDate && 0 < a . compare ( b , P . maxDate ) } ; a . compare = function ( a , b ) { return new Date ( a . getFullYear ( ) , a . getMonth ( ) , a . getDate ( ) ) - new Date ( b . getFullYear ( ) , b . getMonth ( ) , b . getDate ( ) ) } ; a . dateSelection = function ( b ) { angular . isDefined ( b ) && ( a . date = b ) ; b = a . date ? r ( a . date , B ) : null ; f . val ( b ) ; N . $setViewValue ( b ) ; F && ( a . isOpen = ! 1 , f [ 0 ] . focus ( ) ) } ; a . keydown = function ( b ) { 27 ===
b . which && ( a . isOpen = ! 1 , f [ 0 ] . focus ( ) ) } ; a . select = function ( b ) { if ( "today" === b ) { var c = new Date ; angular . isDate ( a . date ) ? ( b = new Date ( a . date ) , b . setFullYear ( c . getFullYear ( ) , c . getMonth ( ) , c . getDate ( ) ) ) : b = new Date ( c . setHours ( 0 , 0 , 0 , 0 ) ) } a . dateSelection ( b ) } ; a . close = function ( ) { a . isOpen = ! 1 ; f [ 0 ] . focus ( ) } ; a . $watch ( "isOpen" , function ( c ) { c ? ( a . position = p ? g . offset ( f ) : g . position ( f ) , a . position . top += f . prop ( "offsetHeight" ) , t ( function ( ) { u && a . $broadcast ( "uib:datepicker.focus" ) ; b . bind ( "click" , z ) } , 0 , ! 1 ) ) : b . unbind ( "click" , z ) } ) } ] ) . directive ( "uibDatepickerPopup" ,
function ( ) { return { require : [ "ngModel" , "uibDatepickerPopup" ] , controller : "UibDatepickerPopupController" , scope : { isOpen : "=?" , currentText : "@" , clearText : "@" , closeText : "@" , dateDisabled : "&" , customClass : "&" } , link : function ( a , f , k , h ) { h [ 1 ] . init ( h [ 0 ] ) } } } ) . directive ( "uibDatepickerPopupWrap" , function ( ) { return { replace : ! 0 , transclude : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/popup.html" } } } ) ;
angular . module ( "ui.bootstrap.datepicker" ) . value ( "$datepickerSuppressWarning" , ! 1 ) . controller ( "DatepickerController" , [ "$scope" , "$attrs" , "$parse" , "$interpolate" , "$log" , "dateFilter" , "uibDatepickerConfig" , "$datepickerSuppressError" , "$datepickerSuppressWarning" , function ( a , f , k , h , c , b , e , g , r ) { r || c . warn ( "DatepickerController is now deprecated. Use UibDatepickerController instead." ) ; var m = this , n = { $setViewValue : angular . noop } ; this . modes = [ "day" , "month" , "year" ] ; angular . forEach ( "formatDay formatMonth formatYear formatDayHeader formatDayTitle formatMonthTitle showWeeks startingDay yearRange shortcutPropagation" . split ( " " ) ,
function ( b , c ) { m [ b ] = angular . isDefined ( f [ b ] ) ? 6 > c ? h ( f [ b ] ) ( a . $parent ) : a . $parent . $eval ( f [ b ] ) : e [ b ] } ) ; angular . forEach ( [ "minDate" , "maxDate" ] , function ( b ) { f [ b ] ? a . $parent . $watch ( k ( f [ b ] ) , function ( a ) { m [ b ] = a ? new Date ( a ) : null ; m . refreshView ( ) } ) : m [ b ] = e [ b ] ? new Date ( e [ b ] ) : null } ) ; angular . forEach ( [ "minMode" , "maxMode" ] , function ( b ) { f [ b ] ? a . $parent . $watch ( k ( f [ b ] ) , function ( c ) { m [ b ] = angular . isDefined ( c ) ? c : f [ b ] ; a [ b ] = m [ b ] ; ( "minMode" == b && m . modes . indexOf ( a . datepickerMode ) < m . modes . indexOf ( m [ b ] ) || "maxMode" == b && m . modes . indexOf ( a . datepickerMode ) >
2017-07-25 17:51:59 +00:00
m . modes . indexOf ( m [ b ] ) ) && ( a . datepickerMode = m [ b ] ) } ) : ( m [ b ] = e [ b ] || null , a [ b ] = m [ b ] ) } ) ; a . datepickerMode = a . datepickerMode || e . datepickerMode ; a . uniqueId = "datepicker-" + a . $id + "-" + Math . floor ( 1E4 * Math . random ( ) ) ; angular . isDefined ( f . initDate ) ? ( this . activeDate = a . $parent . $eval ( f . initDate ) || new Date , a . $parent . $watch ( f . initDate , function ( a ) { a && ( n . $isEmpty ( n . $modelValue ) || n . $invalid ) && ( m . activeDate = a , m . refreshView ( ) ) } ) ) : this . activeDate = new Date ; a . isActive = function ( b ) { return 0 === m . compare ( b . date , m . activeDate ) && ( a . activeDateId =
b . uid , ! 0 ) } ; this . init = function ( a ) { n = a ; n . $render = function ( ) { m . render ( ) } } ; this . render = function ( ) { if ( n . $viewValue ) { var a = new Date ( n . $viewValue ) ; isNaN ( a ) ? g || c . error ( 'Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.' ) : this . activeDate = a } this . refreshView ( ) } ; this . refreshView = function ( ) { if ( this . element ) { this . _refreshView ( ) ; var a = n . $viewValue ? new Date ( n . $viewValue ) : null ; n . $setValidity ( "dateDisabled" ,
2017-07-20 23:09:21 +00:00
! a || this . element && ! this . isDisabled ( a ) ) } } ; this . createDateObject = function ( a , c ) { var e = n . $viewValue ? new Date ( n . $viewValue ) : null ; return { date : a , label : b ( a , c ) , selected : e && 0 === this . compare ( a , e ) , disabled : this . isDisabled ( a ) , current : 0 === this . compare ( a , new Date ) , customClass : this . customClass ( a ) } } ; this . isDisabled = function ( b ) { return this . minDate && 0 > this . compare ( b , this . minDate ) || this . maxDate && 0 < this . compare ( b , this . maxDate ) || f . dateDisabled && a . dateDisabled ( { date : b , mode : a . datepickerMode } ) } ; this . customClass = function ( b ) { return a . customClass ( { date : b ,
mode : a . datepickerMode } ) } ; this . split = function ( a , b ) { for ( var c = [ ] ; 0 < a . length ; ) c . push ( a . splice ( 0 , b ) ) ; return c } ; this . fixTimeZone = function ( a ) { var b = a . getHours ( ) ; a . setHours ( 23 === b ? b + 2 : 0 ) } ; a . select = function ( b ) { if ( a . datepickerMode === m . minMode ) { var c = n . $viewValue ? new Date ( n . $viewValue ) : new Date ( 0 , 0 , 0 , 0 , 0 , 0 , 0 ) ; c . setFullYear ( b . getFullYear ( ) , b . getMonth ( ) , b . getDate ( ) ) ; n . $setViewValue ( c ) ; n . $render ( ) } else m . activeDate = b , a . datepickerMode = m . modes [ m . modes . indexOf ( a . datepickerMode ) - 1 ] } ; a . move = function ( a ) { var b = m . activeDate . getFullYear ( ) +
a * ( m . step . years || 0 ) ; a = m . activeDate . getMonth ( ) + a * ( m . step . months || 0 ) ; m . activeDate . setFullYear ( b , a , 1 ) ; m . refreshView ( ) } ; a . toggleMode = function ( b ) { b = b || 1 ; a . datepickerMode === m . maxMode && 1 === b || a . datepickerMode === m . minMode && - 1 === b || ( a . datepickerMode = m . modes [ m . modes . indexOf ( a . datepickerMode ) + b ] ) } ; a . keys = { 13 : "enter" , 32 : "space" , 33 : "pageup" , 34 : "pagedown" , 35 : "end" , 36 : "home" , 37 : "left" , 38 : "up" , 39 : "right" , 40 : "down" } ; a . $on ( "uib:datepicker.focus" , function ( ) { m . element [ 0 ] . focus ( ) } ) ; a . keydown = function ( b ) { var c = a . keys [ b . which ] ;
! c || b . shiftKey || b . altKey || ( ( b . preventDefault ( ) , m . shortcutPropagation || b . stopPropagation ( ) , "enter" === c || "space" === c ) ? m . isDisabled ( m . activeDate ) || a . select ( m . activeDate ) : ! b . ctrlKey || "up" !== c && "down" !== c ? ( m . handleKeyDown ( c , b ) , m . refreshView ( ) ) : a . toggleMode ( "up" === c ? 1 : - 1 ) ) } } ] ) . directive ( "datepicker" , [ "$log" , "$datepickerSuppressWarning" , function ( a , f ) { return { replace : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/datepicker.html" } , scope : { datepickerMode : "=?" , dateDisabled : "&" , customClass : "&" ,
shortcutPropagation : "&?" } , require : [ "datepicker" , "^ngModel" ] , controller : "DatepickerController" , controllerAs : "datepicker" , link : function ( k , h , c , b ) { f || a . warn ( "datepicker is now deprecated. Use uib-datepicker instead." ) ; b [ 0 ] . init ( b [ 1 ] ) } } } ] ) . directive ( "daypicker" , [ "$log" , "$datepickerSuppressWarning" , function ( a , f ) { return { replace : ! 0 , templateUrl : "template/datepicker/day.html" , require : [ "^datepicker" , "daypicker" ] , controller : "UibDaypickerController" , link : function ( k , h , c , b ) { f || a . warn ( "daypicker is now deprecated. Use uib-daypicker instead." ) ;
b [ 1 ] . init ( b [ 0 ] ) } } } ] ) . directive ( "monthpicker" , [ "$log" , "$datepickerSuppressWarning" , function ( a , f ) { return { replace : ! 0 , templateUrl : "template/datepicker/month.html" , require : [ "^datepicker" , "monthpicker" ] , controller : "UibMonthpickerController" , link : function ( k , h , c , b ) { f || a . warn ( "monthpicker is now deprecated. Use uib-monthpicker instead." ) ; b [ 1 ] . init ( b [ 0 ] ) } } } ] ) . directive ( "yearpicker" , [ "$log" , "$datepickerSuppressWarning" , function ( a , f ) { return { replace : ! 0 , templateUrl : "template/datepicker/year.html" , require : [ "^datepicker" ,
"yearpicker" ] , controller : "UibYearpickerController" , link : function ( k , h , c , b ) { f || a . warn ( "yearpicker is now deprecated. Use uib-yearpicker instead." ) ; k = b [ 0 ] ; angular . extend ( k , b [ 1 ] ) ; k . yearpickerInit ( ) ; k . refreshView ( ) } } } ] ) . directive ( "datepickerPopup" , [ "$log" , "$datepickerSuppressWarning" , function ( a , f ) { return { require : [ "ngModel" , "datepickerPopup" ] , controller : "UibDatepickerPopupController" , scope : { isOpen : "=?" , currentText : "@" , clearText : "@" , closeText : "@" , dateDisabled : "&" , customClass : "&" } , link : function ( k , h , c , b ) { f ||
a . warn ( "datepicker-popup is now deprecated. Use uib-datepicker-popup instead." ) ; b [ 1 ] . init ( b [ 0 ] ) } } } ] ) . directive ( "datepickerPopupWrap" , [ "$log" , "$datepickerSuppressWarning" , function ( a , f ) { return { replace : ! 0 , transclude : ! 0 , templateUrl : function ( a , f ) { return f . templateUrl || "template/datepicker/popup.html" } , link : function ( ) { f || a . warn ( "datepicker-popup-wrap is now deprecated. Use uib-datepicker-popup-wrap instead." ) } } } ] ) ;
angular . module ( "ui.bootstrap.dropdown" , [ "ui.bootstrap.position" ] ) . constant ( "uibDropdownConfig" , { openClass : "open" } ) . service ( "uibDropdownService" , [ "$document" , "$rootScope" , function ( a , f ) { var k = null ; this . open = function ( b ) { k || ( a . bind ( "click" , h ) , a . bind ( "keydown" , c ) ) ; k && k !== b && ( k . isOpen = ! 1 ) ; k = b } ; this . close = function ( b ) { k === b && ( k = null , a . unbind ( "click" , h ) , a . unbind ( "keydown" , c ) ) } ; var h = function ( a ) { if ( k && ( ! a || "disabled" !== k . getAutoClose ( ) ) ) { var b = k . getToggleElement ( ) ; a && b && b [ 0 ] . contains ( a . target ) || ( b = k . getDropdownElement ( ) ,
a && "outsideClick" === k . getAutoClose ( ) && b && b [ 0 ] . contains ( a . target ) || ( k . isOpen = ! 1 , f . $$phase || k . $apply ( ) ) ) } } , c = function ( a ) { 27 === a . which ? ( k . focusToggleElement ( ) , h ( ) ) : k . isKeynavEnabled ( ) && /(38|40)/ . test ( a . which ) && k . isOpen && ( a . preventDefault ( ) , a . stopPropagation ( ) , k . focusDropdownEntry ( a . which ) ) } } ] ) . controller ( "UibDropdownController" , [ "$scope" , "$element" , "$attrs" , "$parse" , "uibDropdownConfig" , "uibDropdownService" , "$animate" , "$uibPosition" , "$document" , "$compile" , "$templateRequest" , function ( a , f , k , h , c , b , e , g , r ,
m , n ) { var t , x , q = this , v = a . $new ( ) , z = c . openClass , A = angular . noop , B = k . onToggle ? h ( k . onToggle ) : angular . noop , F = ! 1 , p = ! 1 ; f . addClass ( "dropdown" ) ; this . init = function ( ) { k . isOpen && ( x = h ( k . isOpen ) , A = x . assign , a . $watch ( x , function ( a ) { v . isOpen = ! ! a } ) ) ; F = angular . isDefined ( k . dropdownAppendToBody ) ; p = angular . isDefined ( k . uibKeyboardNav ) ; F && q . dropdownMenu && ( r . find ( "body" ) . append ( q . dropdownMenu ) , f . on ( "$destroy" , function ( ) { q . dropdownMenu . remove ( ) } ) ) } ; this . toggle = function ( a ) { return v . isOpen = arguments . length ? ! ! a : ! v . isOpen } ; this . isOpen =
function ( ) { return v . isOpen } ; v . getToggleElement = function ( ) { return q . toggleElement } ; v . getAutoClose = function ( ) { return k . autoClose || "always" } ; v . getElement = function ( ) { return f } ; v . isKeynavEnabled = function ( ) { return p } ; v . focusDropdownEntry = function ( a ) { var b = q . dropdownMenu ? angular . element ( q . dropdownMenu ) . find ( "a" ) : angular . element ( f ) . find ( "ul" ) . eq ( 0 ) . find ( "a" ) ; switch ( a ) { case 40 : angular . isNumber ( q . selectedOption ) ? q . selectedOption = q . selectedOption === b . length - 1 ? q . selectedOption : q . selectedOption + 1 : q . selectedOption =
0 ; break ; case 38 : angular . isNumber ( q . selectedOption ) ? q . selectedOption = 0 === q . selectedOption ? 0 : q . selectedOption - 1 : q . selectedOption = b . length - 1 } b [ q . selectedOption ] . focus ( ) } ; v . getDropdownElement = function ( ) { return q . dropdownMenu } ; v . focusToggleElement = function ( ) { q . toggleElement && q . toggleElement [ 0 ] . focus ( ) } ; v . $watch ( "isOpen" , function ( c , h ) { if ( F && q . dropdownMenu ) { var k = g . positionElements ( f , q . dropdownMenu , "bottom-left" , ! 0 ) , r = { top : k . top + "px" , display : c ? "block" : "none" } ; q . dropdownMenu . hasClass ( "dropdown-menu-right" ) ?
( r . left = "auto" , r . right = window . innerWidth - ( k . left + f . prop ( "offsetWidth" ) ) + "px" ) : ( r . left = k . left + "px" , r . right = "auto" ) ; q . dropdownMenu . css ( r ) } ( e [ c ? "addClass" : "removeClass" ] ( f , z ) . then ( function ( ) { angular . isDefined ( c ) && c !== h && B ( a , { open : ! ! c } ) } ) , c ) ? ( q . dropdownMenuTemplateUrl && n ( q . dropdownMenuTemplateUrl ) . then ( function ( a ) { t = v . $new ( ) ; m ( a . trim ( ) ) ( t , function ( a ) { q . dropdownMenu . replaceWith ( a ) ; q . dropdownMenu = a } ) } ) , v . focusToggleElement ( ) , b . open ( v ) ) : ( q . dropdownMenuTemplateUrl && ( t && t . $destroy ( ) , k = angular . element ( '<ul class="dropdown-menu"></ul>' ) ,
q . dropdownMenu . replaceWith ( k ) , q . dropdownMenu = k ) , b . close ( v ) , q . selectedOption = null ) ; angular . isFunction ( A ) && A ( a , c ) } ) ; a . $on ( "$locationChangeSuccess" , function ( ) { "disabled" !== v . getAutoClose ( ) && ( v . isOpen = ! 1 ) } ) ; c = a . $on ( "$destroy" , function ( ) { v . $destroy ( ) } ) ; v . $on ( "$destroy" , c ) } ] ) . directive ( "uibDropdown" , function ( ) { return { controller : "UibDropdownController" , link : function ( a , f , k , h ) { h . init ( ) } } } ) . directive ( "uibDropdownMenu" , function ( ) { return { restrict : "AC" , require : "?^uibDropdown" , link : function ( a , f , k , h ) { h && ! angular . isDefined ( k . dropdownNested ) &&
( f . addClass ( "dropdown-menu" ) , ( a = k . templateUrl ) && ( h . dropdownMenuTemplateUrl = a ) , h . dropdownMenu || ( h . dropdownMenu = f ) ) } } } ) . directive ( "uibKeyboardNav" , function ( ) { return { restrict : "A" , require : "?^uibDropdown" , link : function ( a , f , k , h ) { f . bind ( "keydown" , function ( a ) { if ( - 1 !== [ 38 , 40 ] . indexOf ( a . which ) ) { a . preventDefault ( ) ; a . stopPropagation ( ) ; var b = h . dropdownMenu . find ( "a" ) ; switch ( a . which ) { case 40 : angular . isNumber ( h . selectedOption ) ? h . selectedOption = h . selectedOption === b . length - 1 ? h . selectedOption : h . selectedOption + 1 : h . selectedOption =
0 ; break ; case 38 : angular . isNumber ( h . selectedOption ) ? h . selectedOption = 0 === h . selectedOption ? 0 : h . selectedOption - 1 : h . selectedOption = b . length - 1 } b [ h . selectedOption ] . focus ( ) } } ) } } } ) . directive ( "uibDropdownToggle" , function ( ) { return { require : "?^uibDropdown" , link : function ( a , f , k , h ) { if ( h ) { f . addClass ( "dropdown-toggle" ) ; h . toggleElement = f ; var c = function ( b ) { b . preventDefault ( ) ; f . hasClass ( "disabled" ) || k . disabled || a . $apply ( function ( ) { h . toggle ( ) } ) } ; f . bind ( "click" , c ) ; f . attr ( { "aria-haspopup" : ! 0 , "aria-expanded" : ! 1 } ) ; a . $watch ( h . isOpen ,
function ( a ) { f . attr ( "aria-expanded" , ! ! a ) } ) ; a . $on ( "$destroy" , function ( ) { f . unbind ( "click" , c ) } ) } } } } ) ;
angular . module ( "ui.bootstrap.dropdown" ) . value ( "$dropdownSuppressWarning" , ! 1 ) . service ( "dropdownService" , [ "$log" , "$dropdownSuppressWarning" , "uibDropdownService" , function ( a , f , k ) { f || a . warn ( "dropdownService is now deprecated. Use uibDropdownService instead." ) ; angular . extend ( this , k ) } ] ) . controller ( "DropdownController" , [ "$scope" , "$element" , "$attrs" , "$parse" , "uibDropdownConfig" , "uibDropdownService" , "$animate" , "$uibPosition" , "$document" , "$compile" , "$templateRequest" , "$log" , "$dropdownSuppressWarning" , function ( a ,
f , k , h , c , b , e , g , r , m , n , t , x ) { x || t . warn ( "DropdownController is now deprecated. Use UibDropdownController instead." ) ; var q , v , z = this , A = a . $new ( ) , B = c . openClass , F = angular . noop , p = k . onToggle ? h ( k . onToggle ) : angular . noop , u = ! 1 , I = ! 1 ; f . addClass ( "dropdown" ) ; this . init = function ( ) { k . isOpen && ( v = h ( k . isOpen ) , F = v . assign , a . $watch ( v , function ( a ) { A . isOpen = ! ! a } ) ) ; u = angular . isDefined ( k . dropdownAppendToBody ) ; I = angular . isDefined ( k . uibKeyboardNav ) ; u && z . dropdownMenu && ( r . find ( "body" ) . append ( z . dropdownMenu ) , f . on ( "$destroy" , function ( ) { z . dropdownMenu . remove ( ) } ) ) } ;
this . toggle = function ( a ) { return A . isOpen = arguments . length ? ! ! a : ! A . isOpen } ; this . isOpen = function ( ) { return A . isOpen } ; A . getToggleElement = function ( ) { return z . toggleElement } ; A . getAutoClose = function ( ) { return k . autoClose || "always" } ; A . getElement = function ( ) { return f } ; A . isKeynavEnabled = function ( ) { return I } ; A . focusDropdownEntry = function ( a ) { var b = z . dropdownMenu ? angular . element ( z . dropdownMenu ) . find ( "a" ) : angular . element ( f ) . find ( "ul" ) . eq ( 0 ) . find ( "a" ) ; switch ( a ) { case 40 : angular . isNumber ( z . selectedOption ) ? z . selectedOption =
z . selectedOption === b . length - 1 ? z . selectedOption : z . selectedOption + 1 : z . selectedOption = 0 ; break ; case 38 : angular . isNumber ( z . selectedOption ) ? z . selectedOption = 0 === z . selectedOption ? 0 : z . selectedOption - 1 : z . selectedOption = b . length - 1 } b [ z . selectedOption ] . focus ( ) } ; A . getDropdownElement = function ( ) { return z . dropdownMenu } ; A . focusToggleElement = function ( ) { z . toggleElement && z . toggleElement [ 0 ] . focus ( ) } ; A . $watch ( "isOpen" , function ( c , k ) { if ( u && z . dropdownMenu ) { var h = g . positionElements ( f , z . dropdownMenu , "bottom-left" , ! 0 ) , r = { top : h . top +
"px" , display : c ? "block" : "none" } ; z . dropdownMenu . hasClass ( "dropdown-menu-right" ) ? ( r . left = "auto" , r . right = window . innerWidth - ( h . left + f . prop ( "offsetWidth" ) ) + "px" ) : ( r . left = h . left + "px" , r . right = "auto" ) ; z . dropdownMenu . css ( r ) } ( e [ c ? "addClass" : "removeClass" ] ( f , B ) . then ( function ( ) { angular . isDefined ( c ) && c !== k && p ( a , { open : ! ! c } ) } ) , c ) ? ( z . dropdownMenuTemplateUrl && n ( z . dropdownMenuTemplateUrl ) . then ( function ( a ) { q = A . $new ( ) ; m ( a . trim ( ) ) ( q , function ( a ) { z . dropdownMenu . replaceWith ( a ) ; z . dropdownMenu = a } ) } ) , A . focusToggleElement ( ) ,
b . open ( A ) ) : ( z . dropdownMenuTemplateUrl && ( q && q . $destroy ( ) , h = angular . element ( '<ul class="dropdown-menu"></ul>' ) , z . dropdownMenu . replaceWith ( h ) , z . dropdownMenu = h ) , b . close ( A ) , z . selectedOption = null ) ; angular . isFunction ( F ) && F ( a , c ) } ) ; a . $on ( "$locationChangeSuccess" , function ( ) { "disabled" !== A . getAutoClose ( ) && ( A . isOpen = ! 1 ) } ) ; c = a . $on ( "$destroy" , function ( ) { A . $destroy ( ) } ) ; A . $on ( "$destroy" , c ) } ] ) . directive ( "dropdown" , [ "$log" , "$dropdownSuppressWarning" , function ( a , f ) { return { controller : "DropdownController" , link : function ( k ,
h , c , b ) { f || a . warn ( "dropdown is now deprecated. Use uib-dropdown instead." ) ; b . init ( ) } } } ] ) . directive ( "dropdownMenu" , [ "$log" , "$dropdownSuppressWarning" , function ( a , f ) { return { restrict : "AC" , require : "?^dropdown" , link : function ( k , h , c , b ) { b && ! angular . isDefined ( c . dropdownNested ) && ( f || a . warn ( "dropdown-menu is now deprecated. Use uib-dropdown-menu instead." ) , h . addClass ( "dropdown-menu" ) , ( k = c . templateUrl ) && ( b . dropdownMenuTemplateUrl = k ) , b . dropdownMenu || ( b . dropdownMenu = h ) ) } } } ] ) . directive ( "keyboardNav" , [ "$log" , "$dropdownSuppressWarning" ,
function ( a , f ) { return { restrict : "A" , require : "?^dropdown" , link : function ( k , h , c , b ) { f || a . warn ( "keyboard-nav is now deprecated. Use uib-keyboard-nav instead." ) ; h . bind ( "keydown" , function ( a ) { if ( - 1 !== [ 38 , 40 ] . indexOf ( a . which ) ) { a . preventDefault ( ) ; a . stopPropagation ( ) ; var c = b . dropdownMenu . find ( "a" ) ; switch ( a . which ) { case 40 : angular . isNumber ( b . selectedOption ) ? b . selectedOption = b . selectedOption === c . length - 1 ? b . selectedOption : b . selectedOption + 1 : b . selectedOption = 0 ; break ; case 38 : angular . isNumber ( b . selectedOption ) ? b . selectedOption =
0 === b . selectedOption ? 0 : b . selectedOption - 1 : b . selectedOption = c . length - 1 } c [ b . selectedOption ] . focus ( ) } } ) } } } ] ) . directive ( "dropdownToggle" , [ "$log" , "$dropdownSuppressWarning" , function ( a , f ) { return { require : "?^dropdown" , link : function ( k , h , c , b ) { if ( f || a . warn ( "dropdown-toggle is now deprecated. Use uib-dropdown-toggle instead." ) , b ) { h . addClass ( "dropdown-toggle" ) ; b . toggleElement = h ; var e = function ( a ) { a . preventDefault ( ) ; h . hasClass ( "disabled" ) || c . disabled || k . $apply ( function ( ) { b . toggle ( ) } ) } ; h . bind ( "click" , e ) ; h . attr ( { "aria-haspopup" : ! 0 ,
"aria-expanded" : ! 1 } ) ; k . $watch ( b . isOpen , function ( a ) { h . attr ( "aria-expanded" , ! ! a ) } ) ; k . $on ( "$destroy" , function ( ) { h . unbind ( "click" , e ) } ) } } } } ] ) ;
angular . module ( "ui.bootstrap.stackedMap" , [ ] ) . factory ( "$$stackedMap" , function ( ) { return { createNew : function ( ) { var a = [ ] ; return { add : function ( f , k ) { a . push ( { key : f , value : k } ) } , get : function ( f ) { for ( var k = 0 ; k < a . length ; k ++ ) if ( f == a [ k ] . key ) return a [ k ] } , keys : function ( ) { for ( var f = [ ] , k = 0 ; k < a . length ; k ++ ) f . push ( a [ k ] . key ) ; return f } , top : function ( ) { return a [ a . length - 1 ] } , remove : function ( f ) { for ( var k = - 1 , h = 0 ; h < a . length ; h ++ ) if ( f == a [ h ] . key ) { k = h ; break } return a . splice ( k , 1 ) [ 0 ] } , removeTop : function ( ) { return a . splice ( a . length - 1 , 1 ) [ 0 ] } ,
length : function ( ) { return a . length } } } } } ) ;
angular . module ( "ui.bootstrap.modal" , [ "ui.bootstrap.stackedMap" ] ) . factory ( "$$multiMap" , function ( ) { return { createNew : function ( ) { var a = { } ; return { entries : function ( ) { return Object . keys ( a ) . map ( function ( f ) { return { key : f , value : a [ f ] } } ) } , get : function ( f ) { return a [ f ] } , hasKey : function ( f ) { return ! ! a [ f ] } , keys : function ( ) { return Object . keys ( a ) } , put : function ( f , k ) { a [ f ] || ( a [ f ] = [ ] ) ; a [ f ] . push ( k ) } , remove : function ( f , k ) { var h = a [ f ] ; if ( h ) { var c = h . indexOf ( k ) ; - 1 !== c && h . splice ( c , 1 ) ; h . length || delete a [ f ] } } } } } } ) . directive ( "uibModalBackdrop" ,
[ "$animate" , "$injector" , "$uibModalStack" , function ( a , f , k ) { function h ( b , e , g ) { e . addClass ( "modal-backdrop" ) ; g . modalInClass && ( c ? c ( e , { addClass : g . modalInClass } ) . start ( ) : a . addClass ( e , g . modalInClass ) , b . $on ( k . NOW _CLOSING _EVENT , function ( b , f ) { var h = f ( ) ; c ? c ( e , { removeClass : g . modalInClass } ) . start ( ) . then ( h ) : a . removeClass ( e , g . modalInClass ) . then ( h ) } ) ) } var c = null ; return f . has ( "$animateCss" ) && ( c = f . get ( "$animateCss" ) ) , { replace : ! 0 , templateUrl : "template/modal/backdrop.html" , compile : function ( a , c ) { return a . addClass ( c . backdropClass ) ,
h } } } ] ) . directive ( "uibModalWindow" , [ "$uibModalStack" , "$q" , "$animate" , "$injector" , function ( a , f , k , h ) { var c = null ; return h . has ( "$animateCss" ) && ( c = h . get ( "$animateCss" ) ) , { scope : { index : "@" } , replace : ! 0 , transclude : ! 0 , templateUrl : function ( a , c ) { return c . templateUrl || "template/modal/window.html" } , link : function ( b , e , g ) { e . addClass ( g . windowClass || "" ) ; e . addClass ( g . windowTopClass || "" ) ; b . size = g . size ; b . close = function ( b ) { var c = a . getTop ( ) ; c && c . value . backdrop && "static" !== c . value . backdrop && b . target === b . currentTarget && ( b . preventDefault ( ) ,
b . stopPropagation ( ) , a . dismiss ( c . key , "backdrop click" ) ) } ; e . on ( "click" , b . close ) ; b . $isRendered = ! 0 ; var h = f . defer ( ) ; g . $observe ( "modalRender" , function ( a ) { "true" == a && h . resolve ( ) } ) ; h . promise . then ( function ( ) { var h = null ; g . modalInClass && ( h = c ? c ( e , { addClass : g . modalInClass } ) . start ( ) : k . addClass ( e , g . modalInClass ) , b . $on ( a . NOW _CLOSING _EVENT , function ( a , b ) { var f = b ( ) ; c ? c ( e , { removeClass : g . modalInClass } ) . start ( ) . then ( f ) : k . removeClass ( e , g . modalInClass ) . then ( f ) } ) ) ; f . when ( h ) . then ( function ( ) { var a = e [ 0 ] . querySelector ( "[autofocus]" ) ;
a ? a . focus ( ) : e [ 0 ] . focus ( ) } ) ; ( h = a . getTop ( ) ) && a . modalRendered ( h . key ) } ) } } } ] ) . directive ( "uibModalAnimationClass" , function ( ) { return { compile : function ( a , f ) { f . modalAnimation && a . addClass ( f . uibModalAnimationClass ) } } } ) . directive ( "uibModalTransclude" , function ( ) { return { link : function ( a , f , k , h , c ) { c ( a . $parent , function ( a ) { f . empty ( ) ; f . append ( a ) } ) } } } ) . factory ( "$uibModalStack" , [ "$animate" , "$timeout" , "$document" , "$compile" , "$rootScope" , "$q" , "$injector" , "$$multiMap" , "$$stackedMap" , function ( a , f , k , h , c , b , e , g , r ) { function m ( ) { for ( var a =
- 1 , b = p . keys ( ) , c = 0 ; c < b . length ; c ++ ) p . get ( b [ c ] ) . value . backdrop && ( a = c ) ; return a } function n ( a , b ) { var c = k . find ( "body" ) . eq ( 0 ) , e = p . get ( a ) . value ; p . remove ( a ) ; q ( e . modalDomEl , e . modalScope , function ( ) { var b = e . openedClass || F ; u . remove ( b , a ) ; c . toggleClass ( b , u . hasKey ( b ) ) ; t ( ! 0 ) } ) ; x ( ) ; b && b . focus ? b . focus ( ) : c . focus ( ) } function t ( a ) { var b ; 0 < p . length ( ) && ( b = p . top ( ) . value , b . modalDomEl . toggleClass ( b . windowTopClass || "" , a ) ) } function x ( ) { z && - 1 == m ( ) && ( q ( z , A , function ( ) { } ) , A = z = void 0 ) } function q ( c , e , g ) { function f ( ) { f . done || ( f . done =
! 0 , v ? v ( c , { event : "leave" } ) . start ( ) . then ( function ( ) { c . remove ( ) } ) : a . leave ( c ) , e . $destroy ( ) , g && g ( ) ) } var h , k = null ; return e . $broadcast ( I . NOW _CLOSING _EVENT , function ( ) { return h || ( h = b . defer ( ) , k = h . promise ) , function ( ) { h . resolve ( ) } } ) , b . when ( k ) . then ( f ) } var v = null ; e . has ( "$animateCss" ) && ( v = e . get ( "$animateCss" ) ) ; var z , A , B , F = "modal-open" , p = r . createNew ( ) , u = g . createNew ( ) , I = { NOW _CLOSING _EVENT : "modal.stack.now-closing" } ; return c . $watch ( m , function ( a ) { A && ( A . index = a ) } ) , k . bind ( "keydown" , function ( a ) { if ( a . isDefaultPrevented ( ) ) return a ;
var b = p . top ( ) ; if ( b && b . value . keyboard ) switch ( a . which ) { case 27 : a . preventDefault ( ) ; c . $apply ( function ( ) { I . dismiss ( b . key , "escape key press" ) } ) ; break ; case 9 : I . loadFocusElementList ( b ) ; var e = ! 1 ; a . shiftKey ? I . isFocusInFirstItem ( a ) && ( e = I . focusLastFocusableElement ( ) ) : I . isFocusInLastItem ( a ) && ( e = I . focusFirstFocusableElement ( ) ) ; e && ( a . preventDefault ( ) , a . stopPropagation ( ) ) } } ) , I . open = function ( a , b ) { var e = k [ 0 ] . activeElement , g = b . openedClass || F ; t ( ! 1 ) ; p . add ( a , { deferred : b . deferred , renderDeferred : b . renderDeferred , modalScope : b . scope ,
backdrop : b . backdrop , keyboard : b . keyboard , openedClass : b . openedClass , windowTopClass : b . windowTopClass } ) ; u . put ( g , a ) ; var f = k . find ( "body" ) . eq ( 0 ) , n = m ( ) ; 0 <= n && ! z && ( A = c . $new ( ! 0 ) , A . index = n , n = angular . element ( '<div uib-modal-backdrop="modal-backdrop"></div>' ) , n . attr ( "backdrop-class" , b . backdropClass ) , b . animation && n . attr ( "modal-animation" , "true" ) , z = h ( n ) ( A ) , f . append ( z ) ) ; n = angular . element ( '<div uib-modal-window="modal-window"></div>' ) ; n . attr ( { "template-url" : b . windowTemplateUrl , "window-class" : b . windowClass , "window-top-class" : b . windowTopClass ,
size : b . size , index : p . length ( ) - 1 , animate : "animate" } ) . html ( b . content ) ; b . animation && n . attr ( "modal-animation" , "true" ) ; n = h ( n ) ( b . scope ) ; p . top ( ) . value . modalDomEl = n ; p . top ( ) . value . modalOpener = e ; f . append ( n ) ; f . addClass ( g ) ; I . clearFocusListCache ( ) } , I . close = function ( a , b ) { var c = p . get ( a ) ; return c && ! c . value . modalScope . $broadcast ( "modal.closing" , b , ! 0 ) . defaultPrevented ? ( c . value . modalScope . $$uibDestructionScheduled = ! 0 , c . value . deferred . resolve ( b ) , n ( a , c . value . modalOpener ) , ! 0 ) : ! c } , I . dismiss = function ( a , b ) { var c = p . get ( a ) ;
2017-07-25 17:51:59 +00:00
return c && ! c . value . modalScope . $broadcast ( "modal.closing" , b , ! 1 ) . defaultPrevented ? ( c . value . modalScope . $$uibDestructionScheduled = ! 0 , c . value . deferred . reject ( b ) , n ( a , c . value . modalOpener ) , ! 0 ) : ! c } , I . dismissAll = function ( a ) { for ( var b = this . getTop ( ) ; b && this . dismiss ( b . key , a ) ; ) b = this . getTop ( ) } , I . getTop = function ( ) { return p . top ( ) } , I . modalRendered = function ( a ) { ( a = p . get ( a ) ) && a . value . renderDeferred . resolve ( ) } , I . focusFirstFocusableElement = function ( ) { return 0 < B . length && ( B [ 0 ] . focus ( ) , ! 0 ) } , I . focusLastFocusableElement = function ( ) { return 0 <
B . length && ( B [ B . length - 1 ] . focus ( ) , ! 0 ) } , I . isFocusInFirstItem = function ( a ) { return 0 < B . length && ( a . target || a . srcElement ) == B [ 0 ] } , I . isFocusInLastItem = function ( a ) { return 0 < B . length && ( a . target || a . srcElement ) == B [ B . length - 1 ] } , I . clearFocusListCache = function ( ) { B = [ ] } , I . loadFocusElementList = function ( a ) { void 0 !== B && B . length || ! a || ( a = a . value . modalDomEl ) && a . length && ( B = a [ 0 ] . querySelectorAll ( "a[href], area[href], input:not([disabled]), button:not([disabled]),select:not([disabled]), textarea:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable=true]" ) ) } ,
2017-07-20 23:09:21 +00:00
I } ] ) . provider ( "$uibModal" , function ( ) { var a = { options : { animation : ! 0 , backdrop : ! 0 , keyboard : ! 0 } , $get : [ "$injector" , "$rootScope" , "$q" , "$templateRequest" , "$controller" , "$uibModalStack" , "$modalSuppressWarning" , "$log" , function ( f , k , h , c , b , e , g , r ) { function m ( a ) { return a . template ? h . when ( a . template ) : c ( angular . isFunction ( a . templateUrl ) ? a . templateUrl ( ) : a . templateUrl ) } function n ( a ) { var b = [ ] ; return angular . forEach ( a , function ( a ) { angular . isFunction ( a ) || angular . isArray ( a ) ? b . push ( h . when ( f . invoke ( a ) ) ) : angular . isString ( a ) ?
b . push ( h . when ( f . get ( a ) ) ) : b . push ( h . when ( a ) ) } ) , b } var t = { } , x = null ; return t . getPromiseChain = function ( ) { return x } , t . open = function ( c ) { function f ( ) { return u } var q = h . defer ( ) , t = h . defer ( ) , B = h . defer ( ) , F = { result : q . promise , opened : t . promise , rendered : B . promise , close : function ( a ) { return e . close ( F , a ) } , dismiss : function ( a ) { return e . dismiss ( F , a ) } } ; if ( c = angular . extend ( { } , a . options , c ) , c . resolve = c . resolve || { } , ! c . template && ! c . templateUrl ) throw Error ( "One of template or templateUrl options is required." ) ; var p , u = h . all ( [ m ( c ) ] . concat ( n ( c . resolve ) ) ) ;
return p = x = h . all ( [ x ] ) . then ( f , f ) . then ( function ( a ) { var f = ( c . scope || k ) . $new ( ) ; f . $close = F . close ; f . $dismiss = F . dismiss ; f . $on ( "$destroy" , function ( ) { f . $$uibDestructionScheduled || f . $dismiss ( "$uibUnscheduledDestruction" ) } ) ; var h , m = { } , n = 1 ; c . controller && ( m . $scope = f , m . $uibModalInstance = F , Object . defineProperty ( m , "$modalInstance" , { get : function ( ) { return g || r . warn ( "$modalInstance is now deprecated. Use $uibModalInstance instead." ) , F } } ) , angular . forEach ( c . resolve , function ( b , c ) { m [ c ] = a [ n ++ ] } ) , h = b ( c . controller , m ) , c . controllerAs &&
( c . bindToController && angular . extend ( h , f ) , f [ c . controllerAs ] = h ) ) ; e . open ( F , { scope : f , deferred : q , renderDeferred : B , content : a [ 0 ] , animation : c . animation , backdrop : c . backdrop , keyboard : c . keyboard , backdropClass : c . backdropClass , windowTopClass : c . windowTopClass , windowClass : c . windowClass , windowTemplateUrl : c . windowTemplateUrl , size : c . size , openedClass : c . openedClass } ) ; t . resolve ( ! 0 ) } , function ( a ) { t . reject ( a ) ; q . reject ( a ) } ) [ "finally" ] ( function ( ) { x === p && ( x = null ) } ) , F } , t } ] } ; return a } ) ;
angular . module ( "ui.bootstrap.modal" ) . value ( "$modalSuppressWarning" , ! 1 ) . directive ( "modalBackdrop" , [ "$animate" , "$injector" , "$modalStack" , "$log" , "$modalSuppressWarning" , function ( a , f , k , h , c ) { function b ( b , f , m ) { c || h . warn ( "modal-backdrop is now deprecated. Use uib-modal-backdrop instead." ) ; f . addClass ( "modal-backdrop" ) ; m . modalInClass && ( e ? e ( f , { addClass : m . modalInClass } ) . start ( ) : a . addClass ( f , m . modalInClass ) , b . $on ( k . NOW _CLOSING _EVENT , function ( b , c ) { var g = c ( ) ; e ? e ( f , { removeClass : m . modalInClass } ) . start ( ) . then ( g ) :
a . removeClass ( f , m . modalInClass ) . then ( g ) } ) ) } var e = null ; return f . has ( "$animateCss" ) && ( e = f . get ( "$animateCss" ) ) , { replace : ! 0 , templateUrl : "template/modal/backdrop.html" , compile : function ( a , c ) { return a . addClass ( c . backdropClass ) , b } } } ] ) . directive ( "modalWindow" , [ "$modalStack" , "$q" , "$animate" , "$injector" , "$log" , "$modalSuppressWarning" , function ( a , f , k , h , c , b ) { var e = null ; return h . has ( "$animateCss" ) && ( e = h . get ( "$animateCss" ) ) , { scope : { index : "@" } , replace : ! 0 , transclude : ! 0 , templateUrl : function ( a , b ) { return b . templateUrl ||
"template/modal/window.html" } , link : function ( g , h , m ) { b || c . warn ( "modal-window is now deprecated. Use uib-modal-window instead." ) ; h . addClass ( m . windowClass || "" ) ; h . addClass ( m . windowTopClass || "" ) ; g . size = m . size ; g . close = function ( b ) { var c = a . getTop ( ) ; c && c . value . backdrop && "static" !== c . value . backdrop && b . target === b . currentTarget && ( b . preventDefault ( ) , b . stopPropagation ( ) , a . dismiss ( c . key , "backdrop click" ) ) } ; h . on ( "click" , g . close ) ; g . $isRendered = ! 0 ; var n = f . defer ( ) ; m . $observe ( "modalRender" , function ( a ) { "true" == a && n . resolve ( ) } ) ;
n . promise . then ( function ( ) { var b = null ; m . modalInClass && ( b = e ? e ( h , { addClass : m . modalInClass } ) . start ( ) : k . addClass ( h , m . modalInClass ) , g . $on ( a . NOW _CLOSING _EVENT , function ( a , b ) { var c = b ( ) ; e ? e ( h , { removeClass : m . modalInClass } ) . start ( ) . then ( c ) : k . removeClass ( h , m . modalInClass ) . then ( c ) } ) ) ; f . when ( b ) . then ( function ( ) { var a = h [ 0 ] . querySelector ( "[autofocus]" ) ; a ? a . focus ( ) : h [ 0 ] . focus ( ) } ) ; ( b = a . getTop ( ) ) && a . modalRendered ( b . key ) } ) } } } ] ) . directive ( "modalAnimationClass" , [ "$log" , "$modalSuppressWarning" , function ( a , f ) { return { compile : function ( k ,
h ) { f || a . warn ( "modal-animation-class is now deprecated. Use uib-modal-animation-class instead." ) ; h . modalAnimation && k . addClass ( h . modalAnimationClass ) } } } ] ) . directive ( "modalTransclude" , [ "$log" , "$modalSuppressWarning" , function ( a , f ) { return { link : function ( k , h , c , b , e ) { f || a . warn ( "modal-transclude is now deprecated. Use uib-modal-transclude instead." ) ; e ( k . $parent , function ( a ) { h . empty ( ) ; h . append ( a ) } ) } } } ] ) . service ( "$modalStack" , [ "$animate" , "$timeout" , "$document" , "$compile" , "$rootScope" , "$q" , "$injector" , "$$multiMap" ,
"$$stackedMap" , "$uibModalStack" , "$log" , "$modalSuppressWarning" , function ( a , f , k , h , c , b , e , g , r , m , n , t ) { t || n . warn ( "$modalStack is now deprecated. Use $uibModalStack instead." ) ; angular . extend ( this , m ) } ] ) . provider ( "$modal" , [ "$uibModalProvider" , function ( a ) { angular . extend ( this , a ) ; this . $get = [ "$injector" , "$log" , "$modalSuppressWarning" , function ( f , k , h ) { return h || k . warn ( "$modal is now deprecated. Use $uibModal instead." ) , f . invoke ( a . $get ) } ] } ] ) ;
angular . module ( "ui.bootstrap.pagination" , [ ] ) . controller ( "UibPaginationController" , [ "$scope" , "$attrs" , "$parse" , function ( a , f , k ) { var h = this , c = { $setViewValue : angular . noop } , b = f . numPages ? k ( f . numPages ) . assign : angular . noop ; this . init = function ( e , g ) { c = e ; this . config = g ; c . $render = function ( ) { h . render ( ) } ; f . itemsPerPage ? a . $parent . $watch ( k ( f . itemsPerPage ) , function ( b ) { h . itemsPerPage = parseInt ( b , 10 ) ; a . totalPages = h . calculateTotalPages ( ) } ) : this . itemsPerPage = g . itemsPerPage ; a . $watch ( "totalItems" , function ( ) { a . totalPages = h . calculateTotalPages ( ) } ) ;
a . $watch ( "totalPages" , function ( e ) { b ( a . $parent , e ) ; a . page > e ? a . selectPage ( e ) : c . $render ( ) } ) } ; this . calculateTotalPages = function ( ) { return Math . max ( ( 1 > this . itemsPerPage ? 1 : Math . ceil ( a . totalItems / this . itemsPerPage ) ) || 0 , 1 ) } ; this . render = function ( ) { a . page = parseInt ( c . $viewValue , 10 ) || 1 } ; a . selectPage = function ( b , g ) { g && g . preventDefault ( ) ; ! ( a . ngDisabled && g || a . page === b ) && 0 < b && b <= a . totalPages && ( g && g . target && g . target . blur ( ) , c . $setViewValue ( b ) , c . $render ( ) ) } ; a . getText = function ( b ) { return a [ b + "Text" ] || h . config [ b + "Text" ] } ;
a . noPrevious = function ( ) { return 1 === a . page } ; a . noNext = function ( ) { return a . page === a . totalPages } } ] ) . constant ( "uibPaginationConfig" , { itemsPerPage : 10 , boundaryLinks : ! 1 , directionLinks : ! 0 , firstText : "First" , previousText : "Previous" , nextText : "Next" , lastText : "Last" , rotate : ! 0 } ) . directive ( "uibPagination" , [ "$parse" , "uibPaginationConfig" , function ( a , f ) { return { restrict : "EA" , scope : { totalItems : "=" , firstText : "@" , previousText : "@" , nextText : "@" , lastText : "@" , ngDisabled : "=" } , require : [ "uibPagination" , "?ngModel" ] , controller : "UibPaginationController" ,
controllerAs : "pagination" , templateUrl : function ( a , f ) { return f . templateUrl || "template/pagination/pagination.html" } , replace : ! 0 , link : function ( k , h , c , b ) { var e = b [ 0 ] ; if ( h = b [ 1 ] ) { var g = angular . isDefined ( c . maxSize ) ? k . $parent . $eval ( c . maxSize ) : f . maxSize , r = angular . isDefined ( c . rotate ) ? k . $parent . $eval ( c . rotate ) : f . rotate ; k . boundaryLinks = angular . isDefined ( c . boundaryLinks ) ? k . $parent . $eval ( c . boundaryLinks ) : f . boundaryLinks ; k . directionLinks = angular . isDefined ( c . directionLinks ) ? k . $parent . $eval ( c . directionLinks ) : f . directionLinks ;
2017-07-25 17:51:59 +00:00
e . init ( h , f ) ; c . maxSize && k . $parent . $watch ( a ( c . maxSize ) , function ( a ) { g = parseInt ( a , 10 ) ; e . render ( ) } ) ; var m = e . render ; e . render = function ( ) { m ( ) ; if ( 0 < k . page && k . page <= k . totalPages ) { var a = k . page , b = k . totalPages , c = [ ] , e = 1 , f = b , h = angular . isDefined ( g ) && g < b ; h && ( r ? ( e = Math . max ( a - Math . floor ( g / 2 ) , 1 ) , f = e + g - 1 , f > b && ( f = b , e = f - g + 1 ) ) : ( e = ( Math . ceil ( a / g ) - 1 ) * g + 1 , f = Math . min ( e + g - 1 , b ) ) ) ; for ( var A = e ; A <= f ; A ++ ) c . push ( { number : A , text : A , active : A === a } ) ; h && ! r && ( 1 < e && c . unshift ( { number : e - 1 , text : "..." , active : ! 1 } ) , f < b && c . push ( { number : f + 1 , text : "..." ,
2017-07-20 23:09:21 +00:00
active : ! 1 } ) ) ; k . pages = c } } } } } } ] ) . constant ( "uibPagerConfig" , { itemsPerPage : 10 , previousText : "\u00ab Previous" , nextText : "Next \u00bb" , align : ! 0 } ) . directive ( "uibPager" , [ "uibPagerConfig" , function ( a ) { return { restrict : "EA" , scope : { totalItems : "=" , previousText : "@" , nextText : "@" , ngDisabled : "=" } , require : [ "uibPager" , "?ngModel" ] , controller : "UibPaginationController" , controllerAs : "pagination" , templateUrl : function ( a , k ) { return k . templateUrl || "template/pagination/pager.html" } , replace : ! 0 , link : function ( f , k , h , c ) { k = c [ 0 ] ; ( c = c [ 1 ] ) &&
( f . align = angular . isDefined ( h . align ) ? f . $parent . $eval ( h . align ) : a . align , k . init ( c , a ) ) } } } ] ) ;
angular . module ( "ui.bootstrap.pagination" ) . value ( "$paginationSuppressWarning" , ! 1 ) . controller ( "PaginationController" , [ "$scope" , "$attrs" , "$parse" , "$log" , "$paginationSuppressWarning" , function ( a , f , k , h , c ) { c || h . warn ( "PaginationController is now deprecated. Use UibPaginationController instead." ) ; var b = this , e = { $setViewValue : angular . noop } , g = f . numPages ? k ( f . numPages ) . assign : angular . noop ; this . init = function ( c , h ) { e = c ; this . config = h ; e . $render = function ( ) { b . render ( ) } ; f . itemsPerPage ? a . $parent . $watch ( k ( f . itemsPerPage ) ,
function ( c ) { b . itemsPerPage = parseInt ( c , 10 ) ; a . totalPages = b . calculateTotalPages ( ) } ) : this . itemsPerPage = h . itemsPerPage ; a . $watch ( "totalItems" , function ( ) { a . totalPages = b . calculateTotalPages ( ) } ) ; a . $watch ( "totalPages" , function ( b ) { g ( a . $parent , b ) ; a . page > b ? a . selectPage ( b ) : e . $render ( ) } ) } ; this . calculateTotalPages = function ( ) { return Math . max ( ( 1 > this . itemsPerPage ? 1 : Math . ceil ( a . totalItems / this . itemsPerPage ) ) || 0 , 1 ) } ; this . render = function ( ) { a . page = parseInt ( e . $viewValue , 10 ) || 1 } ; a . selectPage = function ( b , c ) { c && c . preventDefault ( ) ;
! ( a . ngDisabled && c || a . page === b ) && 0 < b && b <= a . totalPages && ( c && c . target && c . target . blur ( ) , e . $setViewValue ( b ) , e . $render ( ) ) } ; a . getText = function ( c ) { return a [ c + "Text" ] || b . config [ c + "Text" ] } ; a . noPrevious = function ( ) { return 1 === a . page } ; a . noNext = function ( ) { return a . page === a . totalPages } } ] ) . directive ( "pagination" , [ "$parse" , "uibPaginationConfig" , "$log" , "$paginationSuppressWarning" , function ( a , f , k , h ) { return { restrict : "EA" , scope : { totalItems : "=" , firstText : "@" , previousText : "@" , nextText : "@" , lastText : "@" , ngDisabled : "=" } , require : [ "pagination" ,
"?ngModel" ] , controller : "PaginationController" , controllerAs : "pagination" , templateUrl : function ( a , b ) { return b . templateUrl || "template/pagination/pagination.html" } , replace : ! 0 , link : function ( c , b , e , g ) { h || k . warn ( "pagination is now deprecated. Use uib-pagination instead." ) ; var r = g [ 0 ] ; if ( b = g [ 1 ] ) { var m = angular . isDefined ( e . maxSize ) ? c . $parent . $eval ( e . maxSize ) : f . maxSize , n = angular . isDefined ( e . rotate ) ? c . $parent . $eval ( e . rotate ) : f . rotate ; c . boundaryLinks = angular . isDefined ( e . boundaryLinks ) ? c . $parent . $eval ( e . boundaryLinks ) :
2017-07-25 17:51:59 +00:00
f . boundaryLinks ; c . directionLinks = angular . isDefined ( e . directionLinks ) ? c . $parent . $eval ( e . directionLinks ) : f . directionLinks ; r . init ( b , f ) ; e . maxSize && c . $parent . $watch ( a ( e . maxSize ) , function ( a ) { m = parseInt ( a , 10 ) ; r . render ( ) } ) ; var t = r . render ; r . render = function ( ) { t ( ) ; if ( 0 < c . page && c . page <= c . totalPages ) { var a = c . page , b = c . totalPages , e = [ ] , g = 1 , f = b , h = angular . isDefined ( m ) && m < b ; h && ( n ? ( g = Math . max ( a - Math . floor ( m / 2 ) , 1 ) , f = g + m - 1 , f > b && ( f = b , g = f - m + 1 ) ) : ( g = ( Math . ceil ( a / m ) - 1 ) * m + 1 , f = Math . min ( g + m - 1 , b ) ) ) ; for ( var k = g ; k <= f ; k ++ ) e . push ( { number : k ,
text : k , active : k === a } ) ; h && ! n && ( 1 < g && e . unshift ( { number : g - 1 , text : "..." , active : ! 1 } ) , f < b && e . push ( { number : f + 1 , text : "..." , active : ! 1 } ) ) ; c . pages = e } } } } } } ] ) . directive ( "pager" , [ "uibPagerConfig" , "$log" , "$paginationSuppressWarning" , function ( a , f , k ) { return { restrict : "EA" , scope : { totalItems : "=" , previousText : "@" , nextText : "@" , ngDisabled : "=" } , require : [ "pager" , "?ngModel" ] , controller : "PaginationController" , controllerAs : "pagination" , templateUrl : function ( a , c ) { return c . templateUrl || "template/pagination/pager.html" } , replace : ! 0 ,
2017-07-20 23:09:21 +00:00
link : function ( h , c , b , e ) { k || f . warn ( "pager is now deprecated. Use uib-pager instead." ) ; c = e [ 0 ] ; ( e = e [ 1 ] ) && ( h . align = angular . isDefined ( b . align ) ? h . $parent . $eval ( b . align ) : a . align , c . init ( e , a ) ) } } } ] ) ;
angular . module ( "ui.bootstrap.tooltip" , [ "ui.bootstrap.position" , "ui.bootstrap.stackedMap" ] ) . provider ( "$uibTooltip" , function ( ) { function a ( a ) { return a . replace ( /[A-Z]/g , function ( a , c ) { return ( c ? "-" : "" ) + a . toLowerCase ( ) } ) } var f = { placement : "top" , animation : ! 0 , popupDelay : 0 , popupCloseDelay : 0 , useContentExp : ! 1 } , k = { mouseenter : "mouseleave" , click : "click" , focus : "blur" , none : "" } , h = { } ; this . options = function ( a ) { angular . extend ( h , a ) } ; this . setTriggers = function ( a ) { angular . extend ( k , a ) } ; this . $get = [ "$window" , "$compile" , "$timeout" ,
"$document" , "$uibPosition" , "$interpolate" , "$rootScope" , "$parse" , "$$stackedMap" , function ( c , b , e , g , r , m , n , t , x ) { var q = x . createNew ( ) ; return g . on ( "keypress" , function ( a ) { 27 === a . which && ( a = q . top ( ) ) && ( a . value . close ( ) , q . removeTop ( ) ) } ) , function ( c , n , x , B ) { function v ( a ) { a = ( a || B . trigger || x ) . split ( " " ) ; var b = a . map ( function ( a ) { return k [ a ] || a } ) ; return { show : a , hide : b } } B = angular . extend ( { } , f , h , B ) ; var p = a ( c ) , u = m . startSymbol ( ) , A = m . endSymbol ( ) , z = "<div " + p + '-popup title="' + u + "title" + A + '" ' + ( B . useContentExp ? 'content-exp="contentExp()" ' :
'content="' + u + "content" + A + '" ' ) + 'placement="' + u + "placement" + A + '" popup-class="' + u + "popupClass" + A + '" animation="animation" is-open="isOpen"origin-scope="origScope" style="visibility: hidden; display: block; top: -9999px; left: -9999px;"></div>' ; return { compile : function ( a , f ) { var h = b ( z ) ; return function ( a , b , f , k ) { function m ( ) { U . isOpen ? p ( ) : u ( ) } function u ( ) { if ( ! Ka || a . $eval ( f [ n + "Enable" ] ) ) { G ( ) ; U . title = f [ n + "Title" ] ; ia ? U . content = ia ( a ) : U . content = f [ c ] ; U . popupClass = f [ n + "Class" ] ; U . placement = angular . isDefined ( f [ n +
"Placement" ] ) ? f [ n + "Placement" ] : B . placement ; var b = parseInt ( f [ n + "PopupDelay" ] , 10 ) , g = parseInt ( f [ n + "PopupCloseDelay" ] , 10 ) ; U . popupDelay = isNaN ( b ) ? B . popupDelay : b ; U . popupCloseDelay = isNaN ( g ) ? B . popupCloseDelay : g ; U . popupDelay ? V || ( V = e ( x , U . popupDelay , ! 1 ) ) : x ( ) } } function p ( ) { A ( ) ; U . popupCloseDelay ? qa || ( qa = e ( E , U . popupCloseDelay , ! 1 ) ) : E ( ) } function x ( ) { return A ( ) , G ( ) , U . content ? ( z ( ) , void U . $evalAsync ( function ( ) { U . isOpen = ! 0 ; F ( ! 0 ) ; jb ( ) } ) ) : angular . noop } function A ( ) { V && ( e . cancel ( V ) , V = null ) ; ga && ( e . cancel ( ga ) , ga = null ) } function E ( ) { A ( ) ;
G ( ) ; U && U . $evalAsync ( function ( ) { U . isOpen = ! 1 ; F ( ! 1 ) ; U . animation ? S || ( S = e ( J , 150 , ! 1 ) ) : J ( ) } ) } function G ( ) { qa && ( e . cancel ( qa ) , qa = null ) ; S && ( e . cancel ( S ) , S = null ) } function z ( ) { N || ( P = U . $new ( ) , N = h ( P , function ( a ) { w ? g . find ( "body" ) . append ( a ) : b . after ( a ) } ) , I ( ) ) } function J ( ) { K ( ) ; S = null ; N && ( N . remove ( ) , N = null ) ; P && ( P . $destroy ( ) , P = null ) } function F ( b ) { Ua && angular . isFunction ( Ua . assign ) && Ua . assign ( a , b ) } function I ( ) { ua . length = 0 ; ia ? ( ua . push ( a . $watch ( ia , function ( a ) { U . content = a ; ! a && U . isOpen && E ( ) } ) ) , ua . push ( P . $watch ( function ( ) { na ||
2017-07-25 17:51:59 +00:00
( na = ! 0 , P . $$postDigest ( function ( ) { na = ! 1 ; U && U . isOpen && jb ( ) } ) ) } ) ) ) : ua . push ( f . $observe ( c , function ( a ) { U . content = a ; ! a && U . isOpen ? E ( ) : jb ( ) } ) ) ; ua . push ( f . $observe ( n + "Title" , function ( a ) { U . title = a ; U . isOpen && jb ( ) } ) ) ; ua . push ( f . $observe ( n + "Placement" , function ( a ) { U . placement = a ? a : B . placement ; U . isOpen && jb ( ) } ) ) } function K ( ) { ua . length && ( angular . forEach ( ua , function ( a ) { a ( ) } ) , ua . length = 0 ) } var N , P , S , V , qa , ga , w = ! ! angular . isDefined ( B . appendToBody ) && B . appendToBody , ma = v ( void 0 ) , Ka = angular . isDefined ( f [ n + "Enable" ] ) , U = a . $new ( ! 0 ) ,
na = ! 1 , Ua = ! ! angular . isDefined ( f [ n + "IsOpen" ] ) && t ( f [ n + "IsOpen" ] ) , ia = ! ! B . useContentExp && t ( f [ c ] ) , ua = [ ] , jb = function ( ) { N && N . html ( ) && ( ga || ( ga = e ( function ( ) { N . css ( { top : 0 , left : 0 } ) ; var a = r . positionElements ( b , N , U . placement , w ) ; a . top += "px" ; a . left += "px" ; a . visibility = "visible" ; N . css ( a ) ; ga = null } , 0 , ! 1 ) ) ) } ; U . origScope = a ; U . isOpen = ! 1 ; q . add ( U , { close : E } ) ; U . contentExp = function ( ) { return U . content } ; f . $observe ( "disabled" , function ( a ) { a && A ( ) ; a && U . isOpen && E ( ) } ) ; Ua && a . $watch ( Ua , function ( a ) { U && ! a === U . isOpen && m ( ) } ) ; var kb = function ( ) { ma . show . forEach ( function ( a ) { b . unbind ( a ,
2017-07-20 23:09:21 +00:00
u ) } ) ; ma . hide . forEach ( function ( a ) { a . split ( " " ) . forEach ( function ( a ) { b [ 0 ] . removeEventListener ( a , p ) } ) } ) } ; ( function ( ) { var a = f [ n + "Trigger" ] ; kb ( ) ; ma = v ( a ) ; "none" !== ma . show && ma . show . forEach ( function ( a , c ) { a === ma . hide [ c ] ? b [ 0 ] . addEventListener ( a , m ) : a && ( b [ 0 ] . addEventListener ( a , u ) , ma . hide [ c ] . split ( " " ) . forEach ( function ( a ) { b [ 0 ] . addEventListener ( a , p ) } ) ) ; b . on ( "keypress" , function ( a ) { 27 === a . which && p ( ) } ) } ) } ) ( ) ; k = a . $eval ( f [ n + "Animation" ] ) ; U . animation = angular . isDefined ( k ) ? ! ! k : B . animation ; k = a . $eval ( f [ n + "AppendToBody" ] ) ;
( w = angular . isDefined ( k ) ? k : w ) && a . $on ( "$locationChangeSuccess" , function ( ) { U . isOpen && E ( ) } ) ; a . $on ( "$destroy" , function ( ) { A ( ) ; G ( ) ; kb ( ) ; J ( ) ; q . remove ( U ) ; U = null } ) } } } } } ] } ) . directive ( "uibTooltipTemplateTransclude" , [ "$animate" , "$sce" , "$compile" , "$templateRequest" , function ( a , f , k , h ) { return { link : function ( c , b , e ) { var g , r , m , n = c . $eval ( e . tooltipTemplateTranscludeScope ) , t = 0 , x = function ( ) { r && ( r . remove ( ) , r = null ) ; g && ( g . $destroy ( ) , g = null ) ; m && ( a . leave ( m ) . then ( function ( ) { r = null } ) , r = m , m = null ) } ; c . $watch ( f . parseAsResourceUrl ( e . uibTooltipTemplateTransclude ) ,
function ( e ) { var f = ++ t ; e ? ( h ( e , ! 0 ) . then ( function ( c ) { if ( f === t ) { var h = n . $new ( ) ; c = k ( c ) ( h , function ( c ) { x ( ) ; a . enter ( c , b ) } ) ; g = h ; m = c ; g . $emit ( "$includeContentLoaded" , e ) } } , function ( ) { f === t && ( x ( ) , c . $emit ( "$includeContentError" , e ) ) } ) , c . $emit ( "$includeContentRequested" , e ) ) : x ( ) } ) ; c . $on ( "$destroy" , x ) } } } ] ) . directive ( "uibTooltipClasses" , function ( ) { return { restrict : "A" , link : function ( a , f , k ) { a . placement && f . addClass ( a . placement ) ; a . popupClass && f . addClass ( a . popupClass ) ; a . animation ( ) && f . addClass ( k . tooltipAnimationClass ) } } } ) . directive ( "uibTooltipPopup" ,
function ( ) { return { replace : ! 0 , scope : { content : "@" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/tooltip/tooltip-popup.html" , link : function ( a , f ) { f . addClass ( "tooltip" ) } } } ) . directive ( "uibTooltip" , [ "$uibTooltip" , function ( a ) { return a ( "uibTooltip" , "tooltip" , "mouseenter" ) } ] ) . directive ( "uibTooltipTemplatePopup" , function ( ) { return { replace : ! 0 , scope : { contentExp : "&" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" , originScope : "&" } , templateUrl : "template/tooltip/tooltip-template-popup.html" ,
link : function ( a , f ) { f . addClass ( "tooltip" ) } } } ) . directive ( "uibTooltipTemplate" , [ "$uibTooltip" , function ( a ) { return a ( "uibTooltipTemplate" , "tooltip" , "mouseenter" , { useContentExp : ! 0 } ) } ] ) . directive ( "uibTooltipHtmlPopup" , function ( ) { return { replace : ! 0 , scope : { contentExp : "&" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/tooltip/tooltip-html-popup.html" , link : function ( a , f ) { f . addClass ( "tooltip" ) } } } ) . directive ( "uibTooltipHtml" , [ "$uibTooltip" , function ( a ) { return a ( "uibTooltipHtml" , "tooltip" ,
"mouseenter" , { useContentExp : ! 0 } ) } ] ) ;
angular . module ( "ui.bootstrap.tooltip" ) . value ( "$tooltipSuppressWarning" , ! 1 ) . provider ( "$tooltip" , [ "$uibTooltipProvider" , function ( a ) { angular . extend ( this , a ) ; this . $get = [ "$log" , "$tooltipSuppressWarning" , "$injector" , function ( f , k , h ) { return k || f . warn ( "$tooltip is now deprecated. Use $uibTooltip instead." ) , h . invoke ( a . $get ) } ] } ] ) . directive ( "tooltipTemplateTransclude" , [ "$animate" , "$sce" , "$compile" , "$templateRequest" , "$log" , "$tooltipSuppressWarning" , function ( a , f , k , h , c , b ) { return { link : function ( e , g , r ) { b || c . warn ( "tooltip-template-transclude is now deprecated. Use uib-tooltip-template-transclude instead." ) ;
var m , n , t , x = e . $eval ( r . tooltipTemplateTranscludeScope ) , q = 0 , v = function ( ) { n && ( n . remove ( ) , n = null ) ; m && ( m . $destroy ( ) , m = null ) ; t && ( a . leave ( t ) . then ( function ( ) { n = null } ) , n = t , t = null ) } ; e . $watch ( f . parseAsResourceUrl ( r . tooltipTemplateTransclude ) , function ( b ) { var c = ++ q ; b ? ( h ( b , ! 0 ) . then ( function ( e ) { if ( c === q ) { var f = x . $new ( ) ; e = k ( e ) ( f , function ( b ) { v ( ) ; a . enter ( b , g ) } ) ; m = f ; t = e ; m . $emit ( "$includeContentLoaded" , b ) } } , function ( ) { c === q && ( v ( ) , e . $emit ( "$includeContentError" , b ) ) } ) , e . $emit ( "$includeContentRequested" , b ) ) : v ( ) } ) ; e . $on ( "$destroy" ,
v ) } } } ] ) . directive ( "tooltipClasses" , [ "$log" , "$tooltipSuppressWarning" , function ( a , f ) { return { restrict : "A" , link : function ( k , h , c ) { f || a . warn ( "tooltip-classes is now deprecated. Use uib-tooltip-classes instead." ) ; k . placement && h . addClass ( k . placement ) ; k . popupClass && h . addClass ( k . popupClass ) ; k . animation ( ) && h . addClass ( c . tooltipAnimationClass ) } } } ] ) . directive ( "tooltipPopup" , [ "$log" , "$tooltipSuppressWarning" , function ( a , f ) { return { replace : ! 0 , scope : { content : "@" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } ,
templateUrl : "template/tooltip/tooltip-popup.html" , link : function ( k , h ) { f || a . warn ( "tooltip-popup is now deprecated. Use uib-tooltip-popup instead." ) ; h . addClass ( "tooltip" ) } } } ] ) . directive ( "tooltip" , [ "$tooltip" , function ( a ) { return a ( "tooltip" , "tooltip" , "mouseenter" ) } ] ) . directive ( "tooltipTemplatePopup" , [ "$log" , "$tooltipSuppressWarning" , function ( a , f ) { return { replace : ! 0 , scope : { contentExp : "&" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" , originScope : "&" } , templateUrl : "template/tooltip/tooltip-template-popup.html" ,
link : function ( k , h ) { f || a . warn ( "tooltip-template-popup is now deprecated. Use uib-tooltip-template-popup instead." ) ; h . addClass ( "tooltip" ) } } } ] ) . directive ( "tooltipTemplate" , [ "$tooltip" , function ( a ) { return a ( "tooltipTemplate" , "tooltip" , "mouseenter" , { useContentExp : ! 0 } ) } ] ) . directive ( "tooltipHtmlPopup" , [ "$log" , "$tooltipSuppressWarning" , function ( a , f ) { return { replace : ! 0 , scope : { contentExp : "&" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/tooltip/tooltip-html-popup.html" , link : function ( k ,
h ) { f || a . warn ( "tooltip-html-popup is now deprecated. Use uib-tooltip-html-popup instead." ) ; h . addClass ( "tooltip" ) } } } ] ) . directive ( "tooltipHtml" , [ "$tooltip" , function ( a ) { return a ( "tooltipHtml" , "tooltip" , "mouseenter" , { useContentExp : ! 0 } ) } ] ) ;
angular . module ( "ui.bootstrap.popover" , [ "ui.bootstrap.tooltip" ] ) . directive ( "uibPopoverTemplatePopup" , function ( ) { return { replace : ! 0 , scope : { title : "@" , contentExp : "&" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" , originScope : "&" } , templateUrl : "template/popover/popover-template.html" , link : function ( a , f ) { f . addClass ( "popover" ) } } } ) . directive ( "uibPopoverTemplate" , [ "$uibTooltip" , function ( a ) { return a ( "uibPopoverTemplate" , "popover" , "click" , { useContentExp : ! 0 } ) } ] ) . directive ( "uibPopoverHtmlPopup" , function ( ) { return { replace : ! 0 ,
scope : { contentExp : "&" , title : "@" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/popover/popover-html.html" , link : function ( a , f ) { f . addClass ( "popover" ) } } } ) . directive ( "uibPopoverHtml" , [ "$uibTooltip" , function ( a ) { return a ( "uibPopoverHtml" , "popover" , "click" , { useContentExp : ! 0 } ) } ] ) . directive ( "uibPopoverPopup" , function ( ) { return { replace : ! 0 , scope : { title : "@" , content : "@" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/popover/popover.html" , link : function ( a ,
f ) { f . addClass ( "popover" ) } } } ) . directive ( "uibPopover" , [ "$uibTooltip" , function ( a ) { return a ( "uibPopover" , "popover" , "click" ) } ] ) ;
angular . module ( "ui.bootstrap.popover" ) . value ( "$popoverSuppressWarning" , ! 1 ) . directive ( "popoverTemplatePopup" , [ "$log" , "$popoverSuppressWarning" , function ( a , f ) { return { replace : ! 0 , scope : { title : "@" , contentExp : "&" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" , originScope : "&" } , templateUrl : "template/popover/popover-template.html" , link : function ( k , h ) { f || a . warn ( "popover-template-popup is now deprecated. Use uib-popover-template-popup instead." ) ; h . addClass ( "popover" ) } } } ] ) . directive ( "popoverTemplate" , [ "$tooltip" ,
function ( a ) { return a ( "popoverTemplate" , "popover" , "click" , { useContentExp : ! 0 } ) } ] ) . directive ( "popoverHtmlPopup" , [ "$log" , "$popoverSuppressWarning" , function ( a , f ) { return { replace : ! 0 , scope : { contentExp : "&" , title : "@" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/popover/popover-html.html" , link : function ( k , h ) { f || a . warn ( "popover-html-popup is now deprecated. Use uib-popover-html-popup instead." ) ; h . addClass ( "popover" ) } } } ] ) . directive ( "popoverHtml" , [ "$tooltip" , function ( a ) { return a ( "popoverHtml" ,
"popover" , "click" , { useContentExp : ! 0 } ) } ] ) . directive ( "popoverPopup" , [ "$log" , "$popoverSuppressWarning" , function ( a , f ) { return { replace : ! 0 , scope : { title : "@" , content : "@" , placement : "@" , popupClass : "@" , animation : "&" , isOpen : "&" } , templateUrl : "template/popover/popover.html" , link : function ( k , h ) { f || a . warn ( "popover-popup is now deprecated. Use uib-popover-popup instead." ) ; h . addClass ( "popover" ) } } } ] ) . directive ( "popover" , [ "$tooltip" , function ( a ) { return a ( "popover" , "popover" , "click" ) } ] ) ;
angular . module ( "ui.bootstrap.progressbar" , [ ] ) . constant ( "uibProgressConfig" , { animate : ! 0 , max : 100 } ) . controller ( "UibProgressController" , [ "$scope" , "$attrs" , "uibProgressConfig" , function ( a , f , k ) { var h = this , c = angular . isDefined ( f . animate ) ? a . $parent . $eval ( f . animate ) : k . animate ; this . bars = [ ] ; a . max = angular . isDefined ( a . max ) ? a . max : k . max ; this . addBar = function ( b , e , g ) { c || e . css ( { transition : "none" } ) ; this . bars . push ( b ) ; b . max = a . max ; b . title = g && angular . isDefined ( g . title ) ? g . title : "progressbar" ; b . $watch ( "value" , function ( a ) { b . recalculatePercentage ( ) } ) ;
b . recalculatePercentage = function ( ) { var a = h . bars . reduce ( function ( a , b ) { return b . percent = + ( 100 * b . value / b . max ) . toFixed ( 2 ) , a + b . percent } , 0 ) ; 100 < a && ( b . percent -= a - 100 ) } ; b . $on ( "$destroy" , function ( ) { e = null ; h . removeBar ( b ) } ) } ; this . removeBar = function ( a ) { this . bars . splice ( this . bars . indexOf ( a ) , 1 ) ; this . bars . forEach ( function ( a ) { a . recalculatePercentage ( ) } ) } ; a . $watch ( "max" , function ( b ) { h . bars . forEach ( function ( b ) { b . max = a . max ; b . recalculatePercentage ( ) } ) } ) } ] ) . directive ( "uibProgress" , function ( ) { return { replace : ! 0 , transclude : ! 0 ,
controller : "UibProgressController" , require : "uibProgress" , scope : { max : "=?" } , templateUrl : "template/progressbar/progress.html" } } ) . directive ( "uibBar" , function ( ) { return { replace : ! 0 , transclude : ! 0 , require : "^uibProgress" , scope : { value : "=" , type : "@" } , templateUrl : "template/progressbar/bar.html" , link : function ( a , f , k , h ) { h . addBar ( a , f , k ) } } } ) . directive ( "uibProgressbar" , function ( ) { return { replace : ! 0 , transclude : ! 0 , controller : "UibProgressController" , scope : { value : "=" , max : "=?" , type : "@" } , templateUrl : "template/progressbar/progressbar.html" ,
link : function ( a , f , k , h ) { h . addBar ( a , angular . element ( f . children ( ) [ 0 ] ) , { title : k . title } ) } } } ) ;
angular . module ( "ui.bootstrap.progressbar" ) . value ( "$progressSuppressWarning" , ! 1 ) . controller ( "ProgressController" , [ "$scope" , "$attrs" , "uibProgressConfig" , "$log" , "$progressSuppressWarning" , function ( a , f , k , h , c ) { c || h . warn ( "ProgressController is now deprecated. Use UibProgressController instead." ) ; var b = this , e = angular . isDefined ( f . animate ) ? a . $parent . $eval ( f . animate ) : k . animate ; this . bars = [ ] ; a . max = angular . isDefined ( a . max ) ? a . max : k . max ; this . addBar = function ( c , f , h ) { e || f . css ( { transition : "none" } ) ; this . bars . push ( c ) ;
c . max = a . max ; c . title = h && angular . isDefined ( h . title ) ? h . title : "progressbar" ; c . $watch ( "value" , function ( a ) { c . recalculatePercentage ( ) } ) ; c . recalculatePercentage = function ( ) { c . percent = + ( 100 * c . value / c . max ) . toFixed ( 2 ) ; var a = b . bars . reduce ( function ( a , b ) { return a + b . percent } , 0 ) ; 100 < a && ( c . percent -= a - 100 ) } ; c . $on ( "$destroy" , function ( ) { f = null ; b . removeBar ( c ) } ) } ; this . removeBar = function ( a ) { this . bars . splice ( this . bars . indexOf ( a ) , 1 ) } ; a . $watch ( "max" , function ( c ) { b . bars . forEach ( function ( b ) { b . max = a . max ; b . recalculatePercentage ( ) } ) } ) } ] ) . directive ( "progress" ,
[ "$log" , "$progressSuppressWarning" , function ( a , f ) { return { replace : ! 0 , transclude : ! 0 , controller : "ProgressController" , require : "progress" , scope : { max : "=?" , title : "@?" } , templateUrl : "template/progressbar/progress.html" , link : function ( ) { f || a . warn ( "progress is now deprecated. Use uib-progress instead." ) } } } ] ) . directive ( "bar" , [ "$log" , "$progressSuppressWarning" , function ( a , f ) { return { replace : ! 0 , transclude : ! 0 , require : "^progress" , scope : { value : "=" , type : "@" } , templateUrl : "template/progressbar/bar.html" , link : function ( k ,
h , c , b ) { f || a . warn ( "bar is now deprecated. Use uib-bar instead." ) ; b . addBar ( k , h ) } } } ] ) . directive ( "progressbar" , [ "$log" , "$progressSuppressWarning" , function ( a , f ) { return { replace : ! 0 , transclude : ! 0 , controller : "ProgressController" , scope : { value : "=" , max : "=?" , type : "@" } , templateUrl : "template/progressbar/progressbar.html" , link : function ( k , h , c , b ) { f || a . warn ( "progressbar is now deprecated. Use uib-progressbar instead." ) ; b . addBar ( k , angular . element ( h . children ( ) [ 0 ] ) , { title : c . title } ) } } } ] ) ;
angular . module ( "ui.bootstrap.rating" , [ ] ) . constant ( "uibRatingConfig" , { max : 5 , stateOn : null , stateOff : null , titles : [ "one" , "two" , "three" , "four" , "five" ] } ) . controller ( "UibRatingController" , [ "$scope" , "$attrs" , "uibRatingConfig" , function ( a , f , k ) { var h = { $setViewValue : angular . noop } ; this . init = function ( c ) { h = c ; h . $render = this . render ; h . $formatters . push ( function ( a ) { return angular . isNumber ( a ) && a << 0 !== a && ( a = Math . round ( a ) ) , a } ) ; this . stateOn = angular . isDefined ( f . stateOn ) ? a . $parent . $eval ( f . stateOn ) : k . stateOn ; this . stateOff = angular . isDefined ( f . stateOff ) ?
2017-07-25 17:51:59 +00:00
a . $parent . $eval ( f . stateOff ) : k . stateOff ; c = angular . isDefined ( f . titles ) ? a . $parent . $eval ( f . titles ) : k . titles ; this . titles = angular . isArray ( c ) && 0 < c . length ? c : k . titles ; c = angular . isDefined ( f . ratingStates ) ? a . $parent . $eval ( f . ratingStates ) : Array ( angular . isDefined ( f . max ) ? a . $parent . $eval ( f . max ) : k . max ) ; a . range = this . buildTemplateObjects ( c ) } ; this . buildTemplateObjects = function ( a ) { for ( var b = 0 , c = a . length ; b < c ; b ++ ) a [ b ] = angular . extend ( { index : b } , { stateOn : this . stateOn , stateOff : this . stateOff , title : this . getTitle ( b ) } , a [ b ] ) ; return a } ;
2017-07-20 23:09:21 +00:00
this . getTitle = function ( a ) { return a >= this . titles . length ? a + 1 : this . titles [ a ] } ; a . rate = function ( c ) { ! a . readonly && 0 <= c && c <= a . range . length && ( h . $setViewValue ( h . $viewValue === c ? 0 : c ) , h . $render ( ) ) } ; a . enter = function ( c ) { a . readonly || ( a . value = c ) ; a . onHover ( { value : c } ) } ; a . reset = function ( ) { a . value = h . $viewValue ; a . onLeave ( ) } ; a . onKeydown = function ( c ) { /(37|38|39|40)/ . test ( c . which ) && ( c . preventDefault ( ) , c . stopPropagation ( ) , a . rate ( a . value + ( 38 === c . which || 39 === c . which ? 1 : - 1 ) ) ) } ; this . render = function ( ) { a . value = h . $viewValue } } ] ) . directive ( "uibRating" ,
function ( ) { return { require : [ "uibRating" , "ngModel" ] , scope : { readonly : "=?" , onHover : "&" , onLeave : "&" } , controller : "UibRatingController" , templateUrl : "template/rating/rating.html" , replace : ! 0 , link : function ( a , f , k , h ) { h [ 0 ] . init ( h [ 1 ] ) } } } ) ;
angular . module ( "ui.bootstrap.rating" ) . value ( "$ratingSuppressWarning" , ! 1 ) . controller ( "RatingController" , [ "$scope" , "$attrs" , "$controller" , "$log" , "$ratingSuppressWarning" , function ( a , f , k , h , c ) { c || h . warn ( "RatingController is now deprecated. Use UibRatingController instead." ) ; angular . extend ( this , k ( "UibRatingController" , { $scope : a , $attrs : f } ) ) } ] ) . directive ( "rating" , [ "$log" , "$ratingSuppressWarning" , function ( a , f ) { return { require : [ "rating" , "ngModel" ] , scope : { readonly : "=?" , onHover : "&" , onLeave : "&" } , controller : "RatingController" ,
templateUrl : "template/rating/rating.html" , replace : ! 0 , link : function ( k , h , c , b ) { f || a . warn ( "rating is now deprecated. Use uib-rating instead." ) ; b [ 0 ] . init ( b [ 1 ] ) } } } ] ) ;
angular . module ( "ui.bootstrap.tabs" , [ ] ) . controller ( "UibTabsetController" , [ "$scope" , function ( a ) { var f = this , k = f . tabs = a . tabs = [ ] ; f . select = function ( a ) { angular . forEach ( k , function ( b ) { b . active && b !== a && ( b . active = ! 1 , b . onDeselect ( ) , a . selectCalled = ! 1 ) } ) ; a . active = ! 0 ; a . selectCalled || ( a . onSelect ( ) , a . selectCalled = ! 0 ) } ; f . addTab = function ( a ) { k . push ( a ) ; 1 === k . length && ! 1 !== a . active ? a . active = ! 0 : a . active ? f . select ( a ) : a . active = ! 1 } ; f . removeTab = function ( a ) { var b = k . indexOf ( a ) ; a . active && 1 < k . length && ! h && f . select ( k [ b == k . length - 1 ?
2017-07-25 17:51:59 +00:00
b - 1 : b + 1 ] ) ; k . splice ( b , 1 ) } ; var h ; a . $on ( "$destroy" , function ( ) { h = ! 0 } ) } ] ) . directive ( "uibTabset" , function ( ) { return { restrict : "EA" , transclude : ! 0 , replace : ! 0 , scope : { type : "@" } , controller : "UibTabsetController" , templateUrl : "template/tabs/tabset.html" , link : function ( a , f , k ) { a . vertical = ! ! angular . isDefined ( k . vertical ) && a . $parent . $eval ( k . vertical ) ; a . justified = ! ! angular . isDefined ( k . justified ) && a . $parent . $eval ( k . justified ) } } } ) . directive ( "uibTab" , [ "$parse" , function ( a ) { return { require : "^uibTabset" , restrict : "EA" , replace : ! 0 ,
2017-07-20 23:09:21 +00:00
templateUrl : "template/tabs/tab.html" , transclude : ! 0 , scope : { active : "=?" , heading : "@" , onSelect : "&select" , onDeselect : "&deselect" } , controller : function ( ) { } , link : function ( f , k , h , c , b ) { f . $watch ( "active" , function ( a ) { a && c . select ( f ) } ) ; f . disabled = ! 1 ; h . disable && f . $parent . $watch ( a ( h . disable ) , function ( a ) { f . disabled = ! ! a } ) ; f . select = function ( ) { f . disabled || ( f . active = ! 0 ) } ; c . addTab ( f ) ; f . $on ( "$destroy" , function ( ) { c . removeTab ( f ) } ) ; f . $transcludeFn = b } } } ] ) . directive ( "uibTabHeadingTransclude" , function ( ) { return { restrict : "A" , require : [ "?^uibTab" ,
"?^tab" ] , link : function ( a , f ) { a . $watch ( "headingElement" , function ( a ) { a && ( f . html ( "" ) , f . append ( a ) ) } ) } } } ) . directive ( "uibTabContentTransclude" , function ( ) { return { restrict : "A" , require : [ "?^uibTabset" , "?^tabset" ] , link : function ( a , f , k ) { var h = a . $eval ( k . uibTabContentTransclude ) ; h . $transcludeFn ( h . $parent , function ( a ) { angular . forEach ( a , function ( a ) { a . tagName && ( a . hasAttribute ( "tab-heading" ) || a . hasAttribute ( "data-tab-heading" ) || a . hasAttribute ( "x-tab-heading" ) || a . hasAttribute ( "uib-tab-heading" ) || a . hasAttribute ( "data-uib-tab-heading" ) ||
a . hasAttribute ( "x-uib-tab-heading" ) || "tab-heading" === a . tagName . toLowerCase ( ) || "data-tab-heading" === a . tagName . toLowerCase ( ) || "x-tab-heading" === a . tagName . toLowerCase ( ) || "uib-tab-heading" === a . tagName . toLowerCase ( ) || "data-uib-tab-heading" === a . tagName . toLowerCase ( ) || "x-uib-tab-heading" === a . tagName . toLowerCase ( ) ) ? h . headingElement = a : f . append ( a ) } ) } ) } } } ) ;
angular . module ( "ui.bootstrap.tabs" ) . value ( "$tabsSuppressWarning" , ! 1 ) . controller ( "TabsetController" , [ "$scope" , "$controller" , "$log" , "$tabsSuppressWarning" , function ( a , f , k , h ) { h || k . warn ( "TabsetController is now deprecated. Use UibTabsetController instead." ) ; angular . extend ( this , f ( "UibTabsetController" , { $scope : a } ) ) } ] ) . directive ( "tabset" , [ "$log" , "$tabsSuppressWarning" , function ( a , f ) { return { restrict : "EA" , transclude : ! 0 , replace : ! 0 , scope : { type : "@" } , controller : "TabsetController" , templateUrl : "template/tabs/tabset.html" ,
2017-07-25 17:51:59 +00:00
link : function ( k , h , c ) { f || a . warn ( "tabset is now deprecated. Use uib-tabset instead." ) ; k . vertical = ! ! angular . isDefined ( c . vertical ) && k . $parent . $eval ( c . vertical ) ; k . justified = ! ! angular . isDefined ( c . justified ) && k . $parent . $eval ( c . justified ) } } } ] ) . directive ( "tab" , [ "$parse" , "$log" , "$tabsSuppressWarning" , function ( a , f , k ) { return { require : "^tabset" , restrict : "EA" , replace : ! 0 , templateUrl : "template/tabs/tab.html" , transclude : ! 0 , scope : { active : "=?" , heading : "@" , onSelect : "&select" , onDeselect : "&deselect" } , controller : function ( ) { } ,
2017-07-20 23:09:21 +00:00
link : function ( h , c , b , e , g ) { k || f . warn ( "tab is now deprecated. Use uib-tab instead." ) ; h . $watch ( "active" , function ( a ) { a && e . select ( h ) } ) ; h . disabled = ! 1 ; b . disable && h . $parent . $watch ( a ( b . disable ) , function ( a ) { h . disabled = ! ! a } ) ; h . select = function ( ) { h . disabled || ( h . active = ! 0 ) } ; e . addTab ( h ) ; h . $on ( "$destroy" , function ( ) { e . removeTab ( h ) } ) ; h . $transcludeFn = g } } } ] ) . directive ( "tabHeadingTransclude" , [ "$log" , "$tabsSuppressWarning" , function ( a , f ) { return { restrict : "A" , require : "^tab" , link : function ( k , h ) { f || a . warn ( "tab-heading-transclude is now deprecated. Use uib-tab-heading-transclude instead." ) ;
k . $watch ( "headingElement" , function ( a ) { a && ( h . html ( "" ) , h . append ( a ) ) } ) } } } ] ) . directive ( "tabContentTransclude" , [ "$log" , "$tabsSuppressWarning" , function ( a , f ) { return { restrict : "A" , require : "^tabset" , link : function ( k , h , c ) { f || a . warn ( "tab-content-transclude is now deprecated. Use uib-tab-content-transclude instead." ) ; var b = k . $eval ( c . tabContentTransclude ) ; b . $transcludeFn ( b . $parent , function ( a ) { angular . forEach ( a , function ( a ) { a . tagName && ( a . hasAttribute ( "tab-heading" ) || a . hasAttribute ( "data-tab-heading" ) || a . hasAttribute ( "x-tab-heading" ) ||
"tab-heading" === a . tagName . toLowerCase ( ) || "data-tab-heading" === a . tagName . toLowerCase ( ) || "x-tab-heading" === a . tagName . toLowerCase ( ) ) ? b . headingElement = a : h . append ( a ) } ) } ) } } } ] ) ;
2017-07-25 17:51:59 +00:00
angular . module ( "ui.bootstrap.timepicker" , [ ] ) . constant ( "uibTimepickerConfig" , { hourStep : 1 , minuteStep : 1 , showMeridian : ! 0 , meridians : null , readonlyInput : ! 1 , mousewheel : ! 0 , arrowkeys : ! 0 , showSpinners : ! 0 } ) . controller ( "UibTimepickerController" , [ "$scope" , "$element" , "$attrs" , "$parse" , "$log" , "$locale" , "uibTimepickerConfig" , function ( a , f , k , h , c , b , e ) { function g ( ) { var b = parseInt ( a . hours , 10 ) ; if ( a . showMeridian ? 0 < b && 13 > b : 0 <= b && 24 > b ) return a . showMeridian && ( 12 === b && ( b = 0 ) , a . meridian === B [ 1 ] && ( b += 12 ) ) , b } function r ( ) { var b = parseInt ( a . minutes ,
10 ) ; return 0 <= b && 60 > b ? b : void 0 } function m ( a ) { return angular . isDefined ( a ) && 2 > a . toString ( ) . length ? "0" + a : a . toString ( ) } function n ( a ) { t ( ) ; A . $setViewValue ( new Date ( z ) ) ; x ( a ) } function t ( ) { A . $setValidity ( "time" , ! 0 ) ; a . invalidHours = ! 1 ; a . invalidMinutes = ! 1 } function x ( b ) { var c = z . getHours ( ) , e = z . getMinutes ( ) ; a . showMeridian && ( c = 0 === c || 12 === c ? 12 : c % 12 ) ; a . hours = "h" === b ? c : m ( c ) ; "m" !== b && ( a . minutes = m ( e ) ) ; a . meridian = 12 > z . getHours ( ) ? B [ 0 ] : B [ 1 ] } function q ( a , b ) { var c = new Date ( a . getTime ( ) + 6E4 * b ) , e = new Date ( a ) ; return e . setHours ( c . getHours ( ) ,
c . getMinutes ( ) ) , e } function v ( a ) { z = q ( z , a ) ; n ( ) } var z = new Date , A = { $setViewValue : angular . noop } , B = angular . isDefined ( k . meridians ) ? a . $parent . $eval ( k . meridians ) : e . meridians || b . DATETIME _FORMATS . AMPMS ; a . tabindex = angular . isDefined ( k . tabindex ) ? k . tabindex : 0 ; f . removeAttr ( "tabindex" ) ; this . init = function ( b , c ) { A = b ; A . $render = this . render ; A . $formatters . unshift ( function ( a ) { return a ? new Date ( a ) : null } ) ; var g = c . eq ( 0 ) , f = c . eq ( 1 ) ; ( angular . isDefined ( k . mousewheel ) ? a . $parent . $eval ( k . mousewheel ) : e . mousewheel ) && this . setupMousewheelEvents ( g ,
f ) ; ( angular . isDefined ( k . arrowkeys ) ? a . $parent . $eval ( k . arrowkeys ) : e . arrowkeys ) && this . setupArrowkeyEvents ( g , f ) ; a . readonlyInput = angular . isDefined ( k . readonlyInput ) ? a . $parent . $eval ( k . readonlyInput ) : e . readonlyInput ; this . setupInputEvents ( g , f ) } ; var F = e . hourStep ; k . hourStep && a . $parent . $watch ( h ( k . hourStep ) , function ( a ) { F = parseInt ( a , 10 ) } ) ; var p = e . minuteStep ; k . minuteStep && a . $parent . $watch ( h ( k . minuteStep ) , function ( a ) { p = parseInt ( a , 10 ) } ) ; var u ; a . $parent . $watch ( h ( k . min ) , function ( a ) { a = new Date ( a ) ; u = isNaN ( a ) ? void 0 : a } ) ;
var I ; a . $parent . $watch ( h ( k . max ) , function ( a ) { a = new Date ( a ) ; I = isNaN ( a ) ? void 0 : a } ) ; a . noIncrementHours = function ( ) { var a = q ( z , 60 * F ) ; return a > I || a < z && a < u } ; a . noDecrementHours = function ( ) { var a = q ( z , 60 * - F ) ; return a < u || a > z && a > I } ; a . noIncrementMinutes = function ( ) { var a = q ( z , p ) ; return a > I || a < z && a < u } ; a . noDecrementMinutes = function ( ) { var a = q ( z , - p ) ; return a < u || a > z && a > I } ; a . noToggleMeridian = function ( ) { return 13 > z . getHours ( ) ? q ( z , 720 ) > I : q ( z , - 720 ) < u } ; a . showMeridian = e . showMeridian ; k . showMeridian && a . $parent . $watch ( h ( k . showMeridian ) ,
2017-07-20 23:09:21 +00:00
function ( b ) { if ( a . showMeridian = ! ! b , A . $error . time ) { b = g ( ) ; var c = r ( ) ; angular . isDefined ( b ) && angular . isDefined ( c ) && ( z . setHours ( b ) , n ( ) ) } else x ( ) } ) ; this . setupMousewheelEvents = function ( b , c ) { var e = function ( a ) { a . originalEvent && ( a = a . originalEvent ) ; var b = a . wheelDelta ? a . wheelDelta : - a . deltaY ; return a . detail || 0 < b } ; b . bind ( "mousewheel wheel" , function ( b ) { a . $apply ( e ( b ) ? a . incrementHours ( ) : a . decrementHours ( ) ) ; b . preventDefault ( ) } ) ; c . bind ( "mousewheel wheel" , function ( b ) { a . $apply ( e ( b ) ? a . incrementMinutes ( ) : a . decrementMinutes ( ) ) ;
b . preventDefault ( ) } ) } ; this . setupArrowkeyEvents = function ( b , c ) { b . bind ( "keydown" , function ( b ) { 38 === b . which ? ( b . preventDefault ( ) , a . incrementHours ( ) , a . $apply ( ) ) : 40 === b . which && ( b . preventDefault ( ) , a . decrementHours ( ) , a . $apply ( ) ) } ) ; c . bind ( "keydown" , function ( b ) { 38 === b . which ? ( b . preventDefault ( ) , a . incrementMinutes ( ) , a . $apply ( ) ) : 40 === b . which && ( b . preventDefault ( ) , a . decrementMinutes ( ) , a . $apply ( ) ) } ) } ; this . setupInputEvents = function ( b , c ) { if ( a . readonlyInput ) return a . updateHours = angular . noop , void ( a . updateMinutes = angular . noop ) ;
2017-07-25 17:51:59 +00:00
var e = function ( b , c ) { A . $setViewValue ( null ) ; A . $setValidity ( "time" , ! 1 ) ; angular . isDefined ( b ) && ( a . invalidHours = b ) ; angular . isDefined ( c ) && ( a . invalidMinutes = c ) } ; a . updateHours = function ( ) { var a = g ( ) , b = r ( ) ; angular . isDefined ( a ) && angular . isDefined ( b ) ? ( z . setHours ( a ) , z < u || z > I ? e ( ! 0 ) : n ( "h" ) ) : e ( ! 0 ) } ; b . bind ( "blur" , function ( b ) { ! a . invalidHours && 10 > a . hours && a . $apply ( function ( ) { a . hours = m ( a . hours ) } ) } ) ; a . updateMinutes = function ( ) { var a = r ( ) , b = g ( ) ; angular . isDefined ( a ) && angular . isDefined ( b ) ? ( z . setMinutes ( a ) , z < u || z > I ? e ( void 0 ,
! 0 ) : n ( "m" ) ) : e ( void 0 , ! 0 ) } ; c . bind ( "blur" , function ( b ) { ! a . invalidMinutes && 10 > a . minutes && a . $apply ( function ( ) { a . minutes = m ( a . minutes ) } ) } ) } ; this . render = function ( ) { var b = A . $viewValue ; isNaN ( b ) ? ( A . $setValidity ( "time" , ! 1 ) , c . error ( 'Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.' ) ) : ( b && ( z = b ) , z < u || z > I ? ( A . $setValidity ( "time" , ! 1 ) , a . invalidHours = ! 0 , a . invalidMinutes = ! 0 ) : t ( ) , x ( ) ) } ; a . showSpinners = angular . isDefined ( k . showSpinners ) ?
2017-07-20 23:09:21 +00:00
a . $parent . $eval ( k . showSpinners ) : e . showSpinners ; a . incrementHours = function ( ) { a . noIncrementHours ( ) || v ( 60 * F ) } ; a . decrementHours = function ( ) { a . noDecrementHours ( ) || v ( 60 * - F ) } ; a . incrementMinutes = function ( ) { a . noIncrementMinutes ( ) || v ( p ) } ; a . decrementMinutes = function ( ) { a . noDecrementMinutes ( ) || v ( - p ) } ; a . toggleMeridian = function ( ) { a . noToggleMeridian ( ) || v ( 720 * ( 12 > z . getHours ( ) ? 1 : - 1 ) ) } } ] ) . directive ( "uibTimepicker" , function ( ) { return { restrict : "EA" , require : [ "uibTimepicker" , "?^ngModel" ] , controller : "UibTimepickerController" ,
controllerAs : "timepicker" , replace : ! 0 , scope : { } , templateUrl : function ( a , f ) { return f . templateUrl || "template/timepicker/timepicker.html" } , link : function ( a , f , k , h ) { a = h [ 0 ] ; ( h = h [ 1 ] ) && a . init ( h , f . find ( "input" ) ) } } } ) ;
angular . module ( "ui.bootstrap.timepicker" ) . value ( "$timepickerSuppressWarning" , ! 1 ) . controller ( "TimepickerController" , [ "$scope" , "$element" , "$attrs" , "$controller" , "$log" , "$timepickerSuppressWarning" , function ( a , f , k , h , c , b ) { b || c . warn ( "TimepickerController is now deprecated. Use UibTimepickerController instead." ) ; angular . extend ( this , h ( "UibTimepickerController" , { $scope : a , $element : f , $attrs : k } ) ) } ] ) . directive ( "timepicker" , [ "$log" , "$timepickerSuppressWarning" , function ( a , f ) { return { restrict : "EA" , require : [ "timepicker" ,
"?^ngModel" ] , controller : "TimepickerController" , controllerAs : "timepicker" , replace : ! 0 , scope : { } , templateUrl : function ( a , f ) { return f . templateUrl || "template/timepicker/timepicker.html" } , link : function ( k , h , c , b ) { f || a . warn ( "timepicker is now deprecated. Use uib-timepicker instead." ) ; k = b [ 0 ] ; ( b = b [ 1 ] ) && k . init ( b , h . find ( "input" ) ) } } } ] ) ;
angular . module ( "ui.bootstrap.typeahead" , [ "ui.bootstrap.position" ] ) . factory ( "uibTypeaheadParser" , [ "$parse" , function ( a ) { var f = /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/ ; return { parse : function ( k ) { var h = k . match ( f ) ; if ( ! h ) throw Error ( 'Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "' + k + '".' ) ; return { itemName : h [ 3 ] , source : a ( h [ 4 ] ) , viewMapper : a ( h [ 2 ] || h [ 1 ] ) , modelMapper : a ( h [ 1 ] ) } } } } ] ) . controller ( "UibTypeaheadController" ,
[ "$scope" , "$element" , "$attrs" , "$compile" , "$parse" , "$q" , "$timeout" , "$document" , "$window" , "$rootScope" , "$uibPosition" , "uibTypeaheadParser" , function ( a , f , k , h , c , b , e , g , r , m , n , t ) { function x ( ) { O . moveInProgress || ( O . moveInProgress = ! 0 , O . $digest ( ) ) ; R && e . cancel ( R ) ; R = e ( function ( ) { O . matches . length && q ( ) ; O . moveInProgress = ! 1 } , B ) } function q ( ) { O . position = V ? n . offset ( f ) : n . position ( f ) ; O . position . top += f . prop ( "offsetHeight" ) } var v , z , A = [ 9 , 13 , 27 , 38 , 40 ] , B = 200 , F = a . $eval ( k . typeaheadMinLength ) ; F || 0 === F || ( F = 1 ) ; var p , u , I = a . $eval ( k . typeaheadWaitMs ) ||
2017-07-25 17:51:59 +00:00
0 , J = ! 1 !== a . $eval ( k . typeaheadEditable ) , E = c ( k . typeaheadLoading ) . assign || angular . noop , G = c ( k . typeaheadOnSelect ) , N = ! ! angular . isDefined ( k . typeaheadSelectOnBlur ) && a . $eval ( k . typeaheadSelectOnBlur ) , K = c ( k . typeaheadNoResults ) . assign || angular . noop , P = k . typeaheadInputFormatter ? c ( k . typeaheadInputFormatter ) : void 0 , V = ! ! k . typeaheadAppendToBody && a . $eval ( k . typeaheadAppendToBody ) , S = k . typeaheadAppendToElementId || ! 1 , W = ! 1 !== a . $eval ( k . typeaheadFocusFirst ) , ja = ! ! k . typeaheadSelectOnExact && a . $eval ( k . typeaheadSelectOnExact ) , ya =
2017-07-20 23:09:21 +00:00
c ( k . ngModel ) , Ga = c ( k . ngModel + "($$$p)" ) , za = function ( b , c ) { return angular . isFunction ( ya ( a ) ) && z && z . $options && z . $options . getterSetter ? Ga ( b , { $$$p : c } ) : ya . assign ( b , c ) } , X = t . parse ( k . uibTypeahead ) , O = a . $new ( ) ; c = a . $on ( "$destroy" , function ( ) { O . $destroy ( ) } ) ; O . $on ( "$destroy" , c ) ; var T = "typeahead-" + O . $id + "-" + Math . floor ( 1E4 * Math . random ( ) ) ; f . attr ( { "aria-autocomplete" : "list" , "aria-expanded" : ! 1 , "aria-owns" : T } ) ; var M = angular . element ( "<div uib-typeahead-popup></div>" ) ; M . attr ( { id : T , matches : "matches" , active : "activeIdx" , select : "select(activeIdx)" ,
"move-in-progress" : "moveInProgress" , query : "query" , position : "position" } ) ; angular . isDefined ( k . typeaheadTemplateUrl ) && M . attr ( "template-url" , k . typeaheadTemplateUrl ) ; angular . isDefined ( k . typeaheadPopupTemplateUrl ) && M . attr ( "popup-template-url" , k . typeaheadPopupTemplateUrl ) ; var ka = function ( ) { O . matches = [ ] ; O . activeIdx = - 1 ; f . attr ( "aria-expanded" , ! 1 ) } ; O . $watch ( "activeIdx" , function ( a ) { 0 > a ? f . removeAttr ( "aria-activedescendant" ) : f . attr ( "aria-activedescendant" , T + "-option-" + a ) } ) ; var ca = function ( c ) { var e = { $viewValue : c } ;
E ( a , ! 0 ) ; K ( a , ! 1 ) ; b . when ( X . source ( a , e ) ) . then ( function ( b ) { var g = c === v . $viewValue ; if ( g && p ) if ( b && 0 < b . length ) { O . activeIdx = W ? 0 : - 1 ; K ( a , ! 1 ) ; for ( var h = O . matches . length = 0 ; h < b . length ; h ++ ) e [ X . itemName ] = b [ h ] , O . matches . push ( { id : T + "-option-" + h , label : X . viewMapper ( O , e ) , model : b [ h ] } ) ; O . query = c ; q ( ) ; f . attr ( "aria-expanded" , ! 0 ) ; ja && 1 === O . matches . length && 0 < O . matches . length && c && c . toUpperCase ( ) === O . matches [ 0 ] . label . toUpperCase ( ) && O . select ( 0 ) } else ka ( ) , K ( a , ! 0 ) ; g && E ( a , ! 1 ) } , function ( ) { ka ( ) ; E ( a , ! 1 ) ; K ( a , ! 0 ) } ) } ; V && ( angular . element ( r ) . bind ( "resize" ,
x ) , g . find ( "body" ) . bind ( "scroll" , x ) ) ; var R ; O . moveInProgress = ! 1 ; O . query = void 0 ; var ea , Y = function ( a ) { ea = e ( function ( ) { ca ( a ) } , I ) } ; ka ( ) ; O . select = function ( b ) { var c , g = { } ; u = ! 0 ; g [ X . itemName ] = c = O . matches [ b ] . model ; b = X . modelMapper ( a , g ) ; za ( a , b ) ; v . $setValidity ( "editable" , ! 0 ) ; v . $setValidity ( "parse" , ! 0 ) ; G ( a , { $item : c , $model : b , $label : X . viewMapper ( a , g ) } ) ; ka ( ) ; ! 1 !== O . $eval ( k . typeaheadFocusOnSelect ) && e ( function ( ) { f [ 0 ] . focus ( ) } , 0 , ! 1 ) } ; f . bind ( "keydown" , function ( a ) { if ( 0 !== O . matches . length && - 1 !== A . indexOf ( a . which ) ) { if ( - 1 ===
O . activeIdx && ( 9 === a . which || 13 === a . which ) ) return ka ( ) , void O . $digest ( ) ; a . preventDefault ( ) ; 40 === a . which ? ( O . activeIdx = ( O . activeIdx + 1 ) % O . matches . length , O . $digest ( ) ) : 38 === a . which ? ( O . activeIdx = ( 0 < O . activeIdx ? O . activeIdx : O . matches . length ) - 1 , O . $digest ( ) ) : 13 === a . which || 9 === a . which ? O . $apply ( function ( ) { O . select ( O . activeIdx ) } ) : 27 === a . which && ( a . stopPropagation ( ) , ka ( ) , O . $digest ( ) ) } } ) ; f . bind ( "blur" , function ( ) { N && O . matches . length && - 1 !== O . activeIdx && ! u && ( u = ! 0 , O . $apply ( function ( ) { O . select ( O . activeIdx ) } ) ) ; u = p = ! 1 } ) ;
var ha = function ( a ) { f [ 0 ] !== a . target && 3 !== a . which && 0 !== O . matches . length && ( ka ( ) , m . $$phase || O . $digest ( ) ) } ; g . bind ( "click" , ha ) ; a . $on ( "$destroy" , function ( ) { g . unbind ( "click" , ha ) ; ( V || S ) && pa . remove ( ) ; V && ( angular . element ( r ) . unbind ( "resize" , x ) , g . find ( "body" ) . unbind ( "scroll" , x ) ) ; M . remove ( ) } ) ; var pa = h ( M ) ( O ) ; V ? g . find ( "body" ) . append ( pa ) : ! 1 !== S ? angular . element ( g [ 0 ] . getElementById ( S ) ) . append ( pa ) : f . after ( pa ) ; this . init = function ( b , c ) { v = b ; z = c ; v . $parsers . unshift ( function ( b ) { p = ! 0 ; 0 === F || b && b . length >= F ? 0 < I ? ( ea && e . cancel ( ea ) ,
Y ( b ) ) : ca ( b ) : ( E ( a , ! 1 ) , ea && e . cancel ( ea ) , ka ( ) ) ; return J ? b : b ? void v . $setValidity ( "editable" , ! 1 ) : ( v . $setValidity ( "editable" , ! 0 ) , null ) } ) ; v . $formatters . push ( function ( b ) { var c , e , g = { } ; return J || v . $setValidity ( "editable" , ! 0 ) , P ? ( g . $model = b , P ( a , g ) ) : ( g [ X . itemName ] = b , c = X . viewMapper ( a , g ) , g [ X . itemName ] = void 0 , e = X . viewMapper ( a , g ) , c !== e ? c : b ) } ) } } ] ) . directive ( "uibTypeahead" , function ( ) { return { controller : "UibTypeaheadController" , require : [ "ngModel" , "^?ngModelOptions" , "uibTypeahead" ] , link : function ( a , f , k , h ) { h [ 2 ] . init ( h [ 0 ] ,
h [ 1 ] ) } } } ) . directive ( "uibTypeaheadPopup" , function ( ) { return { scope : { matches : "=" , query : "=" , active : "=" , position : "&" , moveInProgress : "=" , select : "&" } , replace : ! 0 , templateUrl : function ( a , f ) { return f . popupTemplateUrl || "template/typeahead/typeahead-popup.html" } , link : function ( a , f , k ) { a . templateUrl = k . templateUrl ; a . isOpen = function ( ) { return 0 < a . matches . length } ; a . isActive = function ( f ) { return a . active == f } ; a . selectActive = function ( f ) { a . active = f } ; a . selectMatch = function ( f ) { a . select ( { activeIdx : f } ) } } } } ) . directive ( "uibTypeaheadMatch" ,
[ "$templateRequest" , "$compile" , "$parse" , function ( a , f , k ) { return { scope : { index : "=" , match : "=" , query : "=" } , link : function ( h , c , b ) { b = k ( b . templateUrl ) ( h . $parent ) || "template/typeahead/typeahead-match.html" ; a ( b ) . then ( function ( a ) { f ( a . trim ( ) ) ( h , function ( a ) { c . replaceWith ( a ) } ) } ) } } } ] ) . filter ( "uibTypeaheadHighlight" , [ "$sce" , "$injector" , "$log" , function ( a , f , k ) { var h ; return h = f . has ( "$sanitize" ) , function ( c , b ) { return ! h && /<.*>/g . test ( c ) && k . warn ( "Unsafe use of typeahead please use ngSanitize" ) , c = b ? ( "" + c ) . replace ( new RegExp ( b . replace ( /([.?*+^$[\]\\(){}|-])/g ,
"\\$1" ) , "gi" ) , "<strong>$&</strong>" ) : c , h || ( c = a . trustAsHtml ( c ) ) , c } } ] ) ;
angular . module ( "ui.bootstrap.typeahead" ) . value ( "$typeaheadSuppressWarning" , ! 1 ) . service ( "typeaheadParser" , [ "$parse" , "uibTypeaheadParser" , "$log" , "$typeaheadSuppressWarning" , function ( a , f , k , h ) { return h || k . warn ( "typeaheadParser is now deprecated. Use uibTypeaheadParser instead." ) , f } ] ) . directive ( "typeahead" , [ "$compile" , "$parse" , "$q" , "$timeout" , "$document" , "$window" , "$rootScope" , "$uibPosition" , "typeaheadParser" , "$log" , "$typeaheadSuppressWarning" , function ( a , f , k , h , c , b , e , g , r , m , n ) { var t = [ 9 , 13 , 27 , 38 , 40 ] ; return { require : [ "ngModel" ,
"^?ngModelOptions" ] , link : function ( x , q , v , z ) { function A ( ) { M . moveInProgress || ( M . moveInProgress = ! 0 , M . $digest ( ) ) ; Y && h . cancel ( Y ) ; Y = h ( function ( ) { M . matches . length && B ( ) ; M . moveInProgress = ! 1 } , 200 ) } function B ( ) { M . position = W ? g . offset ( q ) : g . position ( q ) ; M . position . top += q . prop ( "offsetHeight" ) } n || m . warn ( "typeahead is now deprecated. Use uib-typeahead instead." ) ; var F = z [ 0 ] , p = z [ 1 ] , u = x . $eval ( v . typeaheadMinLength ) ; u || 0 === u || ( u = 1 ) ; var I , J , E = x . $eval ( v . typeaheadWaitMs ) || 0 , G = ! 1 !== x . $eval ( v . typeaheadEditable ) , N = f ( v . typeaheadLoading ) . assign ||
2017-07-25 17:51:59 +00:00
angular . noop , K = f ( v . typeaheadOnSelect ) , P = ! ! angular . isDefined ( v . typeaheadSelectOnBlur ) && x . $eval ( v . typeaheadSelectOnBlur ) , V = f ( v . typeaheadNoResults ) . assign || angular . noop , S = v . typeaheadInputFormatter ? f ( v . typeaheadInputFormatter ) : void 0 , W = ! ! v . typeaheadAppendToBody && x . $eval ( v . typeaheadAppendToBody ) , ja = v . typeaheadAppendToElementId || ! 1 , ya = ! 1 !== x . $eval ( v . typeaheadFocusFirst ) , Ga = ! ! v . typeaheadSelectOnExact && x . $eval ( v . typeaheadSelectOnExact ) , za = f ( v . ngModel ) , X = f ( v . ngModel + "($$$p)" ) , O = function ( a , b ) { return angular . isFunction ( za ( x ) ) &&
2017-07-20 23:09:21 +00:00
p && p . $options && p . $options . getterSetter ? X ( a , { $$$p : b } ) : za . assign ( a , b ) } , T = r . parse ( v . typeahead ) , M = x . $new ( ) ; z = x . $on ( "$destroy" , function ( ) { M . $destroy ( ) } ) ; M . $on ( "$destroy" , z ) ; var ka = "typeahead-" + M . $id + "-" + Math . floor ( 1E4 * Math . random ( ) ) ; q . attr ( { "aria-autocomplete" : "list" , "aria-expanded" : ! 1 , "aria-owns" : ka } ) ; var ca = angular . element ( "<div typeahead-popup></div>" ) ; ca . attr ( { id : ka , matches : "matches" , active : "activeIdx" , select : "select(activeIdx)" , "move-in-progress" : "moveInProgress" , query : "query" , position : "position" } ) ;
angular . isDefined ( v . typeaheadTemplateUrl ) && ca . attr ( "template-url" , v . typeaheadTemplateUrl ) ; angular . isDefined ( v . typeaheadPopupTemplateUrl ) && ca . attr ( "popup-template-url" , v . typeaheadPopupTemplateUrl ) ; var R = function ( ) { M . matches = [ ] ; M . activeIdx = - 1 ; q . attr ( "aria-expanded" , ! 1 ) } ; M . $watch ( "activeIdx" , function ( a ) { 0 > a ? q . removeAttr ( "aria-activedescendant" ) : q . attr ( "aria-activedescendant" , ka + "-option-" + a ) } ) ; var ea = function ( a ) { var b = { $viewValue : a } ; N ( x , ! 0 ) ; V ( x , ! 1 ) ; k . when ( T . source ( x , b ) ) . then ( function ( c ) { var e = a === F . $viewValue ;
if ( e && I ) if ( c && 0 < c . length ) { M . activeIdx = ya ? 0 : - 1 ; V ( x , ! 1 ) ; for ( var g = M . matches . length = 0 ; g < c . length ; g ++ ) b [ T . itemName ] = c [ g ] , M . matches . push ( { id : ka + "-option-" + g , label : T . viewMapper ( M , b ) , model : c [ g ] } ) ; M . query = a ; B ( ) ; q . attr ( "aria-expanded" , ! 0 ) ; Ga && 1 === M . matches . length && 0 < M . matches . length && a && a . toUpperCase ( ) === M . matches [ 0 ] . label . toUpperCase ( ) && M . select ( 0 ) } else R ( ) , V ( x , ! 0 ) ; e && N ( x , ! 1 ) } , function ( ) { R ( ) ; N ( x , ! 1 ) ; V ( x , ! 0 ) } ) } ; W && ( angular . element ( b ) . bind ( "resize" , A ) , c . find ( "body" ) . bind ( "scroll" , A ) ) ; var Y ; M . moveInProgress =
! 1 ; R ( ) ; M . query = void 0 ; var ha , pa = function ( a ) { ha = h ( function ( ) { ea ( a ) } , E ) } ; F . $parsers . unshift ( function ( a ) { I = ! 0 ; 0 === u || a && a . length >= u ? 0 < E ? ( ha && h . cancel ( ha ) , pa ( a ) ) : ea ( a ) : ( N ( x , ! 1 ) , ha && h . cancel ( ha ) , R ( ) ) ; return G ? a : a ? void F . $setValidity ( "editable" , ! 1 ) : ( F . $setValidity ( "editable" , ! 0 ) , null ) } ) ; F . $formatters . push ( function ( a ) { var b , c , e = { } ; return G || F . $setValidity ( "editable" , ! 0 ) , S ? ( e . $model = a , S ( x , e ) ) : ( e [ T . itemName ] = a , b = T . viewMapper ( x , e ) , e [ T . itemName ] = void 0 , c = T . viewMapper ( x , e ) , b !== c ? b : a ) } ) ; M . select = function ( a ) { var b ,
c = { } ; J = ! 0 ; c [ T . itemName ] = b = M . matches [ a ] . model ; a = T . modelMapper ( x , c ) ; O ( x , a ) ; F . $setValidity ( "editable" , ! 0 ) ; F . $setValidity ( "parse" , ! 0 ) ; K ( x , { $item : b , $model : a , $label : T . viewMapper ( x , c ) } ) ; R ( ) ; ! 1 !== M . $eval ( v . typeaheadFocusOnSelect ) && h ( function ( ) { q [ 0 ] . focus ( ) } , 0 , ! 1 ) } ; q . bind ( "keydown" , function ( a ) { if ( 0 !== M . matches . length && - 1 !== t . indexOf ( a . which ) ) { if ( - 1 === M . activeIdx && ( 9 === a . which || 13 === a . which ) ) return R ( ) , void M . $digest ( ) ; a . preventDefault ( ) ; 40 === a . which ? ( M . activeIdx = ( M . activeIdx + 1 ) % M . matches . length , M . $digest ( ) ) :
38 === a . which ? ( M . activeIdx = ( 0 < M . activeIdx ? M . activeIdx : M . matches . length ) - 1 , M . $digest ( ) ) : 13 === a . which || 9 === a . which ? M . $apply ( function ( ) { M . select ( M . activeIdx ) } ) : 27 === a . which && ( a . stopPropagation ( ) , R ( ) , M . $digest ( ) ) } } ) ; q . bind ( "blur" , function ( ) { P && M . matches . length && - 1 !== M . activeIdx && ! J && ( J = ! 0 , M . $apply ( function ( ) { M . select ( M . activeIdx ) } ) ) ; J = I = ! 1 } ) ; var qa = function ( a ) { q [ 0 ] !== a . target && 3 !== a . which && 0 !== M . matches . length && ( R ( ) , e . $$phase || M . $digest ( ) ) } ; c . bind ( "click" , qa ) ; x . $on ( "$destroy" , function ( ) { c . unbind ( "click" ,
qa ) ; ( W || ja ) && ga . remove ( ) ; W && ( angular . element ( b ) . unbind ( "resize" , A ) , c . find ( "body" ) . unbind ( "scroll" , A ) ) ; ca . remove ( ) } ) ; var ga = a ( ca ) ( M ) ; W ? c . find ( "body" ) . append ( ga ) : ! 1 !== ja ? angular . element ( c [ 0 ] . getElementById ( ja ) ) . append ( ga ) : q . after ( ga ) } } } ] ) . directive ( "typeaheadPopup" , [ "$typeaheadSuppressWarning" , "$log" , function ( a , f ) { return { scope : { matches : "=" , query : "=" , active : "=" , position : "&" , moveInProgress : "=" , select : "&" } , replace : ! 0 , templateUrl : function ( a , f ) { return f . popupTemplateUrl || "template/typeahead/typeahead-popup.html" } ,
link : function ( k , h , c ) { a || f . warn ( "typeahead-popup is now deprecated. Use uib-typeahead-popup instead." ) ; k . templateUrl = c . templateUrl ; k . isOpen = function ( ) { return 0 < k . matches . length } ; k . isActive = function ( a ) { return k . active == a } ; k . selectActive = function ( a ) { k . active = a } ; k . selectMatch = function ( a ) { k . select ( { activeIdx : a } ) } } } } ] ) . directive ( "typeaheadMatch" , [ "$templateRequest" , "$compile" , "$parse" , "$typeaheadSuppressWarning" , "$log" , function ( a , f , k , h , c ) { return { restrict : "EA" , scope : { index : "=" , match : "=" , query : "=" } , link : function ( b ,
e , g ) { h || c . warn ( "typeahead-match is now deprecated. Use uib-typeahead-match instead." ) ; g = k ( g . templateUrl ) ( b . $parent ) || "template/typeahead/typeahead-match.html" ; a ( g ) . then ( function ( a ) { f ( a . trim ( ) ) ( b , function ( a ) { e . replaceWith ( a ) } ) } ) } } } ] ) . filter ( "typeaheadHighlight" , [ "$sce" , "$injector" , "$log" , "$typeaheadSuppressWarning" , function ( a , f , k , h ) { var c ; return c = f . has ( "$sanitize" ) , function ( b , e ) { return h || k . warn ( "typeaheadHighlight is now deprecated. Use uibTypeaheadHighlight instead." ) , ! c && /<.*>/g . test ( b ) && k . warn ( "Unsafe use of typeahead please use ngSanitize" ) ,
b = e ? ( "" + b ) . replace ( new RegExp ( e . replace ( /([.?*+^$[\]\\(){}|-])/g , "\\$1" ) , "gi" ) , "<strong>$&</strong>" ) : b , c || ( b = a . trustAsHtml ( b ) ) , b } } ] ) ; angular . module ( "template/accordion/accordion-group.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/accordion/accordion-group.html" , '<div class="panel {{panelClass || \'panel-default\'}}">\n <div class="panel-heading" ng-keypress="toggleOpen($event)">\n <h4 class="panel-title">\n <a href tabindex="0" class="accordion-toggle" ng-click="toggleOpen()" uib-accordion-transclude="heading"><span ng-class="{\'text-muted\': isDisabled}">{{heading}}</span></a>\n </h4>\n </div>\n <div class="panel-collapse collapse" uib-collapse="!isOpen">\n\t <div class="panel-body" ng-transclude></div>\n </div>\n</div>\n' ) } ] ) ;
angular . module ( "template/accordion/accordion.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/accordion/accordion.html" , '<div class="panel-group" ng-transclude></div>' ) } ] ) ; angular . module ( "template/alert/alert.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/alert/alert.html" , '<div class="alert" ng-class="[\'alert-\' + (type || \'warning\'), closeable ? \'alert-dismissible\' : null]" role="alert">\n <button ng-show="closeable" type="button" class="close" ng-click="close({$event: $event})">\n <span aria-hidden="true">×</span>\n <span class="sr-only">Close</span>\n </button>\n <div ng-transclude></div>\n</div>\n' ) } ] ) ;
angular . module ( "template/carousel/carousel.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/carousel/carousel.html" , '<div ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel" ng-swipe-right="prev()" ng-swipe-left="next()">\n <div class="carousel-inner" ng-transclude></div>\n <a role="button" href class="left carousel-control" ng-click="prev()" ng-show="slides.length > 1">\n <span aria-hidden="true" class="glyphicon glyphicon-chevron-left"></span>\n <span class="sr-only">previous</span>\n </a>\n <a role="button" href class="right carousel-control" ng-click="next()" ng-show="slides.length > 1">\n <span aria-hidden="true" class="glyphicon glyphicon-chevron-right"></span>\n <span class="sr-only">next</span>\n </a>\n <ol class="carousel-indicators" ng-show="slides.length > 1">\n <li ng-repeat="slide in slides | orderBy:indexOfSlide track by $index" ng-class="{ active: isActive(slide) }" ng-click="select(slide)">\n <span class="sr-only">slide {{ $index + 1 }} of {{ slides.length }}<span ng-if="isActive(slide)">, currently active</span></span>\n </li>\n </ol>\n</div>' ) } ] ) ;
angular . module ( "template/carousel/slide.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/carousel/slide.html" , '<div ng-class="{\n \'active\': active\n }" class="item text-center" ng-transclude></div>\n' ) } ] ) ; angular . module ( "template/datepicker/datepicker.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/datepicker/datepicker.html" , '<div ng-switch="datepickerMode" role="application" ng-keydown="keydown($event)">\n <uib-daypicker ng-switch-when="day" tabindex="0"></uib-daypicker>\n <uib-monthpicker ng-switch-when="month" tabindex="0"></uib-monthpicker>\n <uib-yearpicker ng-switch-when="year" tabindex="0"></uib-yearpicker>\n</div>' ) } ] ) ;
angular . module ( "template/datepicker/day.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/datepicker/day.html" , '<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th colspan="{{::5 + showWeeks}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n <tr>\n <th ng-if="showWeeks" class="text-center"></th>\n <th ng-repeat="label in ::labels track by $index" class="text-center"><small aria-label="{{::label.full}}">{{::label.abbr}}</small></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows track by $index">\n <td ng-if="showWeeks" class="text-center h6"><em>{{ weekNumbers[$index] }}</em></td>\n <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n <button type="button" style="min-width:100%;" class="btn btn-default btn-sm" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-muted\': dt.secondary, \'text-info\': dt.current}">{{::dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n' ) } ] ) ;
angular . module ( "template/datepicker/month.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/datepicker/month.html" , '<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows track by $index">\n <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n <button type="button" style="min-width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n' ) } ] ) ;
angular . module ( "template/datepicker/popup.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/datepicker/popup.html" , '<ul class="dropdown-menu" dropdown-nested ng-if="isOpen" style="display: block" ng-style="{top: position.top+\'px\', left: position.left+\'px\'}" ng-keydown="keydown($event)" ng-click="$event.stopPropagation()">\n\t<li ng-transclude></li>\n\t<li ng-if="showButtonBar" style="padding:10px 9px 2px">\n\t\t<span class="btn-group pull-left">\n\t\t\t<button type="button" class="btn btn-sm btn-info" ng-click="select(\'today\')" ng-disabled="isDisabled(\'today\')">{{ getText(\'current\') }}</button>\n\t\t\t<button type="button" class="btn btn-sm btn-danger" ng-click="select(null)">{{ getText(\'clear\') }}</button>\n\t\t</span>\n\t\t<button type="button" class="btn btn-sm btn-success pull-right" ng-click="close()">{{ getText(\'close\') }}</button>\n\t</li>\n</ul>\n' ) } ] ) ;
angular . module ( "template/datepicker/year.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/datepicker/year.html" , '<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th colspan="3"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows track by $index">\n <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n <button type="button" style="min-width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n' ) } ] ) ;
angular . module ( "template/modal/backdrop.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/modal/backdrop.html" , '<div uib-modal-animation-class="fade"\n modal-in-class="in"\n ng-style="{\'z-index\': 1040 + (index && 1 || 0) + index*10}"\n></div>\n' ) } ] ) ; angular . module ( "template/modal/window.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/modal/window.html" , '<div modal-render="{{$isRendered}}" tabindex="-1" role="dialog" class="modal"\n uib-modal-animation-class="fade"\n modal-in-class="in"\n ng-style="{\'z-index\': 1050 + index*10, display: \'block\'}">\n <div class="modal-dialog" ng-class="size ? \'modal-\' + size : \'\'"><div class="modal-content" uib-modal-transclude></div></div>\n</div>\n' ) } ] ) ;
angular . module ( "template/pagination/pager.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/pagination/pager.html" , '<ul class="pager">\n <li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}</a></li>\n <li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}</a></li>\n</ul>\n' ) } ] ) ;
angular . module ( "template/pagination/pagination.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/pagination/pagination.html" , '<ul class="pagination">\n <li ng-if="::boundaryLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-first"><a href ng-click="selectPage(1, $event)">{{::getText(\'first\')}}</a></li>\n <li ng-if="::directionLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-prev"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}</a></li>\n <li ng-repeat="page in pages track by $index" ng-class="{active: page.active,disabled: ngDisabled&&!page.active}" class="pagination-page"><a href ng-click="selectPage(page.number, $event)">{{page.text}}</a></li>\n <li ng-if="::directionLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-next"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}</a></li>\n <li ng-if="::boundaryLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-last"><a href ng-click="selectPage(totalPages, $event)">{{::getText(\'last\')}}</a></li>\n</ul>\n' ) } ] ) ;
angular . module ( "template/tooltip/tooltip-html-popup.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/tooltip/tooltip-html-popup.html" , '<div\n tooltip-animation-class="fade"\n uib-tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" ng-bind-html="contentExp()"></div>\n</div>\n' ) } ] ) ; angular . module ( "template/tooltip/tooltip-popup.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/tooltip/tooltip-popup.html" , '<div\n tooltip-animation-class="fade"\n uib-tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" ng-bind="content"></div>\n</div>\n' ) } ] ) ;
angular . module ( "template/tooltip/tooltip-template-popup.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/tooltip/tooltip-template-popup.html" , '<div\n tooltip-animation-class="fade"\n uib-tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner"\n uib-tooltip-template-transclude="contentExp()"\n tooltip-template-transclude-scope="originScope()"></div>\n</div>\n' ) } ] ) ;
angular . module ( "template/popover/popover-html.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/popover/popover-html.html" , '<div tooltip-animation-class="fade"\n uib-tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-if="title"></h3>\n <div class="popover-content" ng-bind-html="contentExp()"></div>\n </div>\n</div>\n' ) } ] ) ;
angular . module ( "template/popover/popover-template.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/popover/popover-template.html" , '<div tooltip-animation-class="fade"\n uib-tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-if="title"></h3>\n <div class="popover-content"\n uib-tooltip-template-transclude="contentExp()"\n tooltip-template-transclude-scope="originScope()"></div>\n </div>\n</div>\n' ) } ] ) ;
angular . module ( "template/popover/popover.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/popover/popover.html" , '<div tooltip-animation-class="fade"\n uib-tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-if="title"></h3>\n <div class="popover-content" ng-bind="content"></div>\n </div>\n</div>\n' ) } ] ) ;
angular . module ( "template/progressbar/bar.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/progressbar/bar.html" , '<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" aria-labelledby="{{::title}}" style="min-width: 0;" ng-transclude></div>\n' ) } ] ) ;
angular . module ( "template/progressbar/progress.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/progressbar/progress.html" , '<div class="progress" ng-transclude aria-labelledby="{{::title}}"></div>' ) } ] ) ; angular . module ( "template/progressbar/progressbar.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/progressbar/progressbar.html" , '<div class="progress">\n <div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" aria-labelledby="{{::title}}" style="min-width: 0;" ng-transclude></div>\n</div>\n' ) } ] ) ;
angular . module ( "template/rating/rating.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/rating/rating.html" , '<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}">\n <span ng-repeat-start="r in range track by $index" class="sr-only">({{ $index < value ? \'*\' : \' \' }})</span>\n <i ng-repeat-end ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')" ng-attr-title="{{r.title}}" aria-valuetext="{{r.title}}"></i>\n</span>\n' ) } ] ) ;
angular . module ( "template/tabs/tab.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/tabs/tab.html" , '<li ng-class="{active: active, disabled: disabled}">\n <a href ng-click="select()" uib-tab-heading-transclude>{{heading}}</a>\n</li>\n' ) } ] ) ; angular . module ( "template/tabs/tabset.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/tabs/tabset.html" , '<div>\n <ul class="nav nav-{{type || \'tabs\'}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude></ul>\n <div class="tab-content">\n <div class="tab-pane" \n ng-repeat="tab in tabs" \n ng-class="{active: tab.active}"\n uib-tab-content-transclude="tab">\n </div>\n </div>\n</div>\n' ) } ] ) ;
angular . module ( "template/timepicker/timepicker.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/timepicker/timepicker.html" , '<table>\n <tbody>\n <tr class="text-center" ng-show="::showSpinners">\n <td><a ng-click="incrementHours()" ng-class="{disabled: noIncrementHours()}" class="btn btn-link" ng-disabled="noIncrementHours()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n <td> </td>\n <td><a ng-click="incrementMinutes()" ng-class="{disabled: noIncrementMinutes()}" class="btn btn-link" ng-disabled="noIncrementMinutes()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n <td ng-show="showMeridian"></td>\n </tr>\n <tr>\n <td class="form-group" ng-class="{\'has-error\': invalidHours}">\n <input style="width:50px;" type="text" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2" tabindex="{{::tabindex}}">\n </td>\n <td>:</td>\n <td class="form-group" ng-class="{\'has-error\': invalidMinutes}">\n <input style="width:50px;" type="text" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2" tabindex="{{::tabindex}}">\n </td>\n <td ng-show="showMeridian"><button type="button" ng-class="{disabled: noToggleMeridian()}" class="btn btn-default text-center" ng-click="toggleMeridian()" ng-disabled="noToggleMeridian()" tabindex="{{::tabindex}}">{{meridian}}</button></td>\n </tr>\n <tr class="text-center" ng-show="::showSpinners">\n <td><a ng-click="decrementHours()" ng-class="{disabled: noDecrementHours()}" class="btn btn-link" ng-disabled="noDecrementHours()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n <td> </td>\n <td><a ng-click="decrementMinutes()" ng-class="{disabled: noDecrementMinutes()}" class="btn btn-link" ng-disabled="noDecrementMinutes()" tabindex="{{::tabindex}}"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n <td ng-show="showMeridian"></td>\n </tr>\n </tbody>\n</table>\n' ) } ] ) ;
angular . module ( "template/typeahead/typeahead-match.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/typeahead/typeahead-match.html" , '<a href tabindex="-1" ng-bind-html="match.label | uibTypeaheadHighlight:query"></a>\n' ) } ] ) ; angular . module ( "template/typeahead/typeahead-popup.html" , [ ] ) . run ( [ "$templateCache" , function ( a ) { a . put ( "template/typeahead/typeahead-popup.html" , '<ul class="dropdown-menu" ng-show="isOpen() && !moveInProgress" ng-style="{top: position().top+\'px\', left: position().left+\'px\'}" style="display: block;" role="listbox" aria-hidden="{{!isOpen()}}">\n <li ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index)" role="option" id="{{::match.id}}">\n <div uib-typeahead-match index="$index" match="match" query="query" template-url="templateUrl"></div>\n </li>\n</ul>\n' ) } ] ) ;
2017-04-11 07:10:36 +00:00
! angular . $$csp ( ) && angular . element ( document ) . find ( "head" ) . prepend ( '<style type="text/css">.ng-animate.item:not(.left):not(.right){-webkit-transition:0s ease-in-out left;transition:0s ease-in-out left}</style>' ) ;
2017-07-20 23:09:21 +00:00
! function ( a , f ) { "function" == typeof define && define . amd ? define ( [ ] , function ( ) { return f ( ) } ) : "object" == typeof exports ? module . exports = f ( ) : f ( ) } ( this , function ( ) { function a ( a ) { var b = a . storageKey ( ) , c = a . storage ( ) , e = function ( ) { var e = a . preferredLanguage ( ) ; angular . isString ( e ) ? a . use ( e ) : c . put ( b , a . use ( ) ) } ; e . displayName = "fallbackFromIncorrectStorageValue" ; c ? c . get ( b ) ? a . use ( c . get ( b ) ) [ "catch" ] ( e ) : e ( ) : angular . isString ( a . preferredLanguage ( ) ) && a . use ( a . preferredLanguage ( ) ) } function f ( a , b , c , e ) { var g , f , h , k , m , n , r , q , t , x , G , N , K ,
P , V , S , W = { } , ja = [ ] , ya = a , Ga = [ ] , za = "translate-cloak" , X = ! 1 , O = ! 1 , T = "." , M = ! 1 , ka = 0 , ca = ! 0 , R = "default" , ea = { "default" : function ( a ) { return ( a || "" ) . split ( "-" ) . join ( "_" ) } , java : function ( a ) { a = ( a || "" ) . split ( "-" ) . join ( "_" ) ; var b = a . split ( "_" ) ; return 1 < b . length ? b [ 0 ] . toLowerCase ( ) + "_" + b [ 1 ] . toUpperCase ( ) : a } , bcp47 : function ( a ) { a = ( a || "" ) . split ( "_" ) . join ( "-" ) ; var b = a . split ( "-" ) ; return 1 < b . length ? b [ 0 ] . toLowerCase ( ) + "-" + b [ 1 ] . toUpperCase ( ) : a } , "iso639-1" : function ( a ) { return ( a || "" ) . split ( "_" ) . join ( "-" ) . split ( "-" ) [ 0 ] . toLowerCase ( ) } } ,
Y = function ( ) { if ( angular . isFunction ( e . getLocale ) ) return e . getLocale ( ) ; var a , c , g = b . $get ( ) . navigator , f = [ "language" , "browserLanguage" , "systemLanguage" , "userLanguage" ] ; if ( angular . isArray ( g . languages ) ) for ( a = 0 ; a < g . languages . length ; a ++ ) if ( c = g . languages [ a ] , c && c . length ) return c ; for ( a = 0 ; a < f . length ; a ++ ) if ( c = g [ f [ a ] ] , c && c . length ) return c ; return null } ; Y . displayName = "angular-translate/service: getFirstBrowserLanguage" ; var ha = function ( ) { var a = Y ( ) || "" ; return ea [ R ] && ( a = ea [ R ] ( a ) ) , a } ; ha . displayName = "angular-translate/service: getLocale" ;
var pa = function ( a , b ) { for ( var c = 0 , e = a . length ; e > c ; c ++ ) if ( a [ c ] === b ) return c ; return - 1 } , qa = function ( ) { return this . toString ( ) . replace ( /^\s+|\s+$/g , "" ) } , ga = function ( a ) { if ( a ) { for ( var b = [ ] , c = angular . lowercase ( a ) , e = 0 , g = ja . length ; g > e ; e ++ ) b . push ( angular . lowercase ( ja [ e ] ) ) ; if ( - 1 < pa ( b , c ) ) return a ; if ( f ) { var h , k ; for ( k in f ) if ( f . hasOwnProperty ( k ) && ( c = ! 1 , e = Object . prototype . hasOwnProperty . call ( f , k ) && angular . lowercase ( k ) === angular . lowercase ( a ) , "*" === k . slice ( - 1 ) && ( c = k . slice ( 0 , - 1 ) === a . slice ( 0 , k . length - 1 ) ) , ( e || c ) && ( h = f [ k ] ,
- 1 < pa ( b , angular . lowercase ( h ) ) ) ) ) return h } a = a . split ( "_" ) ; return 1 < a . length && - 1 < pa ( b , angular . lowercase ( a [ 0 ] ) ) ? a [ 0 ] : void 0 } } , w = function ( a , b ) { if ( ! a && ! b ) return W ; if ( a && ! b ) { if ( angular . isString ( a ) ) return W [ a ] } else angular . isObject ( W [ a ] ) || ( W [ a ] = { } ) , angular . extend ( W [ a ] , ma ( b ) ) ; return this } ; this . translations = w ; this . cloakClassName = function ( a ) { return a ? ( za = a , this ) : za } ; this . nestedObjectDelimeter = function ( a ) { return a ? ( T = a , this ) : T } ; var ma = function ( a , b , c , e ) { var g , f , h , k ; b || ( b = [ ] ) ; c || ( c = { } ) ; for ( g in a ) Object . prototype . hasOwnProperty . call ( a ,
g ) && ( k = a [ g ] , angular . isObject ( k ) ? ma ( k , b . concat ( g ) , c , g ) : ( f = b . length ? "" + b . join ( T ) + T + g : g , b . length && g === e && ( h = "" + b . join ( T ) , c [ h ] = "@:" + f ) , c [ f ] = k ) ) ; return c } ; ma . displayName = "flatObject" ; this . addInterpolation = function ( a ) { return Ga . push ( a ) , this } ; this . useMessageFormatInterpolation = function ( ) { return this . useInterpolation ( "$translateMessageFormatInterpolation" ) } ; this . useInterpolation = function ( a ) { return x = a , this } ; this . useSanitizeValueStrategy = function ( a ) { return c . useStrategy ( a ) , this } ; this . preferredLanguage = function ( a ) { return a ?
( a && ( g = a ) , this ) : g } ; this . translationNotFoundIndicator = function ( a ) { return this . translationNotFoundIndicatorLeft ( a ) , this . translationNotFoundIndicatorRight ( a ) , this } ; this . translationNotFoundIndicatorLeft = function ( a ) { return a ? ( K = a , this ) : K } ; this . translationNotFoundIndicatorRight = function ( a ) { return a ? ( P = a , this ) : P } ; this . fallbackLanguage = function ( a ) { return Ka ( a ) , this } ; var Ka = function ( a ) { return a ? ( angular . isString ( a ) ? ( k = ! 0 , h = [ a ] ) : angular . isArray ( a ) && ( k = ! 1 , h = a ) , angular . isString ( g ) && 0 > pa ( h , g ) && h . push ( g ) , this ) :
k ? h [ 0 ] : h } ; this . use = function ( a ) { if ( a ) { if ( ! W [ a ] && ! G ) throw Error ( "$translateProvider couldn't find translationTable for langKey: '" + a + "'" ) ; return m = a , this } return m } ; this . resolveClientLocale = function ( ) { return ha ( ) } ; var U = function ( a ) { return a ? ( ya = a , this ) : q ? q + ya : ya } ; this . storageKey = U ; this . useUrlLoader = function ( a , b ) { return this . useLoader ( "$translateUrlLoader" , angular . extend ( { url : a } , b ) ) } ; this . useStaticFilesLoader = function ( a ) { return this . useLoader ( "$translateStaticFilesLoader" , a ) } ; this . useLoader = function ( a ,
b ) { return G = a , N = b || { } , this } ; this . useLocalStorage = function ( ) { return this . useStorage ( "$translateLocalStorage" ) } ; this . useCookieStorage = function ( ) { return this . useStorage ( "$translateCookieStorage" ) } ; this . useStorage = function ( a ) { return r = a , this } ; this . storagePrefix = function ( a ) { return a ? ( q = a , this ) : a } ; this . useMissingTranslationHandlerLog = function ( ) { return this . useMissingTranslationHandler ( "$translateMissingTranslationHandlerLog" ) } ; this . useMissingTranslationHandler = function ( a ) { return t = a , this } ; this . usePostCompiling =
function ( a ) { return X = ! ! a , this } ; this . forceAsyncReload = function ( a ) { return O = ! ! a , this } ; this . uniformLanguageTag = function ( a ) { return a ? angular . isString ( a ) && ( a = { standard : a } ) : a = { } , R = a . standard , this } ; this . determinePreferredLanguage = function ( a ) { a = a && angular . isFunction ( a ) ? a ( ) : ha ( ) ; return g = ja . length ? ga ( a ) || a : a , this } ; this . registerAvailableLanguageKeys = function ( a , b ) { return a ? ( ja = a , b && ( f = b ) , this ) : ja } ; this . useLoaderCache = function ( a ) { return ! 1 === a ? V = void 0 : ! 0 === a ? V = ! 0 : "undefined" == typeof a ? V = "$translationCache" : a &&
( V = a ) , this } ; this . directivePriority = function ( a ) { return void 0 === a ? ka : ( ka = a , this ) } ; this . statefulFilter = function ( a ) { return void 0 === a ? ca : ( ca = a , this ) } ; this . postProcess = function ( a ) { return S = a ? a : void 0 , this } ; this . $get = [ "$log" , "$injector" , "$rootScope" , "$q" , function ( a , b , c , e ) { var f , q , u , p = b . get ( x || "$translateDefaultInterpolation" ) , v = ! 1 , E = { } , A = { } , z = function ( a , b , c , k , n ) { ! m && g && ( m = g ) ; var w = n && n !== m ? ga ( n ) || n : m ; if ( n && Xa ( n ) , angular . isArray ( a ) ) return function ( a ) { for ( var g = { } , f = [ ] , h = function ( a ) { var f = e . defer ( ) , h = function ( b ) { g [ a ] =
b ; f . resolve ( [ a , b ] ) } ; return z ( a , b , c , k , n ) . then ( h , h ) , f . promise } , m = 0 , w = a . length ; w > m ; m ++ ) f . push ( h ( a [ m ] ) ) ; return e . all ( f ) . then ( function ( ) { return g } ) } ( a ) ; var u = e . defer ( ) ; a && ( a = qa . apply ( a ) ) ; var t = function ( ) { var a = g ? A [ g ] : A [ w ] ; if ( q = 0 , r && ! a ) { var b = f . get ( ya ) ; if ( a = A [ b ] , h && h . length ) q = 0 === pa ( h , b ) ? 1 : 0 , 0 > pa ( h , g ) && h . push ( g ) } return a } ( ) ; if ( t ) { var p = function ( ) { n || ( w = m ) ; Ua ( a , b , c , k , w ) . then ( u . resolve , u . reject ) } ; p . displayName = "promiseResolved" ; t [ "finally" ] ( p ) } else Ua ( a , b , c , k , w ) . then ( u . resolve , u . reject ) ; return u . promise } ,
B = function ( a ) { return K && ( a = [ K , a ] . join ( " " ) ) , P && ( a = [ a , P ] . join ( " " ) ) , a } , I = function ( a ) { m = a ; r && f . put ( z . storageKey ( ) , m ) ; c . $emit ( "$translateChangeSuccess" , { language : a } ) ; p . setLocale ( m ) ; var b = function ( a , b ) { E [ b ] . setLocale ( m ) } ; b . displayName = "eachInterpolatorLocaleSetter" ; angular . forEach ( E , b ) ; c . $emit ( "$translateChangeEnd" , { language : a } ) } , ia = function ( a ) { if ( ! a ) throw "No language key specified for loading." ; var g = e . defer ( ) ; c . $emit ( "$translateLoadingStart" , { language : a } ) ; v = ! 0 ; var f = V ; "string" == typeof f && ( f = b . get ( f ) ) ;
var f = angular . extend ( { } , N , { key : a , $http : angular . extend ( { } , { cache : f } , N . $http ) } ) , h = function ( b ) { var e = { } ; c . $emit ( "$translateLoadingSuccess" , { language : a } ) ; angular . isArray ( b ) ? angular . forEach ( b , function ( a ) { angular . extend ( e , ma ( a ) ) } ) : angular . extend ( e , ma ( b ) ) ; v = ! 1 ; g . resolve ( { key : a , table : e } ) ; c . $emit ( "$translateLoadingEnd" , { language : a } ) } ; h . displayName = "onLoaderSuccess" ; var k = function ( a ) { c . $emit ( "$translateLoadingError" , { language : a } ) ; g . reject ( a ) ; c . $emit ( "$translateLoadingEnd" , { language : a } ) } ; return k . displayName =
"onLoaderError" , b . get ( G ) ( f ) . then ( h , k ) , g . promise } ; if ( r && ( f = b . get ( r ) , ! f . get || ! f . put ) ) throw Error ( "Couldn't use storage '" + r + "', missing get() or put() method!" ) ; Ga . length && ( a = function ( a ) { a = b . get ( a ) ; a . setLocale ( g || m ) ; E [ a . getInterpolationIdentifier ( ) ] = a } , a . displayName = "interpolationFactoryAdder" , angular . forEach ( Ga , a ) ) ; var J = function ( a ) { var b = e . defer ( ) ; if ( Object . prototype . hasOwnProperty . call ( W , a ) ) b . resolve ( W [ a ] ) ; else if ( A [ a ] ) { var c = function ( a ) { w ( a . key , a . table ) ; b . resolve ( a . table ) } ; c . displayName = "translationTableResolver" ;
A [ a ] . then ( c , b . reject ) } else b . reject ( ) ; return b . promise } , F = function ( a , b , c , g ) { var f = e . defer ( ) , h = function ( e ) { if ( Object . prototype . hasOwnProperty . call ( e , b ) ) { g . setLocale ( a ) ; var h = e [ b ] ; "@:" === h . substr ( 0 , 2 ) ? F ( a , h . substr ( 2 ) , c , g ) . then ( f . resolve , f . reject ) : ( h = g . interpolate ( e [ b ] , c ) , h = Y ( b , e [ b ] , h , c , a ) , f . resolve ( h ) ) ; g . setLocale ( m ) } else f . reject ( ) } ; return h . displayName = "fallbackTranslationResolver" , J ( a ) . then ( h , f . reject ) , f . promise } , ua = function ( a , b , c , e ) { var g , f = W [ a ] ; if ( f && Object . prototype . hasOwnProperty . call ( f , b ) ) { if ( e . setLocale ( a ) ,
g = e . interpolate ( f [ b ] , c ) , "@:" === g . substr ( 0 , 2 ) ) return ua ( a , g . substr ( 2 ) , c , e ) ; e . setLocale ( m ) } return g } , R = function ( a , c , e ) { return t ? ( c = b . get ( t ) ( a , m , c , e ) , void 0 !== c ? c : a ) : a } , na = function ( a , b , c , g , f ) { var k = e . defer ( ) ; a < h . length ? F ( h [ a ] , b , c , g ) . then ( function ( a ) { k . resolve ( a ) } , function ( ) { return na ( a + 1 , b , c , g , f ) . then ( k . resolve , k . reject ) } ) : f ? k . resolve ( f ) : t ? k . resolve ( R ( b , c ) ) : k . reject ( R ( b , c ) ) ; return k . promise } , da = function ( a , b , c , e ) { var g ; a < h . length && ( ( g = ua ( h [ a ] , b , c , e ) ) || ( g = da ( a + 1 , b , c , e ) ) ) ; return g } , Ua = function ( a , b , c , g ,
f ) { var k = e . defer ( ) , m = f ? W [ f ] : W , n = c ? E [ c ] : p ; if ( m && Object . prototype . hasOwnProperty . call ( m , a ) ) m = m [ a ] , "@:" === m . substr ( 0 , 2 ) ? z ( m . substr ( 2 ) , b , c , g , f ) . then ( k . resolve , k . reject ) : ( c = n . interpolate ( m , b ) , c = Y ( a , m , c , b , f ) , k . resolve ( c ) ) ; else { var w ; t && ! v && ( w = R ( a , b , g ) ) ; f && h && h . length ? na ( 0 < u ? u : q , a , b , n , g ) . then ( function ( a ) { k . resolve ( a ) } , function ( a ) { k . reject ( B ( a ) ) } ) : t && ! v && w ? g ? k . resolve ( g ) : k . resolve ( w ) : g ? k . resolve ( g ) : k . reject ( B ( a ) ) } return k . promise } , ea = function ( a , b , c , e ) { var g , f = e ? W [ e ] : W , k = p ; if ( E && Object . prototype . hasOwnProperty . call ( E ,
c ) && ( k = E [ c ] ) , f && Object . prototype . hasOwnProperty . call ( f , a ) ) a = f [ a ] , g = "@:" === a . substr ( 0 , 2 ) ? ea ( a . substr ( 2 ) , b , c , e ) : k . interpolate ( a , b ) ; else { var m ; t && ! v && ( m = R ( a , b ) ) ; e && h && h . length ? ( q = 0 , g = da ( 0 < u ? u : q , a , b , k ) ) : g = t && ! v && m ? m : B ( a ) } return g } , Y = function ( a , c , e , g , f ) { var h = S ; return h && ( "string" == typeof h && ( h = b . get ( h ) ) , h ) ? h ( a , c , e , g , f ) : e } , Xa = function ( a ) { W [ a ] || ! G || A [ a ] || ( A [ a ] = ia ( a ) . then ( function ( a ) { w ( a . key , a . table ) } ) ) } ; z . preferredLanguage = function ( a ) { return a && a && ( g = a ) , g } ; z . cloakClassName = function ( ) { return za } ; z . nestedObjectDelimeter =
function ( ) { return T } ; z . fallbackLanguage = function ( a ) { if ( void 0 !== a && null !== a ) { if ( Ka ( a ) , G && h && h . length ) { a = 0 ; for ( var b = h . length ; b > a ; a ++ ) A [ h [ a ] ] || ( A [ h [ a ] ] = ia ( h [ a ] ) ) } z . use ( z . use ( ) ) } return k ? h [ 0 ] : h } ; z . useFallbackLanguage = function ( a ) { void 0 !== a && null !== a && ( a ? ( a = pa ( h , a ) , - 1 < a && ( u = a ) ) : u = 0 ) } ; z . proposedLanguage = function ( ) { return n } ; z . storage = function ( ) { return f } ; z . negotiateLocale = ga ; z . use = function ( a ) { if ( ! a ) return m ; var b = e . defer ( ) ; c . $emit ( "$translateChangeStart" , { language : a } ) ; var g = ga ( a ) ; return 0 < ja . length &&
! g ? e . reject ( a ) : ( g && ( a = g ) , n = a , ! O && W [ a ] || ! G || A [ a ] ? A [ a ] ? A [ a ] . then ( function ( a ) { return n === a . key && I ( a . key ) , b . resolve ( a . key ) , a } , function ( a ) { return ! m && h && 0 < h . length ? z . use ( h [ 0 ] ) . then ( b . resolve , b . reject ) : b . reject ( a ) } ) : ( b . resolve ( a ) , I ( a ) ) : ( A [ a ] = ia ( a ) . then ( function ( c ) { return w ( c . key , c . table ) , b . resolve ( c . key ) , n === a && I ( c . key ) , c } , function ( a ) { return c . $emit ( "$translateChangeError" , { language : a } ) , b . reject ( a ) , c . $emit ( "$translateChangeEnd" , { language : a } ) , e . reject ( a ) } ) , A [ a ] [ "finally" ] ( function ( ) { var b = a ; n === b && ( n = void 0 ) ;
A [ b ] = void 0 } ) ) , b . promise ) } ; z . resolveClientLocale = function ( ) { return ha ( ) } ; z . storageKey = function ( ) { return U ( ) } ; z . isPostCompilingEnabled = function ( ) { return X } ; z . isForceAsyncReloadEnabled = function ( ) { return O } ; z . refresh = function ( a ) { function b ( ) { f . resolve ( ) ; c . $emit ( "$translateRefreshEnd" , { language : a } ) } function g ( ) { f . reject ( ) ; c . $emit ( "$translateRefreshEnd" , { language : a } ) } if ( ! G ) throw Error ( "Couldn't refresh translation table, no loader registered!" ) ; var f = e . defer ( ) ; if ( c . $emit ( "$translateRefreshStart" , { language : a } ) ,
a ) if ( W [ a ] ) { var k = function ( c ) { w ( c . key , c . table ) ; a === m && I ( m ) ; b ( ) } ; k . displayName = "refreshPostProcessor" ; ia ( a ) . then ( k , g ) } else g ( ) ; else { var k = [ ] , n = { } ; if ( h && h . length ) for ( var r = 0 , q = h . length ; q > r ; r ++ ) k . push ( ia ( h [ r ] ) ) , n [ h [ r ] ] = ! 0 ; m && ! n [ m ] && k . push ( ia ( m ) ) ; n = function ( a ) { W = { } ; angular . forEach ( a , function ( a ) { w ( a . key , a . table ) } ) ; m && I ( m ) ; b ( ) } ; n . displayName = "refreshPostProcessor" ; e . all ( k ) . then ( n , g ) } return f . promise } ; z . instant = function ( a , b , c , e ) { var f = e && e !== m ? ga ( e ) || e : m ; if ( null === a || angular . isUndefined ( a ) ) return a ; if ( e &&
Xa ( e ) , angular . isArray ( a ) ) { for ( var f = { } , k = 0 , n = a . length ; n > k ; k ++ ) f [ a [ k ] ] = z . instant ( a [ k ] , b , c , e ) ; return f } if ( angular . isString ( a ) && 1 > a . length ) return a ; a && ( a = qa . apply ( a ) ) ; e = [ ] ; g && e . push ( g ) ; f && e . push ( f ) ; h && h . length && ( e = e . concat ( h ) ) ; for ( var n = 0 , w = e . length ; w > n ; n ++ ) { var r = e [ n ] ; if ( W [ r ] && "undefined" != typeof W [ r ] [ a ] && ( k = ea ( a , b , c , f ) ) , "undefined" != typeof k ) break } return k || "" === k || ( K || P ? k = B ( a ) : ( k = p . interpolate ( a , b ) , t && ! v && ( k = R ( a , b ) ) ) ) , k } ; z . versionInfo = function ( ) { return "2.11.0" } ; z . loaderCache = function ( ) { return V } ;
z . directivePriority = function ( ) { return ka } ; z . statefulFilter = function ( ) { return ca } ; z . isReady = function ( ) { return M } ; var nb = e . defer ( ) ; nb . promise . then ( function ( ) { M = ! 0 } ) ; z . onReady = function ( a ) { var b = e . defer ( ) ; return angular . isFunction ( a ) && b . promise . then ( a ) , M ? b . resolve ( ) : nb . promise . then ( b . resolve ) , b . promise } ; z . getAvailableLanguageKeys = function ( ) { return 0 < ja . length ? ja : null } ; var ta = c . $on ( "$translateReady" , function ( ) { nb . resolve ( ) ; ta ( ) ; ta = null } ) , Ic = c . $on ( "$translateChangeEnd" , function ( ) { nb . resolve ( ) ; Ic ( ) ; Ic = null } ) ;
if ( G ) { if ( angular . equals ( W , { } ) && z . use ( ) && z . use ( z . use ( ) ) , h && h . length ) { a = function ( a ) { return w ( a . key , a . table ) , c . $emit ( "$translateChangeEnd" , { language : a . key } ) , a } ; for ( var Gb = 0 , nd = h . length ; nd > Gb ; Gb ++ ) { var hc = h [ Gb ] ; ! O && W [ hc ] || ( A [ hc ] = ia ( hc ) . then ( a ) ) } } } else c . $emit ( "$translateReady" , { language : z . use ( ) } ) ; return z } ] } function k ( a , b ) { var c = { } ; return c . setLocale = function ( a ) { } , c . getInterpolationIdentifier = function ( ) { return "default" } , c . useSanitizeValueStrategy = function ( a ) { return b . useStrategy ( a ) , this } , c . interpolate =
function ( c , e ) { e = e || { } ; e = b . sanitize ( e , "params" ) ; var g = a ( c ) ( e ) ; return b . sanitize ( g , "text" ) } , c } function h ( a , b , e , g , f , h ) { var k = function ( ) { return this . toString ( ) . replace ( /^\s+|\s+$/g , "" ) } ; return { restrict : "AE" , scope : ! 0 , priority : a . directivePriority ( ) , compile : function ( b , m ) { var n = m . translateValues ? m . translateValues : void 0 , r = m . translateInterpolation ? m . translateInterpolation : void 0 , q = b [ 0 ] . outerHTML . match ( /translate-value-+/i ) , t = "^(.*)(" + e . startSymbol ( ) + ".*" + e . endSymbol ( ) + ")(.*)" , v = "^(.*)" + e . startSymbol ( ) + "(.*)" +
e . endSymbol ( ) + "(.*)" ; return function ( b , u , p ) { b . interpolateParams = { } ; b . preText = "" ; b . postText = "" ; b . translateNamespace = c ( b ) ; var x = { } , A = function ( a ) { if ( angular . isFunction ( A . _unwatchOld ) && ( A . _unwatchOld ( ) , A . _unwatchOld = void 0 ) , angular . equals ( a , "" ) || ! angular . isDefined ( a ) ) { a = k . apply ( u . text ( ) ) ; var c = a . match ( t ) ; angular . isArray ( c ) ? ( b . preText = c [ 1 ] , b . postText = c [ 3 ] , x . translate = e ( c [ 2 ] ) ( b . $parent ) , a = a . match ( v ) , angular . isArray ( a ) && a [ 2 ] && a [ 2 ] . length && ( A . _unwatchOld = b . $watch ( a [ 2 ] , function ( a ) { x . translate = a ; I ( ) } ) ) ) : x . translate =
a ? a : void 0 } else x . translate = a ; I ( ) } , E = function ( a ) { p . $observe ( a , function ( b ) { x [ a ] = b ; I ( ) } ) } ; ( function ( a , c , e ) { if ( c . translateValues && angular . extend ( a , f ( c . translateValues ) ( b . $parent ) ) , q ) for ( var g in e ) if ( Object . prototype . hasOwnProperty . call ( c , g ) && "translateValue" === g . substr ( 0 , 14 ) && "translateValues" !== g ) { var h = angular . lowercase ( g . substr ( 14 , 1 ) ) + g . substr ( 15 ) ; a [ h ] = e [ g ] } } ) ( b . interpolateParams , p , m ) ; var z = ! 0 ; p . $observe ( "translate" , function ( a ) { "undefined" == typeof a ? A ( "" ) : "" === a && z || ( x . translate = a , I ( ) ) ; z = ! 1 } ) ; for ( var G in p ) p . hasOwnProperty ( G ) &&
"translateAttr" === G . substr ( 0 , 13 ) && E ( G ) ; if ( p . $observe ( "translateDefault" , function ( a ) { b . defaultText = a ; I ( ) } ) , n && p . $observe ( "translateValues" , function ( a ) { a && b . $parent . $watch ( function ( ) { angular . extend ( b . interpolateParams , f ( a ) ( b . $parent ) ) } ) } ) , q ) { var E = function ( a ) { p . $observe ( a , function ( c ) { var e = angular . lowercase ( a . substr ( 14 , 1 ) ) + a . substr ( 15 ) ; b . interpolateParams [ e ] = c } ) } , B ; for ( B in p ) Object . prototype . hasOwnProperty . call ( p , B ) && "translateValue" === B . substr ( 0 , 14 ) && "translateValues" !== B && E ( B ) } var I = function ( ) { for ( var a in x ) x . hasOwnProperty ( a ) &&
void 0 !== x [ a ] && J ( a , x [ a ] , b , b . interpolateParams , b . defaultText , b . translateNamespace ) } , J = function ( b , c , e , g , f , h ) { c ? ( h && "." === c . charAt ( 0 ) && ( c = h + c ) , a ( c , g , r , f , e . translateLanguage ) . then ( function ( a ) { F ( a , e , ! 0 , b ) } , function ( a ) { F ( a , e , ! 1 , b ) } ) ) : F ( c , e , ! 1 , b ) } , F = function ( b , c , e , f ) { ( e || "undefined" != typeof c . defaultText && ( b = c . defaultText ) , "translate" === f ) ? ( ( e || ! e && "undefined" == typeof p . translateKeepContent ) && u . empty ( ) . append ( c . preText + b + c . postText ) , b = a . isPostCompilingEnabled ( ) , f = ( e = "undefined" != typeof m . translateCompile ) &&
"false" !== m . translateCompile , ( b && ! e || f ) && g ( u . contents ( ) ) ( c ) ) : ( c = p . $attr [ f ] , "data-" === c . substr ( 0 , 5 ) && ( c = c . substr ( 5 ) ) , c = c . substr ( 15 ) , u . attr ( c , b ) ) } ; ( n || q || p . translateDefault ) && b . $watch ( "interpolateParams" , I , ! 0 ) ; var K = b . $on ( "translateLanguageChanged" , I ) , N = h . $on ( "$translateChangeSuccess" , I ) ; u . text ( ) . length ? A ( p . translate ? p . translate : "" ) : p . translate && A ( p . translate ) ; I ( ) ; b . $on ( "$destroy" , function ( ) { K ( ) ; N ( ) } ) } } } } function c ( a ) { return a . translateNamespace ? a . translateNamespace : a . $parent ? c ( a . $parent ) : void 0 } function b ( a ,
b ) { return { compile : function ( c ) { var e = function ( ) { c . addClass ( a . cloakClassName ( ) ) } , g = function ( ) { c . removeClass ( a . cloakClassName ( ) ) } ; return a . onReady ( function ( ) { g ( ) } ) , e ( ) , function ( c , f , h ) { h . translateCloak && h . translateCloak . length && ( h . $observe ( "translateCloak" , function ( b ) { a ( b ) . then ( g , e ) } ) , b . $on ( "$translateChangeSuccess" , function ( ) { a ( h . translateCloak ) . then ( g , e ) } ) ) } } } } function e ( ) { return { restrict : "A" , scope : ! 0 , compile : function ( ) { return { pre : function ( a , b , e ) { a . translateNamespace = c ( a ) ; a . translateNamespace && "." ===
e . translateNamespace . charAt ( 0 ) ? a . translateNamespace += e . translateNamespace : a . translateNamespace = e . translateNamespace } } } } } function c ( a ) { return a . translateNamespace ? a . translateNamespace : a . $parent ? c ( a . $parent ) : void 0 } function g ( ) { return { restrict : "A" , scope : ! 0 , compile : function ( ) { return function ( a , b , c ) { c . $observe ( "translateLanguage" , function ( b ) { a . translateLanguage = b } ) ; a . $watch ( "translateLanguage" , function ( ) { a . $broadcast ( "translateLanguageChanged" ) } ) } } } } function r ( a , b ) { var c = function ( c , e , g , f ) { return angular . isObject ( e ) ||
( e = a ( e ) ( this ) ) , b . instant ( c , e , g , f ) } ; return b . statefulFilter ( ) && ( c . $stateful = ! 0 ) , c } function m ( a ) { return a ( "translations" ) } return a . $inject = [ "$translate" ] , f . $inject = [ "$STORAGE_KEY" , "$windowProvider" , "$translateSanitizationProvider" , "pascalprechtTranslateOverrider" ] , k . $inject = [ "$interpolate" , "$translateSanitization" ] , h . $inject = "$translate $q $interpolate $compile $parse $rootScope" . split ( " " ) , b . $inject = [ "$translate" , "$rootScope" ] , r . $inject = [ "$parse" , "$translate" ] , m . $inject = [ "$cacheFactory" ] , angular . module ( "pascalprecht.translate" ,
[ "ng" ] ) . run ( a ) , a . displayName = "runTranslate" , angular . module ( "pascalprecht.translate" ) . provider ( "$translateSanitization" , function ( ) { var a , b , c = null , e = ! 1 , g = ! 1 ; b = { sanitize : function ( a , b ) { return "text" === b && ( a = h ( a ) ) , a } , escape : function ( a , b ) { return "text" === b && ( a = f ( a ) ) , a } , sanitizeParameters : function ( a , b ) { return "params" === b && ( a = k ( a , h ) ) , a } , escapeParameters : function ( a , b ) { return "params" === b && ( a = k ( a , f ) ) , a } } ; b . escaped = b . escapeParameters ; this . addStrategy = function ( a , c ) { return b [ a ] = c , this } ; this . removeStrategy = function ( a ) { return delete b [ a ] ,
this } ; this . useStrategy = function ( a ) { return e = ! 0 , c = a , this } ; this . $get = [ "$injector" , "$log" , function ( f , h ) { var k = { } , m = function ( a , c , e ) { return angular . forEach ( e , function ( e ) { if ( angular . isFunction ( e ) ) a = e ( a , c ) ; else if ( angular . isFunction ( b [ e ] ) ) a = b [ e ] ( a , c ) ; else { if ( ! angular . isString ( b [ e ] ) ) throw Error ( "pascalprecht.translate.$translateSanitization: Unknown sanitization strategy: '" + e + "'" ) ; if ( ! k [ b [ e ] ] ) try { k [ b [ e ] ] = f . get ( b [ e ] ) } catch ( K ) { throw k [ b [ e ] ] = function ( ) { } , Error ( "pascalprecht.translate.$translateSanitization: Unknown sanitization strategy: '" +
e + "'" ) ; } a = k [ b [ e ] ] ( a , c ) } } ) , a } ; return f . has ( "$sanitize" ) && ( a = f . get ( "$sanitize" ) ) , { useStrategy : function ( a ) { return function ( b ) { a . useStrategy ( b ) } } ( this ) , sanitize : function ( a , b , f ) { c || e || g || ( h . warn ( "pascalprecht.translate.$translateSanitization: No sanitization strategy has been configured. This can have serious security implications. See http://angular-translate.github.io/docs/#/guide/19_security for details." ) , g = ! 0 ) ; if ( 3 > arguments . length && ( f = c ) , ! f ) return a ; var k = angular . isArray ( f ) ? f : [ f ] ; return m ( a , b , k ) } } } ] ;
var f = function ( a ) { var b = angular . element ( "<div></div>" ) ; return b . text ( a ) , b . html ( ) } , h = function ( b ) { if ( ! a ) throw Error ( "pascalprecht.translate.$translateSanitization: Error cannot find $sanitize service. Either include the ngSanitize module (https://docs.angularjs.org/api/ngSanitize) or use a sanitization strategy which does not depend on $sanitize, such as 'escape'." ) ; return a ( b ) } , k = function ( a , b , c ) { if ( angular . isObject ( a ) ) { var e = angular . isArray ( a ) ? [ ] : { } ; if ( c ) { if ( - 1 < c . indexOf ( a ) ) throw Error ( "pascalprecht.translate.$translateSanitization: Error cannot interpolate parameter due recursive object" ) ;
} else c = [ ] ; return c . push ( a ) , angular . forEach ( a , function ( a , g ) { e [ g ] = k ( a , b , c ) } ) , c . splice ( - 1 , 1 ) , e } return angular . isNumber ( a ) ? a : b ( a ) } } ) , angular . module ( "pascalprecht.translate" ) . constant ( "pascalprechtTranslateOverrider" , { } ) . provider ( "$translate" , f ) , f . displayName = "displayName" , angular . module ( "pascalprecht.translate" ) . factory ( "$translateDefaultInterpolation" , k ) , k . displayName = "$translateDefaultInterpolation" , angular . module ( "pascalprecht.translate" ) . constant ( "$STORAGE_KEY" , "NG_TRANSLATE_LANG_KEY" ) , angular . module ( "pascalprecht.translate" ) . directive ( "translate" ,
h ) , h . displayName = "translateDirective" , angular . module ( "pascalprecht.translate" ) . directive ( "translateCloak" , b ) , b . displayName = "translateCloakDirective" , angular . module ( "pascalprecht.translate" ) . directive ( "translateNamespace" , e ) , e . displayName = "translateNamespaceDirective" , angular . module ( "pascalprecht.translate" ) . directive ( "translateLanguage" , g ) , g . displayName = "translateLanguageDirective" , angular . module ( "pascalprecht.translate" ) . filter ( "translate" , r ) , r . displayName = "translateFilterFactory" , angular . module ( "pascalprecht.translate" ) . factory ( "$translationCache" ,
m ) , m . displayName = "$translationCache" , "pascalprecht.translate" } ) ;
! function ( ) { function a ( a , c ) { window . XMLHttpRequest . prototype [ a ] = c ( window . XMLHttpRequest . prototype [ a ] ) } function f ( a , c , b ) { try { Object . defineProperty ( a , c , { get : b } ) } catch ( e ) { } } if ( window . FileAPI || ( window . FileAPI = { } ) , ! window . XMLHttpRequest ) throw "AJAX is not supported. XMLHttpRequest is not defined." ; if ( FileAPI . shouldLoad = ! window . FormData || FileAPI . forceLoad , FileAPI . shouldLoad ) { var k = function ( a ) { if ( ! a . _ _listeners ) { a . upload || ( a . upload = { } ) ; a . _ _listeners = [ ] ; var c = a . upload . addEventListener ; a . upload . addEventListener =
function ( b , e ) { a . _ _listeners [ b ] = e ; c && c . apply ( this , arguments ) } } } ; a ( "open" , function ( a ) { return function ( c , b , e ) { k ( this ) ; this . _ _url = b ; try { a . apply ( this , [ c , b , e ] ) } catch ( g ) { - 1 < g . message . indexOf ( "Access is denied" ) && ( this . _ _origError = g , a . apply ( this , [ c , "_fix_for_ie_crossdomain__" , e ] ) ) } } } ) ; a ( "getResponseHeader" , function ( a ) { return function ( c ) { return this . _ _fileApiXHR && this . _ _fileApiXHR . getResponseHeader ? this . _ _fileApiXHR . getResponseHeader ( c ) : null == a ? null : a . apply ( this , [ c ] ) } } ) ; a ( "getAllResponseHeaders" , function ( a ) { return function ( ) { return this . _ _fileApiXHR &&
this . _ _fileApiXHR . getAllResponseHeaders ? this . _ _fileApiXHR . getAllResponseHeaders ( ) : null == a ? null : a . apply ( this ) } } ) ; a ( "abort" , function ( a ) { return function ( ) { return this . _ _fileApiXHR && this . _ _fileApiXHR . abort ? this . _ _fileApiXHR . abort ( ) : null == a ? null : a . apply ( this ) } } ) ; a ( "setRequestHeader" , function ( a ) { return function ( c , b ) { if ( "__setXHR_" === c ) { k ( this ) ; var e = b ( this ) ; e instanceof Function && e ( this ) } else this . _ _requestHeaders = this . _ _requestHeaders || { } , this . _ _requestHeaders [ c ] = b , a . apply ( this , arguments ) } } ) ; a ( "send" ,
function ( a ) { return function ( ) { var c = this ; if ( arguments [ 0 ] && arguments [ 0 ] . _ _isFileAPIShim ) { for ( var b = arguments [ 0 ] , e = { url : c . _ _url , jsonp : ! 1 , cache : ! 0 , complete : function ( a , b ) { a && angular . isString ( a ) && - 1 !== a . indexOf ( "#2174" ) && ( a = null ) ; c . _ _completed = ! 0 ; ! a && c . _ _listeners . load && c . _ _listeners . load ( { type : "load" , loaded : c . _ _loaded , total : c . _ _total , target : c , lengthComputable : ! 0 } ) ; ! a && c . _ _listeners . loadend && c . _ _listeners . loadend ( { type : "loadend" , loaded : c . _ _loaded , total : c . _ _total , target : c , lengthComputable : ! 0 } ) ; "abort" ===
2017-04-11 11:04:48 +00:00
a && c . _ _listeners . abort && c . _ _listeners . abort ( { type : "abort" , loaded : c . _ _loaded , total : c . _ _total , target : c , lengthComputable : ! 0 } ) ; void 0 !== b . status && f ( c , "status" , function ( ) { return 0 === b . status && a && "abort" !== a ? 500 : b . status } ) ; void 0 !== b . statusText && f ( c , "statusText" , function ( ) { return b . statusText } ) ; f ( c , "readyState" , function ( ) { return 4 } ) ; void 0 !== b . response && f ( c , "response" , function ( ) { return b . response } ) ; var e = b . responseText || ( a && 0 === b . status && "abort" !== a ? a : void 0 ) ; f ( c , "responseText" , function ( ) { return e } ) ; f ( c ,
"response" , function ( ) { return e } ) ; a && f ( c , "err" , function ( ) { return a } ) ; c . _ _fileApiXHR = b ; c . onreadystatechange && c . onreadystatechange ( ) ; c . onload && c . onload ( ) } , progress : function ( a ) { if ( a . target = c , c . _ _listeners . progress && c . _ _listeners . progress ( a ) , c . _ _total = a . total , c . _ _loaded = a . loaded , a . total === a . loaded ) { var b = this ; setTimeout ( function ( ) { c . _ _completed || ( c . getAllResponseHeaders = function ( ) { } , b . complete ( null , { status : 204 , statusText : "No Content" } ) ) } , FileAPI . noContentTimeout || 1E4 ) } } , headers : c . _ _requestHeaders , data : { } ,
2017-07-20 23:09:21 +00:00
files : { } } , g = 0 ; g < b . data . length ; g ++ ) { var h = b . data [ g ] ; null != h . val && null != h . val . name && null != h . val . size && null != h . val . type ? e . files [ h . key ] = h . val : e . data [ h . key ] = h . val } setTimeout ( function ( ) { if ( ! FileAPI . hasFlash ) throw 'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"' ; c . _ _fileApiXHR = FileAPI . upload ( e ) } , 1 ) } else { if ( this . _ _origError ) throw this . _ _origError ; a . apply ( c , arguments ) } } } ) ; window . XMLHttpRequest . _ _isFileAPIShim = ! 0 ; window . FormData = FormData = function ( ) { return { append : function ( a , c ,
b ) { c . _ _isFileAPIBlobShim && ( c = c . data [ 0 ] ) ; this . data . push ( { key : a , val : c , name : b } ) } , data : [ ] , _ _isFileAPIShim : ! 0 } } ; window . Blob = Blob = function ( a ) { return { data : a , _ _isFileAPIBlobShim : ! 0 } } } } ( ) ;
( function ( ) { function a ( a ) { return "input" === a [ 0 ] . tagName . toLowerCase ( ) && a . attr ( "type" ) && "file" === a . attr ( "type" ) . toLowerCase ( ) } function f ( ) { try { return new ActiveXObject ( "ShockwaveFlash.ShockwaveFlash" ) , ! 0 } catch ( n ) { if ( void 0 !== navigator . mimeTypes [ "application/x-shockwave-flash" ] ) return ! 0 } return ! 1 } function k ( a ) { var b = 0 , c = 0 ; if ( window . jQuery ) return jQuery ( a ) . offset ( ) ; if ( a . offsetParent ) { do b += a . offsetLeft - a . scrollLeft , c += a . offsetTop - a . scrollTop , a = a . offsetParent ; while ( a ) } return { left : b , top : c } } if ( FileAPI . shouldLoad ) { if ( FileAPI . hasFlash =
f ( ) , FileAPI . forceLoad && ( FileAPI . html5 = ! 1 ) , ! FileAPI . upload ) { var h , c , b , e , g , r = document . createElement ( "script" ) , m = document . getElementsByTagName ( "script" ) ; if ( window . FileAPI . jsUrl ) h = window . FileAPI . jsUrl ; else if ( window . FileAPI . jsPath ) c = window . FileAPI . jsPath ; else for ( b = 0 ; b < m . length ; b ++ ) if ( g = m [ b ] . src , e = g . search ( /\/ng\-file\-upload[\-a-zA-z0-9\.]*\.js/ ) , - 1 < e ) { c = g . substring ( 0 , e + 1 ) ; break } null == FileAPI . staticPath && ( FileAPI . staticPath = c ) ; r . setAttribute ( "src" , h || c + "FileAPI.min.js" ) ; document . getElementsByTagName ( "head" ) [ 0 ] . appendChild ( r ) } FileAPI . ngfFixIE =
function ( b , c , e ) { if ( ! f ( ) ) throw 'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"' ; b . bind ( "mouseenter" , function ( ) { var f = c . parent ( ) ; b . attr ( "disabled" ) ? f && f . removeClass ( "js-fileapi-wrapper" ) : ( c . attr ( "__ngf_flash_" ) || ( c . unbind ( "change" ) , c . unbind ( "click" ) , c . bind ( "change" , function ( a ) { g . apply ( this , [ a ] ) ; e . apply ( this , [ a ] ) } ) , c . attr ( "__ngf_flash_" , "true" ) ) , f . addClass ( "js-fileapi-wrapper" ) , a ( b ) || ( f . css ( "position" , "absolute" ) . css ( "top" , k ( b [ 0 ] ) . top + "px" ) . css ( "left" , k ( b [ 0 ] ) . left + "px" ) . css ( "width" ,
b [ 0 ] . offsetWidth + "px" ) . css ( "height" , b [ 0 ] . offsetHeight + "px" ) . css ( "filter" , "alpha(opacity=0)" ) . css ( "display" , b . css ( "display" ) ) . css ( "overflow" , "hidden" ) . css ( "z-index" , "900000" ) . css ( "visibility" , "visible" ) , c . css ( "width" , b [ 0 ] . offsetWidth + "px" ) . css ( "height" , b [ 0 ] . offsetHeight + "px" ) . css ( "position" , "absolute" ) . css ( "top" , "0px" ) . css ( "left" , "0px" ) ) ) } ) ; var g = function ( a ) { for ( var b = FileAPI . getFiles ( a ) , c = 0 ; c < b . length ; c ++ ) void 0 === b [ c ] . size && ( b [ c ] . size = 0 ) , void 0 === b [ c ] . name && ( b [ c ] . name = "file" ) , void 0 === b [ c ] . type &&
2017-04-11 07:10:36 +00:00
( b [ c ] . type = "undefined" ) ; a . target || ( a . target = { } ) ; a . target . files = b ; a . target . files !== b && ( a . _ _files _ = b ) ; ( a . _ _files _ || a . target . files ) . item = function ( b ) { return ( a . _ _files _ || a . target . files ) [ b ] || null } } } ; FileAPI . disableFileInput = function ( a , b ) { b ? a . removeClass ( "js-fileapi-wrapper" ) : a . addClass ( "js-fileapi-wrapper" ) } } } ) ( ) ;
2017-07-20 23:09:21 +00:00
window . FileReader || ( window . FileReader = function ( ) { var a = this , f = ! 1 ; this . listeners = { } ; this . addEventListener = function ( c , b ) { a . listeners [ c ] = a . listeners [ c ] || [ ] ; a . listeners [ c ] . push ( b ) } ; this . removeEventListener = function ( c , b ) { a . listeners [ c ] && a . listeners [ c ] . splice ( a . listeners [ c ] . indexOf ( b ) , 1 ) } ; this . dispatchEvent = function ( c ) { var b = a . listeners [ c . type ] ; if ( b ) for ( var e = 0 ; e < b . length ; e ++ ) b [ e ] . call ( a , c ) } ; this . onabort = this . onerror = this . onload = this . onloadstart = this . onloadend = this . onprogress = null ; var k = function ( c , b ) { var e =
{ type : c , target : a , loaded : b . loaded , total : b . total , error : b . error } ; return null != b . result && ( e . target . result = b . result ) , e } , h = function ( c ) { f || ( f = ! 0 , a . onloadstart && a . onloadstart ( k ( "loadstart" , c ) ) ) ; var b ; "load" === c . type ? ( a . onloadend && a . onloadend ( k ( "loadend" , c ) ) , b = k ( "load" , c ) , a . onload && a . onload ( b ) , a . dispatchEvent ( b ) ) : "progress" === c . type ? ( b = k ( "progress" , c ) , a . onprogress && a . onprogress ( b ) , a . dispatchEvent ( b ) ) : ( b = k ( "error" , c ) , a . onerror && a . onerror ( b ) , a . dispatchEvent ( b ) ) } ; this . readAsDataURL = function ( a ) { FileAPI . readAsDataURL ( a ,
h ) } ; this . readAsText = function ( a ) { FileAPI . readAsText ( a , h ) } } ) ; ! window . XMLHttpRequest || window . FileAPI && FileAPI . shouldLoad || ( window . XMLHttpRequest . prototype . setRequestHeader = function ( a ) { return function ( f , k ) { if ( "__setXHR_" === f ) { var h = k ( this ) ; h instanceof Function && h ( this ) } else a . apply ( this , arguments ) } } ( window . XMLHttpRequest . prototype . setRequestHeader ) ) ; var ngFileUpload = angular . module ( "ngFileUpload" , [ ] ) ; ngFileUpload . version = "12.0.4" ;
ngFileUpload . service ( "UploadBase" , [ "$http" , "$q" , "$timeout" , function ( a , f , k ) { function h ( c ) { function g ( a ) { t . notify && t . notify ( a ) ; x . progressFunc && k ( function ( ) { x . progressFunc ( a ) } ) } function h ( a ) { return null != c . _start && e ? { loaded : a . loaded + c . _start , total : c . _file && c . _file . size || a . total , type : a . type , config : c , lengthComputable : ! 0 , target : a . target } : a } function n ( ) { a ( c ) . then ( function ( a ) { e && c . _chunkSize && ! c . _finished && c . _file ? ( g ( { loaded : c . _end , total : c . _file && c . _file . size , config : c , type : "progress" } ) , b . upload ( c , ! 0 ) ) : ( c . _finished &&
delete c . _finished , t . resolve ( a ) ) } , function ( a ) { t . reject ( a ) } , function ( a ) { t . notify ( a ) } ) } c . method = c . method || "POST" ; c . headers = c . headers || { } ; var t = c . _deferred = c . _deferred || f . defer ( ) , x = t . promise ; return c . disableProgress || ( c . headers . _ _setXHR _ = function ( ) { return function ( a ) { a && a . upload && a . upload . addEventListener && ( c . _ _XHR = a , c . xhrFn && c . xhrFn ( a ) , a . upload . addEventListener ( "progress" , function ( a ) { a . config = c ; g ( h ( a ) ) } , ! 1 ) , a . upload . addEventListener ( "load" , function ( a ) { a . lengthComputable && ( a . config = c , g ( h ( a ) ) ) } , ! 1 ) ) } } ) ,
e ? c . _chunkSize && c . _end && ! c . _finished ? ( c . _start = c . _end , c . _end += c . _chunkSize , n ( ) ) : c . resumeSizeUrl ? a . get ( c . resumeSizeUrl ) . then ( function ( a ) { c . _start = c . resumeSizeResponseReader ? c . resumeSizeResponseReader ( a . data ) : parseInt ( ( null == a . data . size ? a . data : a . data . size ) . toString ( ) ) ; c . _chunkSize && ( c . _end = c . _start + c . _chunkSize ) ; n ( ) } , function ( a ) { throw a ; } ) : c . resumeSize ? c . resumeSize ( ) . then ( function ( a ) { c . _start = a ; n ( ) } , function ( a ) { throw a ; } ) : ( c . _chunkSize && ( c . _start = 0 , c . _end = c . _start + c . _chunkSize ) , n ( ) ) : n ( ) , x . success = function ( a ) { return x . then ( function ( b ) { a ( b . data ,
b . status , b . headers , c ) } ) , x } , x . error = function ( a ) { return x . then ( null , function ( b ) { a ( b . data , b . status , b . headers , c ) } ) , x } , x . progress = function ( a ) { return x . progressFunc = a , x . then ( null , null , function ( b ) { a ( b ) } ) , x } , x . abort = x . pause = function ( ) { return c . _ _XHR && k ( function ( ) { c . _ _XHR . abort ( ) } ) , x } , x . xhr = function ( a ) { return c . xhrFn = function ( b ) { return function ( ) { b && b . apply ( x , arguments ) ; a . apply ( x , arguments ) } } ( c . xhrFn ) , x } , b . promisesCount ++ , x [ "finally" ] ( function ( ) { b . promisesCount -- } ) , x } function c ( a ) { var b = { } , c ; for ( c in a ) a . hasOwnProperty ( c ) &&
( b [ c ] = a [ c ] ) ; return b } var b = this ; b . promisesCount = 0 ; this . isResumeSupported = function ( ) { return window . Blob && window . Blob . prototype . slice } ; var e = this . isResumeSupported ( ) ; this . isUploadInProgress = function ( ) { return 0 < b . promisesCount } ; this . rename = function ( a , b ) { return a . ngfName = b , a } ; this . jsonBlob = function ( a ) { null == a || angular . isString ( a ) || ( a = JSON . stringify ( a ) ) ; a = new window . Blob ( [ a ] , { type : "application/json" } ) ; return a . _ngfBlob = ! 0 , a } ; this . json = function ( a ) { return angular . toJson ( a ) } ; this . isFile = function ( a ) { return null !=
a && ( a instanceof window . Blob || a . flashId && a . name && a . size ) } ; this . upload = function ( a , f ) { function g ( c , f , h ) { if ( void 0 !== f ) if ( angular . isDate ( f ) && ( f = f . toISOString ( ) ) , angular . isString ( f ) ) c . append ( h , f ) ; else if ( b . isFile ( f ) ) { if ( ! f . _ngfBlob && ( a . _file = a . _file || f , null != a . _start && e ) ) { a . _end && a . _end >= f . size && ( a . _finished = ! 0 , a . _end = f . size ) ; var k = f . slice ( a . _start , a . _end || f . size ) ; f = ( k . name = f . name , k . ngfName = f . ngfName , a . _chunkSize && ( c . append ( "_chunkSize" , a . _chunkSize ) , c . append ( "_currentChunkSize" , a . _end - a . _start ) , c . append ( "_chunkNumber" ,
Math . floor ( a . _start / a . _chunkSize ) ) , c . append ( "_totalSize" , a . _file . size ) ) , k ) } k = h . split ( "," ) ; k [ 1 ] && ( f . ngfName = k [ 1 ] . replace ( /^\s+|\s+$/g , "" ) , h = k [ 0 ] ) ; a . _fileKey = a . _fileKey || h ; c . append ( h , f , f . ngfName || f . name ) } else if ( angular . isObject ( f ) ) { if ( f . $$ngfCircularDetection ) throw "ngFileUpload: Circular reference in config.data. Make sure specified data for Upload.upload() has no circular reference: " + h ; f . $$ngfCircularDetection = ! 0 ; try { for ( k in f ) if ( f . hasOwnProperty ( k ) && "$$ngfCircularDetection" !== k ) { var m = null == a . objectKey ?
"[i]" : a . objectKey ; f . length && - 1 < parseInt ( k ) && ( m = null == a . arrayKey ? m : a . arrayKey ) ; g ( c , f [ k ] , h + m . replace ( /[ik]/g , k ) ) } } finally { delete f . $$ngfCircularDetection } } else c . append ( h , f ) } function k ( ) { a . _chunkSize = b . translateScalars ( a . resumeChunkSize ) ; a . _chunkSize = a . _chunkSize ? parseInt ( a . _chunkSize . toString ( ) ) : null ; a . headers = a . headers || { } ; a . headers [ "Content-Type" ] = void 0 ; a . transformRequest = a . transformRequest ? angular . isArray ( a . transformRequest ) ? a . transformRequest : [ a . transformRequest ] : [ ] ; a . transformRequest . push ( function ( b ) { var c ,
e = new window . FormData ; b = b || a . fields || { } ; a . file && ( b . file = a . file ) ; for ( c in b ) if ( b . hasOwnProperty ( c ) ) { var f = b [ c ] ; a . formDataAppender ? a . formDataAppender ( e , c , f ) : g ( e , f , c ) } return e } ) } return f || ( a = c ( a ) ) , a . _isDigested || ( a . _isDigested = ! 0 , k ( ) ) , h ( a ) } ; this . http = function ( e ) { return e = c ( e ) , e . transformRequest = e . transformRequest || function ( b ) { return window . ArrayBuffer && b instanceof window . ArrayBuffer || b instanceof window . Blob ? b : a . defaults . transformRequest [ 0 ] . apply ( this , arguments ) } , e . _chunkSize = b . translateScalars ( e . resumeChunkSize ) ,
e . _chunkSize = e . _chunkSize ? parseInt ( e . _chunkSize . toString ( ) ) : null , h ( e ) } ; this . translateScalars = function ( a ) { if ( angular . isString ( a ) ) { if ( a . search ( /kb/i ) === a . length - 2 ) return parseFloat ( 1024 * a . substring ( 0 , a . length - 2 ) ) ; if ( a . search ( /mb/i ) === a . length - 2 ) return parseFloat ( 1048576 * a . substring ( 0 , a . length - 2 ) ) ; if ( a . search ( /gb/i ) === a . length - 2 ) return parseFloat ( 1073741824 * a . substring ( 0 , a . length - 2 ) ) ; if ( a . search ( /b/i ) === a . length - 1 || a . search ( /s/i ) === a . length - 1 ) return parseFloat ( a . substring ( 0 , a . length - 1 ) ) ; if ( a . search ( /m/i ) ===
a . length - 1 ) return parseFloat ( 60 * a . substring ( 0 , a . length - 1 ) ) ; if ( a . search ( /h/i ) === a . length - 1 ) return parseFloat ( 3600 * a . substring ( 0 , a . length - 1 ) ) } return a } ; this . urlToBlob = function ( b ) { var c = f . defer ( ) ; return a ( { url : b , method : "get" , responseType : "arraybuffer" } ) . then ( function ( a ) { var b = new Uint8Array ( a . data ) ; a = a . headers ( "content-type" ) || "image/WebP" ; b = new window . Blob ( [ b ] , { type : a } ) ; c . resolve ( b ) } , function ( a ) { c . reject ( a ) } ) , c . promise } ; this . setDefaults = function ( a ) { this . defaults = a || { } } ; this . defaults = { } ; this . version =
ngFileUpload . version } ] ) ;
ngFileUpload . service ( "Upload" , [ "$parse" , "$timeout" , "$compile" , "$q" , "UploadExif" , function ( a , f , k , h , c ) { function b ( a , b , c ) { var e = [ r . emptyPromise ( ) ] ; return angular . forEach ( a , function ( f , g ) { 0 === f . type . indexOf ( "image/jpeg" ) && r . attrGetter ( "ngfFixOrientation" , b , c , { $file : f } ) && e . push ( r . happyPromise ( r . applyExifRotation ( f ) , f ) . then ( function ( b ) { a . splice ( g , 1 , b ) } ) ) } ) , h . all ( e ) } function e ( a , b , c ) { var e = r . attrGetter ( "ngfResize" , b , c ) ; if ( ! e || ! r . isResizeSupported ( ) || ! a . length ) return r . emptyPromise ( ) ; if ( ! ( e instanceof Function ) ) return g ( e ,
a , b , c ) ; var f = h . defer ( ) ; e ( a ) . then ( function ( e ) { g ( e , a , b , c ) . then ( function ( a ) { f . resolve ( a ) } , function ( a ) { f . reject ( a ) } ) } , function ( a ) { f . reject ( a ) } ) } function g ( a , b , c , e ) { function f ( f , h ) { if ( 0 === f . type . indexOf ( "image" ) && ( ! a . pattern || r . validatePattern ( f , a . pattern ) ) ) { var k = r . resize ( f , a . width , a . height , a . quality , a . type , a . ratio , a . centerCrop , function ( a , b ) { return r . attrGetter ( "ngfResizeIf" , c , e , { $width : a , $height : b , $file : f } ) } , ! 1 !== a . restoreExif ) ; g . push ( k ) ; k . then ( function ( a ) { b . splice ( h , 1 , a ) } , function ( a ) { f . $error = "resize" ;
2017-07-25 17:51:59 +00:00
f . $errorParam = ( a ? ( a . message ? a . message : a ) + ": " : "" ) + ( f && f . name ) } ) } } for ( var g = [ r . emptyPromise ( ) ] , k = 0 ; k < b . length ; k ++ ) f ( b [ k ] , k ) ; return h . all ( g ) } var r = c ; return r . getAttrWithDefaults = function ( a , b ) { if ( null != a [ b ] ) return a [ b ] ; var c = r . defaults [ b ] ; return null == c ? c : angular . isString ( c ) ? c : JSON . stringify ( c ) } , r . attrGetter = function ( b , c , e , f ) { c = this . getAttrWithDefaults ( c , b ) ; if ( ! e ) return c ; try { return f ? a ( c ) ( e , f ) : a ( c ) ( e ) } catch ( q ) { if ( b . search ( /min|max|pattern/i ) ) return c ; throw q ; } } , r . shouldUpdateOn = function ( a , b , c ) { b = r . attrGetter ( "ngModelOptions" ,
b , c ) ; return ! b || ! b . updateOn || - 1 < b . updateOn . split ( " " ) . indexOf ( a ) } , r . emptyPromise = function ( ) { var a = h . defer ( ) , b = arguments ; return f ( function ( ) { a . resolve . apply ( a , b ) } ) , a . promise } , r . rejectPromise = function ( ) { var a = h . defer ( ) , b = arguments ; return f ( function ( ) { a . reject . apply ( a , b ) } ) , a . promise } , r . happyPromise = function ( a , b ) { var c = h . defer ( ) ; return a . then ( function ( a ) { c . resolve ( a ) } , function ( a ) { f ( function ( ) { throw a ; } ) ; c . resolve ( b ) } ) , c . promise } , r . updateModel = function ( c , g , h , k , q , v , z ) { function m ( b , e , m , n , u ) { g . $$ngfPrevValidFiles =
b ; g . $$ngfPrevInvalidFiles = e ; var q = b && b . length ? b [ 0 ] : null , t = e && e . length ? e [ 0 ] : null ; c && ( r . applyModelValidation ( c , b ) , c . $setViewValue ( u ? q : b ) ) ; k && a ( k ) ( h , { $files : b , $file : q , $newFiles : m , $duplicateFiles : n , $invalidFiles : e , $invalidFile : t , $event : v } ) ; var p = r . attrGetter ( "ngfModelInvalid" , g ) ; p && f ( function ( ) { a ( p ) . assign ( h , u ? t : e ) } ) ; f ( function ( ) { } ) } function n ( ) { function a ( a , b ) { return a . name === b . name && ( a . $ngfOrigSize || a . size ) === ( b . $ngfOrigSize || b . size ) && a . type === b . type } function b ( b ) { var c ; for ( c = 0 ; c < J . length ; c ++ ) if ( a ( b ,
J [ c ] ) ) return ! 0 ; for ( c = 0 ; c < E . length ; c ++ ) if ( a ( b , E [ c ] ) ) return ! 0 ; return ! 1 } if ( q ) { x = [ ] ; G = [ ] ; for ( var c = 0 ; c < q . length ; c ++ ) b ( q [ c ] ) ? G . push ( q [ c ] ) : x . push ( q [ c ] ) } } function t ( a ) { return angular . isArray ( a ) ? a : [ a ] } function p ( ) { K = [ ] ; N = [ ] ; angular . forEach ( x , function ( a ) { a . $error ? N . push ( a ) : K . push ( a ) } ) } function u ( ) { function a ( ) { f ( function ( ) { m ( P ? J . concat ( K ) : K , P ? E . concat ( N ) : N , q , G , V ) } , W && W . debounce ? W . debounce . change || W . debounce : 0 ) } e ( S ? x : K , g , h ) . then ( function ( ) { S ? r . validate ( x , J . length , c , g , h ) . then ( function ( ) { p ( ) ; a ( ) } ) : a ( ) } , function ( a ) { throw "Could not resize files " +
a ; } ) } var x , J , E , G = [ ] , N = [ ] , K = [ ] ; J = g . $$ngfPrevValidFiles || [ ] ; E = g . $$ngfPrevInvalidFiles || [ ] ; c && c . $modelValue && ( J = t ( c . $modelValue ) ) ; var P = r . attrGetter ( "ngfKeep" , g , h ) ; x = ( q || [ ] ) . slice ( 0 ) ; "distinct" !== P && ! 0 !== r . attrGetter ( "ngfKeepDistinct" , g , h ) || n ( g , h ) ; var V = ! P && ! r . attrGetter ( "ngfMultiple" , g , h ) && ! r . attrGetter ( "multiple" , g ) ; if ( ! P || x . length ) { r . attrGetter ( "ngfBeforeModelChange" , g , h , { $files : q , $file : q && q . length ? q [ 0 ] : null , $newFiles : x , $duplicateFiles : G , $event : v } ) ; var S = r . attrGetter ( "ngfValidateAfterResize" , g , h ) ,
W = r . attrGetter ( "ngModelOptions" , g , h ) ; r . validate ( x , J . length , c , g , h ) . then ( function ( ) { z ? m ( x , [ ] , q , G , V ) : ( W && W . allowInvalid || S ? K = x : p ( ) , r . attrGetter ( "ngfFixOrientation" , g , h ) && r . isExifSupported ( ) ? b ( K , g , h ) . then ( function ( ) { u ( ) } ) : u ( ) ) } ) } } , r } ] ) ;
2017-07-20 23:09:21 +00:00
ngFileUpload . directive ( "ngfSelect" , [ "$parse" , "$timeout" , "$compile" , "Upload" , function ( a , f , k , h ) { function c ( a ) { var b = a . match ( /Android[^\d]*(\d+)\.(\d+)/ ) ; return b && 2 < b . length ? ( a = h . defaults . androidFixMinorVersion || 4 , 4 > parseInt ( b [ 1 ] ) || parseInt ( b [ 1 ] ) === a && parseInt ( b [ 2 ] ) < a ) : - 1 === a . indexOf ( "Chrome" ) && /.*Windows.*Safari.*/ . test ( a ) } function b ( a , b , f , h , k , x , q , v ) { function g ( ) { return "input" === b [ 0 ] . tagName . toLowerCase ( ) && f . type && "file" === f . type . toLowerCase ( ) } function m ( ) { return E ( "ngfChange" ) || E ( "ngfSelect" ) } function n ( b ) { if ( v . shouldUpdateOn ( "change" ,
f , a ) ) { for ( var c = b . _ _files _ || b . target && b . target . files , e = [ ] , g = 0 ; g < c . length ; g ++ ) e . push ( c [ g ] ) ; v . updateModel ( h , f , a , m ( ) , e . length ? e : null , b ) } } function r ( ) { if ( g ( ) ) return b ; var a = angular . element ( '<input type="file">' ) ; if ( b !== a ) for ( var c = 0 ; c < b [ 0 ] . attributes . length ; c ++ ) { var f = b [ 0 ] . attributes [ c ] ; "type" !== f . name && "class" !== f . name && "style" !== f . name && ( ( null == f . value || "" === f . value ) && ( "required" === f . name && ( f . value = "required" ) , "multiple" === f . name && ( f . value = "multiple" ) ) , a . attr ( f . name , "id" === f . name ? "ngf-" + f . value : f . value ) ) } c =
angular . element ( "<label>upload</label>" ) ; return c . css ( "visibility" , "hidden" ) . css ( "position" , "absolute" ) . css ( "overflow" , "hidden" ) . css ( "width" , "0px" ) . css ( "height" , "0px" ) . css ( "border" , "none" ) . css ( "margin" , "0px" ) . css ( "padding" , "0px" ) . attr ( "tabindex" , "-1" ) , e . push ( { el : b , ref : c } ) , document . body . appendChild ( c . append ( a ) [ 0 ] ) , a } function t ( f ) { if ( b . attr ( "disabled" ) ) return ! 1 ; if ( ! E ( "ngfSelectDisabled" , a ) ) { var h = u ( f ) ; if ( null != h ) return h ; I ( f ) ; try { g ( ) || document . body . contains ( K [ 0 ] ) || ( e . push ( { el : b , ref : K . parent ( ) } ) , document . body . appendChild ( K . parent ( ) [ 0 ] ) ,
K . bind ( "change" , n ) ) } catch ( S ) { } return c ( navigator . userAgent ) ? setTimeout ( function ( ) { K [ 0 ] . click ( ) } , 0 ) : K [ 0 ] . click ( ) , ! 1 } } function u ( a ) { var b = a . changedTouches || a . originalEvent && a . originalEvent . changedTouches ; if ( "touchstart" === a . type ) return N = b ? b [ 0 ] . clientY : 0 , ! 0 ; if ( ( a . stopPropagation ( ) , a . preventDefault ( ) , "touchend" === a . type ) && 20 < Math . abs ( ( b ? b [ 0 ] . clientY : 0 ) - N ) ) return ! 1 } function I ( b ) { v . shouldUpdateOn ( "click" , f , a ) && K . val ( ) && ( K . val ( null ) , v . updateModel ( h , f , a , m ( ) , null , b , ! 0 ) ) } function J ( a ) { if ( K && ! K . attr ( "__ngf_ie10_Fix_" ) ) { if ( ! K [ 0 ] . parentNode ) return void ( K =
null ) ; a . preventDefault ( ) ; a . stopPropagation ( ) ; K . unbind ( "click" ) ; a = K . clone ( ) ; return K . replaceWith ( a ) , K = a , K . attr ( "__ngf_ie10_Fix_" , "true" ) , K . bind ( "change" , n ) , K . bind ( "click" , J ) , K [ 0 ] . click ( ) , ! 1 } K . removeAttr ( "__ngf_ie10_Fix_" ) } var E = function ( a , b ) { return v . attrGetter ( a , f , b ) } ; v . registerModelChangeValidator ( h , f , a ) ; var G = [ ] ; G . push ( a . $watch ( E ( "ngfMultiple" ) , function ( ) { K . attr ( "multiple" , E ( "ngfMultiple" , a ) ) } ) ) ; G . push ( a . $watch ( E ( "ngfCapture" ) , function ( ) { K . attr ( "capture" , E ( "ngfCapture" , a ) ) } ) ) ; G . push ( a . $watch ( E ( "ngfAccept" ) ,
function ( ) { K . attr ( "accept" , E ( "ngfAccept" , a ) ) } ) ) ; f . $observe ( "accept" , function ( ) { K . attr ( "accept" , E ( "accept" ) ) } ) ; G . push ( function ( ) { f . $$observers && delete f . $$observers . accept } ) ; var N = 0 , K = b ; g ( ) || ( K = r ( ) ) ; K . bind ( "change" , n ) ; g ( ) ? b . bind ( "click" , I ) : b . bind ( "click touchstart touchend" , t ) ; - 1 !== navigator . appVersion . indexOf ( "MSIE 10" ) && K . bind ( "click" , J ) ; h && h . $formatters . push ( function ( a ) { return ( null == a || 0 === a . length ) && K . val ( ) && K . val ( null ) , a } ) ; a . $on ( "$destroy" , function ( ) { g ( ) || K . parent ( ) . remove ( ) ; angular . forEach ( G ,
function ( a ) { a ( ) } ) } ) ; x ( function ( ) { for ( var a = 0 ; a < e . length ; a ++ ) { var b = e [ a ] ; document . body . contains ( b . el [ 0 ] ) || ( e . splice ( a , 1 ) , b . ref . remove ( ) ) } } ) ; window . FileAPI && window . FileAPI . ngfFixIE && window . FileAPI . ngfFixIE ( b , K , n ) } var e = [ ] ; return { restrict : "AEC" , require : "?ngModel" , link : function ( c , e , m , n ) { b ( c , e , m , n , a , f , k , h ) } } } ] ) ;
( function ( ) { function a ( a ) { return "img" === a . tagName . toLowerCase ( ) ? "image" : "audio" === a . tagName . toLowerCase ( ) ? "audio" : "video" === a . tagName . toLowerCase ( ) ? "video" : /./ } function f ( f , h , c , b , e , g , r , m ) { function k ( a ) { var g = f . attrGetter ( "ngfNoObjectUrl" , e , c ) ; f . dataUrl ( a , g ) [ "finally" ] ( function ( ) { h ( function ( ) { var c = ( g ? a . $ngfDataUrl : a . $ngfBlobUrl ) || a . $ngfDataUrl ; m ? b . css ( "background-image" , "url('" + ( c || "" ) + "')" ) : b . attr ( "src" , c ) ; c ? b . removeClass ( "ng-hide" ) : b . addClass ( "ng-hide" ) } ) } ) } h ( function ( ) { var h = c . $watch ( e [ g ] , function ( c ) { var e =
r ; "ngfThumbnail" === g && ( e || ( e = { width : b [ 0 ] . clientWidth , height : b [ 0 ] . clientHeight } ) , 0 === e . width && window . getComputedStyle ) && ( e = getComputedStyle ( b [ 0 ] ) , e = { width : parseInt ( e . width . slice ( 0 , - 2 ) ) , height : parseInt ( e . height . slice ( 0 , - 2 ) ) } ) ; return angular . isString ( c ) ? ( b . removeClass ( "ng-hide" ) , m ? b . css ( "background-image" , "url('" + c + "')" ) : b . attr ( "src" , c ) ) : void ( ! c || ! c . type || 0 !== c . type . search ( a ( b [ 0 ] ) ) || m && 0 !== c . type . indexOf ( "image" ) ? b . addClass ( "ng-hide" ) : e && f . isResizeSupported ( ) ? f . resize ( c , e . width , e . height , e . quality ) . then ( function ( a ) { k ( a ) } ,
function ( a ) { throw a ; } ) : k ( c ) ) } ) ; c . $on ( "$destroy" , function ( ) { h ( ) } ) } ) } ngFileUpload . service ( "UploadDataUrl" , [ "UploadBase" , "$timeout" , "$q" , function ( a , f , c ) { return a . base64DataUrl = function ( b ) { if ( angular . isArray ( b ) ) { var e = c . defer ( ) , f = 0 ; return angular . forEach ( b , function ( c ) { a . dataUrl ( c , ! 0 ) [ "finally" ] ( function ( ) { if ( f ++ , f === b . length ) { var a = [ ] ; angular . forEach ( b , function ( b ) { a . push ( b . $ngfDataUrl ) } ) ; e . resolve ( a , b ) } } ) } ) , e . promise } return a . dataUrl ( b , ! 0 ) } , a . dataUrl = function ( b , e ) { if ( ! b ) return a . emptyPromise ( b , b ) ; if ( e &&
null != b . $ngfDataUrl || ! e && null != b . $ngfBlobUrl ) return a . emptyPromise ( e ? b . $ngfDataUrl : b . $ngfBlobUrl , b ) ; var g = e ? b . $$ngfDataUrlPromise : b . $$ngfBlobUrlPromise ; if ( g ) return g ; var h = c . defer ( ) ; return f ( function ( ) { if ( window . FileReader && b && ( ! window . FileAPI || - 1 === navigator . userAgent . indexOf ( "MSIE 8" ) || 2E4 > b . size ) && ( ! window . FileAPI || - 1 === navigator . userAgent . indexOf ( "MSIE 9" ) || 4E6 > b . size ) ) { var c = window . URL || window . webkitURL ; if ( c && c . createObjectURL && ! e ) { var g ; try { g = c . createObjectURL ( b ) } catch ( x ) { return void f ( function ( ) { b . $ngfBlobUrl =
"" ; h . reject ( ) } ) } f ( function ( ) { if ( b . $ngfBlobUrl = g , g ) { h . resolve ( g , b ) ; a . blobUrls = a . blobUrls || [ ] ; a . blobUrlsTotalSize = a . blobUrlsTotalSize || 0 ; a . blobUrls . push ( { url : g , size : b . size } ) ; a . blobUrlsTotalSize += b . size || 0 ; for ( var e = a . defaults . blobUrlsMaxMemory || 268435456 , f = a . defaults . blobUrlsMaxQueueSize || 200 ; ( a . blobUrlsTotalSize > e || a . blobUrls . length > f ) && 1 < a . blobUrls . length ; ) { var k = a . blobUrls . splice ( 0 , 1 ) [ 0 ] ; c . revokeObjectURL ( k . url ) ; a . blobUrlsTotalSize -= k . size } } } ) } else { var k = new FileReader ; k . onload = function ( a ) { f ( function ( ) { b . $ngfDataUrl =
a . target . result ; h . resolve ( a . target . result , b ) ; f ( function ( ) { delete b . $ngfDataUrl } , 1E3 ) } ) } ; k . onerror = function ( ) { f ( function ( ) { b . $ngfDataUrl = "" ; h . reject ( ) } ) } ; k . readAsDataURL ( b ) } } else f ( function ( ) { b [ e ? "$ngfDataUrl" : "$ngfBlobUrl" ] = "" ; h . reject ( ) } ) } ) , g = e ? b . $$ngfDataUrlPromise = h . promise : b . $$ngfBlobUrlPromise = h . promise , g [ "finally" ] ( function ( ) { delete b [ e ? "$$ngfDataUrlPromise" : "$$ngfBlobUrlPromise" ] } ) , g } , a } ] ) ; ngFileUpload . directive ( "ngfSrc" , [ "Upload" , "$timeout" , function ( a , h ) { return { restrict : "AE" , link : function ( c ,
b , e ) { f ( a , h , c , b , e , "ngfSrc" , a . attrGetter ( "ngfResize" , e , c ) , ! 1 ) } } } ] ) ; ngFileUpload . directive ( "ngfBackground" , [ "Upload" , "$timeout" , function ( a , h ) { return { restrict : "AE" , link : function ( c , b , e ) { f ( a , h , c , b , e , "ngfBackground" , a . attrGetter ( "ngfResize" , e , c ) , ! 0 ) } } } ] ) ; ngFileUpload . directive ( "ngfThumbnail" , [ "Upload" , "$timeout" , function ( a , h ) { return { restrict : "AE" , link : function ( c , b , e ) { var g = a . attrGetter ( "ngfSize" , e , c ) ; f ( a , h , c , b , e , "ngfThumbnail" , g , a . attrGetter ( "ngfAsBackground" , e , c ) ) } } } ] ) ; ngFileUpload . config ( [ "$compileProvider" ,
function ( a ) { a . imgSrcSanitizationWhitelist && a . imgSrcSanitizationWhitelist ( /^\s*(https?|ftp|mailto|tel|local|file|data|blob):/ ) ; a . aHrefSanitizationWhitelist && a . aHrefSanitizationWhitelist ( /^\s*(https?|ftp|mailto|tel|local|file|data|blob):/ ) } ] ) ; ngFileUpload . filter ( "ngfDataUrl" , [ "UploadDataUrl" , "$sce" , function ( a , f ) { return function ( c , b , e ) { if ( angular . isString ( c ) ) return f . trustAsResourceUrl ( c ) ; var g = c && ( ( b ? c . $ngfDataUrl : c . $ngfBlobUrl ) || c . $ngfDataUrl ) ; return c && ! g ? ( ! c . $ngfDataUrlFilterInProgress && angular . isObject ( c ) &&
( c . $ngfDataUrlFilterInProgress = ! 0 , a . dataUrl ( c , b ) ) , "" ) : ( c && delete c . $ngfDataUrlFilterInProgress , ( c && g ? e ? f . trustAsResourceUrl ( g ) : g : c ) || "" ) } } ] ) } ) ( ) ;
ngFileUpload . service ( "UploadValidate" , [ "UploadDataUrl" , "$q" , "$timeout" , function ( a , f , k ) { function h ( a ) { var b = "" , c = [ ] ; if ( 2 < a . length && "/" === a [ 0 ] && "/" === a [ a . length - 1 ] ) b = a . substring ( 1 , a . length - 1 ) ; else { var f = a . split ( "," ) ; if ( 1 < f . length ) for ( a = 0 ; a < f . length ; a ++ ) { var k = h ( f [ a ] ) ; k . regexp ? ( b += "(" + k . regexp + ")" , a < f . length - 1 && ( b += "|" ) ) : c = c . concat ( k . excludes ) } else 0 === a . indexOf ( "!" ) ? c . push ( "^((?!" + h ( a . substring ( 1 ) ) . regexp + ").)*$" ) : ( 0 === a . indexOf ( "." ) && ( a = "*" + a ) , b = "^" + a . replace ( RegExp ( "[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\-]" ,
"g" ) , "\\$&" ) + "$" , b = b . replace ( /\\\*/g , ".*" ) . replace ( /\\\?/g , "." ) ) } return { regexp : b , excludes : c } } function c ( a , c ) { null == c || a . $dirty || ( a . $setDirty ? a . $setDirty ( ) : a . $dirty = ! 0 ) } return a . validatePattern = function ( a , c ) { if ( ! c ) return ! 0 ; var b = h ( c ) , e = ! 0 ; b . regexp && b . regexp . length && ( e = new RegExp ( b . regexp , "i" ) , e = null != a . type && e . test ( a . type ) || null != a . name && e . test ( a . name ) ) ; for ( var f = b . excludes . length ; f -- ; ) var k = new RegExp ( b . excludes [ f ] , "i" ) , e = e && ( null == a . type || k . test ( a . type ) ) && ( null == a . name || k . test ( a . name ) ) ; return e } ,
a . ratioToFloat = function ( a ) { a = a . toString ( ) ; var b = a . search ( /[x:]/i ) ; return - 1 < b ? parseFloat ( a . substring ( 0 , b ) ) / parseFloat ( a . substring ( b + 1 ) ) : parseFloat ( a ) } , a . registerModelChangeValidator = function ( b , c , f ) { b && b . $formatters . push ( function ( e ) { b . $dirty && ( e && ! angular . isArray ( e ) && ( e = [ e ] ) , a . validate ( e , 0 , b , c , f ) . then ( function ( ) { a . applyModelValidation ( b , e ) } ) ) } ) } , a . applyModelValidation = function ( a , e ) { c ( a , e ) ; angular . forEach ( a . $ngfValidations , function ( b ) { a . $setValidity ( b . name , b . valid ) } ) } , a . getValidationAttr = function ( b ,
c , f , h , k ) { var e = "ngf" + f [ 0 ] . toUpperCase ( ) + f . substr ( 1 ) , e = a . attrGetter ( e , b , c , { $file : k } ) ; null == e && ( e = a . attrGetter ( "ngfValidate" , b , c , { $file : k } ) ) && ( b = ( h || f ) . split ( "." ) , e = e [ b [ 0 ] ] , 1 < b . length && ( e = e && e [ b [ 1 ] ] ) ) ; return e } , a . validate = function ( b , c , g , h , k ) { function e ( c , e , f ) { if ( b ) { for ( var m = b . length , n = null ; m -- ; ) { var r = b [ m ] ; if ( r ) { var q = a . getValidationAttr ( h , k , c , e , r ) ; null != q && ( f ( r , q , m ) || ( r . $error = c , ( r . $errorMessages = r . $errorMessages || { } ) [ c ] = ! 0 , r . $errorParam = q , b . splice ( m , 1 ) , n = ! 1 ) ) } } null !== n && g . $ngfValidations . push ( { name : c ,
valid : n } ) } } function m ( c , e , m , n , u ) { function q ( a , b , e ) { null != e ? n ( b , e ) . then ( function ( f ) { u ( f , e ) ? a . resolve ( ) : ( b . $error = c , ( b . $errorMessages = b . $errorMessages || { } ) [ c ] = ! 0 , b . $errorParam = e , a . reject ( ) ) } , function ( ) { r ( "ngfValidateForce" , { $file : b } ) ? ( b . $error = c , ( b . $errorMessages = b . $errorMessages || { } ) [ c ] = ! 0 , b . $errorParam = e , a . reject ( ) ) : a . resolve ( ) } ) : a . resolve ( ) } var t = [ a . emptyPromise ( ) ] ; return b ? ( b = void 0 === b . length ? [ b ] : b , angular . forEach ( b , function ( b ) { var g = f . defer ( ) ; return t . push ( g . promise ) , ! m || null != b . type && 0 === b . type . search ( m ) ?
void ( "dimensions" === c && null != a . attrGetter ( "ngfDimensions" , h ) ? a . imageDimensions ( b ) . then ( function ( a ) { q ( g , b , r ( "ngfDimensions" , { $file : b , $width : a . width , $height : a . height } ) ) } , function ( ) { g . reject ( ) } ) : "duration" === c && null != a . attrGetter ( "ngfDuration" , h ) ? a . mediaDuration ( b ) . then ( function ( a ) { q ( g , b , r ( "ngfDuration" , { $file : b , $duration : a } ) ) } , function ( ) { g . reject ( ) } ) : q ( g , b , a . getValidationAttr ( h , k , c , e , b ) ) ) : void g . resolve ( ) } ) , f . all ( t ) . then ( function ( ) { g . $ngfValidations . push ( { name : c , valid : ! 0 } ) } , function ( ) { g . $ngfValidations . push ( { name : c ,
valid : ! 1 } ) } ) ) : void 0 } g = g || { } ; g . $ngfValidations = g . $ngfValidations || [ ] ; angular . forEach ( g . $ngfValidations , function ( a ) { a . valid = ! 0 } ) ; var r = function ( b , c ) { return a . attrGetter ( b , h , k , c ) } ; if ( null == b || 0 === b . length ) return a . emptyPromise ( g ) ; b = void 0 === b . length ? [ b ] : b . slice ( 0 ) ; e ( "maxFiles" , null , function ( a , b , e ) { return b > c + e } ) ; e ( "pattern" , null , a . validatePattern ) ; e ( "minSize" , "size.min" , function ( b , c ) { return b . size + . 1 >= a . translateScalars ( c ) } ) ; e ( "maxSize" , "size.max" , function ( b , c ) { return b . size - . 1 <= a . translateScalars ( c ) } ) ;
2017-07-25 17:51:59 +00:00
var q = 0 ; if ( e ( "maxTotalSize" , null , function ( c , e ) { return q += c . size , ! ( q > a . translateScalars ( e ) ) || ( b . splice ( 0 , b . length ) , ! 1 ) } ) , e ( "validateFn" , null , function ( a , b ) { return ! 0 === b || null === b || "" === b } ) , ! b . length ) return a . emptyPromise ( g , g . $ngfValidations ) ; var v = f . defer ( ) , z = [ ] ; return z . push ( a . happyPromise ( m ( "maxHeight" , "height.max" , /image/ , this . imageDimensions , function ( a , b ) { return a . height <= b } ) ) ) , z . push ( a . happyPromise ( m ( "minHeight" , "height.min" , /image/ , this . imageDimensions , function ( a , b ) { return a . height >= b } ) ) ) , z . push ( a . happyPromise ( m ( "maxWidth" ,
2017-07-20 23:09:21 +00:00
"width.max" , /image/ , this . imageDimensions , function ( a , b ) { return a . width <= b } ) ) ) , z . push ( a . happyPromise ( m ( "minWidth" , "width.min" , /image/ , this . imageDimensions , function ( a , b ) { return a . width >= b } ) ) ) , z . push ( a . happyPromise ( m ( "dimensions" , null , /image/ , function ( b , c ) { return a . emptyPromise ( c ) } , function ( a ) { return a } ) ) ) , z . push ( a . happyPromise ( m ( "ratio" , null , /image/ , this . imageDimensions , function ( b , c ) { for ( var e = c . toString ( ) . split ( "," ) , f = ! 1 , g = 0 ; g < e . length ; g ++ ) 1E-4 > Math . abs ( b . width / b . height - a . ratioToFloat ( e [ g ] ) ) && ( f = ! 0 ) ;
return f } ) ) ) , z . push ( a . happyPromise ( m ( "maxRatio" , "ratio.max" , /image/ , this . imageDimensions , function ( b , c ) { return 1E-4 > b . width / b . height - a . ratioToFloat ( c ) } ) ) ) , z . push ( a . happyPromise ( m ( "minRatio" , "ratio.min" , /image/ , this . imageDimensions , function ( b , c ) { return - 1E-4 < b . width / b . height - a . ratioToFloat ( c ) } ) ) ) , z . push ( a . happyPromise ( m ( "maxDuration" , "duration.max" , /audio|video/ , this . mediaDuration , function ( b , c ) { return b <= a . translateScalars ( c ) } ) ) ) , z . push ( a . happyPromise ( m ( "minDuration" , "duration.min" , /audio|video/ , this . mediaDuration ,
function ( b , c ) { return b >= a . translateScalars ( c ) } ) ) ) , z . push ( a . happyPromise ( m ( "duration" , null , /audio|video/ , function ( b , c ) { return a . emptyPromise ( c ) } , function ( a ) { return a } ) ) ) , z . push ( a . happyPromise ( m ( "validateAsyncFn" , null , null , function ( a , b ) { return b } , function ( a ) { return ! 0 === a || null === a || "" === a } ) ) ) , f . all ( z ) . then ( function ( ) { v . resolve ( g , g . $ngfValidations ) } ) } , a . imageDimensions = function ( b ) { if ( b . $ngfWidth && b . $ngfHeight ) { var c = f . defer ( ) ; return k ( function ( ) { c . resolve ( { width : b . $ngfWidth , height : b . $ngfHeight } ) } ) , c . promise } if ( b . $ngfDimensionPromise ) return b . $ngfDimensionPromise ;
var g = f . defer ( ) ; return k ( function ( ) { return 0 !== b . type . indexOf ( "image" ) ? void g . reject ( "not image" ) : void a . dataUrl ( b ) . then ( function ( a ) { function c ( ) { var a = h [ 0 ] . clientWidth , c = h [ 0 ] . clientHeight ; h . remove ( ) ; b . $ngfWidth = a ; b . $ngfHeight = c ; g . resolve ( { width : a , height : c } ) } function e ( ) { h . remove ( ) ; g . reject ( "load error" ) } function f ( ) { k ( function ( ) { h [ 0 ] . parentNode && ( h [ 0 ] . clientWidth ? c ( ) : 10 < r ? e ( ) : f ( ) ) } , 1E3 ) } var h = angular . element ( "<img>" ) . attr ( "src" , a ) . css ( "visibility" , "hidden" ) . css ( "position" , "fixed" ) . css ( "max-width" ,
"none !important" ) . css ( "max-height" , "none !important" ) ; h . on ( "load" , c ) ; h . on ( "error" , e ) ; var r = 0 ; f ( ) ; angular . element ( document . getElementsByTagName ( "body" ) [ 0 ] ) . append ( h ) } , function ( ) { g . reject ( "load error" ) } ) } ) , b . $ngfDimensionPromise = g . promise , b . $ngfDimensionPromise [ "finally" ] ( function ( ) { delete b . $ngfDimensionPromise } ) , b . $ngfDimensionPromise } , a . mediaDuration = function ( b ) { if ( b . $ngfDuration ) { var c = f . defer ( ) ; return k ( function ( ) { c . resolve ( b . $ngfDuration ) } ) , c . promise } if ( b . $ngfDurationPromise ) return b . $ngfDurationPromise ;
var g = f . defer ( ) ; return k ( function ( ) { return 0 !== b . type . indexOf ( "audio" ) && 0 !== b . type . indexOf ( "video" ) ? void g . reject ( "not media" ) : void a . dataUrl ( b ) . then ( function ( a ) { function c ( ) { var a = h [ 0 ] . duration ; b . $ngfDuration = a ; h . remove ( ) ; g . resolve ( a ) } function e ( ) { h . remove ( ) ; g . reject ( "load error" ) } function f ( ) { k ( function ( ) { h [ 0 ] . parentNode && ( h [ 0 ] . duration ? c ( ) : 10 < r ? e ( ) : f ( ) ) } , 1E3 ) } var h = angular . element ( 0 === b . type . indexOf ( "audio" ) ? "<audio>" : "<video>" ) . attr ( "src" , a ) . css ( "visibility" , "none" ) . css ( "position" , "fixed" ) ; h . on ( "loadedmetadata" ,
c ) ; h . on ( "error" , e ) ; var r = 0 ; f ( ) ; angular . element ( document . body ) . append ( h ) } , function ( ) { g . reject ( "load error" ) } ) } ) , b . $ngfDurationPromise = g . promise , b . $ngfDurationPromise [ "finally" ] ( function ( ) { delete b . $ngfDurationPromise } ) , b . $ngfDurationPromise } , a } ] ) ;
ngFileUpload . service ( "UploadResize" , [ "UploadValidate" , "$q" , function ( a , f ) { var k = function ( h , c , b , e , g , k , m , n ) { var r = f . defer ( ) , x = document . createElement ( "canvas" ) , q = document . createElement ( "img" ) ; return q . onload = function ( ) { var f , h , t , B ; if ( null != n && ! 1 === n ( q . width , q . height ) ) return void r . reject ( "resizeIf" ) ; try { if ( k ) { var F = a . ratioToFloat ( k ) ; F > q . width / q . height ? ( c = q . width , b = c / F ) : ( b = q . height , c = b * F ) } c || ( c = q . width ) ; b || ( b = q . height ) ; var p = q . width , u = q . height , I = m ? Math . max ( c / p , b / u ) : Math . min ( c / p , b / u ) ; f = p * I ; h = u * I ; t = p * I -
c ; B = u * I - b ; x . width = Math . min ( f , c ) ; x . height = Math . min ( h , b ) ; x . getContext ( "2d" ) . drawImage ( q , Math . min ( 0 , - t / 2 ) , Math . min ( 0 , - B / 2 ) , f , h ) ; r . resolve ( x . toDataURL ( g || "image/WebP" , e || . 934 ) ) } catch ( J ) { r . reject ( J ) } } , q . onerror = function ( ) { r . reject ( ) } , q . src = h , r . promise } ; return a . dataUrltoBlob = function ( a , c , b ) { var e = a . split ( "," ) ; a = e [ 0 ] . match ( /:(.*?);/ ) [ 1 ] ; for ( var e = atob ( e [ 1 ] ) , f = e . length , h = new Uint8Array ( f ) ; f -- ; ) h [ f ] = e . charCodeAt ( f ) ; a = new window . Blob ( [ h ] , { type : a } ) ; return a . name = c , a . $ngfOrigSize = b , a } , a . isResizeSupported = function ( ) { var a =
document . createElement ( "canvas" ) ; return window . atob && a . getContext && a . getContext ( "2d" ) && window . Blob } , a . isResizeSupported ( ) && Object . defineProperty ( window . Blob . prototype , "name" , { get : function ( ) { return this . $ngfName } , set : function ( a ) { this . $ngfName = a } , configurable : ! 0 } ) , a . resize = function ( h , c , b , e , g , r , m , n , t ) { if ( 0 !== h . type . indexOf ( "image" ) ) return a . emptyPromise ( h ) ; var x = f . defer ( ) ; return a . dataUrl ( h , ! 0 ) . then ( function ( f ) { k ( f , c , b , e , g || h . type , r , m , n ) . then ( function ( b ) { if ( "image/jpeg" === h . type && t ) try { b = a . restoreExif ( f ,
b ) } catch ( A ) { setTimeout ( function ( ) { throw A ; } , 1 ) } try { var c = a . dataUrltoBlob ( b , h . name , h . size ) ; x . resolve ( c ) } catch ( A ) { x . reject ( A ) } } , function ( a ) { "resizeIf" === a && x . resolve ( h ) ; x . reject ( a ) } ) } , function ( a ) { x . reject ( a ) } ) , x . promise } , a } ] ) ;
( function ( ) { function a ( a , h , c , b , e , g , r , m , n , t ) { function k ( ) { return h . attr ( "disabled" ) || F ( "ngfDropDisabled" , a ) } function q ( e , f ) { m . updateModel ( b , c , a , F ( "ngfChange" ) || F ( "ngfDrop" ) , e , f ) } function v ( b , e ) { if ( ! m . shouldUpdateOn ( b , c , a ) || ! e ) return m . rejectPromise ( [ ] ) ; var f = [ ] ; e . replace ( /<(img src|img [^>]* src) *=\"([^\"]*)\"/gi , function ( a , b , c ) { f . push ( c ) } ) ; var g = [ ] , h = [ ] ; if ( f . length ) { angular . forEach ( f , function ( a ) { g . push ( m . urlToBlob ( a ) . then ( function ( a ) { h . push ( a ) } ) ) } ) ; var k = t . defer ( ) ; return t . all ( g ) . then ( function ( ) { k . resolve ( h ) } ,
function ( a ) { k . reject ( a ) } ) , k . promise } return m . emptyPromise ( ) } function z ( a , b , c , e ) { b = F ( "ngfDragOverClass" , a , { $event : c } ) ; var f = "dragover" ; if ( angular . isString ( b ) ) f = b ; else if ( b && ( b . delay && ( J = b . delay ) , b . accept || b . reject ) ) { var g = c . dataTransfer . items ; if ( null != g && g . length ) for ( a = b . pattern || F ( "ngfPattern" , a , { $event : c } ) , c = g . length ; c -- ; ) { if ( ! m . validatePattern ( g [ c ] , a ) ) { f = b . reject ; break } f = b . accept } else f = b . accept } e ( f ) } function A ( b , e , f , g ) { function h ( a , b ) { var c = t . defer ( ) ; if ( null != a ) if ( a . isDirectory ) { var e = [ m . emptyPromise ( ) ] ;
if ( u ) { var f = { type : "directory" } ; f . name = f . path = ( b || "" ) + a . name + a . name ; q . push ( f ) } var g = a . createReader ( ) , r = [ ] , v = function ( ) { g . readEntries ( function ( f ) { try { f . length ? ( r = r . concat ( Array . prototype . slice . call ( f || [ ] , 0 ) ) , v ( ) ) : ( angular . forEach ( r . slice ( 0 ) , function ( c ) { q . length <= k && n >= p && e . push ( h ( c , ( b ? b : "" ) + a . name + "/" ) ) } ) , t . all ( e ) . then ( function ( ) { c . resolve ( ) } , function ( a ) { c . reject ( a ) } ) ) } catch ( pa ) { c . reject ( pa ) } } , function ( a ) { c . reject ( a ) } ) } ; v ( ) } else a . file ( function ( a ) { try { a . path = ( b ? b : "" ) + a . name , u && ( a = m . rename ( a , a . path ) ) ,
q . push ( a ) , p += a . size , c . resolve ( ) } catch ( pa ) { c . reject ( pa ) } } , function ( a ) { c . reject ( a ) } ) ; return c . promise } var k = m . getValidationAttr ( c , a , "maxFiles" ) || Number . MAX _VALUE , n = m . getValidationAttr ( c , a , "maxTotalSize" ) || Number . MAX _VALUE , u = F ( "ngfIncludeDir" , a ) , q = [ ] , p = 0 , v = [ m . emptyPromise ( ) ] ; if ( b && 0 < b . length && "file" !== r . protocol ( ) ) for ( e = 0 ; e < b . length ; e ++ ) { if ( b [ e ] . webkitGetAsEntry && b [ e ] . webkitGetAsEntry ( ) && b [ e ] . webkitGetAsEntry ( ) . isDirectory ) { var x = b [ e ] . webkitGetAsEntry ( ) ; if ( x . isDirectory && ! f ) continue ; null != x && v . push ( h ( x ) ) } else x =
b [ e ] . getAsFile ( ) , null != x && ( q . push ( x ) , p += x . size ) ; if ( q . length > k || p > n || ! g && 0 < q . length ) break } else if ( null != e ) for ( b = 0 ; b < e . length && ! ( f = e . item ( b ) , ( f . type || 0 < f . size ) && ( q . push ( f ) , p += f . size ) , q . length > k || p > n || ! g && 0 < q . length ) ; b ++ ) ; var E = t . defer ( ) ; return t . all ( v ) . then ( function ( ) { if ( g || u || ! q . length ) E . resolve ( q ) ; else { for ( var a = 0 ; q [ a ] && "directory" === q [ a ] . type ; ) a ++ ; E . resolve ( [ q [ a ] ] ) } } , function ( a ) { E . reject ( a ) } ) , E . promise } var B = f ( ) , F = function ( a , b , e ) { return m . attrGetter ( a , c , b , e ) } ; if ( F ( "dropAvailable" ) && g ( function ( ) { a [ F ( "dropAvailable" ) ] ?
a [ F ( "dropAvailable" ) ] . value = B : a [ F ( "dropAvailable" ) ] = B } ) , ! B ) return void ( ! 0 === F ( "ngfHideOnDropNotAvailable" , a ) && h . css ( "display" , "none" ) ) ; null == F ( "ngfSelect" ) && m . registerModelChangeValidator ( b , c , a ) ; var p , u = null , I = e ( F ( "ngfStopPropagation" ) ) , J = 1 ; h [ 0 ] . addEventListener ( "dragover" , function ( b ) { if ( ! k ( ) && m . shouldUpdateOn ( "drop" , c , a ) ) { if ( b . preventDefault ( ) , I ( a ) && b . stopPropagation ( ) , - 1 < navigator . userAgent . indexOf ( "Chrome" ) ) { var e = b . dataTransfer . effectAllowed ; b . dataTransfer . dropEffect = "move" === e || "linkMove" ===
e ? "move" : "copy" } g . cancel ( u ) ; p || ( p = "C" , z ( a , c , b , function ( c ) { p = c ; h . addClass ( p ) ; F ( "ngfDrag" , a , { $isDragging : ! 0 , $class : p , $event : b } ) } ) ) } } , ! 1 ) ; h [ 0 ] . addEventListener ( "dragenter" , function ( b ) { ! k ( ) && m . shouldUpdateOn ( "drop" , c , a ) && ( b . preventDefault ( ) , I ( a ) && b . stopPropagation ( ) ) } , ! 1 ) ; h [ 0 ] . addEventListener ( "dragleave" , function ( b ) { ! k ( ) && m . shouldUpdateOn ( "drop" , c , a ) && ( b . preventDefault ( ) , I ( a ) && b . stopPropagation ( ) , u = g ( function ( ) { p && h . removeClass ( p ) ; p = null ; F ( "ngfDrag" , a , { $isDragging : ! 1 , $event : b } ) } , J || 100 ) ) } , ! 1 ) ; h [ 0 ] . addEventListener ( "drop" ,
function ( b ) { if ( ! k ( ) && m . shouldUpdateOn ( "drop" , c , a ) ) { b . preventDefault ( ) ; I ( a ) && b . stopPropagation ( ) ; p && h . removeClass ( p ) ; p = null ; var e , f = b . dataTransfer . items ; try { e = b . dataTransfer && b . dataTransfer . getData && b . dataTransfer . getData ( "text/html" ) } catch ( K ) { } A ( f , b . dataTransfer . files , ! 1 !== F ( "ngfAllowDir" , a ) , F ( "multiple" ) || F ( "ngfMultiple" , a ) ) . then ( function ( a ) { a . length ? q ( a , b ) : v ( "dropUrl" , e ) . then ( function ( a ) { q ( a , b ) } ) } ) } } , ! 1 ) ; h [ 0 ] . addEventListener ( "paste" , function ( b ) { if ( - 1 < navigator . userAgent . toLowerCase ( ) . indexOf ( "firefox" ) &&
F ( "ngfEnableFirefoxPaste" , a ) && b . preventDefault ( ) , ! k ( ) && m . shouldUpdateOn ( "paste" , c , a ) ) { var e = [ ] , f = b . clipboardData || b . originalEvent . clipboardData ; if ( f && f . items ) for ( var g = 0 ; g < f . items . length ; g ++ ) - 1 !== f . items [ g ] . type . indexOf ( "image" ) && e . push ( f . items [ g ] . getAsFile ( ) ) ; e . length ? q ( e , b ) : v ( "pasteUrl" , f ) . then ( function ( a ) { q ( a , b ) } ) } } , ! 1 ) ; - 1 < navigator . userAgent . toLowerCase ( ) . indexOf ( "firefox" ) && F ( "ngfEnableFirefoxPaste" , a ) && ( h . attr ( "contenteditable" , ! 0 ) , h . on ( "keypress" , function ( a ) { a . metaKey || a . ctrlKey || a . preventDefault ( ) } ) ) }
function f ( ) { var a = document . createElement ( "div" ) ; return "draggable" in a && "ondrop" in a && ! /Edge\/12./i . test ( navigator . userAgent ) } ngFileUpload . directive ( "ngfDrop" , [ "$parse" , "$timeout" , "$location" , "Upload" , "$http" , "$q" , function ( f , h , c , b , e , g ) { return { restrict : "AEC" , require : "?ngModel" , link : function ( k , m , n , t ) { a ( k , m , n , t , f , h , c , b , e , g ) } } } ] ) ; ngFileUpload . directive ( "ngfNoFileDrop" , function ( ) { return function ( a , h ) { f ( ) && h . css ( "display" , "none" ) } } ) ; ngFileUpload . directive ( "ngfDropAvailable" , [ "$parse" , "$timeout" , "Upload" ,
function ( a , h , c ) { return function ( b , e , g ) { if ( f ( ) ) { var k = a ( c . attrGetter ( "ngfDropAvailable" , g ) ) ; h ( function ( ) { k ( b ) ; k . assign && k . assign ( b , ! 0 ) } ) } } } ] ) } ) ( ) ;
ngFileUpload . service ( "UploadExif" , [ "UploadResize" , "$q" , function ( a , f ) { function k ( a , b , e , f ) { switch ( b ) { case 2 : return a . transform ( - 1 , 0 , 0 , 1 , e , 0 ) ; case 3 : return a . transform ( - 1 , 0 , 0 , - 1 , e , f ) ; case 4 : return a . transform ( 1 , 0 , 0 , - 1 , 0 , f ) ; case 5 : return a . transform ( 0 , 1 , 1 , 0 , 0 , 0 ) ; case 6 : return a . transform ( 0 , 1 , - 1 , 0 , f , 0 ) ; case 7 : return a . transform ( 0 , - 1 , - 1 , 0 , f , e ) ; case 8 : return a . transform ( 0 , - 1 , 1 , 0 , 0 , e ) } } function h ( a ) { var b = "" ; a = new Uint8Array ( a ) ; for ( var c = a . byteLength , f = 0 ; c > f ; f ++ ) b += String . fromCharCode ( a [ f ] ) ; return window . btoa ( b ) }
return a . isExifSupported = function ( ) { return window . FileReader && ( new FileReader ) . readAsArrayBuffer && a . isResizeSupported ( ) } , a . readOrientation = function ( a ) { var b = f . defer ( ) , c = new FileReader ; a = a . slice ? a . slice ( 0 , 65536 ) : a ; return c . readAsArrayBuffer ( a ) , c . onerror = function ( a ) { return b . reject ( a ) } , c . onload = function ( a ) { var c = { orientation : 1 } , e = new DataView ( this . result ) ; if ( 65496 !== e . getUint16 ( 0 , ! 1 ) ) return b . resolve ( c ) ; for ( var f = e . byteLength , g = 2 ; f > g ; ) { var h = e . getUint16 ( g , ! 1 ) ; if ( g += 2 , 65505 === h ) { if ( 1165519206 !== e . getUint32 ( g +=
2 , ! 1 ) ) break ; for ( var h = 18761 === e . getUint16 ( g += 6 , ! 1 ) , g = g + e . getUint32 ( g + 4 , h ) , k = e . getUint16 ( g , h ) , g = g + 2 , v = 0 ; k > v ; v ++ ) if ( 274 === e . getUint16 ( g + 12 * v , h ) ) return f = e . getUint16 ( g + 12 * v + 8 , h ) , 2 <= f && 8 >= f && ( e . setUint16 ( g + 12 * v + 8 , 1 , h ) , c . fixedArrayBuffer = a . target . result ) , c . orientation = f , b . resolve ( c ) } else { if ( 65280 !== ( 65280 & h ) ) break ; g += e . getUint16 ( g , ! 1 ) } } return b . resolve ( c ) } , b . promise } , a . applyExifRotation = function ( c ) { if ( 0 !== c . type . indexOf ( "image/jpeg" ) ) return a . emptyPromise ( c ) ; var b = f . defer ( ) ; return a . readOrientation ( c ) . then ( function ( e ) { return 2 >
e . orientation || 8 < e . orientation ? b . resolve ( c ) : void a . dataUrl ( c , ! 0 ) . then ( function ( f ) { var g = document . createElement ( "canvas" ) , m = document . createElement ( "img" ) ; m . onload = function ( ) { try { g . width = 4 < e . orientation ? m . height : m . width ; g . height = 4 < e . orientation ? m . width : m . height ; var f = g . getContext ( "2d" ) ; k ( f , e . orientation , m . width , m . height ) ; f . drawImage ( m , 0 , 0 ) ; var r = g . toDataURL ( c . type || "image/WebP" , . 934 ) , r = a . restoreExif ( h ( e . fixedArrayBuffer ) , r ) , x = a . dataUrltoBlob ( r , c . name ) ; b . resolve ( x ) } catch ( q ) { return b . reject ( q ) } } ; m . onerror =
function ( ) { b . reject ( ) } ; m . src = f } , function ( a ) { b . reject ( a ) } ) } , function ( a ) { b . reject ( a ) } ) , b . promise } , a . restoreExif = function ( a , b ) { var c = { } ; return c . KEY _STR = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" , c . encode64 = function ( a ) { var b , c , e , f , g = "" , h , k , z = 0 ; do b = a [ z ++ ] , c = a [ z ++ ] , h = a [ z ++ ] , e = b >> 2 , b = ( 3 & b ) << 4 | c >> 4 , f = ( 15 & c ) << 2 | h >> 6 , k = 63 & h , isNaN ( c ) ? f = k = 64 : isNaN ( h ) && ( k = 64 ) , g = g + this . KEY _STR . charAt ( e ) + this . KEY _STR . charAt ( b ) + this . KEY _STR . charAt ( f ) + this . KEY _STR . charAt ( k ) ; while ( z < a . length ) ; return g } , c . restore =
2017-04-11 07:10:36 +00:00
function ( a , b ) { a . match ( "data:image/jpeg;base64," ) && ( a = a . replace ( "data:image/jpeg;base64," , "" ) ) ; var c = this . decode64 ( a ) , c = this . slice2Segments ( c ) , c = this . exifManipulation ( b , c ) ; return "data:image/jpeg;base64," + this . encode64 ( c ) } , c . exifManipulation = function ( a , b ) { var c = this . getExifArray ( b ) , c = this . insertExif ( a , c ) ; return new Uint8Array ( c ) } , c . getExifArray = function ( a ) { for ( var b , c = 0 ; c < a . length ; c ++ ) if ( b = a [ c ] , 255 === b [ 0 ] & 225 === b [ 1 ] ) return b ; return [ ] } , c . insertExif = function ( a , b ) { var c = a . replace ( "data:image/jpeg;base64," ,
2017-04-11 11:04:48 +00:00
"" ) , e = this . decode64 ( c ) , f = e . indexOf ( 255 , 3 ) , c = e . slice ( 0 , f ) , e = e . slice ( f ) ; return c = c . concat ( b ) , c . concat ( e ) } , c . slice2Segments = function ( a ) { for ( var b = 0 , c = [ ] ; ! ( 255 === a [ b ] & 218 === a [ b + 1 ] ) ; ) { if ( 255 === a [ b ] & 216 === a [ b + 1 ] ) b += 2 ; else { var e = b + ( 256 * a [ b + 2 ] + a [ b + 3 ] ) + 2 , b = a . slice ( b , e ) ; c . push ( b ) ; b = e } if ( b > a . length ) break } return c } , c . decode64 = function ( a ) { var b , c , e , f , g , h = 0 , k = [ ] ; /[^A-Za-z0-9\+\/\=]/g . exec ( a ) && console . log ( "There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, NaNExpect errors in decoding." ) ;
2017-07-20 23:09:21 +00:00
a = a . replace ( /[^A-Za-z0-9\+\/\=]/g , "" ) ; do b = this . KEY _STR . indexOf ( a . charAt ( h ++ ) ) , c = this . KEY _STR . indexOf ( a . charAt ( h ++ ) ) , e = this . KEY _STR . indexOf ( a . charAt ( h ++ ) ) , g = this . KEY _STR . indexOf ( a . charAt ( h ++ ) ) , b = b << 2 | c >> 4 , c = ( 15 & c ) << 4 | e >> 2 , f = ( 3 & e ) << 6 | g , k . push ( b ) , 64 !== e && k . push ( c ) , 64 !== g && k . push ( f ) ; while ( h < a . length ) ; return k } , c . restore ( a , b ) } , a } ] ) ; "undefined" != typeof module && "undefined" != typeof exports && module . exports === exports && ( module . exports = "ui.date" ) ;
( function ( a ) { a . module ( "ui.date" , [ ] ) . constant ( "uiDateConfig" , { } ) . constant ( "uiDateFormatConfig" , "" ) . factory ( "uiDateConverter" , [ "uiDateFormatConfig" , function ( f ) { return { stringToDate : function ( k , h ) { if ( k = k || f , a . isDate ( h ) && ! isNaN ( h ) ) return h ; if ( a . isString ( h ) ) { if ( k ) return jQuery . datepicker . parseDate ( k , h ) ; var c = new Date ( h ) ; return isNaN ( c . getTime ( ) ) ? null : c } return a . isNumber ( h ) ? new Date ( h ) : null } , dateToString : function ( a , h ) { if ( a = a || f , h ) { if ( a ) try { return jQuery . datepicker . formatDate ( a , h ) } catch ( c ) { return } if ( h . toISOString ) return h . toISOString ( ) } return null } } } ] ) . directive ( "uiDate" ,
[ "uiDateConfig" , "uiDateConverter" , function ( f , k ) { return { require : "?ngModel" , link : function ( h , c , b , e ) { var g = function ( ) { return a . extend ( { } , f , h . $eval ( b . uiDate ) ) } ; h . $watch ( g , function ( ) { function f ( ) { var b = [ "Hours" , "Minutes" , "Seconds" , "Milliseconds" ] , f = a . isDate ( e . $modelValue ) , g = { } ; f && e . $modelValue . toDateString ( ) === c . datepicker ( "getDate" ) . toDateString ( ) || ( f && a . forEach ( b , function ( a ) { g [ a ] = e . $modelValue [ "get" + a ] ( ) } ) , e . $setViewValue ( c . datepicker ( "getDate" ) ) , f && a . forEach ( b , function ( a ) { e . $viewValue [ "set" + a ] ( g [ a ] ) } ) ) }
var m = ! 1 , n = g ( ) ; if ( e ) { var t = n . onSelect || a . noop ; n . onSelect = function ( a , b ) { h . $apply ( function ( ) { m = ! 0 ; f ( ) ; t ( a , b ) ; c . blur ( ) } ) } ; var x = n . beforeShow || a . noop ; n . beforeShow = function ( a , b ) { m = ! 0 ; x ( a , b ) } ; var q = n . onClose || a . noop ; n . onClose = function ( a , b ) { m = ! 1 ; q ( a , b ) } ; c . off ( "blur.datepicker" ) . on ( "blur.datepicker" , function ( ) { m || h . $apply ( function ( ) { c . datepicker ( "setDate" , c . datepicker ( "getDate" ) ) ; f ( ) } ) } ) ; e . $validators . uiDateValidator = function ( c , e ) { return a . isDate ( k . stringToDate ( b . uiDateFormat , e ) ) } ; e . $parsers . push ( function ( a ) { return k . stringToDate ( b . uiDateFormat ,
a ) } ) ; e . $render = function ( ) { c . datepicker ( "setDate" , e . $modelValue ) } } c . data ( "datepicker" ) ? ( c . datepicker ( "option" , n ) , c . datepicker ( "refresh" ) ) : ( c . datepicker ( n ) , c . on ( "$destroy" , function ( ) { c . datepicker ( "hide" ) ; c . datepicker ( "destroy" ) } ) ) ; e && e . $render ( ) } , ! 0 ) } } } ] ) . directive ( "uiDateFormat" , [ "uiDateConverter" , function ( a ) { return { require : "ngModel" , link : function ( f , h , c , b ) { var e = c . uiDateFormat ; b . $formatters . unshift ( function ( b ) { return a . stringToDate ( e , b ) } ) ; b . $parsers . push ( function ( b ) { return a . dateToString ( e , b ) } ) } } } ] ) } ) ( angular ) ;
angular . module ( "angular-input-stars" , [ ] ) . service ( "FontAwesomeIcons" , [ "$http" , "$q" , function ( a , f ) { this . get = function ( ) { var k = f . defer ( ) ; return a . get ( "https://raw.githubusercontent.com/FortAwesome/Font-Awesome/gh-pages/icons.yml" ) . then ( function ( a ) { var c = { iconMap : { } , iconList : [ ] , iconCategoryList : [ ] } ; a = jsyaml . load ( a . data ) . icons ; for ( var b = 0 ; b < a . length ; b ++ ) { c . iconMap [ a [ b ] . name ] = a [ b ] . id ; c . iconList . push ( a [ b ] . name ) ; for ( var e = 0 ; e < a [ b ] . categories . length ; e ++ ) c . iconCategoryList [ a [ b ] . categories [ e ] ] || ( c . iconCategoryList [ a [ b ] . categories [ e ] ] =
[ ] ) , c . iconCategoryList [ a [ b ] . categories [ e ] ] . push ( a [ b ] . name ) } k . resolve ( c ) } , function ( a ) { var c = "Could not fetch FontAwesome Github Repo" ; a || ( c = a . data || a ) ; k . reject ( c ) } ) , k . promise } } ] ) . filter ( "toFaIcon" , [ "FontAwesomeIcons" , "$timeout" , function ( a , f ) { return function ( a , f , c ) { var b = { full : "" , empty : "" } ; a = 0 <= _ _indexOf . call ( c . iconList , a ) ? ( b . full = "fa-" + c . iconMap [ a ] , b . empty = "fa-" + c . iconMap [ a ] + "-o" , "thumbs-up" == a || "thumbs-down" == a ? b . empty = "fa-" + c . iconMap [ a ] . split ( "-" ) [ 0 ] + "-o-" + c . iconMap [ a ] . split ( "-" ) [ 1 ] : "Smile Outlined" ==
a && ( b . empty = "fa-frown-o" ) , b ) : ( console . error ( "Error no shape of type: " + a + " for rating input" ) , b ) ; return f ? a . empty : a . full } } ] ) . directive ( "inputStars" , [ "$rootScope" , "$filter" , "FontAwesomeIcons" , "$q" , function ( a , f , k , h ) { return { restrict : "EA" , replace : ! 0 , template : '<ul ng-class="listClass"><li ng-touch="paintStars($index)" ng-mouseenter="paintStars($index, true)" ng-mouseleave="unpaintStars($index, false)" ng-repeat="item in items track by $index"><i ng-class="getClass($index)" ng-click="setValue($index, $event)"></i></li></ul>' ,
require : "ngModel" , scope : ! 0 , link : function ( a , b , e , g ) { var c , m , n , t ; ( function ( ) { var a = h . defer ( ) ; return k . get ( ) . then ( function ( b ) { a . resolve ( b ) } , function ( b ) { a . reject ( Error ( "toShapeIcon Error: " + b ) ) } ) , a . promise } ) ( ) . then ( function ( h ) { a . items = Array ( + e . max ) ; c = f ( "toFaIcon" ) ( e . iconEmpty , ! 0 , h ) || e . iconEmpty || "fa-stars-o" ; m = e . iconHover || "angular-input-stars-hover" ; n = f ( "toFaIcon" ) ( e . iconFull , ! 1 , h ) || e . iconEmpty || "fa-stars" ; t = e . iconBase || "fa fa-fw" ; a . listClass = e . listClass || "angular-input-stars" ; a . readonly = void 0 !== e . readonly ;
! 0 ; e . $observe ( "max" , function ( b ) { a . items = Array ( + b ) } ) ; e . $observe ( "iconEmpty" , function ( a ) { c = f ( "toFaIcon" ) ( a , ! 0 , h ) || a || "fa-stars-o" } ) ; e . $observe ( "iconFull" , function ( a ) { n = f ( "toFaIcon" ) ( a , ! 1 , h ) || a || "fa-stars" } ) ; g . $render = function ( ) { a . last _value = g . $viewValue || 0 } ; a . getClass = function ( b ) { return b >= a . last _value ? t + " " + c : t + " " + n + " active " } ; a . unpaintStars = function ( b , c ) { a . paintStars ( a . last _value - 1 , c ) } ; a . paintStars = function ( e , f ) { if ( ! a . readonly ) { for ( var g = b . find ( "li" ) . find ( "i" ) , h = 0 ; h < g . length ; h ++ ) { var k = angular . element ( g [ h ] ) ;
e >= h ? ( k . removeClass ( c ) , k . addClass ( n ) , k . addClass ( "active" ) , k . addClass ( m ) ) : ( k . removeClass ( n ) , k . removeClass ( "active" ) , k . removeClass ( m ) , k . addClass ( c ) ) } ! f && g . removeClass ( m ) } } ; a . setValue = function ( b , c ) { a . readonly || ( c . target . getBoundingClientRect ( ) , a . last _value = b + 1 , g . $setViewValue ( a . last _value ) , e . onShapeClick && a . $eval ( e . onStarClick ) ) } } , function ( a ) { console . error ( "angular-input-stars.js | " + a . message || a ) } ) } } } ] ) ;
! function ( a ) { var f = function ( a , b ) { var c = Error ( a + " at character " + b ) ; throw c . index = b , c . description = a , c ; } , k = { "-" : ! 0 , "!" : ! 0 , "~" : ! 0 , "+" : ! 0 } , h = { "||" : 1 , "&&" : 2 , "|" : 3 , "^" : 4 , "&" : 5 , "==" : 6 , "!=" : 6 , "===" : 6 , "!==" : 6 , "<" : 7 , ">" : 7 , "<=" : 7 , ">=" : 7 , "<<" : 8 , ">>" : 8 , ">>>" : 8 , "+" : 9 , "-" : 9 , "*" : 10 , "/" : 10 , "%" : 10 } , c = function ( a ) { var b , c = 0 , e ; for ( e in a ) ( b = e . length ) > c && a . hasOwnProperty ( e ) && ( c = b ) ; return c } , b = c ( k ) , e = c ( h ) , g = { "true" : ! 0 , "false" : ! 1 , "null" : null } , r = function ( a , b , c ) { return { type : "||" === a || "&&" === a ? "LogicalExpression" : "BinaryExpression" ,
operator : a , left : b , right : c } } , m = function ( a ) { return 48 <= a && 57 >= a } , n = function ( a ) { return 36 === a || 95 === a || 65 <= a && 90 >= a || 97 <= a && 122 >= a || 128 <= a && ! h [ String . fromCharCode ( a ) ] } , t = function ( a ) { for ( var c , q , t = 0 , x = a . charAt , F = a . charCodeAt , p = function ( b ) { return x . call ( a , b ) } , u = function ( b ) { return F . call ( a , b ) } , I = a . length , J = function ( ) { for ( var a = u ( t ) ; 32 === a || 9 === a ; ) a = u ( ++ t ) } , E = function ( ) { var a , b , c ; var e , g , k , m , n ; if ( e = N ( ) , g = G ( ) , g ) { m = { value : g , prec : h [ g ] || 0 } ; ( n = N ( ) ) || f ( "Expected expression after " + g , t ) ; for ( c = [ e , m , n ] ; ( g = G ( ) ) &&
( k = h [ g ] || 0 , 0 !== k ) ; ) { for ( m = { value : g , prec : k } ; 2 < c . length && k <= c [ c . length - 2 ] . prec ; ) n = c . pop ( ) , g = c . pop ( ) . value , e = c . pop ( ) , e = r ( g , e , n ) , c . push ( e ) ; ( e = N ( ) ) || f ( "Expected expression after " + g , t ) ; c . push ( m , e ) } g = c . length - 1 ; for ( e = c [ g ] ; 1 < g ; ) e = r ( c [ g - 1 ] . value , c [ g - 2 ] , e ) , g -= 2 } c = e ; return J ( ) , 63 !== u ( t ) ? c : ( t ++ , a = E ( ) , a || f ( "Expected expression" , t ) , J ( ) , 58 === u ( t ) ? ( t ++ , b = E ( ) , b || f ( "Expected expression" , t ) , { type : "ConditionalExpression" , test : c , consequent : a , alternate : b } ) : void f ( "Expected :" , t ) ) } , G = function ( ) { J ( ) ; for ( var b = a . substr ( t ,
e ) , c = b . length ; 0 < c ; ) { if ( h . hasOwnProperty ( b ) ) return t += c , b ; b = b . substr ( 0 , -- c ) } return ! 1 } , N = function ( ) { var c , e , g ; if ( J ( ) , c = u ( t ) , m ( c ) || 46 === c ) { var h ; for ( e = "" ; m ( u ( t ) ) ; ) e += p ( t ++ ) ; if ( 46 === u ( t ) ) for ( e += p ( t ++ ) ; m ( u ( t ) ) ; ) e += p ( t ++ ) ; if ( g = p ( t ) , "e" === g || "E" === g ) { e += p ( t ++ ) ; g = p ( t ) ; for ( "+" !== g && "-" !== g || ( e += p ( t ++ ) ) ; m ( u ( t ) ) ; ) e += p ( t ++ ) ; m ( u ( t - 1 ) ) || f ( "Expected exponent (" + e + p ( t ) + ")" , t ) } return h = u ( t ) , n ( h ) ? f ( "Variable names cannot start with a number (" + e + p ( t ) + ")" , t ) : 46 === h && f ( "Unexpected period" , t ) , { type : "Literal" , value : parseFloat ( e ) ,
2017-07-25 17:51:59 +00:00
raw : e } } if ( 39 === c || 34 === c ) { g = "" ; h = p ( t ++ ) ; for ( c = ! 1 ; t < I ; ) { if ( e = p ( t ++ ) , e === h ) { c = ! 0 ; break } if ( "\\" === e ) switch ( e = p ( t ++ ) ) { case "n" : g += "\n" ; break ; case "r" : g += "\r" ; break ; case "t" : g += "\t" ; break ; case "b" : g += "\b" ; break ; case "f" : g += "\f" ; break ; case "v" : g += "\x0B" ; break ; default : g += "\\" + e } else g += e } return c || f ( 'Unclosed quote after "' + g + '"' , t ) , { type : "Literal" , value : g , raw : h + g + h } } if ( n ( c ) || 40 === c ) { e = u ( t ) ; 40 === e ? ( t ++ , e = E ( ) , e = ( J ( ) , 41 === u ( t ) ? ( t ++ , e ) : void f ( "Unclosed (" , t ) ) ) : e = K ( ) ; g = e ; J ( ) ; for ( e = u ( t ) ; 46 === e || 91 === e || 40 ===
2017-07-20 23:09:21 +00:00
e ; ) t ++ , 46 === e ? ( J ( ) , g = { type : "MemberExpression" , computed : ! 1 , object : g , property : K ( ) } ) : 91 === e ? ( g = { type : "MemberExpression" , computed : ! 0 , object : g , property : E ( ) } , J ( ) , e = u ( t ) , 93 !== e && f ( "Unclosed [" , t ) , t ++ ) : 40 === e && ( g = { type : "CallExpression" , arguments : P ( 41 ) , callee : g } ) , J ( ) , e = u ( t ) ; return g } if ( 91 === c ) return t ++ , { type : "ArrayExpression" , elements : P ( 93 ) } ; e = a . substr ( t , b ) ; for ( g = e . length ; 0 < g ; ) { if ( k . hasOwnProperty ( e ) ) return t += g , { type : "UnaryExpression" , operator : e , argument : N ( ) , prefix : ! 0 } ; e = e . substr ( 0 , -- g ) } return ! 1 } , K = function ( ) { var b ,
2017-07-25 17:51:59 +00:00
c = u ( t ) , e = t ; for ( n ( c ) ? t ++ : f ( "Unexpected " + p ( t ) , t ) ; t < I && ( c = u ( t ) , 36 === c || 95 === c || 65 <= c && 90 >= c || 97 <= c && 122 >= c || 48 <= c && 57 >= c || 128 <= c && ! h [ String . fromCharCode ( c ) ] ) ; ) t ++ ; return b = a . slice ( e , t ) , g . hasOwnProperty ( b ) ? { type : "Literal" , value : g [ b ] , raw : b } : "this" === b ? { type : "ThisExpression" } : { type : "Identifier" , name : b } } , P = function ( a ) { for ( var b , c , e = [ ] , g = ! 1 ; t < I ; ) { if ( J ( ) , b = u ( t ) , b === a ) { g = ! 0 ; t ++ ; break } 44 === b ? t ++ : ( c = E ( ) , c && "Compound" !== c . type || f ( "Expected comma" , t ) , e . push ( c ) ) } return g || f ( "Expected " + String . fromCharCode ( a ) , t ) ,
e } , V = [ ] ; t < I ; ) c = u ( t ) , 59 === c || 44 === c ? t ++ : ( q = E ( ) ) ? V . push ( q ) : t < I && f ( 'Unexpected "' + p ( t ) + '"' , t ) ; return 1 === V . length ? V [ 0 ] : { type : "Compound" , body : V } } ; if ( t . version = "0.3.1" , t . toString = function ( ) { return "JavaScript Expression Parser (JSEP) v" + t . version } , t . addUnaryOp = function ( a ) { return b = Math . max ( a . length , b ) , k [ a ] = ! 0 , this } , t . addBinaryOp = function ( a , b ) { return e = Math . max ( a . length , e ) , h [ a ] = b , this } , t . addLiteral = function ( a , b ) { return g [ a ] = b , this } , t . removeUnaryOp = function ( a ) { return delete k [ a ] , a . length === b && ( b = c ( k ) ) , this } ,
2017-07-20 23:09:21 +00:00
t . removeBinaryOp = function ( a ) { return delete h [ a ] , a . length === e && ( e = c ( h ) ) , this } , t . removeLiteral = function ( a ) { return delete g [ a ] , this } , "undefined" == typeof exports ) { var x = a . jsep ; a . jsep = t ; t . noConflict = function ( ) { return a . jsep === t && ( a . jsep = x ) , t } } else "undefined" != typeof module && module . exports ? exports = module . exports = t : exports . parse = t } ( this ) ;
! function ( a ) { "object" == typeof exports && "undefined" != typeof module ? module . exports = a ( ) : "function" == typeof define && define . amd ? define ( [ ] , a ) : ( "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this ) . Raven = a ( ) } ( function ( ) { return function f ( k , h , c ) { function b ( g , m ) { if ( ! h [ g ] ) { if ( ! k [ g ] ) { var n = "function" == typeof require && require ; if ( ! m && n ) return n ( g , ! 0 ) ; if ( e ) return e ( g , ! 0 ) ; n = Error ( "Cannot find module '" + g + "'" ) ; throw n . code = "MODULE_NOT_FOUND" , n ; } n = h [ g ] = { exports : { } } ;
k [ g ] [ 0 ] . call ( n . exports , function ( c ) { var e = k [ g ] [ 1 ] [ c ] ; return b ( e ? e : c ) } , n , n . exports , f , k , h , c ) } return h [ g ] . exports } for ( var e = "function" == typeof require && require , g = 0 ; c . length > g ; g ++ ) b ( c [ g ] ) ; return b } ( { 1 : [ function ( f , k , h ) { function c ( b ) { this . name = "RavenConfigError" ; this . message = b } c . prototype = Error ( ) ; c . prototype . constructor = c ; k . exports = c } , { } ] , 2 : [ function ( f , k , h ) { function c ( ) { this . a = ! ( "object" != typeof JSON || ! JSON . stringify ) ; this . b = "undefined" != typeof document ; this . g = this . f = this . e = this . d = this . c = null ; this . h = { } ;
this . i = { logger : "javascript" , ignoreErrors : [ ] , ignoreUrls : [ ] , whitelistUrls : [ ] , includePaths : [ ] , crossOrigin : "anonymous" , collectWindowErrors : ! 0 , maxMessageLength : 0 , stackTraceLimit : 50 } ; this . j = 0 ; this . k = ! 1 ; this . l = Error . stackTraceLimit ; this . m = window . console || { } ; this . n = { } ; this . o = [ ] ; this . p = + new Date ; this . q = [ ] ; for ( var b in this . m ) this . n [ b ] = this . m [ b ] } var b = f ( 5 ) , e = f ( 1 ) ; f = f ( 4 ) ; var g = f . isFunction , r = f . isUndefined , m = f . isError , n = f . isEmptyObject , t = f . hasKey , x = f . joinRegExp , q = f . each , v = f . objectMerge , z = f . truncate , A = f . urlencode ,
B = f . uuid4 , F = "source protocol user pass host port path" . split ( " " ) , p = /^(?:(\w+):)?\/\/(?:(\w+)(:\w+)?@)?([\w\.-]+)(?::(\d+))?(\/.*)/ ; c . prototype = { VERSION : "2.3.0" , debug : ! 1 , TraceKit : b , config : function ( c , e ) { var f = this ; if ( this . e ) return this . r ( "error" , "Error: Raven has already been configured" ) , this ; if ( ! c ) return this ; e && q ( e , function ( b , c ) { "tags" === b || "extra" === b ? f . h [ b ] = c : f . i [ b ] = c } ) ; var g = this . s ( c ) , h = g . path . lastIndexOf ( "/" ) , k = g . path . substr ( 1 , h ) ; return this . t = c , this . i . ignoreErrors . push ( /^Script error\.?$/ ) ,
2017-07-25 17:51:59 +00:00
this . i . ignoreErrors . push ( /^Javascript error: Script error\.? on line 0$/ ) , this . i . ignoreErrors = x ( this . i . ignoreErrors ) , this . i . ignoreUrls = ! ! this . i . ignoreUrls . length && x ( this . i . ignoreUrls ) , this . i . whitelistUrls = ! ! this . i . whitelistUrls . length && x ( this . i . whitelistUrls ) , this . i . includePaths = x ( this . i . includePaths ) , this . f = g . user , this . u = g . pass && g . pass . substr ( 1 ) , this . g = g . path . substr ( h + 1 ) , this . e = this . v ( g ) , this . w = this . e + "/" + k + "api/" + this . g + "/store/" , this . i . fetchContext && ( b . remoteFetching = ! 0 ) , this . i . linesOfContext &&
2017-07-20 23:09:21 +00:00
( b . linesOfContext = this . i . linesOfContext ) , b . collectWindowErrors = ! ! this . i . collectWindowErrors , this } , install : function ( ) { var c = this ; return this . isSetup ( ) && ! this . k && ( b . report . subscribe ( function ( ) { c . x . apply ( c , arguments ) } ) , this . y ( ) , this . z ( ) , this . k = ! 0 ) , Error . stackTraceLimit = this . i . stackTraceLimit , this } , context : function ( b , c , e ) { return g ( b ) && ( e = c || [ ] , c = b , b = void 0 ) , this . wrap ( b , c ) . apply ( this , e ) } , wrap : function ( b , c ) { function e ( ) { for ( var e = [ ] , g = arguments . length , h = ! b || b && ! 1 !== b . deep ; g -- ; ) e [ g ] = h ? f . wrap ( b , arguments [ g ] ) :
arguments [ g ] ; try { return c . apply ( this , e ) } catch ( V ) { throw f . A ( ) , f . captureException ( V , b ) , V ; } } var f = this ; if ( r ( c ) && ! g ( b ) ) return b ; if ( g ( b ) && ( c = b , b = void 0 ) , ! g ( c ) ) return c ; try { if ( c . B ) return c } catch ( N ) { return c } if ( c . C ) return c . C ; for ( var h in c ) t ( c , h ) && ( e [ h ] = c [ h ] ) ; return c . C = e , e . prototype = c . prototype , e . B = ! 0 , e . D = c , e } , uninstall : function ( ) { return b . report . uninstall ( ) , this . E ( ) , Error . stackTraceLimit = this . l , this . k = ! 1 , this } , captureException : function ( c , e ) { if ( ! m ( c ) ) return this . captureMessage ( c , e ) ; this . c = c ; try { var f =
b . computeStackTrace ( c ) ; this . F ( f , e ) } catch ( E ) { if ( c !== E ) throw E ; } return this } , captureMessage : function ( b , c ) { return this . i . ignoreErrors . test && this . i . ignoreErrors . test ( b ) ? void 0 : ( this . G ( v ( { message : b + "" } , c ) ) , this ) } , addPlugin : function ( b ) { var c = Array . prototype . slice . call ( arguments , 1 ) ; return this . o . push ( [ b , c ] ) , this . k && this . z ( ) , this } , setUserContext : function ( b ) { return this . h . user = b , this } , setExtraContext : function ( b ) { return this . H ( "extra" , b ) , this } , setTagsContext : function ( b ) { return this . H ( "tags" , b ) , this } , clearContext : function ( ) { return this . h =
2017-07-25 17:51:59 +00:00
{ } , this } , getContext : function ( ) { return JSON . parse ( JSON . stringify ( this . h ) ) } , setRelease : function ( b ) { return this . i . release = b , this } , setDataCallback : function ( b ) { return this . i . dataCallback = b , this } , setShouldSendCallback : function ( b ) { return this . i . shouldSendCallback = b , this } , setTransport : function ( b ) { return this . i . transport = b , this } , lastException : function ( ) { return this . c } , lastEventId : function ( ) { return this . d } , isSetup : function ( ) { return ! ! this . a && ( ! ! this . e || ( this . ravenNotConfiguredError || ( this . ravenNotConfiguredError =
! 0 , this . r ( "error" , "Error: Raven has not been configured." ) ) , ! 1 ) ) } , afterLoad : function ( ) { var b = window . RavenConfig ; b && this . config ( b . dsn , b . config ) . install ( ) } , showReportDialog : function ( b ) { if ( window . document ) { b = b || { } ; var c = b . eventId || this . lastEventId ( ) ; if ( ! c ) throw new e ( "Missing eventId" ) ; var f = b . dsn || this . t ; if ( ! f ) throw new e ( "Missing DSN" ) ; var g = encodeURIComponent , c = "?eventId=" + g ( c ) , c = c + ( "&dsn=" + g ( f ) ) ; ( b = b . user || this . h . user ) && ( b . name && ( c += "&name=" + g ( b . name ) ) , b . email && ( c += "&email=" + g ( b . email ) ) ) ; f = this . v ( this . s ( f ) ) ;
2017-07-20 23:09:21 +00:00
g = document . createElement ( "script" ) ; g . async = ! 0 ; g . src = f + "/api/embed/error-page/" + c ; ( document . head || document . body ) . appendChild ( g ) } } , A : function ( ) { var b = this ; this . j += 1 ; setTimeout ( function ( ) { -- b . j } ) } , I : function ( b , c ) { var e , f ; if ( this . b ) { c = c || { } ; b = "raven" + b . substr ( 0 , 1 ) . toUpperCase ( ) + b . substr ( 1 ) ; document . createEvent ? ( e = document . createEvent ( "HTMLEvents" ) , e . initEvent ( b , ! 0 , ! 0 ) ) : ( e = document . createEventObject ( ) , e . eventType = b ) ; for ( f in c ) t ( c , f ) && ( e [ f ] = c [ f ] ) ; if ( document . createEvent ) document . dispatchEvent ( e ) ; else try { document . fireEvent ( "on" +
e . eventType . toLowerCase ( ) , e ) } catch ( G ) { } } } , y : function ( ) { function b ( b , c , f , g ) { var h = b [ c ] ; b [ c ] = f ( h ) ; g || e . q . push ( [ b , c , h ] ) } function c ( b ) { return function ( c , f ) { var h = [ ] . slice . call ( arguments ) , k = h [ 0 ] ; return g ( k ) && ( h [ 0 ] = e . wrap ( k ) ) , b . apply ? b . apply ( this , h ) : b ( h [ 0 ] , h [ 1 ] ) } } var e = this ; b ( window , "setTimeout" , c ) ; b ( window , "setInterval" , c ) ; window . requestAnimationFrame && b ( window , "requestAnimationFrame" , function ( b ) { return function ( c ) { return b ( e . wrap ( c ) ) } } ) ; "EventTarget Window Node ApplicationCache AudioTrackList ChannelMergerNode CryptoOperation EventSource FileReader HTMLUnknownElement IDBDatabase IDBRequest IDBTransaction KeyOperation MediaController MessagePort ModalWindow Notification SVGElementInstance Screen TextTrack TextTrackCue TextTrackList WebSocket WebSocketWorker Worker XMLHttpRequest XMLHttpRequestEventTarget XMLHttpRequestUpload" . replace ( /\w+/g ,
function ( c ) { ( c = window [ c ] && window [ c ] . prototype ) && c . hasOwnProperty && c . hasOwnProperty ( "addEventListener" ) && ( b ( c , "addEventListener" , function ( b ) { return function ( c , f , g , h ) { try { f && f . handleEvent && ( f . handleEvent = e . wrap ( f . handleEvent ) ) } catch ( W ) { } return b . call ( this , c , e . wrap ( f ) , g , h ) } } ) , b ( c , "removeEventListener" , function ( b ) { return function ( c , e , f , g ) { return e = e && ( e . C ? e . C : e ) , b . call ( this , c , e , f , g ) } } ) ) } ) ; "XMLHttpRequest" in window && b ( XMLHttpRequest . prototype , "send" , function ( c ) { return function ( f ) { var g = this ; return "onreadystatechange onload onerror onprogress" . replace ( /\w+/g ,
function ( c ) { c in g && "[object Function]" === Object . prototype . toString . call ( g [ c ] ) && b ( g , c , function ( b ) { return e . wrap ( b ) } , ! 0 ) } ) , c . apply ( this , arguments ) } } ) ; var f = window . jQuery || window . $ ; f && f . fn && f . fn . ready && b ( f . fn , "ready" , function ( b ) { return function ( c ) { return b . call ( this , e . wrap ( c ) ) } } ) } , E : function ( ) { for ( var b ; this . q . length ; ) b = this . q . shift ( ) , b [ 0 ] [ b [ 1 ] ] = b [ 2 ] } , z : function ( ) { var b = this ; q ( this . o , function ( c , e ) { e [ 0 ] . apply ( b , [ b ] . concat ( e [ 1 ] ) ) } ) } , s : function ( b ) { var c = p . exec ( b ) , f = { } , g = 7 ; try { for ( ; g -- ; ) f [ F [ g ] ] = c [ g ] || "" } catch ( G ) { throw new e ( "Invalid DSN: " +
b ) ; } if ( f . pass && ! this . i . allowSecretKey ) throw new e ( "Do not specify your secret key in the DSN. See: http://bit.ly/raven-secret-key" ) ; return f } , v : function ( b ) { var c = "//" + b . host + ( b . port ? ":" + b . port : "" ) ; return b . protocol && ( c = b . protocol + ":" + c ) , c } , x : function ( ) { this . j || this . F . apply ( this , arguments ) } , F : function ( b , c ) { var e = this , f = [ ] ; b . stack && b . stack . length && q ( b . stack , function ( b , c ) { var g = e . J ( c ) ; g && f . push ( g ) } ) ; this . I ( "handle" , { stackInfo : b , options : c } ) ; this . K ( b . name , b . message , b . url , b . lineno , f . slice ( 0 , this . i . stackTraceLimit ) ,
c ) } , J : function ( b ) { if ( b . url ) { var c = { filename : b . url , lineno : b . line , colno : b . column , "function" : b . func || "?" } , e = this . L ( b ) ; if ( e ) { var f = [ "pre_context" , "context_line" , "post_context" ] ; for ( b = 3 ; b -- ; ) c [ f [ b ] ] = e [ b ] } return c . in _app = ! ( this . i . includePaths . test && ! this . i . includePaths . test ( c . filename ) || /(Raven|TraceKit)\./ . test ( c [ "function" ] ) || /raven\.(min\.)?js$/ . test ( c . filename ) ) , c } } , L : function ( b ) { if ( b . context && this . i . fetchContext ) { for ( var c = b . context , e = ~ ~ ( c . length / 2 ) , f = c . length , g = ! 1 ; f -- ; ) if ( 300 < c [ f ] . length ) { g = ! 0 ; break } return g ?
r ( b . column ) ? void 0 : [ [ ] , c [ e ] . substr ( b . column , 50 ) , [ ] ] : [ c . slice ( 0 , e ) , c [ e ] , c . slice ( e + 1 ) ] } } , K : function ( b , c , e , f , g , h ) { var k , m ; this . i . ignoreErrors . test && this . i . ignoreErrors . test ( c ) || ( c += "" , c = z ( c , this . i . maxMessageLength ) , m = ( b ? b + ": " : "" ) + c , m = z ( m , this . i . maxMessageLength ) , g && g . length ? ( e = g [ 0 ] . filename || e , g . reverse ( ) , k = { frames : g } ) : e && ( k = { frames : [ { filename : e , lineno : f , in _app : ! 0 } ] } ) , this . i . ignoreUrls . test && this . i . ignoreUrls . test ( e ) || this . i . whitelistUrls . test && ! this . i . whitelistUrls . test ( e ) ) || ( b = v ( { exception : { values : [ { type : b ,
value : c , stacktrace : k } ] } , culprit : e , message : m } , h ) , this . G ( b ) ) } , M : function ( b ) { var c = this . i . maxMessageLength ; if ( b . message = z ( b . message , c ) , b . exception ) { var e = b . exception . values [ 0 ] ; e . value = z ( e . value , c ) } return b } , N : function ( ) { if ( this . b && document . location && document . location . href ) { var b = { headers : { "User-Agent" : navigator . userAgent } } ; return b . url = document . location . href , document . referrer && ( b . headers . Referer = document . referrer ) , b } } , G : function ( b ) { var c = this , e = this . i , f = { project : this . g , logger : e . logger , platform : "javascript" } ,
h = this . N ( ) ; if ( h && ( f . request = h ) , b = v ( f , b ) , b . tags = v ( v ( { } , this . h . tags ) , b . tags ) , b . extra = v ( v ( { } , this . h . extra ) , b . extra ) , b . extra [ "session:duration" ] = + new Date - this . p , n ( b . tags ) && delete b . tags , this . h . user && ( b . user = this . h . user ) , e . release && ( b . release = e . release ) , e . serverName && ( b . server _name = e . serverName ) , g ( e . dataCallback ) && ( b = e . dataCallback ( b ) || b ) , b && ! n ( b ) && ( ! g ( e . shouldSendCallback ) || e . shouldSendCallback ( b ) ) && ( this . d = b . event _id || ( b . event _id = B ( ) ) , b = this . M ( b ) , this . r ( "debug" , "Raven about to send:" , b ) , this . isSetup ( ) ) ) { f =
{ sentry _version : "7" , sentry _client : "raven-js/" + this . VERSION , sentry _key : this . f } ; this . u && ( f . sentry _secret = this . u ) ; var k = this . w ; ( e . transport || this . O ) . call ( this , { url : k , auth : f , data : b , options : e , onSuccess : function ( ) { c . I ( "success" , { data : b , src : k } ) } , onError : function ( ) { c . I ( "failure" , { data : b , src : k } ) } } ) } } , P : function ( b ) { b . auth . sentry _data = JSON . stringify ( b . data ) ; var c = this . Q ( ) , e = b . url + "?" + A ( b . auth ) , f = b . options . crossOrigin ; ( f || "" === f ) && ( c . crossOrigin = f ) ; c . onload = b . onSuccess ; c . onerror = c . onabort = b . onError ; c . src = e } ,
R : function ( b ) { function c ( ) { 200 === e . status ? b . onSuccess && b . onSuccess ( ) : b . onError && b . onError ( ) } var e , f = b . url ; e = new XMLHttpRequest ; "withCredentials" in e ? e . onreadystatechange = function ( ) { 4 === e . readyState && c ( ) } : ( e = new XDomainRequest , f = f . replace ( /^https?:/ , "" ) , e . onload = c ) ; e . open ( "POST" , f + "?" + A ( b . auth ) ) ; e . send ( JSON . stringify ( b . data ) ) } , O : function ( b ) { return ( "withCredentials" in new XMLHttpRequest || "undefined" != typeof XDomainRequest ? this . R : this . P ) ( b ) } , Q : function ( ) { return document . createElement ( "img" ) } , r : function ( b ) { this . n [ b ] &&
this . debug && Function . prototype . apply . call ( this . n [ b ] , this . m , [ ] . slice . call ( arguments , 1 ) ) } , H : function ( b , c ) { r ( c ) ? delete this . h [ b ] : this . h [ b ] = v ( this . h [ b ] || { } , c ) } } ; c . prototype . setUser = c . prototype . setUserContext ; c . prototype . setReleaseContext = c . prototype . setRelease ; k . exports = c } , { 1 : 1 , 4 : 4 , 5 : 5 } ] , 3 : [ function ( f , k , h ) { f = f ( 2 ) ; var c = window . Raven , b = new f ; b . noConflict = function ( ) { return window . Raven = c , b } ; b . afterLoad ( ) ; k . exports = b } , { 2 : 2 } ] , 4 : [ function ( f , k , h ) { function c ( b ) { return void 0 === b } function b ( b ) { return "[object String]" ===
m . toString . call ( b ) } function e ( b ) { return "object" == typeof b && null !== b } function g ( b , e ) { var f , g ; if ( c ( b . length ) ) for ( f in b ) r ( b , f ) && e . call ( null , f , b [ f ] ) ; else if ( g = b . length ) for ( f = 0 ; g > f ; f ++ ) e . call ( null , f , b [ f ] ) } function r ( b , c ) { return m . hasOwnProperty . call ( b , c ) } var m = Object . prototype ; k . exports = { isUndefined : c , isFunction : function ( b ) { return "function" == typeof b } , isString : b , isObject : e , isEmptyObject : function ( b ) { for ( var c in b ) return ! 1 ; return ! 0 } , isError : function ( b ) { var c = m . toString . call ( b ) ; return e ( b ) && "[object Error]" ===
c || "[object Exception]" === c || b instanceof Error } , each : g , objectMerge : function ( b , c ) { return c ? ( g ( c , function ( c , e ) { b [ c ] = e } ) , b ) : b } , truncate : function ( b , c ) { return ! c || c >= b . length ? b : b . substr ( 0 , c ) + "\u2026" } , hasKey : r , joinRegExp : function ( c ) { for ( var e , f = [ ] , g = 0 , h = c . length ; h > g ; g ++ ) e = c [ g ] , b ( e ) ? f . push ( e . replace ( /([.*+?^=!:${}()|\[\]\/\\])/g , "\\$1" ) ) : e && e . source && f . push ( e . source ) ; return new RegExp ( f . join ( "|" ) , "i" ) } , urlencode : function ( b ) { var c = [ ] ; return g ( b , function ( b , e ) { c . push ( encodeURIComponent ( b ) + "=" + encodeURIComponent ( e ) ) } ) ,
c . join ( "&" ) } , uuid4 : function ( ) { var b = window . crypto || window . msCrypto ; if ( ! c ( b ) && b . getRandomValues ) { var e = new Uint16Array ( 8 ) ; b . getRandomValues ( e ) ; e [ 3 ] = 4095 & e [ 3 ] | 16384 ; e [ 4 ] = 16383 & e [ 4 ] | 32768 ; b = function ( b ) { for ( b = b . toString ( 16 ) ; 4 > b . length ; ) b = "0" + b ; return b } ; return b ( e [ 0 ] ) + b ( e [ 1 ] ) + b ( e [ 2 ] ) + b ( e [ 3 ] ) + b ( e [ 4 ] ) + b ( e [ 5 ] ) + b ( e [ 6 ] ) + b ( e [ 7 ] ) } return "xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx" . replace ( /[xy]/g , function ( b ) { var c = 16 * Math . random ( ) | 0 ; return ( "x" === b ? c : 3 & c | 8 ) . toString ( 16 ) } ) } } } , { } ] , 5 : [ function ( f , k , h ) { function c ( ) { return "undefined" ==
typeof document ? "" : document . location . href } f = f ( 4 ) ; var b = f . hasKey , e = f . isString , g = f . isUndefined , r = { remoteFetching : ! 1 , collectWindowErrors : ! 0 , linesOfContext : 7 , debug : ! 1 } , m = [ ] . slice , n = /^(?:Uncaught )?((?:Eval|Internal|Range|Reference|Syntax|Type|URI)Error)\: ?(.*)$/ ; r . report = function ( ) { function f ( c , e ) { var f = null ; if ( ! e || r . collectWindowErrors ) { for ( var g in B ) if ( b ( B , g ) ) try { B [ g ] . apply ( null , [ c ] . concat ( m . call ( arguments , 2 ) ) ) } catch ( N ) { f = N } if ( f ) throw f ; } } function g ( b , g , k , m , t ) { var q ; if ( u ) r . computeStackTrace . augmentStackTraceWithInitialElement ( u ,
2017-07-25 17:51:59 +00:00
g , k , b ) , h ( ) ; else { if ( t ) q = r . computeStackTrace ( t ) ; else { q = { url : g , line : k , column : m } ; q . func = r . computeStackTrace . guessFunctionName ( q . url , q . line ) ; q . context = r . computeStackTrace . gatherContext ( q . url , q . line ) ; var p , v = void 0 , x = b ; e ( b ) && ( p = b . match ( n ) ) && ( v = p [ 1 ] , x = p [ 2 ] ) ; q = { name : v , message : x , url : c ( ) , stack : [ q ] } } f ( q , ! 0 ) } return ! ! z && z . apply ( this , arguments ) } function h ( ) { var b = u , c = F ; p = u = F = null ; f . apply ( null , [ b , ! 1 ] . concat ( c ) ) } function k ( b , c ) { var e = m . call ( arguments , 1 ) ; if ( u ) { if ( p === b ) return ; h ( ) } var f = r . computeStackTrace ( b ) ; if ( u =
2017-07-20 23:09:21 +00:00
f , p = b , F = e , window . setTimeout ( function ( ) { p === b && h ( ) } , f . incomplete ? 2E3 : 0 ) , ! 1 !== c ) throw b ; } var z , A , B = [ ] , F = null , p = null , u = null ; return k . subscribe = function ( b ) { A || ( z = window . onerror , window . onerror = g , A = ! 0 ) ; B . push ( b ) } , k . unsubscribe = function ( b ) { for ( var c = B . length - 1 ; 0 <= c ; -- c ) B [ c ] === b && B . splice ( c , 1 ) } , k . uninstall = function ( ) { A && ( window . onerror = z , A = ! 1 , z = void 0 ) ; B = [ ] } , k } ( ) ; r . computeStackTrace = function ( ) { function f ( c ) { if ( ! e ( c ) ) return [ ] ; if ( ! b ( J , c ) ) { var f = "" , g = "" ; try { g = document . domain } catch ( P ) { } if ( - 1 !== c . indexOf ( g ) ) if ( r . remoteFetching ) try { var h ;
try { h = new window . XMLHttpRequest } catch ( P ) { h = new window . ActiveXObject ( "Microsoft.XMLHTTP" ) } f = ( h . open ( "GET" , c , ! 1 ) , h . send ( "" ) , h . responseText ) } catch ( P ) { f = "" } else f = "" ; J [ c ] = f ? f . split ( "\n" ) : [ ] } return J [ c ] } function h ( b , c ) { var e , h = /function ([^(]*)\(([^)]*)\)/ , k = /['"]?([0-9A-Za-z$_]+)['"]?\s*[:=]\s*(function|eval|new Function)/ , m = "" , n = f ( b ) ; if ( ! n . length ) return "?" ; for ( var r = 0 ; 10 > r ; ++ r ) if ( m = n [ c - r ] + m , ! g ( m ) ) if ( ( e = k . exec ( m ) ) || ( e = h . exec ( m ) ) ) return e [ 1 ] ; return "?" } function k ( b , c ) { var e = f ( b ) ; if ( ! e . length ) return null ;
for ( var h = [ ] , k = Math . floor ( r . linesOfContext / 2 ) , m = Math . min ( e . length , c + ( k + r . linesOfContext % 2 ) - 1 ) , k = Math . max ( 0 , c - k - 1 ) ; m > k ; ++ k ) g ( e [ k ] ) || h . push ( e [ k ] ) ; return 0 < h . length ? h : null } function m ( b ) { return b . replace ( /[\-\[\]{}()*+?.,\\\^$|#]/g , "\\$&" ) } function n ( b ) { return m ( b ) . replace ( "<" , "(?:<|<)" ) . replace ( ">" , "(?:>|>)" ) . replace ( "&" , "(?:&|&)" ) . replace ( '"' , '(?:"|")' ) . replace ( /\s+/g , "\\s+" ) } function A ( b , c ) { for ( var e , g , h = 0 , k = c . length ; k > h ; ++ h ) if ( ( e = f ( c [ h ] ) ) . length && ( e = e . join ( "\n" ) , g = b . exec ( e ) ) ) return { url : c [ h ] ,
line : e . substring ( 0 , g . index ) . split ( "\n" ) . length , column : g . index - e . lastIndexOf ( "\n" , g . index ) - 1 } ; return null } function B ( b , c , e ) { var g ; c = f ( c ) ; b = new RegExp ( "\\b" + m ( b ) + "\\b" ) ; return -- e , c && c . length > e && ( g = b . exec ( c [ e ] ) ) ? g . index : null } function F ( b ) { if ( ! g ( b . stack ) && b . stack ) { for ( var e , f = /^\s*at (.*?) ?\(((?:file|https?|blob|chrome-extension|native|eval|<anonymous>).*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i , m = /^\s*(.*?)(?:\((.*?)\))?(?:^|@)((?:file|https?|blob|chrome|\[native).*?)(?::(\d+))?(?::(\d+))?\s*$/i , n = /^\s*at (?:((?:\[object object\])?.+) )?\(?((?:ms-appx|https?|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i ,
r = b . stack . split ( "\n" ) , t = [ ] , q = /^(.*) is undefined$/ . exec ( b . message ) , p = 0 , u = r . length ; u > p ; ++ p ) { if ( e = f . exec ( r [ p ] ) ) { var v = e [ 2 ] && - 1 !== e [ 2 ] . indexOf ( "native" ) ; e = { url : v ? null : e [ 2 ] , func : e [ 1 ] || "?" , args : v ? [ e [ 2 ] ] : [ ] , line : e [ 3 ] ? + e [ 3 ] : null , column : e [ 4 ] ? + e [ 4 ] : null } } else if ( e = n . exec ( r [ p ] ) ) e = { url : e [ 2 ] , func : e [ 1 ] || "?" , args : [ ] , line : + e [ 3 ] , column : e [ 4 ] ? + e [ 4 ] : null } ; else { if ( ! ( e = m . exec ( r [ p ] ) ) ) continue ; e = { url : e [ 3 ] , func : e [ 1 ] || "?" , args : e [ 2 ] ? e [ 2 ] . split ( "," ) : [ ] , line : e [ 4 ] ? + e [ 4 ] : null , column : e [ 5 ] ? + e [ 5 ] : null } } ! e . func && e . line && ( e . func = h ( e . url ,
e . line ) ) ; e . line && ( e . context = k ( e . url , e . line ) ) ; t . push ( e ) } return t . length ? ( t [ 0 ] . line && ! t [ 0 ] . column && q ? t [ 0 ] . column = B ( q [ 1 ] , t [ 0 ] . url , t [ 0 ] . line ) : t [ 0 ] . column || g ( b . columnNumber ) || ( t [ 0 ] . column = b . columnNumber + 1 ) , { name : b . name , message : b . message , url : c ( ) , stack : t } ) : null } } function p ( b , c , e , f ) { c = { url : c , line : e } ; if ( c . url && c . line ) { b . incomplete = ! 1 ; c . func || ( c . func = h ( c . url , c . line ) ) ; c . context || ( c . context = k ( c . url , c . line ) ) ; f = / '([^']+)' / . exec ( f ) ; if ( f && ( c . column = B ( f [ 1 ] , c . url , c . line ) ) , 0 < b . stack . length && b . stack [ 0 ] . url === c . url ) { if ( b . stack [ 0 ] . line ===
c . line ) return ! 1 ; if ( ! b . stack [ 0 ] . line && b . stack [ 0 ] . func === c . func ) return b . stack [ 0 ] . line = c . line , b . stack [ 0 ] . context = c . context , ! 1 } return b . stack . unshift ( c ) , b . partial = ! 0 , ! 0 } return b . incomplete = ! 0 , ! 1 } function u ( b , e ) { for ( var f , g , k , t = /function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i , q = [ ] , v = { } , x = ! 1 , z = u . caller ; z && ! x ; z = z . caller ) if ( z !== I && z !== r . report ) { if ( g = { url : null , func : "?" , line : null , column : null } , z . name ? g . func = z . name : ( f = t . exec ( z . toString ( ) ) ) && ( g . func = f [ 1 ] ) , "undefined" == typeof g . func ) try { g . func =
f . input . substring ( 0 , f . input . indexOf ( "{" ) ) } catch ( M ) { } a : { var E , F ; k = void 0 ; var G = z ; if ( "undefined" != typeof document ) { var J = [ window . location . href ] ; E = document . getElementsByTagName ( "script" ) ; G = "" + G ; for ( F = 0 ; E . length > F ; ++ F ) { var T = E [ F ] ; T . src && J . push ( T . src ) } ( E = /^function(?:\s+([\w$]+))?\s*\(([\w\s,]*)\)\s*\{\s*(\S[\s\S]*\S)\s*\}\s*$/ . exec ( G ) ) ? ( F = E [ 1 ] ? "\\s+" + E [ 1 ] : "" , T = E [ 2 ] . split ( "," ) . join ( "\\s*,\\s*" ) , k = m ( E [ 3 ] ) . replace ( /;$/ , ";?" ) , F = new RegExp ( "function" + F + "\\s*\\(\\s*" + T + "\\s*\\)\\s*{\\s*" + k + "\\s*}" ) ) : F = new RegExp ( m ( G ) . replace ( /\s+/g ,
"\\s+" ) ) ; if ( E = A ( F , J ) ) k = E ; else { if ( E = /^function on([\w$]+)\s*\(event\)\s*\{\s*(\S[\s\S]*\S)\s*\}\s*$/ . exec ( G ) ) if ( G = E [ 1 ] , ( k = n ( E [ 2 ] ) , F = new RegExp ( "on" + G + "=[\\'\"]\\s*" + k + "\\s*[\\'\"]" , "i" ) , E = A ( F , J [ 0 ] ) ) || ( F = new RegExp ( k ) , E = A ( F , J ) ) ) { k = E ; break a } k = null } } else k = void 0 } k && ( g . url = k . url , g . line = k . line , "?" === g . func && ( g . func = h ( g . url , g . line ) ) , ( J = / '([^']+)' / . exec ( b . message || b . description ) ) && ( g . column = B ( J [ 1 ] , k . url , k . line ) ) ) ; v [ "" + z ] ? x = ! 0 : v [ "" + z ] = ! 0 ; q . push ( g ) } e && q . splice ( 0 , e ) ; f = { name : b . name , message : b . message , url : c ( ) ,
stack : q } ; return p ( f , b . sourceURL || b . fileName , b . line || b . lineNumber , b . message || b . description ) , f } function I ( e , m ) { var t = null ; m = null == m ? 0 : + m ; try { var q ; var p = e . stacktrace ; if ( ! g ( e . stacktrace ) && e . stacktrace ) { for ( var v , x = / line (\d+).*script (?:in )?(\S+)(?:: in function (\S+))?$/i , z = / line (\d+), column (\d+)\s*(?:in (?:<anonymous function: ([^>]+)>|([^\)]+))\((.*)\))? in (.*):\s*$/i , B = p . split ( "\n" ) , p = [ ] , E = 0 ; B . length > E ; E += 2 ) { var G = null ; if ( ( v = x . exec ( B [ E ] ) ) ? G = { url : v [ 2 ] , line : + v [ 1 ] , column : null , func : v [ 3 ] , args : [ ] } :
( v = z . exec ( B [ E ] ) ) && ( G = { url : v [ 6 ] , line : + v [ 1 ] , column : + v [ 2 ] , func : v [ 3 ] || v [ 4 ] , args : v [ 5 ] ? v [ 5 ] . split ( "," ) : [ ] } ) , G ) { if ( ! G . func && G . line && ( G . func = h ( G . url , G . line ) ) , G . line ) try { G . context = k ( G . url , G . line ) } catch ( w ) { } G . context || ( G . context = [ B [ E + 1 ] ] ) ; p . push ( G ) } } q = p . length ? { name : e . name , message : e . message , url : c ( ) , stack : p } : null } else q = void 0 ; if ( t = q ) return t } catch ( w ) { if ( r . debug ) throw w ; } try { if ( t = F ( e ) ) return t } catch ( w ) { if ( r . debug ) throw w ; } try { var J ; var I = e . message . split ( "\n" ) ; if ( 4 > I . length ) J = null ; else { var O ; q = /^\s*Line (\d+) of linked script ((?:file|https?|blob)\S+)(?:: in function (\S+))?\s*$/i ;
v = /^\s*Line (\d+) of inline#(\d+) script in ((?:file|https?|blob)\S+)(?:: in function (\S+))?\s*$/i ; var x = /^\s*Line (\d+) of function script\s*$/i , z = [ ] , T = document . getElementsByTagName ( "script" ) , B = [ ] , M ; for ( M in T ) b ( T , M ) && ! T [ M ] . src && B . push ( T [ M ] ) ; for ( T = 2 ; I . length > T ; T += 2 ) { M = null ; if ( O = q . exec ( I [ T ] ) ) M = { url : O [ 2 ] , func : O [ 3 ] , args : [ ] , line : + O [ 1 ] , column : null } ; else if ( O = v . exec ( I [ T ] ) ) { M = { url : O [ 3 ] , func : O [ 4 ] , args : [ ] , line : + O [ 1 ] , column : null } ; var ka = + O [ 1 ] , ca = B [ O [ 2 ] - 1 ] ; if ( ca ) { var R = f ( M . url ) ; if ( R ) { var R = R . join ( "\n" ) , ea =
R . indexOf ( ca . innerText ) ; 0 <= ea && ( M . line = ka + R . substring ( 0 , ea ) . split ( "\n" ) . length ) } } } else if ( O = x . exec ( I [ T ] ) ) { var Y = window . location . href . replace ( /#.*$/ , "" ) , ha = new RegExp ( n ( I [ T + 1 ] ) ) , pa = A ( ha , [ Y ] ) ; M = { url : Y , func : "" , args : [ ] , line : pa ? pa . line : O [ 1 ] , column : null } } if ( M ) { M . func || ( M . func = h ( M . url , M . line ) ) ; var qa = k ( M . url , M . line ) , ga = qa ? qa [ Math . floor ( qa . length / 2 ) ] : null ; M . context = qa && ga . replace ( /^\s*/ , "" ) === I [ T + 1 ] . replace ( /^\s*/ , "" ) ? qa : [ I [ T + 1 ] ] ; z . push ( M ) } } J = z . length ? { name : e . name , message : I [ 0 ] , url : c ( ) , stack : z } : null } if ( t =
J ) return t } catch ( w ) { if ( r . debug ) throw w ; } try { if ( t = u ( e , m + 1 ) ) return t } catch ( w ) { if ( r . debug ) throw w ; } return { name : e . name , message : e . message , url : c ( ) } } var J = { } ; return I . augmentStackTraceWithInitialElement = p , I . computeStackTraceFromStackProp = F , I . guessFunctionName = h , I . gatherContext = k , I } ( ) ; k . exports = r } , { 4 : 4 } ] } , { } , [ 3 ] ) ( 3 ) } ) ;
2017-07-25 17:51:59 +00:00
( function ( ) { function a ( a , b ) { if ( a !== b ) { var c = null === a , e = a === u , f = a === a , g = null === b , h = b === u , k = b === b ; if ( a > b && ! g || ! f || c && ! h && k || e && k ) return 1 ; if ( a < b && ! c || ! k || g && ! e && f || h && f ) return - 1 } return 0 } function f ( a , b , c ) { for ( var e = a . length , f = c ? e : - 1 ; c ? f -- : ++ f < e ; ) if ( b ( a [ f ] , f , a ) ) return f ; return - 1 } function k ( a , b , c ) { if ( b !== b ) return x ( a , c ) ; -- c ; for ( var e = a . length ; ++ c < e ; ) if ( a [ c ] === b ) return c ; return - 1 } function h ( a ) { return "function" == typeof a || ! 1 } function c ( a ) { return null == a ? "" : a + "" } function b ( a , b ) { for ( var c = - 1 , e = a . length ; ++ c <
2017-07-20 23:09:21 +00:00
e && - 1 < b . indexOf ( a . charAt ( c ) ) ; ) ; return c } function e ( a , b ) { for ( var c = a . length ; c -- && - 1 < b . indexOf ( a . charAt ( c ) ) ; ) ; return c } function g ( b , c ) { return a ( b . a , c . a ) || b . b - c . b } function r ( a ) { return pb [ a ] } function m ( a ) { return Nb [ a ] } function n ( a , b , c ) { return b ? a = Jd [ a ] : c && ( a = Ib [ a ] ) , "\\" + a } function t ( a ) { return "\\" + Ib [ a ] } function x ( a , b , c ) { var e = a . length ; for ( b += c ? 0 : - 1 ; c ? b -- : ++ b < e ; ) { var f = a [ b ] ; if ( f !== f ) return b } return - 1 } function q ( a ) { return ! ! a && "object" == typeof a } function v ( a ) { return 160 >= a && 9 <= a && 13 >= a || 32 == a || 160 == a || 5760 ==
a || 6158 == a || 8192 <= a && ( 8202 >= a || 8232 == a || 8233 == a || 8239 == a || 8287 == a || 12288 == a || 65279 == a ) } function z ( a , b ) { for ( var c = - 1 , e = a . length , f = - 1 , g = [ ] ; ++ c < e ; ) a [ c ] === b && ( a [ c ] = ka , g [ ++ f ] = c ) ; return g } function A ( a ) { for ( var b = - 1 , c = a . length ; ++ b < c && v ( a . charCodeAt ( b ) ) ; ) ; return b } function B ( a ) { for ( var b = a . length ; b -- && v ( a . charCodeAt ( b ) ) ; ) ; return b } function F ( a ) { return Rd [ a ] } function p ( v ) { function D ( a ) { if ( q ( a ) && ! ( oa ( a ) || a instanceof va ) ) { if ( a instanceof xb ) return a ; if ( Pa . call ( a , "__chain__" ) && Pa . call ( a , "__wrapped__" ) ) return wc ( a ) } return new xb ( a ) }
function Ya ( ) { } function xb ( a , b , c ) { this . _ _wrapped _ _ = a ; this . _ _actions _ _ = c || [ ] ; this . _ _chain _ _ = ! ! b } function va ( a ) { this . _ _wrapped _ _ = a ; this . _ _actions _ _ = [ ] ; this . _ _dir _ _ = 1 ; this . _ _filtered _ _ = ! 1 ; this . _ _iteratees _ _ = [ ] ; this . _ _takeCount _ _ = Xc ; this . _ _views _ _ = [ ] } function eb ( ) { this . _ _data _ _ = { } } function pb ( a ) { var b = a ? a . length : 0 ; for ( this . data = { hash : cd ( null ) , set : new tc } ; b -- ; ) this . push ( a [ b ] ) } function rb ( a , b ) { var c = a . data ; return ( "string" == typeof b || Fa ( b ) ? c . set . has ( b ) : c . hash [ b ] ) ? 0 : - 1 } function bb ( a , b ) { var c = - 1 , d = a . length ;
for ( b || ( b = Ja ( d ) ) ; ++ c < d ; ) b [ c ] = a [ c ] ; return b } function ob ( a , b ) { for ( var c = - 1 , d = a . length ; ++ c < d && ! 1 !== b ( a [ c ] , c , a ) ; ) ; return a } function Nb ( a , b ) { for ( var c = - 1 , d = a . length ; ++ c < d ; ) if ( ! b ( a [ c ] , c , a ) ) return ! 1 ; return ! 0 } function Ib ( a , b ) { for ( var c = - 1 , d = a . length , e = - 1 , f = [ ] ; ++ c < d ; ) { var g = a [ c ] ; b ( g , c , a ) && ( f [ ++ e ] = g ) } return f } function kc ( a , b ) { for ( var c = - 1 , d = a . length , e = Ja ( d ) ; ++ c < d ; ) e [ c ] = b ( a [ c ] , c , a ) ; return e } function yb ( a , b ) { for ( var c = - 1 , d = b . length , e = a . length ; ++ c < d ; ) a [ e + c ] = b [ c ] ; return a } function Cc ( a , b , c , d ) { var e = - 1 , f = a . length ;
for ( d && f && ( c = a [ ++ e ] ) ; ++ e < f ; ) c = b ( c , a [ e ] , e , a ) ; return c } function Oe ( a , b ) { for ( var c = - 1 , d = a . length ; ++ c < d ; ) if ( b ( a [ c ] , c , a ) ) return ! 0 ; return ! 1 } function kf ( a , b , c , d ) { return a !== u && Pa . call ( d , c ) ? a : b } function Md ( a , b , c ) { for ( var d = - 1 , e = xa ( b ) , f = e . length ; ++ d < f ; ) { var g = e [ d ] , y = a [ g ] , h = c ( y , b [ g ] , g , a , b ) ; ( h === h ? h === y : y !== y ) && ( y !== u || g in a ) || ( a [ g ] = h ) } return a } function Ec ( a , b ) { return null == b ? a : Zd ( b , xa ( b ) , a ) } function rd ( a , b ) { for ( var c = - 1 , d = null == a , e = ! d && Da ( a ) , f = e ? a . length : 0 , g = b . length , y = Ja ( g ) ; ++ c < g ; ) { var h = b [ c ] ; y [ c ] = e ? Kb ( h ,
f ) ? a [ h ] : u : d ? u : a [ h ] } return y } function Zd ( a , b , c ) { c || ( c = { } ) ; for ( var d = - 1 , e = b . length ; ++ d < e ; ) { var f = b [ d ] ; c [ f ] = a [ f ] } return c } function Mc ( a , b , c ) { var d = typeof a ; return "function" == d ? b === u ? a : mb ( a , b , c ) : null == a ? fc : "object" == d ? rc ( a ) : b === u ? qd ( a ) : Sa ( a , b ) } function $a ( a , b , c , d , e , f , g ) { var h ; if ( c && ( h = e ? c ( a , d , e ) : c ( a ) ) , h !== u ) return h ; if ( ! Fa ( a ) ) return a ; if ( d = oa ( a ) ) { if ( h = Df ( a ) , ! b ) return bb ( a , h ) } else { var y = db . call ( a ) , k = y == pa ; if ( y != ga && y != ca && ( ! k || e ) ) return Ha [ y ] ? jc ( a , y , b ) : e ? a : { } ; if ( h = Ff ( k ? { } : a ) , ! b ) return Ec ( h , a ) } f || ( f = [ ] ) ;
g || ( g = [ ] ) ; for ( e = f . length ; e -- ; ) if ( f [ e ] == a ) return g [ e ] ; return f . push ( a ) , g . push ( h ) , ( d ? ob : Mb ) ( a , function ( d , e ) { h [ e ] = $a ( d , b , c , e , a , f , g ) } ) , h } function Xb ( a , b , c ) { if ( "function" != typeof a ) throw new sb ( M ) ; return yd ( function ( ) { a . apply ( u , c ) } , b ) } function Pb ( a , b ) { var c = a ? a . length : 0 , d = [ ] ; if ( ! c ) return d ; var e = - 1 , f = lc ( ) , g = f === k , h = g && b . length >= X && cd && tc ? new pb ( b ) : null , y = b . length ; h && ( f = rb , g = ! 1 , b = h ) ; a : for ( ; ++ e < c ; ) if ( h = a [ e ] , g && h === h ) { for ( var C = y ; C -- ; ) if ( b [ C ] === h ) continue a ; d . push ( h ) } else 0 > f ( b , h , 0 ) && d . push ( h ) ; return d } function $d ( a ,
b ) { var c = ! 0 ; return Bb ( a , function ( a , d , e ) { return c = ! ! b ( a , d , e ) } ) , c } function ae ( a , b , c , d ) { var e = d , f = e ; return Bb ( a , function ( a , g , h ) { g = + b ( a , g , h ) ; ( c ( g , e ) || g === d && g === f ) && ( e = g , f = a ) } ) , f } function be ( a , b ) { var c = [ ] ; return Bb ( a , function ( a , d , e ) { b ( a , d , e ) && c . push ( a ) } ) , c } function Nc ( a , b , c , d ) { var e ; return c ( a , function ( a , c , f ) { return b ( a , c , f ) ? ( e = d ? c : a , ! 1 ) : void 0 } ) , e } function cb ( a , b , c , d ) { d || ( d = [ ] ) ; for ( var e = - 1 , f = a . length ; ++ e < f ; ) { var g = a [ e ] ; q ( g ) && Da ( g ) && ( c || oa ( g ) || Ra ( g ) ) ? b ? cb ( g , b , c , d ) : yb ( d , g ) : c || ( d [ d . length ] = g ) } return d }
2017-07-25 17:51:59 +00:00
function Pe ( a , b ) { Gd ( a , b , Vb ) } function Mb ( a , b ) { return Gd ( a , b , xa ) } function Zb ( a , b ) { return De ( a , b , xa ) } function sd ( a , b ) { for ( var c = - 1 , d = b . length , e = - 1 , f = [ ] ; ++ c < d ; ) { var g = b [ c ] ; Hb ( a [ g ] ) && ( f [ ++ e ] = g ) } return f } function fb ( a , b , c ) { if ( null != a ) { c !== u && c in Ta ( a ) && ( b = [ c ] ) ; c = 0 ; for ( var d = b . length ; null != a && c < d ; ) a = a [ b [ c ++ ] ] ; return c && c == d ? a : u } } function Oc ( a , b , c , d , e , f ) { if ( a === b ) a = ! 0 ; else if ( null == a || null == b || ! Fa ( a ) && ! q ( b ) ) a = a !== a && b !== b ; else a : { var g = Oc , h = oa ( a ) , y = oa ( b ) , k = R , C = R ; h || ( k = db . call ( a ) , k == ca ? k = ga : k != ga && ( h = ic ( a ) ) ) ;
2017-07-20 23:09:21 +00:00
y || ( C = db . call ( b ) , C == ca ? C = ga : C != ga && ic ( b ) ) ; var l = k == ga , y = C == ga , C = k == C ; if ( ! C || h || l ) if ( ! d && ( k = l && Pa . call ( a , "__wrapped__" ) , y = y && Pa . call ( b , "__wrapped__" ) , k || y ) ) a = g ( k ? a . value ( ) : a , y ? b . value ( ) : b , c , d , e , f ) ; else if ( C ) { e || ( e = [ ] ) ; f || ( f = [ ] ) ; for ( k = e . length ; k -- ; ) if ( e [ k ] == a ) { a = f [ k ] == b ; break a } e . push ( a ) ; f . push ( b ) ; a = ( h ? Cf : Tc ) ( a , b , g , c , d , e , f ) ; e . pop ( ) ; f . pop ( ) } else a = ! 1 ; else a = oe ( a , b , k ) } return a } function Pc ( a , b , c ) { var d = b . length , e = d , f = ! c ; if ( null == a ) return ! e ; for ( a = Ta ( a ) ; d -- ; ) { var g = b [ d ] ; if ( f && g [ 2 ] ? g [ 1 ] !== a [ g [ 0 ] ] : ! ( g [ 0 ] in
2017-07-25 17:51:59 +00:00
a ) ) return ! 1 } for ( ; ++ d < e ; ) { var g = b [ d ] , h = g [ 0 ] , y = a [ h ] , k = g [ 1 ] ; if ( f && g [ 2 ] ) { if ( y === u && ! ( h in a ) ) return ! 1 } else if ( g = c ? c ( y , k , h ) : u , g === u ? ! Oc ( k , y , c , ! 0 ) : ! g ) return ! 1 } return ! 0 } function de ( a , b ) { var c = - 1 , d = Da ( a ) ? Ja ( a . length ) : [ ] ; return Bb ( a , function ( a , e , f ) { d [ ++ c ] = b ( a , e , f ) } ) , d } function rc ( a ) { var b = pe ( a ) ; if ( 1 == b . length && b [ 0 ] [ 2 ] ) { var c = b [ 0 ] [ 0 ] , d = b [ 0 ] [ 1 ] ; return function ( a ) { return null != a && a [ c ] === d && ( d !== u || c in Ta ( a ) ) } } return function ( a ) { return Pc ( a , b ) } } function Sa ( a , b ) { var c = oa ( a ) , d = sa ( a ) && b === b && ! Fa ( b ) , e = a + "" ; return a =
2017-07-20 23:09:21 +00:00
Na ( a ) , function ( f ) { if ( null == f ) return ! 1 ; var g = e ; if ( f = Ta ( f ) , ! ( ! c && d || g in f ) ) { if ( f = 1 == a . length ? f : fb ( f , gb ( a , 0 , - 1 ) ) , null == f ) return ! 1 ; g = sc ( a ) ; f = Ta ( f ) } return f [ g ] === b ? b !== u || g in f : Oc ( b , f [ g ] , u , ! 0 ) } } function ee ( a , b , c , d , e ) { if ( ! Fa ( a ) ) return a ; var f = Da ( b ) && ( oa ( b ) || ic ( b ) ) , g = f ? u : xa ( b ) ; return ob ( g || b , function ( h , k ) { if ( g && ( k = h , h = b [ k ] ) , q ( h ) ) { d || ( d = [ ] ) ; e || ( e = [ ] ) ; a : { for ( var y = k , C = d , l = e , m = C . length , L = b [ y ] ; m -- ; ) if ( C [ m ] == L ) { a [ y ] = l [ m ] ; break a } var m = a [ y ] , w = c ? c ( m , L , y , a , b ) : u , n = w === u ; n && ( w = L , Da ( L ) && ( oa ( L ) || ic ( L ) ) ? w = oa ( m ) ? m :
Da ( m ) ? bb ( m ) : [ ] : Jc ( L ) || Ra ( L ) ? w = Ra ( m ) ? Me ( m ) : Jc ( m ) ? m : { } : n = ! 1 ) ; C . push ( L ) ; l . push ( w ) ; n ? a [ y ] = ee ( w , L , c , C , l ) : ( w === w ? w !== m : m === m ) && ( a [ y ] = w ) } } else y = a [ k ] , C = c ? c ( y , h , k , a , b ) : u , ( l = C === u ) && ( C = h ) , C === u && ( ! f || k in a ) || ! l && ( C === C ? C === y : y !== y ) || ( a [ k ] = C ) } ) , a } function td ( a ) { return function ( b ) { return null == b ? u : b [ a ] } } function nf ( a ) { var b = a + "" ; return a = Na ( a ) , function ( c ) { return fb ( c , a , b ) } } function fe ( a , b ) { for ( var c = a ? b . length : 0 ; c -- ; ) { var d = b [ c ] ; if ( d != e && Kb ( d ) ) { var e = d ; Bf . call ( a , d , 1 ) } } } function ud ( a , b ) { return a + Eb ( Kf ( ) * ( b -
a + 1 ) ) } function of ( a , b , c , d , e ) { return e ( a , function ( a , e , f ) { c = d ? ( d = ! 1 , a ) : b ( c , a , e , f ) } ) , c } function gb ( a , b , c ) { var d = - 1 , e = a . length ; b = null == b ? 0 : + b || 0 ; 0 > b && ( b = - b > e ? 0 : e + b ) ; c = c === u || c > e ? e : + c || 0 ; 0 > c && ( c += e ) ; e = b > c ? 0 : c - b >>> 0 ; b >>>= 0 ; for ( c = Ja ( e ) ; ++ d < e ; ) c [ d ] = a [ d + b ] ; return c } function Jd ( a , b ) { var c ; return Bb ( a , function ( a , d , e ) { return c = b ( a , d , e ) , ! c } ) , ! ! c } function Qe ( a , b ) { var c = a . length ; for ( a . sort ( b ) ; c -- ; ) a [ c ] = a [ c ] . c ; return a } function Re ( b , c , d ) { var e = Ca ( ) , f = - 1 ; return c = kc ( c , function ( a ) { return e ( a ) } ) , b = de ( b , function ( a ) { return { a : kc ( c ,
function ( b ) { return b ( a ) } ) , b : ++ f , c : a } } ) , Qe ( b , function ( b , c ) { var e ; a : { for ( var f = - 1 , g = b . a , h = c . a , k = g . length , y = d . length ; ++ f < k ; ) if ( e = a ( g [ f ] , h [ f ] ) ) { if ( f >= y ) break a ; f = d [ f ] ; e *= "asc" === f || ! 0 === f ? 1 : - 1 ; break a } e = b . b - c . b } return e } ) } function pf ( a , b ) { var c = 0 ; return Bb ( a , function ( a , d , e ) { c += + b ( a , d , e ) || 0 } ) , c } function Od ( a , b ) { var c = - 1 , d = lc ( ) , e = a . length , f = d === k , g = f && e >= X , h = g && cd && tc ? new pb ( void 0 ) : null , y = [ ] ; h ? ( d = rb , f = ! 1 ) : ( g = ! 1 , h = b ? [ ] : y ) ; a : for ( ; ++ c < e ; ) { var l = a [ c ] , C = b ? b ( l , c , a ) : l ; if ( f && l === l ) { for ( var m = h . length ; m -- ; ) if ( h [ m ] ===
C ) continue a ; b && h . push ( C ) ; y . push ( l ) } else 0 > d ( h , C , 0 ) && ( ( b || g ) && h . push ( C ) , y . push ( l ) ) } return y } function Nd ( a , b ) { for ( var c = - 1 , d = b . length , e = Ja ( d ) ; ++ c < d ; ) e [ c ] = a [ b [ c ] ] ; return e } function bd ( a , b , c , d ) { for ( var e = a . length , f = d ? e : - 1 ; ( d ? f -- : ++ f < e ) && b ( a [ f ] , f , a ) ; ) ; return c ? gb ( a , d ? 0 : f , d ? f + 1 : e ) : gb ( a , d ? f + 1 : 0 , d ? e : f ) } function qf ( a , b ) { var c = a ; c instanceof va && ( c = c . value ( ) ) ; for ( var d = - 1 , e = b . length ; ++ d < e ; ) var f = b [ d ] , c = f . func . apply ( f . thisArg , yb ( [ c ] , f . args ) ) ; return c } function vd ( a , b , c ) { var d = 0 , e = a ? a . length : d ; if ( "number" == typeof b &&
2017-07-25 17:51:59 +00:00
b === b && e <= Mf ) { for ( ; d < e ; ) { var f = d + e >>> 1 , g = a [ f ] ; ( c ? g <= b : g < b ) && null !== g ? d = f + 1 : e = f } return e } return Se ( a , b , fc , c ) } function Se ( a , b , c , d ) { b = c ( b ) ; for ( var e = 0 , f = a ? a . length : 0 , g = b !== b , h = null === b , k = b === u ; e < f ; ) { var y = Eb ( ( e + f ) / 2 ) , l = c ( a [ y ] ) , C = l !== u , m = l === l ; ( g ? m || d : h ? m && C && ( d || null != l ) : k ? m && ( d || C ) : null == l ? 0 : d ? l <= b : l < b ) ? e = y + 1 : f = y } return ib ( f , te ) } function mb ( a , b , c ) { if ( "function" != typeof a ) return fc ; if ( b === u ) return a ; switch ( c ) { case 1 : return function ( c ) { return a . call ( b , c ) } ; case 3 : return function ( c , d , e ) { return a . call ( b ,
2017-07-20 23:09:21 +00:00
c , d , e ) } ; case 4 : return function ( c , d , e , f ) { return a . call ( b , c , d , e , f ) } ; case 5 : return function ( c , d , e , f , g ) { return a . call ( b , c , d , e , f , g ) } } return function ( ) { return a . apply ( b , arguments ) } } function Te ( a ) { var b = new Ab ( a . byteLength ) ; return ( new Af ( b ) ) . set ( new Af ( a ) ) , b } function Ue ( a , b , c ) { for ( var d = c . length , e = - 1 , f = Va ( a . length - d , 0 ) , g = - 1 , h = b . length , k = Ja ( h + f ) ; ++ g < h ; ) k [ g ] = b [ g ] ; for ( ; ++ e < d ; ) k [ c [ e ] ] = a [ e ] ; for ( ; f -- ; ) k [ g ++ ] = a [ e ++ ] ; return k } function Ve ( a , b , c ) { for ( var d = - 1 , e = c . length , f = - 1 , g = Va ( a . length - e , 0 ) , h = - 1 , k = b . length , y = Ja ( g +
k ) ; ++ f < g ; ) y [ f ] = a [ f ] ; for ( g = f ; ++ h < k ; ) y [ g + h ] = b [ h ] ; for ( ; ++ d < e ; ) y [ g + c [ d ] ] = a [ f ++ ] ; return y } function gd ( a , b ) { return function ( c , d , e ) { var f = b ? b ( ) : { } ; if ( d = Ca ( d , e , 3 ) , oa ( c ) ) { e = - 1 ; for ( var g = c . length ; ++ e < g ; ) { var h = c [ e ] ; a ( f , h , d ( h , e , c ) , c ) } } else Bb ( c , function ( b , c , e ) { a ( f , b , d ( b , c , e ) , e ) } ) ; return f } } function Ob ( a ) { return Ba ( function ( b , c ) { var d = - 1 , e = null == b ? 0 : c . length , f = 2 < e ? c [ e - 2 ] : u , g = 2 < e ? c [ 2 ] : u , h = 1 < e ? c [ e - 1 ] : u ; "function" == typeof f ? ( f = mb ( f , h , 5 ) , e -= 2 ) : ( f = "function" == typeof h ? h : u , e -= f ? 1 : 0 ) ; for ( g && ra ( c [ 0 ] , c [ 1 ] , g ) && ( f = 3 > e ?
u : f , e = 1 ) ; ++ d < e ; ) ( g = c [ d ] ) && a ( b , g , f ) ; return b } ) } function Yd ( a , b ) { return function ( c , d ) { var e = c ? Ac ( c ) : 0 ; if ( ! lb ( e ) ) return a ( c , d ) ; for ( var f = b ? e : - 1 , g = Ta ( c ) ; ( b ? f -- : ++ f < e ) && ! 1 !== d ( g [ f ] , f , g ) ; ) ; return c } } function We ( a ) { return function ( b , c , d ) { var e = Ta ( b ) ; d = d ( b ) ; for ( var f = d . length , g = a ? f : - 1 ; a ? g -- : ++ g < f ; ) { var h = d [ g ] ; if ( ! 1 === c ( e [ h ] , h , e ) ) break } return b } } function sf ( a , b ) { function c ( ) { return ( this && this !== Fb && this instanceof c ? d : a ) . apply ( b , arguments ) } var d = Dc ( a ) ; return c } function hd ( a ) { return function ( b ) { var c = - 1 ; b =
gf ( Le ( b ) ) ; for ( var d = b . length , e = "" ; ++ c < d ; ) e = a ( e , b [ c ] , c ) ; return e } } function Dc ( a ) { return function ( ) { var b = arguments ; switch ( b . length ) { case 0 : return new a ; case 1 : return new a ( b [ 0 ] ) ; case 2 : return new a ( b [ 0 ] , b [ 1 ] ) ; case 3 : return new a ( b [ 0 ] , b [ 1 ] , b [ 2 ] ) ; case 4 : return new a ( b [ 0 ] , b [ 1 ] , b [ 2 ] , b [ 3 ] ) ; case 5 : return new a ( b [ 0 ] , b [ 1 ] , b [ 2 ] , b [ 3 ] , b [ 4 ] ) ; case 6 : return new a ( b [ 0 ] , b [ 1 ] , b [ 2 ] , b [ 3 ] , b [ 4 ] , b [ 5 ] ) ; case 7 : return new a ( b [ 0 ] , b [ 1 ] , b [ 2 ] , b [ 3 ] , b [ 4 ] , b [ 5 ] , b [ 6 ] ) } var c = oc ( a . prototype ) , b = a . apply ( c , b ) ; return Fa ( b ) ? b : c } } function tf ( a ) { function b ( c ,
d , e ) { return e && ra ( c , d , e ) && ( d = u ) , c = hb ( c , a , u , u , u , u , u , d ) , c . placeholder = b . placeholder , c } return b } function vf ( a , b ) { return Ba ( function ( c ) { var d = c [ 0 ] ; return null == d ? d : ( c . push ( b ) , a . apply ( u , c ) ) } ) } function ac ( a , b ) { return function ( c , d , e ) { if ( e && ra ( c , d , e ) && ( d = u ) , d = Ca ( d , e , 3 ) , 1 == d . length ) { e = c = oa ( c ) ? c : vc ( c ) ; for ( var f = d , g = - 1 , h = e . length , k = b , y = k ; ++ g < h ; ) { var l = e [ g ] , m = + f ( l ) ; a ( m , k ) && ( k = m , y = l ) } if ( e = y , ! c . length || e !== b ) return e } return ae ( c , d , a , b ) } } function xd ( a , b ) { return function ( c , d , e ) { return d = Ca ( d , e , 3 ) , oa ( c ) ? ( d = f ( c , d ,
b ) , - 1 < d ? c [ d ] : u ) : Nc ( c , d , a ) } } function ge ( a ) { return function ( b , c , d ) { return b && b . length ? ( c = Ca ( c , d , 3 ) , f ( b , c , a ) ) : - 1 } } function je ( a ) { return function ( b , c , d ) { return c = Ca ( c , d , 3 ) , Nc ( b , c , a , ! 0 ) } } function wf ( a ) { return function ( ) { for ( var b , c = arguments . length , d = a ? c : - 1 , e = 0 , f = Ja ( c ) ; a ? d -- : ++ d < c ; ) { var g = f [ e ++ ] = arguments [ d ] ; if ( "function" != typeof g ) throw new sb ( M ) ; ! b && xb . prototype . thru && "wrapper" == bc ( g ) && ( b = new xb ( [ ] , ! 0 ) ) } for ( d = b ? - 1 : c ; ++ d < c ; ) { var g = f [ d ] , e = bc ( g ) , h = "wrapper" == e ? Hd ( g ) : u ; b = h && tb ( h [ 0 ] ) && h [ 1 ] == ( S | N | P | W ) && ! h [ 4 ] . length &&
1 == h [ 9 ] ? b [ bc ( h [ 0 ] ) ] . apply ( b , h [ 3 ] ) : 1 == g . length && tb ( g ) ? b [ e ] ( ) : b . thru ( g ) } return function ( ) { var a = arguments , d = a [ 0 ] ; if ( b && 1 == a . length && oa ( d ) && d . length >= X ) return b . plant ( d ) . value ( ) ; for ( var e = 0 , a = c ? f [ e ] . apply ( this , a ) : d ; ++ e < c ; ) a = f [ e ] . call ( this , a ) ; return a } } } function zf ( a , b ) { return function ( c , d , e ) { return "function" == typeof d && e === u && oa ( c ) ? a ( c , d ) : b ( c , mb ( d , e , 3 ) ) } } function le ( a ) { return function ( b , c , d ) { return ( "function" != typeof c || d !== u ) && ( c = mb ( c , d , 3 ) ) , a ( b , c , Vb ) } } function Qc ( a ) { return function ( b , c , d ) { return ( "function" !=
typeof c || d !== u ) && ( c = mb ( c , d , 3 ) ) , a ( b , c ) } } function Wa ( a ) { return function ( b , c , d ) { var e = { } ; return c = Ca ( c , d , 3 ) , Mb ( b , function ( b , d , f ) { f = c ( b , d , f ) ; d = a ? f : d ; b = a ? b : f ; e [ d ] = b } ) , e } } function Rc ( a ) { return function ( b , d , e ) { return b = c ( b ) , ( a ? b : "" ) + he ( b , d , e ) + ( a ? "" : b ) } } function me ( a ) { var b = Ba ( function ( c , d ) { var e = z ( d , b . placeholder ) ; return hb ( c , a , u , d , e ) } ) ; return b } function ne ( a , b ) { return function ( c , d , e , f ) { var g = 3 > arguments . length ; return "function" == typeof d && f === u && oa ( c ) ? a ( c , d , e , g ) : of ( c , Ca ( d , f , 4 ) , e , g , b ) } } function Sc ( a , b , c ,
2017-07-25 17:51:59 +00:00
d , e , f , g , h , k , l ) { function y ( ) { for ( var q = arguments . length , p = q , v = Ja ( q ) ; p -- ; ) v [ p ] = arguments [ p ] ; if ( d && ( v = Ue ( v , d , e ) ) , f && ( v = Ve ( v , f , g ) ) , n || r ) { var p = y . placeholder , x = z ( v , p ) , q = q - x . length ; if ( q < l ) { var Aa = h ? bb ( h ) : u , q = Va ( l - q , 0 ) , A = n ? x : u , x = n ? u : x , ia = n ? v : u , v = n ? u : v ; return b |= n ? P : V , b &= ~ ( n ? V : P ) , L || ( b &= ~ ( J | E ) ) , v = [ a , b , c , ia , A , v , x , Aa , k , q ] , Aa = Sc . apply ( u , v ) , tb ( a ) && Ee ( Aa , v ) , Aa . placeholder = p , Aa } } if ( p = C ? c : this , Aa = w ? p [ a ] : a , h ) for ( q = v . length , A = ib ( h . length , q ) , x = bb ( v ) ; A -- ; ) ia = h [ A ] , v [ A ] = Kb ( ia , q ) ? x [ ia ] : u ; return m && k < v . length && ( v . length =
k ) , this && this !== Fb && this instanceof y && ( Aa = t || Dc ( a ) ) , Aa . apply ( p , v ) } var m = b & S , C = b & J , w = b & E , n = b & N , L = b & G , r = b & K , t = w ? u : Dc ( a ) ; return y } function he ( a , b , c ) { return a = a . length , b = + b , a < b && nc ( b ) ? ( b -= a , c = null == c ? " " : c + "" , Za ( c , wd ( b / c . length ) ) . slice ( 0 , b ) ) : "" } function Ld ( a , b , c , d ) { function e ( ) { for ( var b = - 1 , h = arguments . length , k = - 1 , y = d . length , l = Ja ( y + h ) ; ++ k < y ; ) l [ k ] = d [ k ] ; for ( ; h -- ; ) l [ k ++ ] = arguments [ ++ b ] ; return ( this && this !== Fb && this instanceof e ? g : a ) . apply ( f ? c : this , l ) } var f = b & J , g = Dc ( a ) ; return e } function ie ( a ) { var b = mc [ a ] ;
return function ( a , c ) { return ( c = c === u ? 0 : + c || 0 ) ? ( c = yf ( 10 , c ) , b ( a * c ) / c ) : b ( a ) } } function ke ( a ) { return function ( b , c , d , e ) { var f = Ca ( d ) ; return null == d && f === Mc ? vd ( b , c , a ) : Se ( b , c , f ( d , e , 1 ) , a ) } } function hb ( a , b , c , d , e , f , g , h ) { var k = b & E ; if ( ! k && "function" != typeof a ) throw new sb ( M ) ; var y = d ? d . length : 0 ; if ( y || ( b &= ~ ( P | V ) , d = e = u ) , y -= e ? e . length : 0 , b & V ) { var l = d , m = e ; d = e = u } var C = k ? u : Hd ( a ) ; return c = [ a , b , c , d , e , l , m , f , g , h ] , C && ( d = c [ 1 ] , b = C [ 1 ] , h = d | b , e = b == S && d == N || b == S && d == W && c [ 7 ] . length <= C [ 8 ] || b == ( S | W ) && d == N , ( h < S || e ) && ( b & J && ( c [ 2 ] = C [ 2 ] ,
h |= d & J ? 0 : G ) , ( d = C [ 3 ] ) && ( e = c [ 3 ] , c [ 3 ] = e ? Ue ( e , d , C [ 4 ] ) : bb ( d ) , c [ 4 ] = e ? z ( c [ 3 ] , ka ) : bb ( C [ 4 ] ) ) , ( d = C [ 5 ] ) && ( e = c [ 5 ] , c [ 5 ] = e ? Ve ( e , d , C [ 6 ] ) : bb ( d ) , c [ 6 ] = e ? z ( c [ 5 ] , ka ) : bb ( C [ 6 ] ) ) , ( d = C [ 7 ] ) && ( c [ 7 ] = bb ( d ) ) , b & S && ( c [ 8 ] = null == c [ 8 ] ? C [ 8 ] : ib ( c [ 8 ] , C [ 8 ] ) ) , null == c [ 9 ] && ( c [ 9 ] = C [ 9 ] ) , c [ 0 ] = C [ 0 ] , c [ 1 ] = h ) , b = c [ 1 ] , h = c [ 9 ] ) , c [ 9 ] = null == h ? k ? 0 : a . length : Va ( h - y , 0 ) || 0 , ( C ? Ce : Ee ) ( b == J ? sf ( c [ 0 ] , c [ 2 ] ) : b != P && b != ( J | P ) || c [ 4 ] . length ? Sc . apply ( u , c ) : Ld . apply ( u , c ) , c ) } function Cf ( a , b , c , d , e , f , g ) { var h = - 1 , k = a . length , y = b . length ; if ( k != y && ( ! e || y <= k ) ) return ! 1 ; for ( ; ++ h <
2017-07-20 23:09:21 +00:00
k ; ) { var l = a [ h ] , y = b [ h ] , m = d ? d ( e ? y : l , e ? l : y , h ) : u ; if ( m !== u ) { if ( m ) continue ; return ! 1 } if ( e ) { if ( ! Oe ( b , function ( a ) { return l === a || c ( l , a , d , e , f , g ) } ) ) return ! 1 } else if ( l !== y && ! c ( l , y , d , e , f , g ) ) return ! 1 } return ! 0 } function oe ( a , b , c ) { switch ( c ) { case ea : case Y : return + a == + b ; case ha : return a . name == b . name && a . message == b . message ; case qa : return a != + a ? b != + b : a == + b ; case w : case ma : return a == b + "" } return ! 1 } function Tc ( a , b , c , d , e , f , g ) { var h = xa ( a ) , k = h . length , y = xa ( b ) . length ; if ( k != y && ! e ) return ! 1 ; for ( y = k ; y -- ; ) { var l = h [ y ] ; if ( ! ( e ? l in b : Pa . call ( b ,
l ) ) ) return ! 1 } for ( var m = e ; ++ y < k ; ) { var l = h [ y ] , C = a [ l ] , w = b [ l ] , n = d ? d ( e ? w : C , e ? C : w , l ) : u ; if ( n === u ? ! c ( C , w , d , e , f , g ) : ! n ) return ! 1 ; m || ( m = "constructor" == l ) } return ! ( ! m && ( c = a . constructor , d = b . constructor , c != d && "constructor" in a && "constructor" in b && ! ( "function" == typeof c && c instanceof c && "function" == typeof d && d instanceof d ) ) ) } function Ca ( a , b , c ) { var d = D . callback || Kc , d = d === Kc ? Mc : d ; return c ? d ( a , b , c ) : d } function bc ( a ) { for ( var b = a . name + "" , c = Yc [ b ] , d = c ? c . length : 0 ; d -- ; ) { var e = c [ d ] , f = e . func ; if ( null == f || f == a ) return e . name } return b }
function lc ( a , b , c ) { var d = D . indexOf || Ea , d = d === Ea ? k : d ; return a ? d ( a , b , c ) : d } function pe ( a ) { a = Ne ( a ) ; for ( var b = a . length ; b -- ; ) { var c = a [ b ] [ 1 ] ; a [ b ] [ 2 ] = c === c && ! Fa ( c ) } return a } function cc ( a , b ) { var c = null == a ? u : a [ b ] ; return Wd ( c ) ? c : u } function Df ( a ) { var b = a . length , c = new a . constructor ( b ) ; return b && "string" == typeof a [ 0 ] && Pa . call ( a , "index" ) && ( c . index = a . index , c . input = a . input ) , c } function Ff ( a ) { return a = a . constructor , "function" == typeof a && a instanceof a || ( a = Jb ) , new a } function jc ( a , b , c ) { var d = a . constructor ; switch ( b ) { case Ka : return Te ( a ) ;
case ea : case Y : return new d ( + a ) ; case U : case na : case Ua : case ia : case ua : case jb : case kb : case vb : case wb : return b = a . buffer , new d ( c ? Te ( b ) : b , a . byteOffset , a . length ) ; case qa : case ma : return new d ( a ) ; case w : var e = new d ( a . source , ta . exec ( a ) ) ; e . lastIndex = a . lastIndex } return e } function fa ( a , b , c ) { return null == a || sa ( b , a ) || ( b = Na ( b ) , a = 1 == b . length ? a : fb ( a , gb ( b , 0 , - 1 ) ) , b = sc ( b ) ) , b = null == a ? a : a [ b ] , null == b ? u : b . apply ( a , c ) } function Da ( a ) { return null != a && lb ( Ac ( a ) ) } function Kb ( a , b ) { return a = "number" == typeof a || nd . test ( a ) ? + a :
2017-07-25 17:51:59 +00:00
- 1 , b = null == b ? ue : b , - 1 < a && 0 == a % 1 && a < b } function ra ( a , b , c ) { if ( ! Fa ( c ) ) return ! 1 ; var d = typeof b ; return ! ! ( "number" == d ? Da ( c ) && Kb ( b , c . length ) : "string" == d && b in c ) && ( b = c [ b ] , a === a ? a === b : b !== b ) } function sa ( a , b ) { var c = typeof a ; return ! ! ( "string" == c && cf . test ( a ) || "number" == c ) || ! oa ( a ) && ( ! ld . test ( a ) || null != b && a in Ta ( b ) ) } function tb ( a ) { var b = bc ( a ) , c = D [ b ] ; return "function" == typeof c && b in va . prototype && ( a === c || ( b = Hd ( c ) , ! ! b && a === b [ 0 ] ) ) } function lb ( a ) { return "number" == typeof a && - 1 < a && 0 == a % 1 && a <= ue } function Db ( a , b ) { return a ===
2017-07-20 23:09:21 +00:00
u ? b : dd ( a , b , Db ) } function ff ( a , b ) { a = Ta ( a ) ; for ( var c = - 1 , d = b . length , e = { } ; ++ c < d ; ) { var f = b [ c ] ; f in a && ( e [ f ] = a [ f ] ) } return e } function Gf ( a , b ) { var c = { } ; return Pe ( a , function ( a , d , e ) { b ( a , d , e ) && ( c [ d ] = a ) } ) , c } function ub ( a ) { for ( var b = Vb ( a ) , c = b . length , d = c && a . length , e = ! ! d && lb ( d ) && ( oa ( a ) || Ra ( a ) ) , f = - 1 , g = [ ] ; ++ f < c ; ) { var h = b [ f ] ; ( e && Kb ( h , d ) || Pa . call ( a , h ) ) && g . push ( h ) } return g } function vc ( a ) { return null == a ? [ ] : Da ( a ) ? Fa ( a ) ? a : Jb ( a ) : fd ( a ) } function Ta ( a ) { return Fa ( a ) ? a : Jb ( a ) } function Na ( a ) { if ( oa ( a ) ) return a ; var b = [ ] ; return c ( a ) . replace ( da ,
function ( a , c , d , e ) { b . push ( d ? e . replace ( Xa , "$1" ) : c || a ) } ) , b } function wc ( a ) { return a instanceof va ? a . clone ( ) : new xb ( a . _ _wrapped _ _ , a . _ _chain _ _ , bb ( a . _ _actions _ _ ) ) } function Zc ( a , b , c ) { return a && a . length ? ( ( c ? ra ( a , b , c ) : null == b ) && ( b = 1 ) , gb ( a , 0 > b ? 0 : b ) ) : [ ] } function la ( a , b , c ) { var d = a ? a . length : 0 ; return d ? ( ( c ? ra ( a , b , c ) : null == b ) && ( b = 1 ) , b = d - ( + b || 0 ) , gb ( a , 0 , 0 > b ? 0 : b ) ) : [ ] } function xe ( a ) { return a ? a [ 0 ] : u } function Ea ( a , b , c ) { var d = a ? a . length : 0 ; if ( ! d ) return - 1 ; if ( "number" == typeof c ) c = 0 > c ? Va ( d + c , 0 ) : c ; else if ( c ) return c = vd ( a , b ) ,
2017-07-25 17:51:59 +00:00
c < d && ( b === b ? b === a [ c ] : a [ c ] !== a [ c ] ) ? c : - 1 ; return k ( a , b , c || 0 ) } function sc ( a ) { var b = a ? a . length : 0 ; return b ? a [ b - 1 ] : u } function Ub ( a ) { return Zc ( a , 1 ) } function xc ( a , b , c , d ) { if ( ! a || ! a . length ) return [ ] ; null != b && "boolean" != typeof b && ( d = c , c = ra ( a , b , d ) ? u : b , b = ! 1 ) ; var e = Ca ( ) ; if ( ( null != c || e !== Mc ) && ( c = e ( c , d , 3 ) ) , b && lc ( ) === k ) { b = c ; var f ; c = - 1 ; d = a . length ; for ( var e = - 1 , g = [ ] ; ++ c < d ; ) { var h = a [ c ] , l = b ? b ( h , c , a ) : h ; c && f === l || ( f = l , g [ ++ e ] = h ) } a = g } else a = Od ( a , c ) ; return a } function Ed ( a ) { if ( ! a || ! a . length ) return [ ] ; var b = - 1 , c = 0 ; a = Ib ( a , function ( a ) { return Da ( a ) ?
2017-07-20 23:09:21 +00:00
( c = Va ( a . length , c ) , ! 0 ) : void 0 } ) ; for ( var d = Ja ( c ) ; ++ b < c ; ) d [ b ] = kc ( a , td ( b ) ) ; return d } function ec ( a , b , c ) { return a && a . length ? ( a = Ed ( a ) , null == b ? a : ( b = mb ( b , c , 4 ) , kc ( a , function ( a ) { return Cc ( a , b , u , ! 0 ) } ) ) ) : [ ] } function ye ( a , b ) { var c = - 1 , d = a ? a . length : 0 , e = { } ; for ( ! d || b || oa ( a [ 0 ] ) || ( b = [ ] ) ; ++ c < d ; ) { var f = a [ c ] ; b ? e [ f ] = b [ c ] : f && ( e [ f [ 0 ] ] = f [ 1 ] ) } return e } function Fd ( a ) { return a = D ( a ) , a . _ _chain _ _ = ! 0 , a } function Rb ( a , b , c ) { return b . call ( c , a ) } function Ae ( a , b , c ) { var d = oa ( a ) ? Nb : $d ; return c && ra ( a , b , c ) && ( b = u ) , ( "function" != typeof b || c !==
2017-07-25 17:51:59 +00:00
u ) && ( b = Ca ( b , c , 3 ) ) , d ( a , b ) } function gc ( a , b , c ) { var d = oa ( a ) ? Ib : be ; return b = Ca ( b , c , 3 ) , d ( a , b ) } function Qd ( a , b , c , d ) { var e = a ? Ac ( a ) : 0 ; return lb ( e ) || ( a = fd ( a ) , e = a . length ) , c = "number" != typeof c || d && ra ( b , c , d ) ? 0 : 0 > c ? Va ( e + c , 0 ) : c || 0 , "string" == typeof a || ! oa ( a ) && qe ( a ) ? c <= e && - 1 < a . indexOf ( b , c ) : ! ! e && - 1 < lc ( a , b , c ) } function Pd ( a , b , c ) { var d = oa ( a ) ? kc : de ; return b = Ca ( b , c , 3 ) , d ( a , b ) } function id ( a , b , c ) { if ( c ? ra ( a , b , c ) : null == b ) { a = vc ( a ) ; var d = a . length ; return 0 < d ? a [ ud ( 0 , d - 1 ) ] : u } c = - 1 ; a = re ( a ) ; var d = a . length , e = d - 1 ; for ( b = ib ( 0 > b ? 0 : + b || 0 ,
2017-07-20 23:09:21 +00:00
d ) ; ++ c < b ; ) { var d = ud ( c , e ) , f = a [ d ] ; a [ d ] = a [ c ] ; a [ c ] = f } return a . length = b , a } function Hc ( a , b , c ) { var d = oa ( a ) ? Oe : Jd ; return c && ra ( a , b , c ) && ( b = u ) , ( "function" != typeof b || c !== u ) && ( b = Ca ( b , c , 3 ) ) , d ( a , b ) } function jd ( a , b ) { var c ; if ( "function" != typeof b ) { if ( "function" != typeof a ) throw new sb ( M ) ; b = a = b } return function ( ) { return 0 < -- a && ( c = b . apply ( this , arguments ) ) , 1 >= a && ( b = u ) , c } } function bf ( a , b , c ) { function d ( b , c ) { c && Qa ( c ) ; k = w = C = u ; b && ( n = Bc ( ) , l = a . apply ( y , h ) , w || k || ( h = y = u ) ) } function e ( ) { var a = b - ( Bc ( ) - m ) ; 0 >= a || a > b ? d ( C , k ) : w = yd ( e ,
a ) } function f ( ) { d ( q , w ) } function g ( ) { if ( h = arguments , m = Bc ( ) , y = this , C = q && ( w || ! t ) , ! 1 === r ) var c = t && ! w ; else { k || t || ( n = m ) ; var d = r - ( m - n ) , g = 0 >= d || d > r ; g ? ( k && ( k = Qa ( k ) ) , n = m , l = a . apply ( y , h ) ) : k || ( k = yd ( f , d ) ) } return g && w ? w = Qa ( w ) : w || b === r || ( w = yd ( e , b ) ) , c && ( g = ! 0 , l = a . apply ( y , h ) ) , ! g || w || k || ( h = y = u ) , l } var h , k , l , m , y , w , C , n = 0 , r = ! 1 , q = ! 0 ; if ( "function" != typeof a ) throw new sb ( M ) ; if ( b = 0 > b ? 0 : + b || 0 , ! 0 === c ) var t = ! 0 , q = ! 1 ; else Fa ( c ) && ( t = ! ! c . leading , r = "maxWait" in c && Va ( + c . maxWait || 0 , b ) , q = "trailing" in c ? ! ! c . trailing : q ) ; return g . cancel =
function ( ) { w && Qa ( w ) ; k && Qa ( k ) ; n = 0 ; k = w = C = u } , g } function Fc ( a , b ) { function c ( ) { var d = arguments , e = b ? b . apply ( this , d ) : d [ 0 ] , f = c . cache ; return f . has ( e ) ? f . get ( e ) : ( d = a . apply ( this , d ) , c . cache = f . set ( e , d ) , d ) } if ( "function" != typeof a || b && "function" != typeof b ) throw new sb ( M ) ; return c . cache = new Fc . Cache , c } function Ba ( a , b ) { if ( "function" != typeof a ) throw new sb ( M ) ; return b = Va ( b === u ? a . length - 1 : + b || 0 , 0 ) , function ( ) { for ( var c = arguments , d = - 1 , e = Va ( c . length - b , 0 ) , f = Ja ( e ) ; ++ d < e ; ) f [ d ] = c [ b + d ] ; switch ( b ) { case 0 : return a . call ( this , f ) ;
case 1 : return a . call ( this , c [ 0 ] , f ) ; case 2 : return a . call ( this , c [ 0 ] , c [ 1 ] , f ) } e = Ja ( b + 1 ) ; for ( d = - 1 ; ++ d < b ; ) e [ d ] = c [ d ] ; return e [ b ] = f , a . apply ( this , e ) } } function $e ( a , b ) { return a > b } function Ra ( a ) { return q ( a ) && Da ( a ) && Pa . call ( a , "callee" ) && ! xf . call ( a , "callee" ) } function ef ( a , b , c , d ) { return d = ( c = "function" == typeof c ? mb ( c , d , 3 ) : u ) ? c ( a , b ) : u , d === u ? Oc ( a , b , c ) : ! ! d } function Sb ( a ) { return q ( a ) && "string" == typeof a . message && db . call ( a ) == ha } function Hb ( a ) { return Fa ( a ) && db . call ( a ) == pa } function Fa ( a ) { var b = typeof a ; return ! ! a && ( "object" ==
2017-07-25 17:51:59 +00:00
b || "function" == b ) } function Wd ( a ) { return null != a && ( Hb ( a ) ? $b . test ( Jf . call ( a ) ) : q ( a ) && Gb . test ( a ) ) } function Xe ( a ) { return "number" == typeof a || q ( a ) && db . call ( a ) == qa } function Jc ( a ) { var b ; if ( ! q ( a ) || db . call ( a ) != ga || Ra ( a ) || ! ( Pa . call ( a , "constructor" ) || ( b = a . constructor , "function" != typeof b || b instanceof b ) ) ) return ! 1 ; var c ; return Pe ( a , function ( a , b ) { c = b } ) , c === u || Pa . call ( a , c ) } function Hf ( a ) { return Fa ( a ) && db . call ( a ) == w } function qe ( a ) { return "string" == typeof a || q ( a ) && db . call ( a ) == ma } function ic ( a ) { return q ( a ) && lb ( a . length ) &&
! ! Ia [ db . call ( a ) ] } function Wb ( a , b ) { return a < b } function re ( a ) { var b = a ? Ac ( a ) : 0 ; return lb ( b ) ? b ? bb ( a ) : [ ] : fd ( a ) } function Me ( a ) { return Zd ( a , Vb ( a ) ) } function Kd ( a ) { return sd ( a , Vb ( a ) ) } function Vb ( a ) { if ( null == a ) return [ ] ; Fa ( a ) || ( a = Jb ( a ) ) ; for ( var b = a . length , b = b && lb ( b ) && ( oa ( a ) || Ra ( a ) ) && b || 0 , c = a . constructor , d = - 1 , c = "function" == typeof c && c . prototype === a , e = Ja ( b ) , f = 0 < b ; ++ d < b ; ) e [ d ] = d + "" ; for ( var g in a ) f && Kb ( g , b ) || "constructor" == g && ( c || ! Pa . call ( a , g ) ) || e . push ( g ) ; return e } function Ne ( a ) { a = Ta ( a ) ; for ( var b = - 1 , c = xa ( a ) , d = c . length ,
2017-07-20 23:09:21 +00:00
e = Ja ( d ) ; ++ b < d ; ) { var f = c [ b ] ; e [ b ] = [ f , a [ f ] ] } return e } function fd ( a ) { return Nd ( a , xa ( a ) ) } function Le ( a ) { return ( a = c ( a ) ) && a . replace ( hc , r ) . replace ( md , "" ) } function Za ( a , b ) { var d = "" ; if ( a = c ( a ) , b = + b , 1 > b || ! a || ! nc ( b ) ) return d ; do b % 2 && ( d += a ) , b = Eb ( b / 2 ) , a += a ; while ( b ) ; return d } function Ud ( a , d , f ) { var g = a ; return ( a = c ( a ) ) ? ( f ? ra ( g , d , f ) : null == d ) ? a . slice ( A ( a ) , B ( a ) + 1 ) : ( d += "" , a . slice ( b ( a , d ) , e ( a , d ) + 1 ) ) : a } function gf ( a , b , d ) { return d && ra ( a , b , d ) && ( b = u ) , a = c ( a ) , a . match ( b || ig ) || [ ] } function Kc ( a , b , c ) { return c && ra ( a , b , c ) && ( b = u ) , q ( a ) ?
Xd ( a ) : Mc ( a , b ) } function fc ( a ) { return a } function Xd ( a ) { return rc ( $a ( a , ! 0 ) ) } function Lc ( a , b , c ) { if ( null == c ) { var d = Fa ( b ) , e = d ? xa ( b ) : u ; ( ( e = e && e . length ? sd ( b , e ) : u ) ? e . length : d ) || ( e = ! 1 , c = b , b = a , a = this ) } e || ( e = sd ( b , xa ( b ) ) ) ; var f = ! 0 , d = - 1 , g = Hb ( a ) , h = e . length ; ! 1 === c ? f = ! 1 : Fa ( c ) && "chain" in c && ( f = c . chain ) ; for ( ; ++ d < h ; ) { c = e [ d ] ; var k = b [ c ] ; a [ c ] = k ; g && ( a . prototype [ c ] = function ( b ) { return function ( ) { var c = this . _ _chain _ _ ; if ( f || c ) { var d = a ( this . _ _wrapped _ _ ) ; return ( d . _ _actions _ _ = bb ( this . _ _actions _ _ ) ) . push ( { func : b , args : arguments , thisArg : a } ) ,
d . _ _chain _ _ = c , d } return b . apply ( a , yb ( [ this . value ( ) ] , arguments ) ) } } ( k ) ) } return a } function hf ( ) { } function qd ( a ) { return sa ( a ) ? td ( a ) : nf ( a ) } v = v ? Lb . defaults ( Fb . Object ( ) , v , Lb . pick ( Fb , jg ) ) : Fb ; var Ja = v . Array , If = v . Date , jf = v . Error , Yb = v . Function , mc = v . Math , lf = v . Number , Jb = v . Object , se = v . RegExp , ab = v . String , sb = v . TypeError , mf = Ja . prototype , ce = Jb . prototype , Cd = ab . prototype , Jf = Yb . prototype . toString , Pa = ce . hasOwnProperty , Q = 0 , db = ce . toString , Rd = Fb . _ , $b = se ( "^" + Jf . call ( Pa ) . replace ( /[\\^$.*+?()[\]{}|]/g , "\\$&" ) . replace ( /hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g ,
"$1.*?" ) + "$" ) , Ab = v . ArrayBuffer , Qa = v . clearTimeout , rf = v . parseFloat , yf = mc . pow , xf = ce . propertyIsEnumerable , tc = cc ( v , "Set" ) , yd = v . setTimeout , Bf = mf . splice , Af = v . Uint8Array , uf = cc ( v , "WeakMap" ) , wd = mc . ceil , cd = cc ( Jb , "create" ) , Eb = mc . floor , zd = cc ( Ja , "isArray" ) , nc = v . isFinite , Be = cc ( Jb , "keys" ) , Va = mc . max , ib = mc . min , Td = cc ( If , "now" ) , og = v . parseInt , Kf = mc . random , Lf = lf . NEGATIVE _INFINITY , Xc = lf . POSITIVE _INFINITY , te = 4294967294 , Mf = 2147483647 , ue = 9007199254740991 , Uc = uf && new uf , Yc = { } ; D . support = { } ; D . templateSettings = { escape : af , evaluate : Oa ,
interpolate : kd , variable : "" , imports : { _ : D } } ; var oc = function ( ) { function a ( ) { } return function ( b ) { if ( Fa ( b ) ) { a . prototype = b ; var c = new a ; a . prototype = u } return c || { } } } ( ) , Bb = Yd ( Mb ) , Id = Yd ( Zb , ! 0 ) , Gd = We ( ) , De = We ( ! 0 ) , Ce = Uc ? function ( a , b ) { return Uc . set ( a , b ) , a } : fc , Hd = Uc ? function ( a ) { return Uc . get ( a ) } : hf , Ac = td ( "length" ) , Ee = function ( ) { var a = 0 , b = 0 ; return function ( c , d ) { var e = Bc ( ) , f = za - ( e - b ) ; if ( b = e , 0 < f ) { if ( ++ a >= Ga ) return c } else a = 0 ; return Ce ( c , d ) } } ( ) , Tf = Ba ( function ( a , b ) { return q ( a ) && Da ( a ) ? Pb ( a , cb ( b , ! 1 , ! 0 ) ) : [ ] } ) , Uf = ge ( ) , Vf =
ge ( ! 0 ) , Ke = Ba ( function ( a ) { for ( var b = a . length , c = b , d = Ja ( m ) , e = lc ( ) , f = e === k , g = [ ] ; c -- ; ) { var h = a [ c ] = Da ( h = a [ c ] ) ? h : [ ] ; d [ c ] = f && 120 <= h . length && cd && tc ? new pb ( c && h ) : null } var f = a [ 0 ] , l = - 1 , m = f ? f . length : 0 , y = d [ 0 ] ; a : for ( ; ++ l < m ; ) if ( h = f [ l ] , 0 > ( y ? rb ( y , h ) : e ( g , h , 0 ) ) ) { for ( c = b ; -- c ; ) { var w = d [ c ] ; if ( 0 > ( w ? rb ( w , h ) : e ( a [ c ] , h , 0 ) ) ) continue a } y && y . push ( h ) ; g . push ( h ) } return g } ) , pg = Ba ( function ( b , c ) { c = cb ( c ) ; var d = rd ( b , c ) ; return fe ( b , c . sort ( a ) ) , d } ) , Xf = ke ( ) , Yf = ke ( ! 0 ) , hg = Ba ( function ( a ) { return Od ( cb ( a , ! 1 , ! 0 ) ) } ) , Zf = Ba ( function ( a , b ) { return Da ( a ) ?
Pb ( a , b ) : [ ] } ) , fg = Ba ( Ed ) , Wc = Ba ( function ( a ) { var b = a . length , c = 2 < b ? a [ b - 2 ] : u , d = 1 < b ? a [ b - 1 ] : u ; return 2 < b && "function" == typeof c ? b -= 2 : ( c = 1 < b && "function" == typeof d ? ( -- b , d ) : u , d = u ) , a . length = b , ec ( a , c , d ) } ) , Ef = Ba ( function ( a ) { return a = cb ( a ) , this . thru ( function ( b ) { b = oa ( b ) ? b : [ Ta ( b ) ] ; for ( var c = a , d = - 1 , e = b . length , f = - 1 , g = c . length , h = Ja ( e + g ) ; ++ d < e ; ) h [ d ] = b [ d ] ; for ( ; ++ f < g ; ) h [ d ++ ] = c [ f ] ; return h } ) } ) , uc = Ba ( function ( a , b ) { return rd ( a , cb ( b ) ) } ) , Ad = gd ( function ( a , b , c ) { Pa . call ( a , c ) ? ++ a [ c ] : a [ c ] = 1 } ) , Bd = xd ( Bb ) , Vc = xd ( Id , ! 0 ) , Nf = zf ( ob , Bb ) , Ie =
zf ( function ( a , b ) { for ( var c = a . length ; c -- && ! 1 !== b ( a [ c ] , c , a ) ; ) ; return a } , Id ) , qg = gd ( function ( a , b , c ) { Pa . call ( a , c ) ? a [ c ] . push ( b ) : a [ c ] = [ b ] } ) , gg = gd ( function ( a , b , c ) { a [ c ] = b } ) , $f = Ba ( function ( a , b , c ) { var d = - 1 , e = "function" == typeof b , f = sa ( b ) , g = Da ( a ) ? Ja ( a . length ) : [ ] ; return Bb ( a , function ( a ) { var h = e ? b : f && null != a ? a [ b ] : u ; g [ ++ d ] = h ? h . apply ( a , c ) : fa ( a , b , c ) } ) , g } ) , rg = gd ( function ( a , b , c ) { a [ c ? 0 : 1 ] . push ( b ) } , function ( ) { return [ [ ] , [ ] ] } ) , ve = ne ( Cc , Bb ) , He = ne ( function ( a , b , c , d ) { var e = a . length ; for ( d && e && ( c = a [ -- e ] ) ; e -- ; ) c = b ( c , a [ e ] , e , a ) ;
return c } , Id ) , ag = Ba ( function ( a , b ) { if ( null == a ) return [ ] ; var c = b [ 2 ] ; return c && ra ( b [ 0 ] , b [ 1 ] , c ) && ( b . length = 1 ) , Re ( a , cb ( b ) , [ ] ) } ) , Bc = Td || function ( ) { return ( new If ) . getTime ( ) } , Fe = Ba ( function ( a , b , c ) { var d = J ; if ( c . length ) var e = z ( c , Fe . placeholder ) , d = d | P ; return hb ( a , d , b , c , e ) } ) , Wf = Ba ( function ( a , b ) { b = b . length ? cb ( b ) : Kd ( a ) ; for ( var c = - 1 , d = b . length ; ++ c < d ; ) { var e = b [ c ] ; a [ e ] = hb ( a [ e ] , J , a ) } return a } ) , Ge = Ba ( function ( a , b , c ) { var d = J | E ; if ( c . length ) var e = z ( c , Ge . placeholder ) , d = d | P ; return hb ( b , d , a , c , e ) } ) , bg = tf ( N ) , cg = tf ( K ) , dg = Ba ( function ( a ,
b ) { return Xb ( a , 1 , b ) } ) , eg = Ba ( function ( a , b , c ) { return Xb ( a , b , c ) } ) , Pf = wf ( ) , we = wf ( ! 0 ) , sg = Ba ( function ( a , b ) { if ( b = cb ( b ) , "function" != typeof a || ! Nb ( b , h ) ) throw new sb ( M ) ; var c = b . length ; return Ba ( function ( d ) { for ( var e = ib ( d . length , c ) ; e -- ; ) d [ e ] = b [ e ] ( d [ e ] ) ; return a . apply ( this , d ) } ) } ) , Qf = me ( P ) , Sf = me ( V ) , Rf = Ba ( function ( a , b ) { return hb ( a , W , u , u , u , cb ( b ) ) } ) , oa = zd || function ( a ) { return q ( a ) && lb ( a . length ) && db . call ( a ) == R } , dd = Ob ( ee ) , ed = Ob ( function ( a , b , c ) { return c ? Md ( a , b , c ) : Ec ( a , b ) } ) , Je = vf ( ed , function ( a , b ) { return a === u ? b : a } ) , d =
vf ( dd , Db ) , l = je ( Mb ) , Z = je ( Zb ) , H = le ( Gd ) , aa = le ( De ) , ba = Qc ( Mb ) , La = Qc ( Zb ) , xa = Be ? function ( a ) { var b = null == a ? u : a . constructor ; return "function" == typeof b && b . prototype === a || "function" != typeof a && Da ( a ) ? ub ( a ) : Fa ( a ) ? Be ( a ) : [ ] } : ub , Qb = Wa ( ! 0 ) , Cb = Wa ( ) , dc = Ba ( function ( a , b ) { if ( null == a ) return { } ; if ( "function" != typeof b [ 0 ] ) return b = kc ( cb ( b ) , ab ) , ff ( a , Pb ( Vb ( a ) , b ) ) ; var c = mb ( b [ 0 ] , b [ 1 ] , 3 ) ; return Gf ( a , function ( a , b , d ) { return ! c ( a , b , d ) } ) } ) , Dd = Ba ( function ( a , b ) { return null == a ? { } : "function" == typeof b [ 0 ] ? Gf ( a , mb ( b [ 0 ] , b [ 1 ] , 3 ) ) : ff ( a , cb ( b ) ) } ) ,
zg = hd ( function ( a , b , c ) { return b = b . toLowerCase ( ) , a + ( c ? b . charAt ( 0 ) . toUpperCase ( ) + b . slice ( 1 ) : b ) } ) , ad = hd ( function ( a , b , c ) { return a + ( c ? "-" : "" ) + b . toLowerCase ( ) } ) , yg = Rc ( ) , yc = Rc ( ! 0 ) , $c = hd ( function ( a , b , c ) { return a + ( c ? "_" : "" ) + b . toLowerCase ( ) } ) , xg = hd ( function ( a , b , c ) { return a + ( c ? " " : "" ) + ( b . charAt ( 0 ) . toUpperCase ( ) + b . slice ( 1 ) ) } ) , zc = Ba ( function ( a , b ) { try { return a . apply ( u , b ) } catch ( L ) { return Sb ( L ) ? L : new jf ( L ) } } ) , kg = Ba ( function ( a , b ) { return function ( c ) { return fa ( c , a , b ) } } ) , qb = Ba ( function ( a , b ) { return function ( c ) { return fa ( a ,
c , b ) } } ) , Sd = ie ( "ceil" ) , qc = ie ( "floor" ) , pd = ac ( $e , Lf ) , tg = ac ( Wb , Xc ) , lg = ie ( "round" ) ; return D . prototype = Ya . prototype , xb . prototype = oc ( Ya . prototype ) , xb . prototype . constructor = xb , va . prototype = oc ( Ya . prototype ) , va . prototype . constructor = va , eb . prototype [ "delete" ] = function ( a ) { return this . has ( a ) && delete this . _ _data _ _ [ a ] } , eb . prototype . get = function ( a ) { return "__proto__" == a ? u : this . _ _data _ _ [ a ] } , eb . prototype . has = function ( a ) { return "__proto__" != a && Pa . call ( this . _ _data _ _ , a ) } , eb . prototype . set = function ( a , b ) { return "__proto__" !=
a && ( this . _ _data _ _ [ a ] = b ) , this } , pb . prototype . push = function ( a ) { var b = this . data ; "string" == typeof a || Fa ( a ) ? b . set . add ( a ) : b . hash [ a ] = ! 0 } , Fc . Cache = eb , D . after = function ( a , b ) { if ( "function" != typeof b ) { if ( "function" != typeof a ) throw new sb ( M ) ; b = a = b } return a = nc ( a = + a ) ? a : 0 , function ( ) { return 1 > -- a ? b . apply ( this , arguments ) : void 0 } } , D . ary = function ( a , b , c ) { return c && ra ( a , b , c ) && ( b = u ) , b = a && null == b ? a . length : Va ( + b || 0 , 0 ) , hb ( a , S , u , u , u , u , b ) } , D . assign = ed , D . at = uc , D . before = jd , D . bind = Fe , D . bindAll = Wf , D . bindKey = Ge , D . callback = Kc , D . chain =
2017-07-25 17:51:59 +00:00
Fd , D . chunk = function ( a , b , c ) { b = ( c ? ra ( a , b , c ) : null == b ) ? 1 : Va ( Eb ( b ) || 1 , 1 ) ; c = 0 ; for ( var d = a ? a . length : 0 , e = - 1 , f = Ja ( wd ( d / b ) ) ; c < d ; ) f [ ++ e ] = gb ( a , c , c += b ) ; return f } , D . compact = function ( a ) { for ( var b = - 1 , c = a ? a . length : 0 , d = - 1 , e = [ ] ; ++ b < c ; ) { var f = a [ b ] ; f && ( e [ ++ d ] = f ) } return e } , D . constant = function ( a ) { return function ( ) { return a } } , D . countBy = Ad , D . create = function ( a , b , c ) { var d = oc ( a ) ; return c && ra ( a , b , c ) && ( b = u ) , b ? Ec ( d , b ) : d } , D . curry = bg , D . curryRight = cg , D . debounce = bf , D . defaults = Je , D . defaultsDeep = d , D . defer = dg , D . delay = eg , D . difference =
Tf , D . drop = Zc , D . dropRight = la , D . dropRightWhile = function ( a , b , c ) { return a && a . length ? bd ( a , Ca ( b , c , 3 ) , ! 0 , ! 0 ) : [ ] } , D . dropWhile = function ( a , b , c ) { return a && a . length ? bd ( a , Ca ( b , c , 3 ) , ! 0 ) : [ ] } , D . fill = function ( a , b , c , d ) { var e = a ? a . length : 0 ; if ( ! e ) return [ ] ; c && "number" != typeof c && ra ( a , b , c ) && ( c = 0 , d = e ) ; e = a . length ; c = null == c ? 0 : + c || 0 ; 0 > c && ( c = - c > e ? 0 : e + c ) ; d = d === u || d > e ? e : + d || 0 ; 0 > d && ( d += e ) ; e = c > d ? 0 : d >>> 0 ; for ( c >>>= 0 ; c < e ; ) a [ c ++ ] = b ; return a } , D . filter = gc , D . flatten = function ( a , b , c ) { var d = a ? a . length : 0 ; return c && ra ( a , b , c ) && ( b = ! 1 ) , d ? cb ( a ,
2017-07-20 23:09:21 +00:00
b ) : [ ] } , D . flattenDeep = function ( a ) { return a && a . length ? cb ( a , ! 0 ) : [ ] } , D . flow = Pf , D . flowRight = we , D . forEach = Nf , D . forEachRight = Ie , D . forIn = H , D . forInRight = aa , D . forOwn = ba , D . forOwnRight = La , D . functions = Kd , D . groupBy = qg , D . indexBy = gg , D . initial = function ( a ) { return la ( a , 1 ) } , D . intersection = Ke , D . invert = function ( a , b , c ) { c && ra ( a , b , c ) && ( b = u ) ; c = - 1 ; for ( var d = xa ( a ) , e = d . length , f = { } ; ++ c < e ; ) { var g = d [ c ] , h = a [ g ] ; b ? Pa . call ( f , h ) ? f [ h ] . push ( g ) : f [ h ] = [ g ] : f [ h ] = g } return f } , D . invoke = $f , D . keys = xa , D . keysIn = Vb , D . map = Pd , D . mapKeys = Qb , D . mapValues =
Cb , D . matches = Xd , D . matchesProperty = function ( a , b ) { return Sa ( a , $a ( b , ! 0 ) ) } , D . memoize = Fc , D . merge = dd , D . method = kg , D . methodOf = qb , D . mixin = Lc , D . modArgs = sg , D . negate = function ( a ) { if ( "function" != typeof a ) throw new sb ( M ) ; return function ( ) { return ! a . apply ( this , arguments ) } } , D . omit = dc , D . once = function ( a ) { return jd ( 2 , a ) } , D . pairs = Ne , D . partial = Qf , D . partialRight = Sf , D . partition = rg , D . pick = Dd , D . pluck = function ( a , b ) { return Pd ( a , qd ( b ) ) } , D . property = qd , D . propertyOf = function ( a ) { return function ( b ) { return fb ( a , Na ( b ) , b + "" ) } } , D . pull =
function ( ) { var a = arguments , b = a [ 0 ] ; if ( ! b || ! b . length ) return b ; for ( var c = 0 , d = lc ( ) , e = a . length ; ++ c < e ; ) for ( var f = 0 , g = a [ c ] ; - 1 < ( f = d ( b , g , f ) ) ; ) Bf . call ( b , f , 1 ) ; return b } , D . pullAt = pg , D . range = function ( a , b , c ) { c && ra ( a , b , c ) && ( b = c = u ) ; a = + a || 0 ; c = null == c ? 1 : + c || 0 ; null == b ? ( b = a , a = 0 ) : b = + b || 0 ; var d = - 1 ; b = Va ( wd ( ( b - a ) / ( c || 1 ) ) , 0 ) ; for ( var e = Ja ( b ) ; ++ d < b ; ) e [ d ] = a , a += c ; return e } , D . rearg = Rf , D . reject = function ( a , b , c ) { var d = oa ( a ) ? Ib : be ; return b = Ca ( b , c , 3 ) , d ( a , function ( a , c , d ) { return ! b ( a , c , d ) } ) } , D . remove = function ( a , b , c ) { var d = [ ] ; if ( ! a || ! a . length ) return d ;
var e = - 1 , f = [ ] , g = a . length ; for ( b = Ca ( b , c , 3 ) ; ++ e < g ; ) c = a [ e ] , b ( c , e , a ) && ( d . push ( c ) , f . push ( e ) ) ; return fe ( a , f ) , d } , D . rest = Ub , D . restParam = Ba , D . set = function ( a , b , c ) { if ( null == a ) return a ; var d = b + "" ; b = null != a [ d ] || sa ( b , a ) ? [ d ] : Na ( b ) ; for ( var d = - 1 , e = b . length , f = e - 1 , g = a ; null != g && ++ d < e ; ) { var h = b [ d ] ; Fa ( g ) && ( d == f ? g [ h ] = c : null == g [ h ] && ( g [ h ] = Kb ( b [ d + 1 ] ) ? [ ] : { } ) ) ; g = g [ h ] } return a } , D . shuffle = function ( a ) { return id ( a , Xc ) } , D . slice = function ( a , b , c ) { var d = a ? a . length : 0 ; return d ? ( c && "number" != typeof c && ra ( a , b , c ) && ( b = 0 , c = d ) , gb ( a , b , c ) ) : [ ] } ,
D . sortBy = function ( a , b , c ) { if ( null == a ) return [ ] ; c && ra ( a , b , c ) && ( b = u ) ; var d = - 1 ; return b = Ca ( b , c , 3 ) , a = de ( a , function ( a , c , e ) { return { a : b ( a , c , e ) , b : ++ d , c : a } } ) , Qe ( a , g ) } , D . sortByAll = ag , D . sortByOrder = function ( a , b , c , d ) { return null == a ? [ ] : ( d && ra ( b , c , d ) && ( c = u ) , oa ( b ) || ( b = null == b ? [ ] : [ b ] ) , oa ( c ) || ( c = null == c ? [ ] : [ c ] ) , Re ( a , b , c ) ) } , D . spread = function ( a ) { if ( "function" != typeof a ) throw new sb ( M ) ; return function ( b ) { return a . apply ( this , b ) } } , D . take = function ( a , b , c ) { return a && a . length ? ( ( c ? ra ( a , b , c ) : null == b ) && ( b = 1 ) , gb ( a , 0 , 0 > b ? 0 : b ) ) : [ ] } ,
D . takeRight = function ( a , b , c ) { var d = a ? a . length : 0 ; return d ? ( ( c ? ra ( a , b , c ) : null == b ) && ( b = 1 ) , b = d - ( + b || 0 ) , gb ( a , 0 > b ? 0 : b ) ) : [ ] } , D . takeRightWhile = function ( a , b , c ) { return a && a . length ? bd ( a , Ca ( b , c , 3 ) , ! 1 , ! 0 ) : [ ] } , D . takeWhile = function ( a , b , c ) { return a && a . length ? bd ( a , Ca ( b , c , 3 ) ) : [ ] } , D . tap = function ( a , b , c ) { return b . call ( c , a ) , a } , D . throttle = function ( a , b , c ) { var d = ! 0 , e = ! 0 ; if ( "function" != typeof a ) throw new sb ( M ) ; return ! 1 === c ? d = ! 1 : Fa ( c ) && ( d = "leading" in c ? ! ! c . leading : d , e = "trailing" in c ? ! ! c . trailing : e ) , bf ( a , b , { leading : d , maxWait : + b ,
trailing : e } ) } , D . thru = Rb , D . times = function ( a , b , c ) { if ( a = Eb ( a ) , 1 > a || ! nc ( a ) ) return [ ] ; var d = - 1 , e = Ja ( ib ( a , 4294967295 ) ) ; for ( b = mb ( b , c , 1 ) ; ++ d < a ; ) 4294967295 > d ? e [ d ] = b ( d ) : b ( d ) ; return e } , D . toArray = re , D . toPlainObject = Me , D . transform = function ( a , b , c , d ) { var e = oa ( a ) || ic ( a ) ; return b = Ca ( b , d , 4 ) , null == c && ( e || Fa ( a ) ? ( d = a . constructor , c = e ? oa ( a ) ? new d : [ ] : oc ( Hb ( d ) ? d . prototype : u ) ) : c = { } ) , ( e ? ob : Mb ) ( a , function ( a , d , e ) { return b ( c , a , d , e ) } ) , c } , D . union = hg , D . uniq = xc , D . unzip = Ed , D . unzipWith = ec , D . values = fd , D . valuesIn = function ( a ) { return Nd ( a ,
Vb ( a ) ) } , D . where = function ( a , b ) { return gc ( a , rc ( b ) ) } , D . without = Zf , D . wrap = function ( a , b ) { return b = null == b ? fc : b , hb ( b , P , u , [ a ] , [ ] ) } , D . xor = function ( ) { for ( var a = - 1 , b = arguments . length ; ++ a < b ; ) { var c = arguments [ a ] ; if ( Da ( c ) ) var d = d ? yb ( Pb ( d , c ) , Pb ( c , d ) ) : c } return d ? Od ( d ) : [ ] } , D . zip = fg , D . zipObject = ye , D . zipWith = Wc , D . backflow = we , D . collect = Pd , D . compose = we , D . each = Nf , D . eachRight = Ie , D . extend = ed , D . iteratee = Kc , D . methods = Kd , D . object = ye , D . select = gc , D . tail = Ub , D . unique = xc , Lc ( D , D ) , D . add = function ( a , b ) { return ( + a || 0 ) + ( + b || 0 ) } , D . attempt =
zc , D . camelCase = zg , D . capitalize = function ( a ) { return ( a = c ( a ) ) && a . charAt ( 0 ) . toUpperCase ( ) + a . slice ( 1 ) } , D . ceil = Sd , D . clone = function ( a , b , c , d ) { return b && "boolean" != typeof b && ra ( a , b , c ) ? b = ! 1 : "function" == typeof b && ( d = c , c = b , b = ! 1 ) , "function" == typeof c ? $a ( a , b , mb ( c , d , 3 ) ) : $a ( a , b ) } , D . cloneDeep = function ( a , b , c ) { return "function" == typeof b ? $a ( a , ! 0 , mb ( b , c , 3 ) ) : $a ( a , ! 0 ) } , D . deburr = Le , D . endsWith = function ( a , b , d ) { a = c ( a ) ; b += "" ; var e = a . length ; return d = d === u ? e : ib ( 0 > d ? 0 : + d || 0 , e ) , d -= b . length , 0 <= d && a . indexOf ( b , d ) == d } , D . escape = function ( a ) { return ( a =
c ( a ) ) && Ze . test ( a ) ? a . replace ( pc , m ) : a } , D . escapeRegExp = function ( a ) { return ( a = c ( a ) ) && wa . test ( a ) ? a . replace ( Gc , n ) : a || "(?:)" } , D . every = Ae , D . find = Bd , D . findIndex = Uf , D . findKey = l , D . findLast = Vc , D . findLastIndex = Vf , D . findLastKey = Z , D . findWhere = function ( a , b ) { return Bd ( a , rc ( b ) ) } , D . first = xe , D . floor = qc , D . get = function ( a , b , c ) { return a = null == a ? u : fb ( a , Na ( b ) , b + "" ) , a === u ? c : a } , D . gt = $e , D . gte = function ( a , b ) { return a >= b } , D . has = function ( a , b ) { if ( null == a ) return ! 1 ; var c = Pa . call ( a , b ) ; if ( ! c && ! sa ( b ) ) { if ( b = Na ( b ) , a = 1 == b . length ? a : fb ( a , gb ( b ,
2017-07-25 17:51:59 +00:00
0 , - 1 ) ) , null == a ) return ! 1 ; b = sc ( b ) ; c = Pa . call ( a , b ) } return c || lb ( a . length ) && Kb ( b , a . length ) && ( oa ( a ) || Ra ( a ) ) } , D . identity = fc , D . includes = Qd , D . indexOf = Ea , D . inRange = function ( a , b , c ) { return b = + b || 0 , c === u ? ( c = b , b = 0 ) : c = + c || 0 , a >= ib ( b , c ) && a < Va ( b , c ) } , D . isArguments = Ra , D . isArray = oa , D . isBoolean = function ( a ) { return ! 0 === a || ! 1 === a || q ( a ) && db . call ( a ) == ea } , D . isDate = function ( a ) { return q ( a ) && db . call ( a ) == Y } , D . isElement = function ( a ) { return ! ! a && 1 === a . nodeType && q ( a ) && ! Jc ( a ) } , D . isEmpty = function ( a ) { return null == a || ( Da ( a ) && ( oa ( a ) || qe ( a ) ||
Ra ( a ) || q ( a ) && Hb ( a . splice ) ) ? ! a . length : ! xa ( a ) . length ) } , D . isEqual = ef , D . isError = Sb , D . isFinite = function ( a ) { return "number" == typeof a && nc ( a ) } , D . isFunction = Hb , D . isMatch = function ( a , b , c , d ) { return c = "function" == typeof c ? mb ( c , d , 3 ) : u , Pc ( a , pe ( b ) , c ) } , D . isNaN = function ( a ) { return Xe ( a ) && a != + a } , D . isNative = Wd , D . isNull = function ( a ) { return null === a } , D . isNumber = Xe , D . isObject = Fa , D . isPlainObject = Jc , D . isRegExp = Hf , D . isString = qe , D . isTypedArray = ic , D . isUndefined = function ( a ) { return a === u } , D . kebabCase = ad , D . last = sc , D . lastIndexOf =
function ( a , b , c ) { var d = a ? a . length : 0 ; if ( ! d ) return - 1 ; var e = d ; if ( "number" == typeof c ) e = ( 0 > c ? Va ( d + c , 0 ) : ib ( c || 0 , d - 1 ) ) + 1 ; else if ( c ) return e = vd ( a , b , ! 0 ) - 1 , a = a [ e ] , ( b === b ? b === a : a !== a ) ? e : - 1 ; if ( b !== b ) return x ( a , e , ! 0 ) ; for ( ; e -- ; ) if ( a [ e ] === b ) return e ; return - 1 } , D . lt = Wb , D . lte = function ( a , b ) { return a <= b } , D . max = pd , D . min = tg , D . noConflict = function ( ) { return Fb . _ = Rd , this } , D . noop = hf , D . now = Bc , D . pad = function ( a , b , d ) { a = c ( a ) ; b = + b ; var e = a . length ; return e < b && nc ( b ) ? ( e = ( b - e ) / 2 , b = Eb ( e ) , e = wd ( e ) , d = he ( "" , e , d ) , d . slice ( 0 , b ) + a + d ) : a } , D . padLeft =
yg , D . padRight = yc , D . parseInt = function ( a , b , c ) { return ( c ? ra ( a , b , c ) : null == b ) ? b = 0 : b && ( b = + b ) , a = Ud ( a ) , og ( a , b || ( Ic . test ( a ) ? 16 : 10 ) ) } , D . random = function ( a , b , c ) { c && ra ( a , b , c ) && ( b = c = u ) ; var d = null == b ; return null == c && ( d && "boolean" == typeof a ? ( c = a , a = 1 ) : "boolean" == typeof b && ( c = b , d = ! 0 ) ) , null == a && d && ( b = 1 , d = ! 1 ) , a = + a || 0 , d ? ( b = a , a = 0 ) : b = + b || 0 , c || a % 1 || b % 1 ? ( c = Kf ( ) , ib ( a + c * ( b - a + rf ( "1e-" + ( ( c + "" ) . length - 1 ) ) ) , b ) ) : ud ( a , b ) } , D . reduce = ve , D . reduceRight = He , D . repeat = Za , D . result = function ( a , b , c ) { var d = null == a ? u : a [ b ] ; return d === u && ( null == a ||
sa ( b , a ) || ( b = Na ( b ) , a = 1 == b . length ? a : fb ( a , gb ( b , 0 , - 1 ) ) , d = null == a ? u : a [ sc ( b ) ] ) , d = d === u ? c : d ) , Hb ( d ) ? d . call ( a ) : d } , D . round = lg , D . runInContext = p , D . size = function ( a ) { var b = a ? Ac ( a ) : 0 ; return lb ( b ) ? b : xa ( a ) . length } , D . snakeCase = $c , D . some = Hc , D . sortedIndex = Xf , D . sortedLastIndex = Yf , D . startCase = xg , D . startsWith = function ( a , b , d ) { return a = c ( a ) , d = null == d ? 0 : ib ( 0 > d ? 0 : + d || 0 , a . length ) , a . lastIndexOf ( b , d ) == d } , D . sum = function ( a , b , c ) { if ( c && ra ( a , b , c ) && ( b = u ) , b = Ca ( b , c , 3 ) , 1 == b . length ) { a = oa ( a ) ? a : vc ( a ) ; c = a . length ; for ( var d = 0 ; c -- ; ) d += + b ( a [ c ] ) ||
0 ; a = d } else a = pf ( a , b ) ; return a } , D . template = function ( a , b , d ) { var e = D . templateSettings ; d && ra ( a , b , d ) && ( b = d = u ) ; a = c ( a ) ; b = Md ( Ec ( { } , d || b ) , e , kf ) ; d = Md ( Ec ( { } , b . imports ) , e . imports , kf ) ; var f , g , h = xa ( d ) , k = Nd ( d , h ) , l = 0 ; d = b . interpolate || od ; var m = "__p+='" ; d = se ( ( b . escape || od ) . source + "|" + d . source + "|" + ( d === kd ? nb : od ) . source + "|" + ( b . evaluate || od ) . source + "|$" , "g" ) ; var w = "sourceURL" in b ? "//# sourceURL=" + b . sourceURL + "\n" : "" ; if ( a . replace ( d , function ( b , c , d , e , h , k ) { return d || ( d = e ) , m += a . slice ( l , k ) . replace ( df , t ) , c && ( f = ! 0 , m += "'+__e(" +
c + ")+'" ) , h && ( g = ! 0 , m += "';" + h + ";\n__p+='" ) , d && ( m += "'+((__t=(" + d + "))==null?'':__t)+'" ) , l = k + b . length , b } ) , m += "';" , ( b = b . variable ) || ( m = "with(obj){" + m + "}" ) , m = ( g ? m . replace ( Tb , "" ) : m ) . replace ( Ma , "$1" ) . replace ( Of , "$1;" ) , m = "function(" + ( b || "obj" ) + "){" + ( b ? "" : "obj||(obj={});" ) + "var __t,__p=''" + ( f ? ",__e=_.escape" : "" ) + ( g ? ",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}" : ";" ) + m + "return __p}" , b = zc ( function ( ) { return Yb ( h , w + "return " + m ) . apply ( u , k ) } ) , b . source = m , Sb ( b ) ) throw b ; return b } , D . trim = Ud ,
D . trimLeft = function ( a , d , e ) { var f = a ; return ( a = c ( a ) ) ? a . slice ( ( e ? ra ( f , d , e ) : null == d ) ? A ( a ) : b ( a , d + "" ) ) : a } , D . trimRight = function ( a , b , d ) { var f = a ; return ( a = c ( a ) ) ? ( d ? ra ( f , b , d ) : null == b ) ? a . slice ( 0 , B ( a ) + 1 ) : a . slice ( 0 , e ( a , b + "" ) + 1 ) : a } , D . trunc = function ( a , b , d ) { d && ra ( a , b , d ) && ( b = u ) ; var e = ja ; if ( d = ya , null != b ) if ( Fa ( b ) ) { var f = "separator" in b ? b . separator : f , e = "length" in b ? + b . length || 0 : e ; d = "omission" in b ? c ( b . omission ) : d } else e = + b || 0 ; if ( a = c ( a ) , e >= a . length ) return a ; if ( e -= d . length , 1 > e ) return d ; if ( b = a . slice ( 0 , e ) , null == f ) return b +
d ; if ( Hf ( f ) ) { if ( a . slice ( e ) . search ( f ) ) { var g , h = a . slice ( 0 , e ) ; f . global || ( f = se ( f . source , ( ta . exec ( f ) || "" ) + "g" ) ) ; for ( f . lastIndex = 0 ; a = f . exec ( h ) ; ) g = a . index ; b = b . slice ( 0 , null == g ? e : g ) } } else a . indexOf ( f , e ) != e && ( f = b . lastIndexOf ( f ) , - 1 < f && ( b = b . slice ( 0 , f ) ) ) ; return b + d } , D . unescape = function ( a ) { return ( a = c ( a ) ) && Ye . test ( a ) ? a . replace ( ze , F ) : a } , D . uniqueId = function ( a ) { var b = ++ Q ; return c ( a ) + b } , D . words = gf , D . all = Ae , D . any = Hc , D . contains = Qd , D . eq = ef , D . detect = Bd , D . foldl = ve , D . foldr = He , D . head = xe , D . include = Qd , D . inject = ve , Lc ( D , function ( ) { var a =
{ } ; return Mb ( D , function ( b , c ) { D . prototype [ c ] || ( a [ c ] = b ) } ) , a } ( ) , ! 1 ) , D . sample = id , D . prototype . sample = function ( a ) { return this . _ _chain _ _ || null != a ? this . thru ( function ( b ) { return id ( b , a ) } ) : id ( this . value ( ) ) } , D . VERSION = I , ob ( "bind bindKey curry curryRight partial partialRight" . split ( " " ) , function ( a ) { D [ a ] . placeholder = D } ) , ob ( [ "drop" , "take" ] , function ( a , b ) { va . prototype [ a ] = function ( c ) { var d = this . _ _filtered _ _ ; if ( d && ! b ) return new va ( this ) ; c = null == c ? 1 : Va ( Eb ( c ) || 0 , 0 ) ; var e = this . clone ( ) ; return d ? e . _ _takeCount _ _ = ib ( e . _ _takeCount _ _ ,
c ) : e . _ _views _ _ . push ( { size : c , type : a + ( 0 > e . _ _dir _ _ ? "Right" : "" ) } ) , e } ; va . prototype [ a + "Right" ] = function ( b ) { return this . reverse ( ) [ a ] ( b ) . reverse ( ) } } ) , ob ( [ "filter" , "map" , "takeWhile" ] , function ( a , b ) { var c = b + 1 , d = c != T ; va . prototype [ a ] = function ( a , b ) { var e = this . clone ( ) ; return e . _ _iteratees _ _ . push ( { iteratee : Ca ( a , b , 1 ) , type : c } ) , e . _ _filtered _ _ = e . _ _filtered _ _ || d , e } } ) , ob ( [ "first" , "last" ] , function ( a , b ) { var c = "take" + ( b ? "Right" : "" ) ; va . prototype [ a ] = function ( ) { return this [ c ] ( 1 ) . value ( ) [ 0 ] } } ) , ob ( [ "initial" , "rest" ] , function ( a ,
b ) { var c = "drop" + ( b ? "" : "Right" ) ; va . prototype [ a ] = function ( ) { return this . _ _filtered _ _ ? new va ( this ) : this [ c ] ( 1 ) } } ) , ob ( [ "pluck" , "where" ] , function ( a , b ) { var c = b ? "filter" : "map" , d = b ? rc : qd ; va . prototype [ a ] = function ( a ) { return this [ c ] ( d ( a ) ) } } ) , va . prototype . compact = function ( ) { return this . filter ( fc ) } , va . prototype . reject = function ( a , b ) { return a = Ca ( a , b , 1 ) , this . filter ( function ( b ) { return ! a ( b ) } ) } , va . prototype . slice = function ( a , b ) { a = null == a ? 0 : + a || 0 ; var c = this ; return c . _ _filtered _ _ && ( 0 < a || 0 > b ) ? new va ( c ) : ( 0 > a ? c = c . takeRight ( - a ) :
a && ( c = c . drop ( a ) ) , b !== u && ( b = + b || 0 , c = 0 > b ? c . dropRight ( - b ) : c . take ( b - a ) ) , c ) } , va . prototype . takeRightWhile = function ( a , b ) { return this . reverse ( ) . takeWhile ( a , b ) . reverse ( ) } , va . prototype . toArray = function ( ) { return this . take ( Xc ) } , Mb ( va . prototype , function ( a , b ) { var c = /^(?:filter|map|reject)|While$/ . test ( b ) , d = /^(?:first|last)$/ . test ( b ) , e = D [ d ? "take" + ( "last" == b ? "Right" : "" ) : b ] ; e && ( D . prototype [ b ] = function ( ) { function b ( a ) { return d && g ? e ( a , 1 ) [ 0 ] : e . apply ( u , yb ( [ a ] , f ) ) } var f = d ? [ 1 ] : arguments , g = this . _ _chain _ _ , h = this . _ _wrapped _ _ ,
k = ! ! this . _ _actions _ _ . length , l = h instanceof va , m = f [ 0 ] , w = l || oa ( h ) ; return w && c && "function" == typeof m && 1 != m . length && ( l = w = ! 1 ) , m = { func : Rb , args : [ b ] , thisArg : u } , k = l && ! k , d && ! g ? k ? ( h = h . clone ( ) , h . _ _actions _ _ . push ( m ) , a . call ( h ) ) : e . call ( u , this . value ( ) ) [ 0 ] : ! d && w ? ( h = k ? h : new va ( this ) , h = a . apply ( h , f ) , h . _ _actions _ _ . push ( m ) , new xb ( h , g ) ) : this . thru ( b ) } ) } ) , ob ( "join pop push replace shift sort splice split unshift" . split ( " " ) , function ( a ) { var b = ( /^(?:replace|split)$/ . test ( a ) ? Cd : mf ) [ a ] , c = /^(?:push|sort|unshift)$/ . test ( a ) ? "tap" :
"thru" , d = /^(?:join|pop|replace|shift)$/ . test ( a ) ; D . prototype [ a ] = function ( ) { var a = arguments ; return d && ! this . _ _chain _ _ ? b . apply ( this . value ( ) , a ) : this [ c ] ( function ( c ) { return b . apply ( c , a ) } ) } } ) , Mb ( va . prototype , function ( a , b ) { var c = D [ b ] ; if ( c ) { var d = c . name + "" ; ( Yc [ d ] || ( Yc [ d ] = [ ] ) ) . push ( { name : b , func : c } ) } } ) , Yc [ Sc ( u , E ) . name ] = [ { name : "wrapper" , func : u } ] , va . prototype . clone = function ( ) { var a = new va ( this . _ _wrapped _ _ ) ; return a . _ _actions _ _ = bb ( this . _ _actions _ _ ) , a . _ _dir _ _ = this . _ _dir _ _ , a . _ _filtered _ _ = this . _ _filtered _ _ , a . _ _iteratees _ _ =
bb ( this . _ _iteratees _ _ ) , a . _ _takeCount _ _ = this . _ _takeCount _ _ , a . _ _views _ _ = bb ( this . _ _views _ _ ) , a } , va . prototype . reverse = function ( ) { if ( this . _ _filtered _ _ ) { var a = new va ( this ) ; a . _ _dir _ _ = - 1 ; a . _ _filtered _ _ = ! 0 } else a = this . clone ( ) , a . _ _dir _ _ *= - 1 ; return a } , va . prototype . value = function ( ) { var a , b = this . _ _wrapped _ _ . value ( ) , c = this . _ _dir _ _ , d = oa ( b ) , e = 0 > c , f = d ? b . length : 0 ; a = f ; for ( var g = this . _ _views _ _ , h = 0 , k = - 1 , l = g . length ; ++ k < l ; ) { var m = g [ k ] , w = m . size ; switch ( m . type ) { case "drop" : h += w ; break ; case "dropRight" : a -= w ; break ; case "take" : a =
ib ( a , h + w ) ; break ; case "takeRight" : h = Va ( h , a - w ) } } if ( a = { start : h , end : a } , g = a . start , h = a . end , a = h - g , e = e ? h : g - 1 , g = this . _ _iteratees _ _ , h = g . length , k = 0 , l = ib ( a , this . _ _takeCount _ _ ) , ! d || f < X || f == a && l == a ) return qf ( b , this . _ _actions _ _ ) ; d = [ ] ; a : for ( ; a -- && k < l ; ) { e += c ; f = - 1 ; for ( m = b [ e ] ; ++ f < h ; ) { var n = g [ f ] , w = n . type , n = n . iteratee ( m ) ; if ( w == T ) m = n ; else if ( ! n ) { if ( w == O ) continue a ; break a } } d [ k ++ ] = m } return d } , D . prototype . chain = function ( ) { return Fd ( this ) } , D . prototype . commit = function ( ) { return new xb ( this . value ( ) , this . _ _chain _ _ ) } , D . prototype . concat =
Ef , D . prototype . plant = function ( a ) { for ( var b , c = this ; c instanceof Ya ; ) { var d = wc ( c ) ; b ? e . _ _wrapped _ _ = d : b = d ; var e = d , c = c . _ _wrapped _ _ } return e . _ _wrapped _ _ = a , b } , D . prototype . reverse = function ( ) { function a ( a ) { return a . reverse ( ) } var b = this . _ _wrapped _ _ ; return b instanceof va ? ( this . _ _actions _ _ . length && ( b = new va ( this ) ) , b = b . reverse ( ) , b . _ _actions _ _ . push ( { func : Rb , args : [ a ] , thisArg : u } ) , new xb ( b , this . _ _chain _ _ ) ) : this . thru ( a ) } , D . prototype . toString = function ( ) { return this . value ( ) + "" } , D . prototype . run = D . prototype . toJSON = D . prototype . valueOf =
D . prototype . value = function ( ) { return qf ( this . _ _wrapped _ _ , this . _ _actions _ _ ) } , D . prototype . collect = D . prototype . map , D . prototype . head = D . prototype . first , D . prototype . select = D . prototype . filter , D . prototype . tail = D . prototype . rest , D } var u , I = "3.10.1" , J = 1 , E = 2 , G = 4 , N = 8 , K = 16 , P = 32 , V = 64 , S = 128 , W = 256 , ja = 30 , ya = "..." , Ga = 150 , za = 16 , X = 200 , O = 1 , T = 2 , M = "Expected a function" , ka = "__lodash_placeholder__" , ca = "[object Arguments]" , R = "[object Array]" , ea = "[object Boolean]" , Y = "[object Date]" , ha = "[object Error]" , pa = "[object Function]" , qa =
"[object Number]" , ga = "[object Object]" , w = "[object RegExp]" , ma = "[object String]" , Ka = "[object ArrayBuffer]" , U = "[object Float32Array]" , na = "[object Float64Array]" , Ua = "[object Int8Array]" , ia = "[object Int16Array]" , ua = "[object Int32Array]" , jb = "[object Uint8Array]" , kb = "[object Uint8ClampedArray]" , vb = "[object Uint16Array]" , wb = "[object Uint32Array]" , Tb = /\b__p\+='';/g , Ma = /\b(__p\+=)''\+/g , Of = /(__e\(.*?\)|\b__t\))\+'';/g , ze = /&(?:amp|lt|gt|quot|#39|#96);/g , pc = /[&<>"'`]/g , Ye = RegExp ( ze . source ) , Ze = RegExp ( pc . source ) ,
af = /<%-([\s\S]+?)%>/g , Oa = /<%([\s\S]+?)%>/g , kd = /<%=([\s\S]+?)%>/g , ld = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/ , cf = /^\w*$/ , da = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g , Gc = /^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g , wa = RegExp ( Gc . source ) , md = /[\u0300-\u036f\ufe20-\ufe23]/g , Xa = /\\(\\)?/g , nb = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g , ta = /\w*$/ , Ic = /^0[xX]/ , Gb = /^\[object .+?Constructor\]$/ , nd = /^\d+$/ , hc = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g ,
od = /($^)/ , df = /['\n\r\u2028\u2029\\]/g , ig = RegExp ( "[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?=[A-Z\\xc0-\\xd6\\xd8-\\xde][a-z\\xdf-\\xf6\\xf8-\\xff]+)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+|[A-Z\\xc0-\\xd6\\xd8-\\xde]+|[0-9]+" , "g" ) , jg = "Array ArrayBuffer Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Math Number Object RegExp Set String _ clearTimeout isFinite parseFloat parseInt setTimeout TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap" . split ( " " ) ,
Ia = { } ; Ia [ U ] = Ia [ na ] = Ia [ Ua ] = Ia [ ia ] = Ia [ ua ] = Ia [ jb ] = Ia [ kb ] = Ia [ vb ] = Ia [ wb ] = ! 0 ; Ia [ ca ] = Ia [ R ] = Ia [ Ka ] = Ia [ ea ] = Ia [ Y ] = Ia [ ha ] = Ia [ pa ] = Ia [ "[object Map]" ] = Ia [ qa ] = Ia [ ga ] = Ia [ w ] = Ia [ "[object Set]" ] = Ia [ ma ] = Ia [ "[object WeakMap]" ] = ! 1 ; var Ha = { } ; Ha [ ca ] = Ha [ R ] = Ha [ Ka ] = Ha [ ea ] = Ha [ Y ] = Ha [ U ] = Ha [ na ] = Ha [ Ua ] = Ha [ ia ] = Ha [ ua ] = Ha [ qa ] = Ha [ ga ] = Ha [ w ] = Ha [ ma ] = Ha [ jb ] = Ha [ kb ] = Ha [ vb ] = Ha [ wb ] = ! 0 ; Ha [ ha ] = Ha [ pa ] = Ha [ "[object Map]" ] = Ha [ "[object Set]" ] = Ha [ "[object WeakMap]" ] = ! 1 ; var pb = { "\u00c0" : "A" , "\u00c1" : "A" , "\u00c2" : "A" , "\u00c3" : "A" , "\u00c4" : "A" , "\u00c5" : "A" ,
"\u00e0" : "a" , "\u00e1" : "a" , "\u00e2" : "a" , "\u00e3" : "a" , "\u00e4" : "a" , "\u00e5" : "a" , "\u00c7" : "C" , "\u00e7" : "c" , "\u00d0" : "D" , "\u00f0" : "d" , "\u00c8" : "E" , "\u00c9" : "E" , "\u00ca" : "E" , "\u00cb" : "E" , "\u00e8" : "e" , "\u00e9" : "e" , "\u00ea" : "e" , "\u00eb" : "e" , "\u00cc" : "I" , "\u00cd" : "I" , "\u00ce" : "I" , "\u00cf" : "I" , "\u00ec" : "i" , "\u00ed" : "i" , "\u00ee" : "i" , "\u00ef" : "i" , "\u00d1" : "N" , "\u00f1" : "n" , "\u00d2" : "O" , "\u00d3" : "O" , "\u00d4" : "O" , "\u00d5" : "O" , "\u00d6" : "O" , "\u00d8" : "O" , "\u00f2" : "o" , "\u00f3" : "o" , "\u00f4" : "o" , "\u00f5" : "o" , "\u00f6" : "o" ,
"\u00f8" : "o" , "\u00d9" : "U" , "\u00da" : "U" , "\u00db" : "U" , "\u00dc" : "U" , "\u00f9" : "u" , "\u00fa" : "u" , "\u00fb" : "u" , "\u00fc" : "u" , "\u00dd" : "Y" , "\u00fd" : "y" , "\u00ff" : "y" , "\u00c6" : "Ae" , "\u00e6" : "ae" , "\u00de" : "Th" , "\u00fe" : "th" , "\u00df" : "ss" } , Nb = { "&" : "&" , "<" : "<" , ">" : ">" , '"' : """ , "'" : "'" , "`" : "`" } , Rd = { "&" : "&" , "<" : "<" , ">" : ">" , """ : '"' , "'" : "'" , "`" : "`" } , eb = { "function" : ! 0 , object : ! 0 } , Jd = { 0 : "x30" , 1 : "x31" , 2 : "x32" , 3 : "x33" , 4 : "x34" , 5 : "x35" , 6 : "x36" , 7 : "x37" , 8 : "x38" , 9 : "x39" , A : "x41" , B : "x42" ,
C : "x43" , D : "x44" , E : "x45" , F : "x46" , a : "x61" , b : "x62" , c : "x63" , d : "x64" , e : "x65" , f : "x66" , n : "x6e" , r : "x72" , t : "x74" , u : "x75" , v : "x76" , x : "x78" } , Ib = { "\\" : "\\" , "'" : "'" , "\n" : "n" , "\r" : "r" , "\u2028" : "u2028" , "\u2029" : "u2029" } , yb = eb [ typeof exports ] && exports && ! exports . nodeType && exports , Ya = eb [ typeof module ] && module && ! module . nodeType && module , Td = eb [ typeof self ] && self && self . Object && self , Cc = eb [ typeof window ] && window && Object && window , Ld = Ya && Ya . exports === yb && yb , Fb = yb && Ya && "object" == typeof global && global && global . Object && global ||
Cc !== ( this && this . window ) && Cc || Td || this , Lb = p ( ) ; "function" == typeof define && "object" == typeof define . amd && define . amd ? ( Fb . _ = Lb , define ( function ( ) { return Lb } ) ) : yb && Ya ? Ld ? ( Ya . exports = Lb ) . _ = Lb : yb . _ = Lb : Fb . _ = Lb } ) . call ( this ) ;
( function ( a , f ) { a ( function ( ) { function a ( a , b ) { return null != a && null != b && a . toLowerCase ( ) === b . toLowerCase ( ) } function h ( a , b ) { var c , e , f = a . length ; if ( ! f || ! b ) return ! 1 ; c = b . toLowerCase ( ) ; for ( e = 0 ; e < f ; ++ e ) if ( c === a [ e ] . toLowerCase ( ) ) return ! 0 ; return ! 1 } function c ( a ) { for ( var b in a ) r . call ( a , b ) && ( a [ b ] = new RegExp ( a [ b ] , "i" ) ) } function b ( a , b ) { this . ua = a || "" ; this . _cache = { } ; this . maxPhoneWidth = b || 600 } var e = { mobileDetectRules : { phones : { iPhone : "\\biPhone\\b|\\biPod\\b" , BlackBerry : "BlackBerry|\\bBB10\\b|rim[0-9]+" , HTC : "HTC|HTC.*(Sensation|Evo|Vision|Explorer|6800|8100|8900|A7272|S510e|C110e|Legend|Desire|T8282)|APX515CKT|Qtek9090|APA9292KT|HD_mini|Sensation.*Z710e|PG86100|Z715e|Desire.*(A8181|HD)|ADR6200|ADR6400L|ADR6425|001HT|Inspire 4G|Android.*\\bEVO\\b|T-Mobile G1|Z520m" ,
2017-04-11 07:10:36 +00:00
Nexus : "Nexus One|Nexus S|Galaxy.*Nexus|Android.*Nexus.*Mobile|Nexus 4|Nexus 5|Nexus 6" , Dell : "Dell.*Streak|Dell.*Aero|Dell.*Venue|DELL.*Venue Pro|Dell Flash|Dell Smoke|Dell Mini 3iX|XCD28|XCD35|\\b001DL\\b|\\b101DL\\b|\\bGS01\\b" , Motorola : "Motorola|DROIDX|DROID BIONIC|\\bDroid\\b.*Build|Android.*Xoom|HRI39|MOT-|A1260|A1680|A555|A853|A855|A953|A955|A956|Motorola.*ELECTRIFY|Motorola.*i1|i867|i940|MB200|MB300|MB501|MB502|MB508|MB511|MB520|MB525|MB526|MB611|MB612|MB632|MB810|MB855|MB860|MB861|MB865|MB870|ME501|ME502|ME511|ME525|ME600|ME632|ME722|ME811|ME860|ME863|ME865|MT620|MT710|MT716|MT720|MT810|MT870|MT917|Motorola.*TITANIUM|WX435|WX445|XT300|XT301|XT311|XT316|XT317|XT319|XT320|XT390|XT502|XT530|XT531|XT532|XT535|XT603|XT610|XT611|XT615|XT681|XT701|XT702|XT711|XT720|XT800|XT806|XT860|XT862|XT875|XT882|XT883|XT894|XT901|XT907|XT909|XT910|XT912|XT928|XT926|XT915|XT919|XT925|XT1021|\\bMoto E\\b" ,
2017-07-25 22:08:25 +00:00
Samsung : " \ \ bSamsung \ \ b | SM - G9250 | GT - 19300 | SGH - I337 | BGT - S5230 | GT - B2100 | GT - B2700 | GT - B2710 | GT - B3210 | GT - B3310 | GT - B3410 | GT - B3730 | GT - B3740 | GT - B5510 | GT - B5512 | GT - B5722 | GT - B6520 | GT - B7300 | GT - B7320 | GT - B7330 | GT - B7350 | GT - B7510 | GT - B7722 | GT - B7800 | GT - C3010 | GT - C3011 | GT - C3060 | GT - C3200 | GT - C3212 | GT - C3212I | GT - C3262 | GT - C3222 | GT - C3300 | GT - C3300K | GT - C3303 | GT - C3303K | GT - C3310 | GT - C3322 | GT - C3330 | GT - C3350 | GT - C3500 | GT - C3510 | GT - C3530 | GT - C3630 | GT - C3780 | GT - C5010 | GT - C5212 | GT - C6620 | GT - C6625 | GT - C6712 | GT - E1050 | GT - E1070 | GT - E1075 | GT - E1080 | GT - E1081 | GT - E1085 | GT - E1087 | GT - E1100 | GT - E1107 | GT - E1110 | GT - E1120 | GT - E1125 | GT - E1130 | GT - E1160 | GT - E1170 | GT - E1175 | GT - E1180 | GT - E1182 | GT - E1200 | GT - E1210 | GT - E1225 | GT - E1230 | GT - E1390 | GT - E2100 | GT - E2120 | GT - E2121 | GT - E2152 | GT - E2220 | GT - E2222 | GT - E2230 | GT - E2232 | GT - E2250 | GT - E2370 | GT - E2550 | GT - E2652 | GT - E3210 | GT - E3213 | GT - I5500 | GT - I5503 | GT - I5700 | GT - I5800 | GT - I5801 | GT - I6410 | GT - I6420 | GT - I7110 | GT - I7410 | GT - I7500 | GT - I8000 | GT - I8150 | GT - I8160 | GT - I8190 | GT - I8320 | GT - I8330 | GT - I8350 | GT - I8530 | GT - I8700 | GT - I8703 | GT - I8910 | GT - I9000 | GT - I9001 | GT - I9003 | GT - I9010 | GT - I9020 | GT - I9023 | GT - I9070 | GT - I9082 | GT - I9100 | GT - I9103 | GT - I9220 | GT - I9250 | GT - I9300 | GT - I9305 | GT - I9500 | GT - I9505 | GT - M3510 | GT - M5650 | GT - M7500 | GT - M7600 | GT - M7603 | GT - M8800 | GT - M8910 | GT - N7000 | GT - S3110 | GT - S3310 | GT - S3350 | GT - S3353 | GT - S3370 | GT - S3650 | GT - S3653 | GT - S3770 | GT - S3850 | GT - S5210 | GT - S5220 | GT - S5229 | GT - S5230 | GT - S5233 | GT - S5250 | GT - S5253 | GT - S5260 | GT - S5263 | GT - S5270 | GT - S5300 | GT - S5330 | GT - S5350 | GT - S5360 | GT - S5363 | GT - S5369 | GT - S5380 | GT - S5380D | GT - S5560 | GT - S5570 | GT - S5600 | GT - S5603 | GT - S5610 | GT - S5620 | GT - S5660 | GT - S5670 | GT - S5690 | GT - S5750 | GT - S5780 | GT - S5830 | GT - S5839 | GT - S6102 | GT - S6500 | GT - S7070 | GT - S7200 | GT - S7220 | GT - S7230 | GT - S7233 | GT - S7250 | GT - S7500 | GT - S7530 | GT - S7550 | GT - S7562 | GT - S7710 | GT - S8000 | GT - S8003 | GT - S8500 | GT - S8530 | GT - S8600 | SCH - A310 | SCH - A530 | SCH - A570 | SCH - A610 | SCH - A630 | SCH - A650 | SCH - A790 | SCH - A795 | SCH - A850 | SCH - A870 | SCH - A890 | SCH - A930 | SCH - A950 | SCH - A970 | SCH - A990 | SCH - I100 | SCH - I110 | SCH - I400 | SCH - I405 | SCH - I500 | SCH - I510 | SCH - I515 | SCH - I600 | SCH - I730 | SCH - I760 | SCH - I770 | SCH - I830 | SCH - I910 | SCH - I920 | SCH - I959 | SCH - LC11 | SCH - N150 | SCH - N300 | SCH - R100 | SCH - R300 | SCH - R351 | SCH - R400 | SCH - R410 | SCH - T300 | SCH - U310 | SCH - U320 | SCH - U350 | SCH - U360 | SCH - U365 | SCH - U370 | SCH - U380 | SCH - U410 | SCH - U430 | SCH - U450 | SCH - U460 | SCH - U470 | SCH - U490 | SCH - U540 | SCH - U550 | SCH - U620 | SCH - U640 | SCH - U650 | SCH - U660 | SCH - U700 | SCH - U740 | SCH - U750 | SCH - U810 | SCH - U820 | SCH - U900 | SCH - U940 | SCH - U960 | SCS - 26 UC | SGH - A107 | SGH - A117 | SGH - A127 | SGH - A137 | SGH - A157 | SGH - A167 | SGH - A177 | SGH - A187 | SGH - A197 | SGH - A227 | SGH - A237 | SGH - A257 | SGH - A437 | SGH - A517 | SGH - A597 | SGH - A637 | SGH - A657 | SGH - A667 | SGH - A687 | SGH - A697 | SGH - A707 | SGH - A717 | SGH - A727 | SGH - A737 | SGH - A747 | SGH - A767 | SGH - A777 | SGH - A797 | SGH - A817 | SGH - A827 | SGH - A837 | SGH - A847 | SGH - A867 | SGH - A877 | SGH - A887 | SGH - A897 | SGH - A927 | SGH - B100 | SGH - B130 | SGH - B200 | SGH - B220 | SGH - C100 | SGH - C110 | SGH - C120 | SGH - C130 | SGH - C140 | SGH - C160 | SGH - C170 | SGH - C180 | SGH - C200 | SGH - C207 | SGH - C210 | SGH - C225 | SGH - C230 | SGH - C417 | SGH - C450 | SGH - D307 | SGH - D347 | SGH - D357 | SGH - D407 | SGH - D415 | SGH - D780 | SGH - D807 | SGH - D980 | SGH - E105 | SGH - E200 | SGH - E315 | SGH - E316 | SGH - E317 | SGH - E335 | SGH - E590 | SGH - E635 | SGH - E715 | SGH - E890 | SGH - F300 | SGH - F480 | SGH - I200 | SGH - I300 | SGH - I320 | SGH - I550 | SGH - I577 | SGH - I600 | SGH - I607 | SGH - I617 | SGH - I627 | SGH - I637 | SGH - I677 | SGH - I700 | SGH - I717 | SGH - I727 | SGH - i747M | SGH - I777 | SGH - I780 | SGH - I827 | SGH - I847 | SGH - I857 | SGH - I896 | SGH - I897 | SGH - I900 | SGH - I907 | SGH - I917 | SGH - I927 | SGH - I937 | SGH - I997 | SGH - J150 | SGH - J200 | SGH - L170 | SGH - L700 | SGH - M110 | SGH - M150 | SGH - M200 | SGH - N105 | SGH - N500 | SGH - N600 | SGH - N620 | SGH - N625 | SGH - N700 | SGH - N710 | SGH - P107 | SGH - P207 | SGH - P300 | SGH - P310 | SGH - P520 | SGH - P735 | SGH - P777 | SGH - Q105 | SGH - R210 | SGH - R220 | SGH - R225 | SGH - S105 | SGH - S307 | SGH - T109 | SGH - T119 | SGH - T139 | SGH - T209 | SGH - T219 | SGH - T229 | SGH - T239 | SGH - T249 | SGH - T259 | SGH - T309 | SGH - T319 | SGH - T329 | SGH - T339 | SGH - T349 | SGH - T359 | SGH - T369 | SGH - T379 | SGH - T409 | SGH - T429 | SGH - T439 | SGH - T459 | SGH - T469 | SGH - T479 | SGH - T499 | SGH - T509 | SGH - T519 | SGH - T539 | SGH - T559 | SGH - T589 | SGH - T609 | SGH - T619 | SGH - T629 | SGH - T639 | SGH - T659 | SGH - T669 | SGH - T679 | SGH - T709 | SGH - T719 | SGH - T729 | SGH - T739 | SGH - T746 | SGH - T749 | SGH - T759 | SGH - T769 | SGH - T809 | SGH - T819 | SGH - T839 | SGH - T919 | SGH - T929 | SGH - T939 | SGH - T959 | SGH - T989 | SGH - U100 | SGH - U200 | SGH - U800 | SGH - V205 | SGH - V206 | SGH - X100 | SGH - X105 | SGH - X120 | SGH - X140 | SGH - X426 | SGH - X427 | SGH - X475 | SGH - X49
2017-04-11 07:10:36 +00:00
LG : "\\bLG\\b;|LG[- ]?(C800|C900|E400|E610|E900|E-900|F160|F180K|F180L|F180S|730|855|L160|LS740|LS840|LS970|LU6200|MS690|MS695|MS770|MS840|MS870|MS910|P500|P700|P705|VM696|AS680|AS695|AX840|C729|E970|GS505|272|C395|E739BK|E960|L55C|L75C|LS696|LS860|P769BK|P350|P500|P509|P870|UN272|US730|VS840|VS950|LN272|LN510|LS670|LS855|LW690|MN270|MN510|P509|P769|P930|UN200|UN270|UN510|UN610|US670|US740|US760|UX265|UX840|VN271|VN530|VS660|VS700|VS740|VS750|VS910|VS920|VS930|VX9200|VX11000|AX840A|LW770|P506|P925|P999|E612|D955|D802|MS323)" ,
Sony : "SonyST|SonyLT|SonyEricsson|SonyEricssonLT15iv|LT18i|E10i|LT28h|LT26w|SonyEricssonMT27i|C5303|C6902|C6903|C6906|C6943|D2533" , Asus : "Asus.*Galaxy|PadFone.*Mobile" , NokiaLumia : "Lumia [0-9]{3,4}" , Micromax : "Micromax.*\\b(A210|A92|A88|A72|A111|A110Q|A115|A116|A110|A90S|A26|A51|A35|A54|A25|A27|A89|A68|A65|A57|A90)\\b" , Palm : "PalmSource|Palm" , Vertu : "Vertu|Vertu.*Ltd|Vertu.*Ascent|Vertu.*Ayxta|Vertu.*Constellation(F|Quest)?|Vertu.*Monika|Vertu.*Signature" , Pantech : "PANTECH|IM-A850S|IM-A840S|IM-A830L|IM-A830K|IM-A830S|IM-A820L|IM-A810K|IM-A810S|IM-A800S|IM-T100K|IM-A725L|IM-A780L|IM-A775C|IM-A770K|IM-A760S|IM-A750K|IM-A740S|IM-A730S|IM-A720L|IM-A710K|IM-A690L|IM-A690S|IM-A650S|IM-A630K|IM-A600S|VEGA PTL21|PT003|P8010|ADR910L|P6030|P6020|P9070|P4100|P9060|P5000|CDM8992|TXT8045|ADR8995|IS11PT|P2030|P6010|P8000|PT002|IS06|CDM8999|P9050|PT001|TXT8040|P2020|P9020|P2000|P7040|P7000|C790" ,
Fly : "IQ230|IQ444|IQ450|IQ440|IQ442|IQ441|IQ245|IQ256|IQ236|IQ255|IQ235|IQ245|IQ275|IQ240|IQ285|IQ280|IQ270|IQ260|IQ250" , Wiko : "KITE 4G|HIGHWAY|GETAWAY|STAIRWAY|DARKSIDE|DARKFULL|DARKNIGHT|DARKMOON|SLIDE|WAX 4G|RAINBOW|BLOOM|SUNSET|GOA(?!nna)|LENNY|BARRY|IGGY|OZZY|CINK FIVE|CINK PEAX|CINK PEAX 2|CINK SLIM|CINK SLIM 2|CINK +|CINK KING|CINK PEAX|CINK SLIM|SUBLIM" , iMobile : "i-mobile (IQ|i-STYLE|idea|ZAA|Hitz)" , SimValley : "\\b(SP-80|XT-930|SX-340|XT-930|SX-310|SP-360|SP60|SPT-800|SP-120|SPT-800|SP-140|SPX-5|SPX-8|SP-100|SPX-8|SPX-12)\\b" ,
2017-07-25 22:08:25 +00:00
Wolfgang : "AT-B24D|AT-AS50HD|AT-AS40W|AT-AS55HD|AT-AS45q2|AT-B26D|AT-AS50Q" , Alcatel : "Alcatel" , Nintendo : "Nintendo 3DS" , Amoi : "Amoi" , INQ : "INQ" , GenericPhone : "Tapatalk|PDA;|SAGEM|\\bmmp\\b|pocket|\\bpsp\\b|symbian|Smartphone|smartfon|treo|up.browser|up.link|vodafone|\\bwap\\b|nokia|Series40|Series60|S60|SonyEricsson|N900|MAUI.*WAP.*Browser" } , tablets : { iPad : "iPad|iPad.*Mobile" , NexusTablet : "Android.*Nexus[\\s]+(7|9|10)" , SamsungTablet : "SAMSUNG.*Tablet|Galaxy.*Tab|SC-01C|GT-P1000|GT-P1003|GT-P1010|GT-P3105|GT-P6210|GT-P6800|GT-P6810|GT-P7100|GT-P7300|GT-P7310|GT-P7500|GT-P7510|SCH-I800|SCH-I815|SCH-I905|SGH-I957|SGH-I987|SGH-T849|SGH-T859|SGH-T869|SPH-P100|GT-P3100|GT-P3108|GT-P3110|GT-P5100|GT-P5110|GT-P6200|GT-P7320|GT-P7511|GT-N8000|GT-P8510|SGH-I497|SPH-P500|SGH-T779|SCH-I705|SCH-I915|GT-N8013|GT-P3113|GT-P5113|GT-P8110|GT-N8010|GT-N8005|GT-N8020|GT-P1013|GT-P6201|GT-P7501|GT-N5100|GT-N5105|GT-N5110|SHV-E140K|SHV-E140L|SHV-E140S|SHV-E150S|SHV-E230K|SHV-E230L|SHV-E230S|SHW-M180K|SHW-M180L|SHW-M180S|SHW-M180W|SHW-M300W|SHW-M305W|SHW-M380K|SHW-M380S|SHW-M380W|SHW-M430W|SHW-M480K|SHW-M480S|SHW-M480W|SHW-M485W|SHW-M486W|SHW-M500W|GT-I9228|SCH-P739|SCH-I925|GT-I9200|GT-P5200|GT-P5210|GT-P5210X|SM-T311|SM-T310|SM-T310X|SM-T210|SM-T210R|SM-T211|SM-P600|SM-P601|SM-P605|SM-P900|SM-P901|SM-T217|SM-T217A|SM-T217S|SM-P6000|SM-T3100|SGH-I467|XE500|SM-T110|GT-P5220|GT-I9200X|GT-N5110X|GT-N5120|SM-P905|SM-T111|SM-T2105|SM-T315|SM-T320|SM-T320X|SM-T321|SM-T520|SM-T525|SM-T530NU|SM-T230NU|SM-T330NU|SM-T900|XE500T1C|SM-P605V|SM-P905V|SM-T337V|SM-T537V|SM-T707V|SM-T807V|SM-P600X|SM-P900X|SM-T210X|SM-T230|SM-T230X|SM-T325|GT-P7503|SM-T531|SM-T330|SM-T530|SM-T705|SM-T705C|SM-T535|SM-T331|SM-T800|SM-T700|SM-T537|SM-T807|SM-P907A|SM-T337A|SM-T537A|SM-T707A|SM-T807A|SM-T237|SM-T807P|SM-P607T|SM-T217T|SM-T337T|SM-T807T|SM-T116NQ|SM-P550|SM-T350|SM-T550|SM-T9000|SM-P9000|SM-T705Y|SM-T805|GT-P3113|SM-T710|SM-T810|SM-T815|SM-T360|SM-T533|SM-T113|SM-T335|SM-T715|SM-T560|SM-T670|SM-T677|SM-T377|SM-T567|SM-T357T|SM-T555|SM-T561|SM-T713|SM-T719|SM-T813|SM-T819|SM-T580|SM-T355Y|SM-T280" ,
Kindle : "Kindle|Silk.*Accelerated|Android.*\\b(KFOT|KFTT|KFJWI|KFJWA|KFOTE|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|WFJWAE|KFSAWA|KFSAWI|KFASWI|KFARWI)\\b" , SurfaceTablet : "Windows NT [0-9.]+; ARM;.*(Tablet|ARMBJS)" , HPTablet : "HP Slate (7|8|10)|HP ElitePad 900|hp-tablet|EliteBook.*Touch|HP 8|Slate 21|HP SlateBook 10" , AsusTablet : "^.*PadFone((?!Mobile).)*$|Transformer|TF101|TF101G|TF300T|TF300TG|TF300TL|TF700T|TF700KL|TF701T|TF810C|ME171|ME301T|ME302C|ME371MG|ME370T|ME372MG|ME172V|ME173X|ME400C|Slider SL101|\\bK00F\\b|\\bK00C\\b|\\bK00E\\b|\\bK00L\\b|TX201LA|ME176C|ME102A|\\bM80TA\\b|ME372CL|ME560CG|ME372CG|ME302KL| K010 | K011 | K017 | K01E |ME572C|ME103K|ME170C|ME171C|\\bME70C\\b|ME581C|ME581CL|ME8510C|ME181C|P01Y|PO1MA|P01Z" ,
BlackBerryTablet : "PlayBook|RIM Tablet" , HTCtablet : "HTC_Flyer_P512|HTC Flyer|HTC Jetstream|HTC-P715a|HTC EVO View 4G|PG41200|PG09410" , MotorolaTablet : "xoom|sholest|MZ615|MZ605|MZ505|MZ601|MZ602|MZ603|MZ604|MZ606|MZ607|MZ608|MZ609|MZ615|MZ616|MZ617" , NookTablet : "Android.*Nook|NookColor|nook browser|BNRV200|BNRV200A|BNTV250|BNTV250A|BNTV400|BNTV600|LogicPD Zoom2" , AcerTablet : "Android.*; \\b(A100|A101|A110|A200|A210|A211|A500|A501|A510|A511|A700|A701|W500|W500P|W501|W501P|W510|W511|W700|G100|G100W|B1-A71|B1-710|B1-711|A1-810|A1-811|A1-830)\\b|W3-810|\\bA3-A10\\b|\\bA3-A11\\b|\\bA3-A20\\b|\\bA3-A30" ,
2017-04-11 07:10:36 +00:00
ToshibaTablet : "Android.*(AT100|AT105|AT200|AT205|AT270|AT275|AT300|AT305|AT1S5|AT500|AT570|AT700|AT830)|TOSHIBA.*FOLIO" , LGTablet : "\\bL-06C|LG-V909|LG-V900|LG-V700|LG-V510|LG-V500|LG-V410|LG-V400|LG-VK810\\b" , FujitsuTablet : "Android.*\\b(F-01D|F-02F|F-05E|F-10D|M532|Q572)\\b" , PrestigioTablet : "PMP3170B|PMP3270B|PMP3470B|PMP7170B|PMP3370B|PMP3570C|PMP5870C|PMP3670B|PMP5570C|PMP5770D|PMP3970B|PMP3870C|PMP5580C|PMP5880D|PMP5780D|PMP5588C|PMP7280C|PMP7280C3G|PMP7280|PMP7880D|PMP5597D|PMP5597|PMP7100D|PER3464|PER3274|PER3574|PER3884|PER5274|PER5474|PMP5097CPRO|PMP5097|PMP7380D|PMP5297C|PMP5297C_QUAD|PMP812E|PMP812E3G|PMP812F|PMP810E|PMP880TD|PMT3017|PMT3037|PMT3047|PMT3057|PMT7008|PMT5887|PMT5001|PMT5002" ,
LenovoTablet : "Lenovo TAB|Idea(Tab|Pad)( A1|A10| K1|)|ThinkPad([ ]+)?Tablet|YT3-X90L|YT3-X90F|YT3-X90X|Lenovo.*(S2109|S2110|S5000|S6000|K3011|A3000|A3500|A1000|A2107|A2109|A1107|A5500|A7600|B6000|B8000|B8080)(-|)(FL|F|HV|H|)" , DellTablet : "Venue 11|Venue 8|Venue 7|Dell Streak 10|Dell Streak 7" , YarvikTablet : "Android.*\\b(TAB210|TAB211|TAB224|TAB250|TAB260|TAB264|TAB310|TAB360|TAB364|TAB410|TAB411|TAB420|TAB424|TAB450|TAB460|TAB461|TAB464|TAB465|TAB467|TAB468|TAB07-100|TAB07-101|TAB07-150|TAB07-151|TAB07-152|TAB07-200|TAB07-201-3G|TAB07-210|TAB07-211|TAB07-212|TAB07-214|TAB07-220|TAB07-400|TAB07-485|TAB08-150|TAB08-200|TAB08-201-3G|TAB08-201-30|TAB09-100|TAB09-211|TAB09-410|TAB10-150|TAB10-201|TAB10-211|TAB10-400|TAB10-410|TAB13-201|TAB274EUK|TAB275EUK|TAB374EUK|TAB462EUK|TAB474EUK|TAB9-200)\\b" ,
2017-07-25 22:08:25 +00:00
MedionTablet : "Android.*\\bOYO\\b|LIFE.*(P9212|P9514|P9516|S9512)|LIFETAB" , ArnovaTablet : "97G4|AN10G2|AN7bG3|AN7fG3|AN8G3|AN8cG3|AN7G3|AN9G3|AN7dG3|AN7dG3ST|AN7dG3ChildPad|AN10bG3|AN10bG3DT|AN9G2" , IntensoTablet : "INM8002KP|INM1010FP|INM805ND|Intenso Tab|TAB1004" , IRUTablet : "M702pro" , MegafonTablet : "MegaFon V9|\\bZTE V9\\b|Android.*\\bMT7A\\b" , EbodaTablet : "E-Boda (Supreme|Impresspeed|Izzycomm|Essential)" , AllViewTablet : "Allview.*(Viva|Alldro|City|Speed|All TV|Frenzy|Quasar|Shine|TX1|AX1|AX2)" , ArchosTablet : "\\b(101G9|80G9|A101IT)\\b|Qilive 97R|Archos5|\\bARCHOS (70|79|80|90|97|101|FAMILYPAD|)(b|)(G10| Cobalt| TITANIUM(HD|)| Xenon| Neon|XSK| 2| XS 2| PLATINUM| CARBON|GAMEPAD)\\b" ,
2017-04-11 07:10:36 +00:00
AinolTablet : "NOVO7|NOVO8|NOVO10|Novo7Aurora|Novo7Basic|NOVO7PALADIN|novo9-Spark" , NokiaLumiaTablet : "Lumia 2520" , SonyTablet : "Sony.*Tablet|Xperia Tablet|Sony Tablet S|SO-03E|SGPT12|SGPT13|SGPT114|SGPT121|SGPT122|SGPT123|SGPT111|SGPT112|SGPT113|SGPT131|SGPT132|SGPT133|SGPT211|SGPT212|SGPT213|SGP311|SGP312|SGP321|EBRD1101|EBRD1102|EBRD1201|SGP351|SGP341|SGP511|SGP512|SGP521|SGP541|SGP551|SGP621|SGP612|SOT31" , PhilipsTablet : "\\b(PI2010|PI3000|PI3100|PI3105|PI3110|PI3205|PI3210|PI3900|PI4010|PI7000|PI7100)\\b" ,
CubeTablet : "Android.*(K8GT|U9GT|U10GT|U16GT|U17GT|U18GT|U19GT|U20GT|U23GT|U30GT)|CUBE U8GT" , CobyTablet : "MID1042|MID1045|MID1125|MID1126|MID7012|MID7014|MID7015|MID7034|MID7035|MID7036|MID7042|MID7048|MID7127|MID8042|MID8048|MID8127|MID9042|MID9740|MID9742|MID7022|MID7010" , MIDTablet : "M9701|M9000|M9100|M806|M1052|M806|T703|MID701|MID713|MID710|MID727|MID760|MID830|MID728|MID933|MID125|MID810|MID732|MID120|MID930|MID800|MID731|MID900|MID100|MID820|MID735|MID980|MID130|MID833|MID737|MID960|MID135|MID860|MID736|MID140|MID930|MID835|MID733|MID4X10" ,
2017-07-25 22:08:25 +00:00
MSITablet : "MSI \\b(Primo 73K|Primo 73L|Primo 81L|Primo 77|Primo 93|Primo 75|Primo 76|Primo 73|Primo 81|Primo 91|Primo 90|Enjoy 71|Enjoy 7|Enjoy 10)\\b" , SMiTTablet : "Android.*(\\bMID\\b|MID-560|MTV-T1200|MTV-PND531|MTV-P1101|MTV-PND530)" , RockChipTablet : "Android.*(RK2818|RK2808A|RK2918|RK3066)|RK2738|RK2808A" , FlyTablet : "IQ310|Fly Vision" , bqTablet : "Android.*(bq)?.*(Elcano|Curie|Edison|Maxwell|Kepler|Pascal|Tesla|Hypatia|Platon|Newton|Livingstone|Cervantes|Avant|Aquaris [E|M]10)|Maxwell.*Lite|Maxwell.*Plus" ,
2017-04-11 07:10:36 +00:00
HuaweiTablet : "MediaPad|MediaPad 7 Youth|IDEOS S7|S7-201c|S7-202u|S7-101|S7-103|S7-104|S7-105|S7-106|S7-201|S7-Slim" , NecTablet : "\\bN-06D|\\bN-08D" , PantechTablet : "Pantech.*P4100" , BronchoTablet : "Broncho.*(N701|N708|N802|a710)" , VersusTablet : "TOUCHPAD.*[78910]|\\bTOUCHTAB\\b" , ZyncTablet : "z1000|Z99 2G|z99|z930|z999|z990|z909|Z919|z900" , PositivoTablet : "TB07STA|TB10STA|TB07FTA|TB10FTA" , NabiTablet : "Android.*\\bNabi" , KoboTablet : "Kobo Touch|\\bK080\\b|\\bVox\\b Build|\\bArc\\b Build" , DanewTablet : "DSlide.*\\b(700|701R|702|703R|704|802|970|971|972|973|974|1010|1012)\\b" ,
TexetTablet : "NaviPad|TB-772A|TM-7045|TM-7055|TM-9750|TM-7016|TM-7024|TM-7026|TM-7041|TM-7043|TM-7047|TM-8041|TM-9741|TM-9747|TM-9748|TM-9751|TM-7022|TM-7021|TM-7020|TM-7011|TM-7010|TM-7023|TM-7025|TM-7037W|TM-7038W|TM-7027W|TM-9720|TM-9725|TM-9737W|TM-1020|TM-9738W|TM-9740|TM-9743W|TB-807A|TB-771A|TB-727A|TB-725A|TB-719A|TB-823A|TB-805A|TB-723A|TB-715A|TB-707A|TB-705A|TB-709A|TB-711A|TB-890HD|TB-880HD|TB-790HD|TB-780HD|TB-770HD|TB-721HD|TB-710HD|TB-434HD|TB-860HD|TB-840HD|TB-760HD|TB-750HD|TB-740HD|TB-730HD|TB-722HD|TB-720HD|TB-700HD|TB-500HD|TB-470HD|TB-431HD|TB-430HD|TB-506|TB-504|TB-446|TB-436|TB-416|TB-146SE|TB-126SE" ,
PlaystationTablet : "Playstation.*(Portable|Vita)" , TrekstorTablet : "ST10416-1|VT10416-1|ST70408-1|ST702xx-1|ST702xx-2|ST80208|ST97216|ST70104-2|VT10416-2|ST10216-2A|SurfTab" , PyleAudioTablet : "\\b(PTBL10CEU|PTBL10C|PTBL72BC|PTBL72BCEU|PTBL7CEU|PTBL7C|PTBL92BC|PTBL92BCEU|PTBL9CEU|PTBL9CUK|PTBL9C)\\b" , AdvanTablet : "Android.* \\b(E3A|T3X|T5C|T5B|T3E|T3C|T3B|T1J|T1F|T2A|T1H|T1i|E1C|T1-E|T5-A|T4|E1-B|T2Ci|T1-B|T1-D|O1-A|E1-A|T1-A|T3A|T4i)\\b " , DanyTechTablet : "Genius Tab G3|Genius Tab S2|Genius Tab Q3|Genius Tab G4|Genius Tab Q4|Genius Tab G-II|Genius TAB GII|Genius TAB GIII|Genius Tab S1" ,
GalapadTablet : "Android.*\\bG1\\b" , MicromaxTablet : "Funbook|Micromax.*\\b(P250|P560|P360|P362|P600|P300|P350|P500|P275)\\b" , KarbonnTablet : "Android.*\\b(A39|A37|A34|ST8|ST10|ST7|Smart Tab3|Smart Tab2)\\b" , AllFineTablet : "Fine7 Genius|Fine7 Shine|Fine7 Air|Fine8 Style|Fine9 More|Fine10 Joy|Fine11 Wide" , PROSCANTablet : "\\b(PEM63|PLT1023G|PLT1041|PLT1044|PLT1044G|PLT1091|PLT4311|PLT4311PL|PLT4315|PLT7030|PLT7033|PLT7033D|PLT7035|PLT7035D|PLT7044K|PLT7045K|PLT7045KB|PLT7071KG|PLT7072|PLT7223G|PLT7225G|PLT7777G|PLT7810K|PLT7849G|PLT7851G|PLT7852G|PLT8015|PLT8031|PLT8034|PLT8036|PLT8080K|PLT8082|PLT8088|PLT8223G|PLT8234G|PLT8235G|PLT8816K|PLT9011|PLT9045K|PLT9233G|PLT9735|PLT9760G|PLT9770G)\\b" ,
YONESTablet : "BQ1078|BC1003|BC1077|RK9702|BC9730|BC9001|IT9001|BC7008|BC7010|BC708|BC728|BC7012|BC7030|BC7027|BC7026" , ChangJiaTablet : "TPC7102|TPC7103|TPC7105|TPC7106|TPC7107|TPC7201|TPC7203|TPC7205|TPC7210|TPC7708|TPC7709|TPC7712|TPC7110|TPC8101|TPC8103|TPC8105|TPC8106|TPC8203|TPC8205|TPC8503|TPC9106|TPC9701|TPC97101|TPC97103|TPC97105|TPC97106|TPC97111|TPC97113|TPC97203|TPC97603|TPC97809|TPC97205|TPC10101|TPC10103|TPC10106|TPC10111|TPC10203|TPC10205|TPC10503" , GUTablet : "TX-A1301|TX-M9002|Q702|kf026" ,
PointOfViewTablet : "TAB-P506|TAB-navi-7-3G-M|TAB-P517|TAB-P-527|TAB-P701|TAB-P703|TAB-P721|TAB-P731N|TAB-P741|TAB-P825|TAB-P905|TAB-P925|TAB-PR945|TAB-PL1015|TAB-P1025|TAB-PI1045|TAB-P1325|TAB-PROTAB[0-9]+|TAB-PROTAB25|TAB-PROTAB26|TAB-PROTAB27|TAB-PROTAB26XL|TAB-PROTAB2-IPS9|TAB-PROTAB30-IPS9|TAB-PROTAB25XXL|TAB-PROTAB26-IPS10|TAB-PROTAB30-IPS10" , OvermaxTablet : "OV-(SteelCore|NewBase|Basecore|Baseone|Exellen|Quattor|EduTab|Solution|ACTION|BasicTab|TeddyTab|MagicTab|Stream|TB-08|TB-09)" , HCLTablet : "HCL.*Tablet|Connect-3G-2.0|Connect-2G-2.0|ME Tablet U1|ME Tablet U2|ME Tablet G1|ME Tablet X1|ME Tablet Y2|ME Tablet Sync" ,
DPSTablet : "DPS Dream 9|DPS Dual 7" , VistureTablet : "V97 HD|i75 3G|Visture V4( HD)?|Visture V5( HD)?|Visture V10" , CrestaTablet : "CTP(-)?810|CTP(-)?818|CTP(-)?828|CTP(-)?838|CTP(-)?888|CTP(-)?978|CTP(-)?980|CTP(-)?987|CTP(-)?988|CTP(-)?989" , MediatekTablet : "\\bMT8125|MT8389|MT8135|MT8377\\b" , ConcordeTablet : "Concorde([ ]+)?Tab|ConCorde ReadMan" , GoCleverTablet : "GOCLEVER TAB|A7GOCLEVER|M1042|M7841|M742|R1042BK|R1041|TAB A975|TAB A7842|TAB A741|TAB A741L|TAB M723G|TAB M721|TAB A1021|TAB I921|TAB R721|TAB I720|TAB T76|TAB R70|TAB R76.2|TAB R106|TAB R83.2|TAB M813G|TAB I721|GCTA722|TAB I70|TAB I71|TAB S73|TAB R73|TAB R74|TAB R93|TAB R75|TAB R76.1|TAB A73|TAB A93|TAB A93.2|TAB T72|TAB R83|TAB R974|TAB R973|TAB A101|TAB A103|TAB A104|TAB A104.2|R105BK|M713G|A972BK|TAB A971|TAB R974.2|TAB R104|TAB R83.3|TAB A1042" ,
ModecomTablet : "FreeTAB 9000|FreeTAB 7.4|FreeTAB 7004|FreeTAB 7800|FreeTAB 2096|FreeTAB 7.5|FreeTAB 1014|FreeTAB 1001 |FreeTAB 8001|FreeTAB 9706|FreeTAB 9702|FreeTAB 7003|FreeTAB 7002|FreeTAB 1002|FreeTAB 7801|FreeTAB 1331|FreeTAB 1004|FreeTAB 8002|FreeTAB 8014|FreeTAB 9704|FreeTAB 1003" , VoninoTablet : "\\b(Argus[ _]?S|Diamond[ _]?79HD|Emerald[ _]?78E|Luna[ _]?70C|Onyx[ _]?S|Onyx[ _]?Z|Orin[ _]?HD|Orin[ _]?S|Otis[ _]?S|SpeedStar[ _]?S|Magnet[ _]?M9|Primus[ _]?94[ _]?3G|Primus[ _]?94HD|Primus[ _]?QS|Android.*\\bQ8\\b|Sirius[ _]?EVO[ _]?QS|Sirius[ _]?QS|Spirit[ _]?S)\\b" ,
ECSTablet : "V07OT2|TM105A|S10OT1|TR10CS1" , StorexTablet : "eZee[_']?(Tab|Go)[0-9]+|TabLC7|Looney Tunes Tab" , VodafoneTablet : "SmartTab([ ]+)?[0-9]+|SmartTabII10|SmartTabII7|VF-1497" , EssentielBTablet : "Smart[ ']?TAB[ ]+?[0-9]+|Family[ ']?TAB2" , RossMoorTablet : "RM-790|RM-997|RMD-878G|RMD-974R|RMT-705A|RMT-701|RME-601|RMT-501|RMT-711" , iMobileTablet : "i-mobile i-note" , TolinoTablet : "tolino tab [0-9.]+|tolino shine" , AudioSonicTablet : "\\bC-22Q|T7-QC|T-17B|T-17P\\b" , AMPETablet : "Android.* A78 " , SkkTablet : "Android.* (SKYPAD|PHOENIX|CYCLOPS)" ,
TecnoTablet : "TECNO P9" , JXDTablet : "Android.* \\b(F3000|A3300|JXD5000|JXD3000|JXD2000|JXD300B|JXD300|S5800|S7800|S602b|S5110b|S7300|S5300|S602|S603|S5100|S5110|S601|S7100a|P3000F|P3000s|P101|P200s|P1000m|P200m|P9100|P1000s|S6600b|S908|P1000|P300|S18|S6600|S9100)\\b" , iJoyTablet : "Tablet (Spirit 7|Essentia|Galatea|Fusion|Onix 7|Landa|Titan|Scooby|Deox|Stella|Themis|Argon|Unique 7|Sygnus|Hexen|Finity 7|Cream|Cream X2|Jade|Neon 7|Neron 7|Kandy|Scape|Saphyr 7|Rebel|Biox|Rebel|Rebel 8GB|Myst|Draco 7|Myst|Tab7-004|Myst|Tadeo Jones|Tablet Boing|Arrow|Draco Dual Cam|Aurix|Mint|Amity|Revolution|Finity 9|Neon 9|T9w|Amity 4GB Dual Cam|Stone 4GB|Stone 8GB|Andromeda|Silken|X2|Andromeda II|Halley|Flame|Saphyr 9,7|Touch 8|Planet|Triton|Unique 10|Hexen 10|Memphis 4GB|Memphis 8GB|Onix 10)" ,
FX2Tablet : "FX2 PAD7|FX2 PAD10" , XoroTablet : "KidsPAD 701|PAD[ ]?712|PAD[ ]?714|PAD[ ]?716|PAD[ ]?717|PAD[ ]?718|PAD[ ]?720|PAD[ ]?721|PAD[ ]?722|PAD[ ]?790|PAD[ ]?792|PAD[ ]?900|PAD[ ]?9715D|PAD[ ]?9716DR|PAD[ ]?9718DR|PAD[ ]?9719QR|PAD[ ]?9720QR|TelePAD1030|Telepad1032|TelePAD730|TelePAD731|TelePAD732|TelePAD735Q|TelePAD830|TelePAD9730|TelePAD795|MegaPAD 1331|MegaPAD 1851|MegaPAD 2151" , ViewsonicTablet : "ViewPad 10pi|ViewPad 10e|ViewPad 10s|ViewPad E72|ViewPad7|ViewPad E100|ViewPad 7e|ViewSonic VB733|VB100a" ,
OdysTablet : "LOOX|XENO10|ODYS[ -](Space|EVO|Xpress|NOON)|\\bXELIO\\b|Xelio10Pro|XELIO7PHONETAB|XELIO10EXTREME|XELIOPT2|NEO_QUAD10" , CaptivaTablet : "CAPTIVA PAD" , IconbitTablet : "NetTAB|NT-3702|NT-3702S|NT-3702S|NT-3603P|NT-3603P|NT-0704S|NT-0704S|NT-3805C|NT-3805C|NT-0806C|NT-0806C|NT-0909T|NT-0909T|NT-0907S|NT-0907S|NT-0902S|NT-0902S" , TeclastTablet : "T98 4G|\\bP80\\b|\\bX90HD\\b|X98 Air|X98 Air 3G|\\bX89\\b|P80 3G|\\bX80h\\b|P98 Air|\\bX89HD\\b|P98 3G|\\bP90HD\\b|P89 3G|X98 3G|\\bP70h\\b|P79HD 3G|G18d 3G|\\bP79HD\\b|\\bP89s\\b|\\bA88\\b|\\bP10HD\\b|\\bP19HD\\b|G18 3G|\\bP78HD\\b|\\bA78\\b|\\bP75\\b|G17s 3G|G17h 3G|\\bP85t\\b|\\bP90\\b|\\bP11\\b|\\bP98t\\b|\\bP98HD\\b|\\bG18d\\b|\\bP85s\\b|\\bP11HD\\b|\\bP88s\\b|\\bA80HD\\b|\\bA80se\\b|\\bA10h\\b|\\bP89\\b|\\bP78s\\b|\\bG18\\b|\\bP85\\b|\\bA70h\\b|\\bA70\\b|\\bG17\\b|\\bP18\\b|\\bA80s\\b|\\bA11s\\b|\\bP88HD\\b|\\bA80h\\b|\\bP76s\\b|\\bP76h\\b|\\bP98\\b|\\bA10HD\\b|\\bP78\\b|\\bP88\\b|\\bA11\\b|\\bA10t\\b|\\bP76a\\b|\\bP76t\\b|\\bP76e\\b|\\bP85HD\\b|\\bP85a\\b|\\bP86\\b|\\bP75HD\\b|\\bP76v\\b|\\bA12\\b|\\bP75a\\b|\\bA15\\b|\\bP76Ti\\b|\\bP81HD\\b|\\bA10\\b|\\bT760VE\\b|\\bT720HD\\b|\\bP76\\b|\\bP73\\b|\\bP71\\b|\\bP72\\b|\\bT720SE\\b|\\bC520Ti\\b|\\bT760\\b|\\bT720VE\\b|T720-3GE|T720-WiFi" ,
OndaTablet : "\\b(V975i|Vi30|VX530|V701|Vi60|V701s|Vi50|V801s|V719|Vx610w|VX610W|V819i|Vi10|VX580W|Vi10|V711s|V813|V811|V820w|V820|Vi20|V711|VI30W|V712|V891w|V972|V819w|V820w|Vi60|V820w|V711|V813s|V801|V819|V975s|V801|V819|V819|V818|V811|V712|V975m|V101w|V961w|V812|V818|V971|V971s|V919|V989|V116w|V102w|V973|Vi40)\\b[\\s]+" , JaytechTablet : "TPC-PA762" , BlaupunktTablet : "Endeavour 800NG|Endeavour 1010" , DigmaTablet : "\\b(iDx10|iDx9|iDx8|iDx7|iDxD7|iDxD8|iDsQ8|iDsQ7|iDsQ8|iDsD10|iDnD7|3TS804H|iDsQ11|iDj7|iDs10)\\b" ,
EvolioTablet : "ARIA_Mini_wifi|Aria[ _]Mini|Evolio X10|Evolio X7|Evolio X8|\\bEvotab\\b|\\bNeura\\b" , LavaTablet : "QPAD E704|\\bIvoryS\\b|E-TAB IVORY|\\bE-TAB\\b" , AocTablet : "MW0811|MW0812|MW0922|MTK8382|MW1031|MW0831|MW0821|MW0931|MW0712" , MpmanTablet : "MP11 OCTA|MP10 OCTA|MPQC1114|MPQC1004|MPQC994|MPQC974|MPQC973|MPQC804|MPQC784|MPQC780|\\bMPG7\\b|MPDCG75|MPDCG71|MPDC1006|MP101DC|MPDC9000|MPDC905|MPDC706HD|MPDC706|MPDC705|MPDC110|MPDC100|MPDC99|MPDC97|MPDC88|MPDC8|MPDC77|MP709|MID701|MID711|MID170|MPDC703|MPQC1010" ,
CelkonTablet : "CT695|CT888|CT[\\s]?910|CT7 Tab|CT9 Tab|CT3 Tab|CT2 Tab|CT1 Tab|C820|C720|\\bCT-1\\b" , WolderTablet : "miTab \\b(DIAMOND|SPACE|BROOKLYN|NEO|FLY|MANHATTAN|FUNK|EVOLUTION|SKY|GOCAR|IRON|GENIUS|POP|MINT|EPSILON|BROADWAY|JUMP|HOP|LEGEND|NEW AGE|LINE|ADVANCE|FEEL|FOLLOW|LIKE|LINK|LIVE|THINK|FREEDOM|CHICAGO|CLEVELAND|BALTIMORE-GH|IOWA|BOSTON|SEATTLE|PHOENIX|DALLAS|IN 101|MasterChef)\\b" , MiTablet : "\\bMI PAD\\b|\\bHM NOTE 1W\\b" , NibiruTablet : "Nibiru M1|Nibiru Jupiter One" , NexoTablet : "NEXO NOVA|NEXO 10|NEXO AVIO|NEXO FREE|NEXO GO|NEXO EVO|NEXO 3G|NEXO SMART|NEXO KIDDO|NEXO MOBI" ,
2017-07-25 22:08:25 +00:00
LeaderTablet : "TBLT10Q|TBLT10I|TBL-10WDKB|TBL-10WDKBO2013|TBL-W230V2|TBL-W450|TBL-W500|SV572|TBLT7I|TBA-AC7-8G|TBLT79|TBL-8W16|TBL-10W32|TBL-10WKB|TBL-W100" , UbislateTablet : "UbiSlate[\\s]?7C" , PocketBookTablet : "Pocketbook" , KocasoTablet : "\\b(TB-1207)\\b" , HisenseTablet : "\\b(F5281|E2371)\\b" , Hudl : "Hudl HT7S3|Hudl 2" , TelstraTablet : "T-Hub2" , GenericTablet : "Android.*\\b97D\\b|Tablet(?!.*PC)|BNTV250A|MID-WCDMA|LogicPD Zoom2|\\bA7EB\\b|CatNova8|A1_07|CT704|CT1002|\\bM721\\b|rk30sdk|\\bEVOTAB\\b|M758A|ET904|ALUMIUM10|Smartfren Tab|Endeavour 1010|Tablet-PC-4|Tagi Tab|\\bM6pro\\b|CT1020W|arc 10HD|\\bTP750\\b" } ,
2017-04-11 07:10:36 +00:00
oss : { AndroidOS : "Android" , BlackBerryOS : "blackberry|\\bBB10\\b|rim tablet os" , PalmOS : "PalmOS|avantgo|blazer|elaine|hiptop|palm|plucker|xiino" , SymbianOS : "Symbian|SymbOS|Series60|Series40|SYB-[0-9]+|\\bS60\\b" , WindowsMobileOS : "Windows CE.*(PPC|Smartphone|Mobile|[0-9]{3}x[0-9]{3})|Window Mobile|Windows Phone [0-9.]+|WCE;" , WindowsPhoneOS : "Windows Phone 10.0|Windows Phone 8.1|Windows Phone 8.0|Windows Phone OS|XBLWP7|ZuneWP7|Windows NT 6.[23]; ARM;" , iOS : "\\biPhone.*Mobile|\\biPod|\\biPad" , MeeGoOS : "MeeGo" ,
2017-07-25 22:08:25 +00:00
MaemoOS : "Maemo" , JavaOS : "J2ME/|\\bMIDP\\b|\\bCLDC\\b" , webOS : "webOS|hpwOS" , badaOS : "\\bBada\\b" , BREWOS : "BREW" } , uas : { Chrome : "\\bCrMo\\b|CriOS|Android.*Chrome/[.0-9]* (Mobile)?" , Dolfin : "\\bDolfin\\b" , Opera : "Opera.*Mini|Opera.*Mobi|Android.*Opera|Mobile.*OPR/[0-9.]+|Coast/[0-9.]+" , Skyfire : "Skyfire" , Edge : "Mobile Safari/[.0-9]* Edge" , IE : "IEMobile|MSIEMobile" , Firefox : "fennec|firefox.*maemo|(Mobile|Tablet).*Firefox|Firefox.*Mobile|FxiOS" , Bolt : "bolt" , TeaShark : "teashark" , Blazer : "Blazer" , Safari : "Version.*Mobile.*Safari|Safari.*Mobile|MobileSafari" ,
UCBrowser : "UC.*Browser|UCWEB" , baiduboxapp : "baiduboxapp" , baidubrowser : "baidubrowser" , DiigoBrowser : "DiigoBrowser" , Puffin : "Puffin" , Mercury : "\\bMercury\\b" , ObigoBrowser : "Obigo" , NetFront : "NF-Browser" , GenericBrowser : "NokiaBrowser|OviBrowser|OneBrowser|TwonkyBeamBrowser|SEMC.*Browser|FlyFlow|Minimo|NetFront|Novarra-Vision|MQQBrowser|MicroMessenger" , PaleMoon : "Android.*PaleMoon|Mobile.*PaleMoon" } , props : { Mobile : "Mobile/[VER]" , Build : "Build/[VER]" , Version : "Version/[VER]" , VendorID : "VendorID/[VER]" , iPad : "iPad.*CPU[a-z ]+[VER]" ,
iPhone : "iPhone.*CPU[a-z ]+[VER]" , iPod : "iPod.*CPU[a-z ]+[VER]" , Kindle : "Kindle/[VER]" , Chrome : [ "Chrome/[VER]" , "CriOS/[VER]" , "CrMo/[VER]" ] , Coast : [ "Coast/[VER]" ] , Dolfin : "Dolfin/[VER]" , Firefox : [ "Firefox/[VER]" , "FxiOS/[VER]" ] , Fennec : "Fennec/[VER]" , Edge : "Edge/[VER]" , IE : [ "IEMobile/[VER];" , "IEMobile [VER]" , "MSIE [VER];" , "Trident/[0-9.]+;.*rv:[VER]" ] , NetFront : "NetFront/[VER]" , NokiaBrowser : "NokiaBrowser/[VER]" , Opera : [ " OPR/[VER]" , "Opera Mini/[VER]" , "Version/[VER]" ] , "Opera Mini" : "Opera Mini/[VER]" , "Opera Mobi" : "Version/[VER]" ,
"UC Browser" : "UC Browser[VER]" , MQQBrowser : "MQQBrowser/[VER]" , MicroMessenger : "MicroMessenger/[VER]" , baiduboxapp : "baiduboxapp/[VER]" , baidubrowser : "baidubrowser/[VER]" , SamsungBrowser : "SamsungBrowser/[VER]" , Iron : "Iron/[VER]" , Safari : [ "Version/[VER]" , "Safari/[VER]" ] , Skyfire : "Skyfire/[VER]" , Tizen : "Tizen/[VER]" , Webkit : "webkit[ /][VER]" , PaleMoon : "PaleMoon/[VER]" , Gecko : "Gecko/[VER]" , Trident : "Trident/[VER]" , Presto : "Presto/[VER]" , Goanna : "Goanna/[VER]" , iOS : " \\bi?OS\\b [VER][ ;]{1}" , Android : "Android [VER]" , BlackBerry : [ "BlackBerry[\\w]+/[VER]" ,
"BlackBerry.*Version/[VER]" , "Version/[VER]" ] , BREW : "BREW [VER]" , Java : "Java/[VER]" , "Windows Phone OS" : [ "Windows Phone OS [VER]" , "Windows Phone [VER]" ] , "Windows Phone" : "Windows Phone [VER]" , "Windows CE" : "Windows CE/[VER]" , "Windows NT" : "Windows NT [VER]" , Symbian : [ "SymbianOS/[VER]" , "Symbian/[VER]" ] , webOS : [ "webOS/[VER]" , "hpwOS/[VER];" ] } , utils : { Bot : "Googlebot|facebookexternalhit|AdsBot-Google|Google Keyword Suggestion|Facebot|YandexBot|YandexMobileBot|bingbot|ia_archiver|AhrefsBot|Ezooms|GSLFbot|WBSearchBot|Twitterbot|TweetmemeBot|Twikle|PaperLiBot|Wotbox|UnwindFetchor|Exabot|MJ12bot|YandexImages|TurnitinBot|Pingdom" ,
2017-04-11 07:10:36 +00:00
MobileBot : "Googlebot-Mobile|AdsBot-Google-Mobile|YahooSeeker/M1A1-R2D2" , DesktopMode : "WPDesktop" , TV : "SonyDTV|HbbTV" , WebKit : "(webkit)[ /]([\\w.]+)" , Console : "\\b(Nintendo|Nintendo WiiU|Nintendo 3DS|PLAYSTATION|Xbox)\\b" , Watch : "SM-V700" } } , detectMobileBrowsers : { fullPattern : /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i ,
shortPattern : /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i ,
2017-07-25 17:51:59 +00:00
tabletPattern : /android|ipad|playbook|silk/i } } , g , r = Object . prototype . hasOwnProperty ; return e . FALLBACK _PHONE = "UnknownPhone" , e . FALLBACK _TABLET = "UnknownTablet" , e . FALLBACK _MOBILE = "UnknownMobile" , g = "isArray" in Array ? Array . isArray : function ( a ) { return "[object Array]" === Object . prototype . toString . call ( a ) } , function ( ) { var a , b , f , h , k , v , z = e . mobileDetectRules ; for ( a in z . props ) if ( r . call ( z . props , a ) ) { b = z . props [ a ] ; g ( b ) || ( b = [ b ] ) ; k = b . length ; for ( h = 0 ; h < k ; ++ h ) f = b [ h ] , v = f . indexOf ( "[VER]" ) , 0 <= v && ( f = f . substring ( 0 , v ) + "([\\w._\\+]+)" +
f . substring ( v + 5 ) ) , b [ h ] = new RegExp ( f , "i" ) ; z . props [ a ] = b } c ( z . oss ) ; c ( z . phones ) ; c ( z . tablets ) ; c ( z . uas ) ; c ( z . utils ) ; z . oss0 = { WindowsPhoneOS : z . oss . WindowsPhoneOS , WindowsMobileOS : z . oss . WindowsMobileOS } } ( ) , e . findMatch = function ( a , b ) { for ( var c in a ) if ( r . call ( a , c ) && a [ c ] . test ( b ) ) return c ; return null } , e . findMatches = function ( a , b ) { var c = [ ] , e ; for ( e in a ) r . call ( a , e ) && a [ e ] . test ( b ) && c . push ( e ) ; return c } , e . getVersionStr = function ( a , b ) { var c , f , g , h ; c = e . mobileDetectRules . props ; if ( r . call ( c , a ) ) for ( c = c [ a ] , g = c . length , f = 0 ; f < g ; ++ f ) if ( h =
2017-07-20 23:09:21 +00:00
c [ f ] . exec ( b ) , null !== h ) return h [ 1 ] ; return null } , e . getVersion = function ( a , b ) { var c = e . getVersionStr ( a , b ) ; return c ? e . prepareVersionNo ( c ) : NaN } , e . prepareVersionNo = function ( a ) { var b ; return b = a . split ( /[a-z._ \/\-]/i ) , 1 === b . length && ( a = b [ 0 ] ) , 1 < b . length && ( a = b [ 0 ] + "." , b . shift ( ) , a += b . join ( "" ) ) , Number ( a ) } , e . isMobileFallback = function ( a ) { return e . detectMobileBrowsers . fullPattern . test ( a ) || e . detectMobileBrowsers . shortPattern . test ( a . substr ( 0 , 4 ) ) } , e . isTabletFallback = function ( a ) { return e . detectMobileBrowsers . tabletPattern . test ( a ) } ,
e . prepareDetectionCache = function ( a , c , g ) { if ( a . mobile === f ) { var h , k , m ; return ( k = e . findMatch ( e . mobileDetectRules . tablets , c ) ) ? ( a . mobile = a . tablet = k , void ( a . phone = null ) ) : ( h = e . findMatch ( e . mobileDetectRules . phones , c ) ) ? ( a . mobile = a . phone = h , void ( a . tablet = null ) ) : void ( e . isMobileFallback ( c ) ? ( m = b . isPhoneSized ( g ) , m === f ? ( a . mobile = e . FALLBACK _MOBILE , a . tablet = a . phone = null ) : m ? ( a . mobile = a . phone = e . FALLBACK _PHONE , a . tablet = null ) : ( a . mobile = a . tablet = e . FALLBACK _TABLET , a . phone = null ) ) : e . isTabletFallback ( c ) ? ( a . mobile = a . tablet = e . FALLBACK _TABLET ,
a . phone = null ) : a . mobile = a . tablet = a . phone = null ) } } , e . mobileGrade = function ( a ) { var b = null !== a . mobile ( ) ; return a . os ( "iOS" ) && 4.3 <= a . version ( "iPad" ) || a . os ( "iOS" ) && 3.1 <= a . version ( "iPhone" ) || a . os ( "iOS" ) && 3.1 <= a . version ( "iPod" ) || 2.1 < a . version ( "Android" ) && a . is ( "Webkit" ) || 7 <= a . version ( "Windows Phone OS" ) || a . is ( "BlackBerry" ) && 6 <= a . version ( "BlackBerry" ) || a . match ( "Playbook.*Tablet" ) || 1.4 <= a . version ( "webOS" ) && a . match ( "Palm|Pre|Pixi" ) || a . match ( "hp.*TouchPad" ) || a . is ( "Firefox" ) && 12 <= a . version ( "Firefox" ) || a . is ( "Chrome" ) &&
2017-04-11 07:10:36 +00:00
a . is ( "AndroidOS" ) && 4 <= a . version ( "Android" ) || a . is ( "Skyfire" ) && 4.1 <= a . version ( "Skyfire" ) && a . is ( "AndroidOS" ) && 2.3 <= a . version ( "Android" ) || a . is ( "Opera" ) && 11 < a . version ( "Opera Mobi" ) && a . is ( "AndroidOS" ) || a . is ( "MeeGoOS" ) || a . is ( "Tizen" ) || a . is ( "Dolfin" ) && 2 <= a . version ( "Bada" ) || ( a . is ( "UC Browser" ) || a . is ( "Dolfin" ) ) && 2.3 <= a . version ( "Android" ) || a . match ( "Kindle Fire" ) || a . is ( "Kindle" ) && 3 <= a . version ( "Kindle" ) || a . is ( "AndroidOS" ) && a . is ( "NookTablet" ) || 11 <= a . version ( "Chrome" ) && ! b || 5 <= a . version ( "Safari" ) && ! b || 4 <= a . version ( "Firefox" ) &&
! b || 7 <= a . version ( "MSIE" ) && ! b || 10 <= a . version ( "Opera" ) && ! b ? "A" : a . os ( "iOS" ) && 4.3 > a . version ( "iPad" ) || a . os ( "iOS" ) && 3.1 > a . version ( "iPhone" ) || a . os ( "iOS" ) && 3.1 > a . version ( "iPod" ) || a . is ( "Blackberry" ) && 5 <= a . version ( "BlackBerry" ) && 6 > a . version ( "BlackBerry" ) || 5 <= a . version ( "Opera Mini" ) && 6.5 >= a . version ( "Opera Mini" ) && ( 2.3 <= a . version ( "Android" ) || a . is ( "iOS" ) ) || a . match ( "NokiaN8|NokiaC7|N97.*Series60|Symbian/3" ) || 11 <= a . version ( "Opera Mobi" ) && a . is ( "SymbianOS" ) ? "B" : ( 5 > a . version ( "BlackBerry" ) || a . match ( "MSIEMobile|Windows CE.*Mobile" ) ||
2017-07-20 23:09:21 +00:00
5.2 >= a . version ( "Windows Mobile" ) , "C" ) } , e . detectOS = function ( a ) { return e . findMatch ( e . mobileDetectRules . oss0 , a ) || e . findMatch ( e . mobileDetectRules . oss , a ) } , e . getDeviceSmallerSide = function ( ) { return window . screen . width < window . screen . height ? window . screen . width : window . screen . height } , b . prototype = { constructor : b , mobile : function ( ) { return e . prepareDetectionCache ( this . _cache , this . ua , this . maxPhoneWidth ) , this . _cache . mobile } , phone : function ( ) { return e . prepareDetectionCache ( this . _cache , this . ua , this . maxPhoneWidth ) , this . _cache . phone } ,
tablet : function ( ) { return e . prepareDetectionCache ( this . _cache , this . ua , this . maxPhoneWidth ) , this . _cache . tablet } , userAgent : function ( ) { return this . _cache . userAgent === f && ( this . _cache . userAgent = e . findMatch ( e . mobileDetectRules . uas , this . ua ) ) , this . _cache . userAgent } , userAgents : function ( ) { return this . _cache . userAgents === f && ( this . _cache . userAgents = e . findMatches ( e . mobileDetectRules . uas , this . ua ) ) , this . _cache . userAgents } , os : function ( ) { return this . _cache . os === f && ( this . _cache . os = e . detectOS ( this . ua ) ) , this . _cache . os } ,
version : function ( a ) { return e . getVersion ( a , this . ua ) } , versionStr : function ( a ) { return e . getVersionStr ( a , this . ua ) } , is : function ( b ) { return h ( this . userAgents ( ) , b ) || a ( b , this . os ( ) ) || a ( b , this . phone ( ) ) || a ( b , this . tablet ( ) ) || h ( e . findMatches ( e . mobileDetectRules . utils , this . ua ) , b ) } , match : function ( a ) { return a instanceof RegExp || ( a = new RegExp ( a , "i" ) ) , a . test ( this . ua ) } , isPhoneSized : function ( a ) { return b . isPhoneSized ( a || this . maxPhoneWidth ) } , mobileGrade : function ( ) { return this . _cache . grade === f && ( this . _cache . grade = e . mobileGrade ( this ) ) ,
2017-07-25 22:08:25 +00:00
this . _cache . grade } } , "undefined" != typeof window && window . screen ? b . isPhoneSized = function ( a ) { return 0 > a ? f : e . getDeviceSmallerSide ( ) <= a } : b . isPhoneSized = function ( ) { } , b . _impl = e , b . version = "1.3.5 2016-11-14" , b } ) } ) ( function ( a ) { if ( "undefined" != typeof module && module . exports ) return function ( a ) { module . exports = a ( ) } ; if ( "function" == typeof define && define . amd ) return define ; if ( "undefined" != typeof window ) return function ( a ) { window . MobileDetect = a ( ) } ; throw Error ( "unknown environment" ) ; } ( ) ) ;
2017-07-20 23:09:21 +00:00
( function ( a ) { "object" == typeof exports && "undefined" != typeof module ? module . exports = a ( ) : "function" == typeof define && define . amd ? define ( [ ] , a ) : ( "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this ) . jsyaml = a ( ) } ) ( function ( ) { return function f ( k , h , c ) { function b ( g , m ) { if ( ! h [ g ] ) { if ( ! k [ g ] ) { var n = "function" == typeof require && require ; if ( ! m && n ) return n ( g , ! 0 ) ; if ( e ) return e ( g , ! 0 ) ; n = Error ( "Cannot find module '" + g + "'" ) ; throw n . code = "MODULE_NOT_FOUND" , n ; } n = h [ g ] = { exports : { } } ;
k [ g ] [ 0 ] . call ( n . exports , function ( c ) { var e = k [ g ] [ 1 ] [ c ] ; return b ( e ? e : c ) } , n , n . exports , f , k , h , c ) } return h [ g ] . exports } for ( var e = "function" == typeof require && require , g = 0 ; g < c . length ; g ++ ) b ( c [ g ] ) ; return b } ( { 1 : [ function ( f , k , h ) { function c ( b ) { return function ( ) { throw Error ( "Function " + b + " is deprecated and cannot be used." ) ; } } h = f ( "./js-yaml/loader" ) ; var b = f ( "./js-yaml/dumper" ) ; k . exports . Type = f ( "./js-yaml/type" ) ; k . exports . Schema = f ( "./js-yaml/schema" ) ; k . exports . FAILSAFE _SCHEMA = f ( "./js-yaml/schema/failsafe" ) ; k . exports . JSON _SCHEMA =
f ( "./js-yaml/schema/json" ) ; k . exports . CORE _SCHEMA = f ( "./js-yaml/schema/core" ) ; k . exports . DEFAULT _SAFE _SCHEMA = f ( "./js-yaml/schema/default_safe" ) ; k . exports . DEFAULT _FULL _SCHEMA = f ( "./js-yaml/schema/default_full" ) ; k . exports . load = h . load ; k . exports . loadAll = h . loadAll ; k . exports . safeLoad = h . safeLoad ; k . exports . safeLoadAll = h . safeLoadAll ; k . exports . dump = b . dump ; k . exports . safeDump = b . safeDump ; k . exports . YAMLException = f ( "./js-yaml/exception" ) ; k . exports . MINIMAL _SCHEMA = f ( "./js-yaml/schema/failsafe" ) ; k . exports . SAFE _SCHEMA =
f ( "./js-yaml/schema/default_safe" ) ; k . exports . DEFAULT _SCHEMA = f ( "./js-yaml/schema/default_full" ) ; k . exports . scan = c ( "scan" ) ; k . exports . parse = c ( "parse" ) ; k . exports . compose = c ( "compose" ) ; k . exports . addConstructor = c ( "addConstructor" ) } , { "./js-yaml/dumper" : 3 , "./js-yaml/exception" : 4 , "./js-yaml/loader" : 5 , "./js-yaml/schema" : 7 , "./js-yaml/schema/core" : 8 , "./js-yaml/schema/default_full" : 9 , "./js-yaml/schema/default_safe" : 10 , "./js-yaml/schema/failsafe" : 11 , "./js-yaml/schema/json" : 12 , "./js-yaml/type" : 13 } ] , 2 : [ function ( f ,
2017-07-25 17:51:59 +00:00
k , h ) { function c ( b ) { return "undefined" == typeof b || null === b } k . exports . isNothing = c ; k . exports . isObject = function ( b ) { return "object" == typeof b && null !== b } ; k . exports . toArray = function ( b ) { return Array . isArray ( b ) ? b : c ( b ) ? [ ] : [ b ] } ; k . exports . repeat = function ( b , c ) { var e , f = "" ; for ( e = 0 ; e < c ; e += 1 ) f += b ; return f } ; k . exports . isNegativeZero = function ( b ) { return 0 === b && Number . NEGATIVE _INFINITY === 1 / b } ; k . exports . extend = function ( b , c ) { var e , f , h , k ; if ( c ) for ( k = Object . keys ( c ) , e = 0 , f = k . length ; e < f ; e += 1 ) h = k [ e ] , b [ h ] = c [ h ] ; return b } } , { } ] , 3 : [ function ( f ,
k , h ) { function c ( b ) { this . schema = b . schema || I ; this . indent = Math . max ( 1 , b . indent || 2 ) ; this . skipInvalid = b . skipInvalid || ! 1 ; this . flowLevel = p . isNothing ( b . flowLevel ) ? - 1 : b . flowLevel ; var c ; c = this . schema ; var e = b . styles || null , f , g , h , k , m , w , n ; if ( null === e ) c = { } ; else { f = { } ; g = Object . keys ( e ) ; h = 0 ; for ( k = g . length ; h < k ; h += 1 ) m = g [ h ] , w = String ( e [ m ] ) , "!!" === m . slice ( 0 , 2 ) && ( m = "tag:yaml.org,2002:" + m . slice ( 2 ) ) , ( n = c . compiledTypeMap [ m ] ) && G . call ( n . styleAliases , w ) && ( w = n . styleAliases [ w ] ) , f [ m ] = w ; c = f } this . styleMap = c ; this . sortKeys = b . sortKeys ||
! 1 ; this . lineWidth = b . lineWidth || 80 ; this . noRefs = b . noRefs || ! 1 ; this . noCompatMode = b . noCompatMode || ! 1 ; this . implicitTypes = this . schema . compiledImplicit ; this . explicitTypes = this . schema . compiledExplicit ; this . tag = null ; this . result = "" ; this . duplicates = [ ] ; this . usedDuplicates = null } function b ( b , c ) { for ( var e , f = p . repeat ( " " , c ) , g = 0 , h , k = "" , m = b . length ; g < m ; ) h = b . indexOf ( "\n" , g ) , - 1 === h ? ( e = b . slice ( g ) , g = m ) : ( e = b . slice ( g , h + 1 ) , g = h + 1 ) , e . length && "\n" !== e && ( k += f ) , k += e ; return k } function e ( b ) { return 32 <= b && 126 >= b || 161 <= b && 55295 >= b &&
2017-07-20 23:09:21 +00:00
8232 !== b && 8233 !== b || 57344 <= b && 65533 >= b && 65279 !== b || 65536 <= b && 1114111 >= b } function g ( b ) { return e ( b ) && 65279 !== b && b !== X && b !== R && b !== ea && b !== ha && b !== qa && b !== T && b !== W } function r ( b , c , f , h , k ) { var m , w = ! 1 , n = ! 1 , r = - 1 !== h , q = - 1 , t = b . charCodeAt ( 0 ) ; if ( t = e ( t ) && 65279 !== t && ! ( t === P || t === N ) && t !== O && t !== ka && t !== T && t !== X && t !== R && t !== ea && t !== ha && t !== qa && t !== W && t !== ya && t !== za && t !== V && t !== pa && t !== M && t !== Ga && t !== S && t !== ja && t !== ca && t !== Y ) t = b . charCodeAt ( b . length - 1 ) , t = ! ( t === P || t === N ) ; if ( c ) for ( c = 0 ; c < b . length ; c ++ ) { if ( m = b . charCodeAt ( c ) ,
! e ( m ) ) return Ua ; t = t && g ( m ) } else { for ( c = 0 ; c < b . length ; c ++ ) { if ( m = b . charCodeAt ( c ) , m === K ) w = ! 0 , r && ( n = n || c - q - 1 > h && " " !== b [ q + 1 ] , q = c ) ; else if ( ! e ( m ) ) return Ua ; t = t && g ( m ) } n = n || r && c - q - 1 > h && " " !== b [ q + 1 ] } return w || n ? " " === b [ 0 ] && 9 < f ? Ua : n ? na : U : t && ! k ( b ) ? ma : Ka } function m ( c , e , f , g ) { c . dump = function ( ) { if ( 0 === e . length ) return "''" ; if ( ! c . noCompatMode && - 1 !== w . indexOf ( e ) ) return "'" + e + "'" ; var h = c . indent * Math . max ( 1 , f ) , k = - 1 === c . lineWidth ? - 1 : Math . max ( Math . min ( c . lineWidth , 40 ) , c . lineWidth - h ) ; switch ( r ( e , g || - 1 < c . flowLevel && f >= c . flowLevel ,
2017-07-25 17:51:59 +00:00
c . indent , k , function ( b ) { a : { var e , f , g ; e = 0 ; for ( f = c . implicitTypes . length ; e < f ; e += 1 ) if ( g = c . implicitTypes [ e ] , g . resolve ( b ) ) { b = ! 0 ; break a } b = ! 1 } return b } ) ) { case ma : return e ; case Ka : return "'" + e . replace ( /'/g , "''" ) + "'" ; case U : return "|" + n ( e , c . indent ) + t ( b ( e , h ) ) ; case na : return ">" + n ( e , c . indent ) + t ( b ( x ( e , k ) , h ) ) ; case Ua : return '"' + v ( e , k ) + '"' ; default : throw new u ( "impossible error: invalid scalar style" ) ; } } ( ) } function n ( b , c ) { var e = "\n" === b [ b . length - 1 ] ; return ( " " === b [ 0 ] ? String ( c ) : "" ) + ( ! e || "\n" !== b [ b . length - 2 ] && "\n" !== b ?
2017-07-20 23:09:21 +00:00
e ? "" : "-" : "+" ) + "\n" } function t ( b ) { return "\n" === b [ b . length - 1 ] ? b . slice ( 0 , - 1 ) : b } function x ( b , c ) { var e , f = /(\n+)([^\n]*)/g , g , h = b . indexOf ( "\n" ) ; g = ( h = - 1 !== h ? h : b . length , f . lastIndex = h , q ( b . slice ( 0 , h ) , c ) ) ; for ( h = "\n" === b [ 0 ] || " " === b [ 0 ] ; e = f . exec ( b ) ; ) { var k = e [ 1 ] , m = e [ 2 ] ; e = " " === m [ 0 ] ; g += k + ( h || e || "" === m ? "" : "\n" ) + q ( m , c ) ; h = e } return g } function q ( b , c ) { if ( "" === b || " " === b [ 0 ] ) return b ; for ( var e , f , g = / [^ ]/g , h = 0 , k = 0 , m = "" ; e = g . exec ( b ) ; ) e = e . index , e - h > c && ( f = k > h ? k : e , m += "\n" + b . slice ( h , f ) , h = f + 1 ) , k = e ; return m += "\n" , m += b . length - h >
2017-07-25 17:51:59 +00:00
c && k > h ? b . slice ( h , k ) + "\n" + b . slice ( k + 1 ) : b . slice ( h ) , m . slice ( 1 ) } function v ( b ) { for ( var c , f , g = "" , h = 0 ; h < b . length ; h ++ ) { c = b . charCodeAt ( h ) ; f = ga [ c ] ; if ( ! f && e ( c ) ) c = b [ h ] ; else { if ( ! f ) { var k ; f = c ; if ( c = f . toString ( 16 ) . toUpperCase ( ) , 255 >= f ) k = "x" , f = 2 ; else if ( 65535 >= f ) k = "u" , f = 4 ; else { if ( ! ( 4294967295 >= f ) ) throw new u ( "code point within a string may not be greater than 0xFFFFFFFF" ) ; k = "U" ; f = 8 } f = "\\" + k + p . repeat ( "0" , f - c . length ) + c } c = f } g += c } return g } function z ( b , c , e ) { var f , g , h , k ; f = e ? b . explicitTypes : b . implicitTypes ; g = 0 ; for ( h = f . length ; g <
h ; g += 1 ) if ( k = f [ g ] , ( k . instanceOf || k . predicate ) && ( ! k . instanceOf || "object" == typeof c && c instanceof k . instanceOf ) && ( ! k . predicate || k . predicate ( c ) ) ) { if ( b . tag = e ? k . tag : "?" , k . represent ) { if ( e = b . styleMap [ k . tag ] || k . defaultStyle , "[object Function]" === E . call ( k . represent ) ) c = k . represent ( c , e ) ; else { if ( ! G . call ( k . represent , e ) ) throw new u ( "!<" + k . tag + '> tag resolver accepts not "' + e + '" style' ) ; c = k . represent [ e ] ( c , e ) } b . dump = c } return ! 0 } return ! 1 } function A ( b , c , e , f , g , h ) { b . tag = null ; b . dump = e ; z ( b , e , ! 1 ) || z ( b , e , ! 0 ) ; var k = E . call ( b . dump ) ;
2017-07-20 23:09:21 +00:00
f && ( f = 0 > b . flowLevel || b . flowLevel > c ) ; var w , n , r = "[object Object]" === k || "[object Array]" === k ; if ( r && ( w = b . duplicates . indexOf ( e ) , n = - 1 !== w ) , ( null !== b . tag && "?" !== b . tag || n || 2 !== b . indent && 0 < c ) && ( g = ! 1 ) , n && b . usedDuplicates [ w ] ) b . dump = "*ref_" + w ; else { if ( r && n && ! b . usedDuplicates [ w ] && ( b . usedDuplicates [ w ] = ! 0 ) , "[object Object]" === k ) if ( f && 0 !== Object . keys ( b . dump ) . length ) { e = b . dump ; var t , q , v = "" , x = b . tag , B = Object . keys ( e ) ; if ( ! 0 === b . sortKeys ) B . sort ( ) ; else if ( "function" == typeof b . sortKeys ) B . sort ( b . sortKeys ) ; else if ( b . sortKeys ) throw new u ( "sortKeys must be a boolean or a function" ) ;
2017-07-25 17:51:59 +00:00
f = 0 ; for ( h = B . length ; f < h ; f += 1 ) q = "" , g && 0 === f || ( q += "\n" + p . repeat ( " " , b . indent * c ) ) , k = B [ f ] , r = e [ k ] , A ( b , c + 1 , k , ! 0 , ! 0 , ! 0 ) && ( t = null !== b . tag && "?" !== b . tag || b . dump && 1024 < b . dump . length , t && ( q += b . dump && K === b . dump . charCodeAt ( 0 ) ? "?" : "? " ) , q += b . dump , t && ( q += "\n" + p . repeat ( " " , b . indent * c ) ) , A ( b , c + 1 , r , ! 0 , t ) && ( q += b . dump && K === b . dump . charCodeAt ( 0 ) ? ":" : ": " , q += b . dump , v += q ) ) ; b . tag = x ; b . dump = v || "{}" ; n && ( b . dump = "&ref_" + w + b . dump ) } else { t = b . dump ; r = "" ; q = b . tag ; v = Object . keys ( t ) ; e = 0 ; for ( g = v . length ; e < g ; e += 1 ) k = "" , 0 !== e && ( k += ", " ) , f = v [ e ] ,
h = t [ f ] , A ( b , c , f , ! 1 , ! 1 ) && ( 1024 < b . dump . length && ( k += "? " ) , k += b . dump + ": " , A ( b , c , h , ! 1 , ! 1 ) && ( k += b . dump , r += k ) ) ; b . tag = q ; b . dump = "{" + r + "}" ; n && ( b . dump = "&ref_" + w + " " + b . dump ) } else if ( "[object Array]" === k ) if ( f && 0 !== b . dump . length ) { t = b . dump ; e = g ; h = "" ; k = b . tag ; g = 0 ; for ( f = t . length ; g < f ; g += 1 ) A ( b , c + 1 , t [ g ] , ! 0 , ! 0 ) && ( e && 0 === g || ( h += "\n" + p . repeat ( " " , b . indent * c ) ) , h += "- " + b . dump ) ; b . tag = k ; b . dump = h || "[]" ; n && ( b . dump = "&ref_" + w + b . dump ) } else { t = b . dump ; f = "" ; h = b . tag ; e = 0 ; for ( g = t . length ; e < g ; e += 1 ) A ( b , c , t [ e ] , ! 1 , ! 1 ) && ( 0 !== e && ( f += ", " ) , f += b . dump ) ;
b . tag = h ; b . dump = "[" + f + "]" ; n && ( b . dump = "&ref_" + w + " " + b . dump ) } else { if ( "[object String]" !== k ) { if ( b . skipInvalid ) return ! 1 ; throw new u ( "unacceptable kind of an object to dump " + k ) ; } "?" !== b . tag && m ( b , b . dump , c , h ) } null !== b . tag && "?" !== b . tag && ( b . dump = "!<" + b . tag + "> " + b . dump ) } return ! 0 } function B ( b , c , e ) { var f , g , h ; if ( null !== b && "object" == typeof b ) if ( g = c . indexOf ( b ) , - 1 !== g ) - 1 === e . indexOf ( g ) && e . push ( g ) ; else if ( c . push ( b ) , Array . isArray ( b ) ) for ( g = 0 , h = b . length ; g < h ; g += 1 ) B ( b [ g ] , c , e ) ; else for ( f = Object . keys ( b ) , g = 0 , h = f . length ; g <
h ; g += 1 ) B ( b [ f [ g ] ] , c , e ) } function F ( b , e ) { e = e || { } ; var f = new c ( e ) ; if ( ! f . noRefs ) { var g , h , k = [ ] , m = [ ] ; B ( b , k , m ) ; g = 0 ; for ( h = m . length ; g < h ; g += 1 ) f . duplicates . push ( k [ m [ g ] ] ) ; f . usedDuplicates = Array ( h ) } return A ( f , 0 , b , ! 0 , ! 0 ) ? f . dump + "\n" : "" } var p = f ( "./common" ) , u = f ( "./exception" ) , I = f ( "./schema/default_full" ) , J = f ( "./schema/default_safe" ) , E = Object . prototype . toString , G = Object . prototype . hasOwnProperty , N = 9 , K = 10 , P = 32 , V = 33 , S = 34 , W = 35 , ja = 37 , ya = 38 , Ga = 39 , za = 42 , X = 44 , O = 45 , T = 58 , M = 62 , ka = 63 , ca = 64 , R = 91 , ea = 93 , Y = 96 , ha = 123 , pa = 124 , qa = 125 ,
2017-07-20 23:09:21 +00:00
ga = { 0 : "\\0" , 7 : "\\a" , 8 : "\\b" , 9 : "\\t" , 10 : "\\n" , 11 : "\\v" , 12 : "\\f" , 13 : "\\r" , 27 : "\\e" , 34 : '\\"' , 92 : "\\\\" , 133 : "\\N" , 160 : "\\_" , 8232 : "\\L" , 8233 : "\\P" } , w = "y Y yes Yes YES on On ON n N no No NO off Off OFF" . split ( " " ) , ma = 1 , Ka = 2 , U = 3 , na = 4 , Ua = 5 ; k . exports . dump = F ; k . exports . safeDump = function ( b , c ) { return F ( b , p . extend ( { schema : J } , c ) ) } } , { "./common" : 2 , "./exception" : 4 , "./schema/default_full" : 9 , "./schema/default_safe" : 10 } ] , 4 : [ function ( f , k , h ) { function c ( b , c ) { Error . call ( this ) ; Error . captureStackTrace ? Error . captureStackTrace ( this ,
this . constructor ) : this . stack = Error ( ) . stack || "" ; this . name = "YAMLException" ; this . reason = b ; this . mark = c ; this . message = ( this . reason || "(unknown reason)" ) + ( this . mark ? " " + this . mark . toString ( ) : "" ) } c . prototype = Object . create ( Error . prototype ) ; c . prototype . constructor = c ; c . prototype . toString = function ( b ) { var c = this . name + ": " ; return c += this . reason || "(unknown reason)" , ! b && this . mark && ( c += " " + this . mark . toString ( ) ) , c } ; k . exports = c } , { } ] , 5 : [ function ( f , k , h ) { function c ( b ) { return 10 === b || 13 === b } function b ( b ) { return 9 === b || 32 ===
b } function e ( b ) { return 9 === b || 32 === b || 10 === b || 13 === b } function g ( b ) { return 44 === b || 91 === b || 93 === b || 123 === b || 125 === b } function r ( b ) { return 48 === b ? "\x00" : 97 === b ? "\u0007" : 98 === b ? "\b" : 116 === b ? "\t" : 9 === b ? "\t" : 110 === b ? "\n" : 118 === b ? "\x0B" : 102 === b ? "\f" : 114 === b ? "\r" : 101 === b ? "\u001b" : 32 === b ? " " : 34 === b ? '"' : 47 === b ? "/" : 92 === b ? "\\" : 78 === b ? "\u0085" : 95 === b ? "\u00a0" : 76 === b ? "\u2028" : 80 === b ? "\u2029" : "" } function m ( b , c ) { this . input = b ; this . filename = c . filename || null ; this . schema = c . schema || ja ; this . onWarning = c . onWarning || null ;
2017-07-25 17:51:59 +00:00
this . legacy = c . legacy || ! 1 ; this . json = c . json || ! 1 ; this . listener = c . listener || null ; this . implicitTypes = this . schema . compiledImplicit ; this . typeMap = this . schema . compiledTypeMap ; this . length = b . length ; this . lineIndent = this . lineStart = this . line = this . position = 0 ; this . documents = [ ] } function n ( b , c ) { return new V ( c , new S ( b . filename , b . input , b . position , b . line , b . position - b . lineStart ) ) } function t ( b , c ) { throw n ( b , c ) ; } function x ( b , c ) { b . onWarning && b . onWarning . call ( null , n ( b , c ) ) } function q ( b , c , e , f ) { var g ; if ( c < e ) { if ( c = b . input . slice ( c ,
e ) , f ) for ( f = 0 , e = c . length ; f < e ; f += 1 ) g = c . charCodeAt ( f ) , 9 === g || 32 <= g && 1114111 >= g || t ( b , "expected valid JSON character" ) ; else ca . test ( c ) && t ( b , "the stream contains non-printable characters" ) ; b . result += c } } function v ( b , c , e , f ) { var g , h , k ; P . isObject ( e ) || t ( b , "cannot merge mappings; the provided source object is unacceptable" ) ; b = Object . keys ( e ) ; h = 0 ; for ( k = b . length ; h < k ; h += 1 ) g = b [ h ] , ya . call ( c , g ) || ( c [ g ] = e [ g ] , f [ g ] = ! 0 ) } function z ( b , c , e , f , g , h ) { if ( g = String ( g ) , null === c && ( c = { } ) , "tag:yaml.org,2002:merge" === f ) if ( Array . isArray ( h ) ) for ( f =
0 , g = h . length ; f < g ; f += 1 ) v ( b , c , h [ f ] , e ) ; else v ( b , c , h , e ) ; else b . json || ya . call ( e , g ) || ! ya . call ( c , g ) || t ( b , "duplicated mapping key" ) , c [ g ] = h , delete e [ g ] ; return c } function A ( b ) { var c ; c = b . input . charCodeAt ( b . position ) ; 10 === c ? b . position ++ : 13 === c ? ( b . position ++ , 10 === b . input . charCodeAt ( b . position ) && b . position ++ ) : t ( b , "a line break is expected" ) ; b . line += 1 ; b . lineStart = b . position } function B ( e , f , g ) { for ( var h = 0 , k = e . input . charCodeAt ( e . position ) ; 0 !== k ; ) { for ( ; b ( k ) ; ) k = e . input . charCodeAt ( ++ e . position ) ; if ( f && 35 === k ) { do k = e . input . charCodeAt ( ++ e . position ) ;
while ( 10 !== k && 13 !== k && 0 !== k ) } if ( ! c ( k ) ) break ; A ( e ) ; k = e . input . charCodeAt ( e . position ) ; h ++ ; for ( e . lineIndent = 0 ; 32 === k ; ) e . lineIndent ++ , k = e . input . charCodeAt ( ++ e . position ) } return - 1 !== g && 0 !== h && e . lineIndent < g && x ( e , "deficient indentation" ) , h } function F ( b ) { var c , f = b . position ; return c = b . input . charCodeAt ( f ) , ! ( 45 !== c && 46 !== c || c !== b . input . charCodeAt ( f + 1 ) || c !== b . input . charCodeAt ( f + 2 ) || ( f += 3 , c = b . input . charCodeAt ( f ) , 0 !== c && ! e ( c ) ) ) } function p ( b , c ) { 1 === c ? b . result += " " : 1 < c && ( b . result += P . repeat ( "\n" , c - 1 ) ) } function u ( b ,
c ) { var f , g , h , k = b . tag , m = b . anchor , w = [ ] , n = ! 1 ; null !== b . anchor && ( b . anchorMap [ b . anchor ] = w ) ; for ( h = b . input . charCodeAt ( b . position ) ; 0 !== h && 45 === h && ( g = b . input . charCodeAt ( b . position + 1 ) , e ( g ) ) ; ) if ( n = ! 0 , b . position ++ , B ( b , ! 0 , - 1 ) && b . lineIndent <= c ) w . push ( null ) , h = b . input . charCodeAt ( b . position ) ; else if ( f = b . line , E ( b , c , X , ! 1 , ! 0 ) , w . push ( b . result ) , B ( b , ! 0 , - 1 ) , h = b . input . charCodeAt ( b . position ) , ( b . line === f || b . lineIndent > c ) && 0 !== h ) t ( b , "bad indentation of a sequence entry" ) ; else if ( b . lineIndent < c ) break ; return ! ! n && ( b . tag = k , b . anchor =
m , b . kind = "sequence" , b . result = w , ! 0 ) } function I ( b ) { var c , f , g , h , k = ! 1 , m = ! 1 ; if ( h = b . input . charCodeAt ( b . position ) , 33 !== h ) return ! 1 ; if ( null !== b . tag && t ( b , "duplication of a tag property" ) , h = b . input . charCodeAt ( ++ b . position ) , 60 === h ? ( k = ! 0 , h = b . input . charCodeAt ( ++ b . position ) ) : 33 === h ? ( m = ! 0 , f = "!!" , h = b . input . charCodeAt ( ++ b . position ) ) : f = "!" , c = b . position , k ) { do h = b . input . charCodeAt ( ++ b . position ) ; while ( 0 !== h && 62 !== h ) ; b . position < b . length ? ( g = b . input . slice ( c , b . position ) , b . input . charCodeAt ( ++ b . position ) ) : t ( b , "unexpected end of the stream within a verbatim tag" ) } else { for ( ; 0 !==
2017-07-20 23:09:21 +00:00
h && ! e ( h ) ; ) 33 === h && ( m ? t ( b , "tag suffix cannot contain exclamation marks" ) : ( f = b . input . slice ( c - 1 , b . position + 1 ) , Y . test ( f ) || t ( b , "named tag handle cannot contain such characters" ) , m = ! 0 , c = b . position + 1 ) ) , h = b . input . charCodeAt ( ++ b . position ) ; g = b . input . slice ( c , b . position ) ; ea . test ( g ) && t ( b , "tag suffix cannot contain flow indicator characters" ) } return g && ! ha . test ( g ) && t ( b , "tag name cannot contain such characters: " + g ) , k ? b . tag = g : ya . call ( b . tagMap , f ) ? b . tag = b . tagMap [ f ] + g : "!" === f ? b . tag = "!" + g : "!!" === f ? b . tag = "tag:yaml.org,2002:" +
g : t ( b , 'undeclared tag handle "' + f + '"' ) , ! 0 } function J ( b ) { var c , f ; if ( f = b . input . charCodeAt ( b . position ) , 38 !== f ) return ! 1 ; null !== b . anchor && t ( b , "duplication of an anchor property" ) ; f = b . input . charCodeAt ( ++ b . position ) ; for ( c = b . position ; 0 !== f && ! e ( f ) && ! g ( f ) ; ) f = b . input . charCodeAt ( ++ b . position ) ; return b . position === c && t ( b , "name of an anchor node must contain at least one character" ) , b . anchor = b . input . slice ( c , b . position ) , ! 0 } function E ( f , h , k , m , n ) { var r , v , w , x , G , K , S = 1 , N = ! 1 , W = ! 1 ; if ( null !== f . listener && f . listener ( "open" ,
f ) , f . tag = null , f . anchor = null , f . kind = null , f . result = null , r = v = w = O === k || X === k , m && B ( f , ! 0 , - 1 ) && ( N = ! 0 , f . lineIndent > h ? S = 1 : f . lineIndent === h ? S = 0 : f . lineIndent < h && ( S = - 1 ) ) , 1 === S ) for ( ; I ( f ) || J ( f ) ; ) B ( f , ! 0 , - 1 ) ? ( N = ! 0 , w = r , f . lineIndent > h ? S = 1 : f . lineIndent === h ? S = 0 : f . lineIndent < h && ( S = - 1 ) ) : w = ! 1 ; w && ( w = N || n ) ; if ( 1 === S || O === k ) if ( h = Ga === k || za === k ? h : h + 1 , m = f . position - f . lineStart , 1 === S ) { var U ; if ( w && ! ( w = u ( f , m ) ) ) a : { var R ; n = f . tag ; r = f . anchor ; var N = { } , V = { } , ca = null , ja = null , Ka = null , ma = ! 1 , ha = ! 1 ; null !== f . anchor && ( f . anchorMap [ f . anchor ] = N ) ;
for ( S = f . input . charCodeAt ( f . position ) ; 0 !== S ; ) { if ( U = f . input . charCodeAt ( f . position + 1 ) , w = f . line , 63 !== S && 58 !== S || ! e ( U ) ) { if ( ! E ( f , h , za , ! 1 , ! 0 ) ) break ; if ( f . line === w ) { for ( S = f . input . charCodeAt ( f . position ) ; b ( S ) ; ) S = f . input . charCodeAt ( ++ f . position ) ; if ( 58 === S ) S = f . input . charCodeAt ( ++ f . position ) , e ( S ) || t ( f , "a whitespace character is expected after the key-value separator within a block mapping" ) , ma && ( z ( f , N , V , ca , ja , null ) , Ka = null ) , ha = ! 0 , R = ma = ! 1 , ca = f . tag , ja = f . result ; else { if ( ! ha ) { w = ( f . tag = n , f . anchor = r , ! 0 ) ; break a } t ( f , "can not read an implicit mapping pair; a colon is missed" ) } } else { if ( ! ha ) { w =
( f . tag = n , f . anchor = r , ! 0 ) ; break a } t ( f , "can not read a block mapping entry; a multiline key may not be an implicit key" ) } } else 63 === S ? ( ma && ( z ( f , N , V , ca , ja , null ) , ca = ja = Ka = null ) , ha = ! 0 , ma = ! 0 , R = ! 0 ) : ma ? ( ma = ! 1 , R = ! 0 ) : t ( f , "incomplete explicit mapping pair; a key node is missed" ) , f . position += 1 , S = U ; if ( ( f . line === w || f . lineIndent > m ) && ( E ( f , m , O , ! 0 , R ) && ( ma ? ja = f . result : Ka = f . result ) , ma || ( z ( f , N , V , ca , ja , Ka ) , ca = ja = Ka = null ) , B ( f , ! 0 , - 1 ) , S = f . input . charCodeAt ( f . position ) ) , f . lineIndent > m && 0 !== S ) t ( f , "bad indentation of a mapping entry" ) ;
else if ( f . lineIndent < m ) break } w = ( ma && z ( f , N , V , ca , ja , null ) , ha && ( f . tag = n , f . anchor = r , f . kind = "mapping" , f . result = N ) , ha ) } if ( ! ( U = w ) ) a : { var ga , ea , ca = ! 0 , ja = f . tag , Ka = f . anchor , ma = { } ; if ( ea = f . input . charCodeAt ( f . position ) , 91 === ea ) m = 93 , n = ! 1 , R = [ ] ; else { if ( 123 !== ea ) { U = ! 1 ; break a } m = 125 ; n = ! 0 ; R = { } } null !== f . anchor && ( f . anchorMap [ f . anchor ] = R ) ; for ( ea = f . input . charCodeAt ( ++ f . position ) ; 0 !== ea ; ) { if ( B ( f , ! 0 , h ) , ea = f . input . charCodeAt ( f . position ) , ea === m ) { U = ( f . position ++ , f . tag = ja , f . anchor = Ka , f . kind = n ? "mapping" : "sequence" , f . result = R ,
! 0 ) ; break a } ca || t ( f , "missed comma between flow collection entries" ) ; V = null ; w = S = ! 1 ; 63 === ea && ( ga = f . input . charCodeAt ( f . position + 1 ) , e ( ga ) && ( w = S = ! 0 , f . position ++ , B ( f , ! 0 , h ) ) ) ; U = f . line ; E ( f , h , Ga , ! 1 , ! 0 ) ; N = f . tag ; r = f . result ; B ( f , ! 0 , h ) ; ea = f . input . charCodeAt ( f . position ) ; ! S && f . line !== U || 58 !== ea || ( w = ! 0 , f . input . charCodeAt ( ++ f . position ) , B ( f , ! 0 , h ) , E ( f , h , Ga , ! 1 , ! 0 ) , V = f . result ) ; n ? z ( f , R , ma , N , r , V ) : w ? R . push ( z ( f , null , ma , N , r , V ) ) : R . push ( r ) ; B ( f , ! 0 , h ) ; ea = f . input . charCodeAt ( f . position ) ; 44 === ea ? ( ca = ! 0 , ea = f . input . charCodeAt ( ++ f . position ) ) :
ca = ! 1 } t ( f , "unexpected end of the stream within a flow collection" ) ; U = void 0 } if ( U ) W = ! 0 ; else { var da ; if ( v ) a : { ga = T ; U = ea = ! 1 ; R = h ; m = 0 ; w = ! 1 ; if ( da = f . input . charCodeAt ( f . position ) , 124 === da ) v = ! 1 ; else { if ( 62 !== da ) { v = ! 1 ; break a } v = ! 0 } f . kind = "scalar" ; for ( f . result = "" ; 0 !== da ; ) if ( da = f . input . charCodeAt ( ++ f . position ) , 43 === da || 45 === da ) T === ga ? ga = 43 === da ? ka : M : t ( f , "repeat of a chomping mode identifier" ) ; else { if ( ! ( 0 <= ( S = 48 <= da && 57 >= da ? da - 48 : - 1 ) ) ) break ; 0 === S ? t ( f , "bad explicit indentation width of a block scalar; it cannot be less than one" ) :
U ? t ( f , "repeat of an indentation width identifier" ) : ( R = h + S - 1 , U = ! 0 ) } if ( b ( da ) ) { do da = f . input . charCodeAt ( ++ f . position ) ; while ( b ( da ) ) ; if ( 35 === da ) { do da = f . input . charCodeAt ( ++ f . position ) ; while ( ! c ( da ) && 0 !== da ) } } for ( ; 0 !== da ; ) { A ( f ) ; f . lineIndent = 0 ; for ( da = f . input . charCodeAt ( f . position ) ; ( ! U || f . lineIndent < R ) && 32 === da ; ) f . lineIndent ++ , da = f . input . charCodeAt ( ++ f . position ) ; if ( ! U && f . lineIndent > R && ( R = f . lineIndent ) , c ( da ) ) m ++ ; else { if ( f . lineIndent < R ) { ga === ka ? f . result += P . repeat ( "\n" , ea ? 1 + m : m ) : ga === T && ea && ( f . result += "\n" ) ;
break } v ? b ( da ) ? ( w = ! 0 , f . result += P . repeat ( "\n" , ea ? 1 + m : m ) ) : w ? ( w = ! 1 , f . result += P . repeat ( "\n" , m + 1 ) ) : 0 === m ? ea && ( f . result += " " ) : f . result += P . repeat ( "\n" , m ) : f . result += P . repeat ( "\n" , ea ? 1 + m : m ) ; U = ea = ! 0 ; m = 0 ; for ( S = f . position ; ! c ( da ) && 0 !== da ; ) da = f . input . charCodeAt ( ++ f . position ) ; q ( f , S , f . position , ! 1 ) } } v = ! 0 } if ( ! ( da = v ) ) a : { var Y ; if ( Y = f . input . charCodeAt ( f . position ) , 39 !== Y ) da = ! 1 ; else { f . kind = "scalar" ; f . result = "" ; f . position ++ ; for ( da = v = f . position ; 0 !== ( Y = f . input . charCodeAt ( f . position ) ) ; ) if ( 39 === Y ) { if ( q ( f , da , f . position , ! 0 ) , Y =
f . input . charCodeAt ( ++ f . position ) , 39 !== Y ) { da = ! 0 ; break a } da = v = f . position ; f . position ++ } else c ( Y ) ? ( q ( f , da , v , ! 0 ) , p ( f , B ( f , ! 1 , h ) ) , da = v = f . position ) : f . position === f . lineStart && F ( f ) ? t ( f , "unexpected end of the document within a single quoted scalar" ) : ( f . position ++ , v = f . position ) ; t ( f , "unexpected end of the stream within a single quoted scalar" ) ; da = void 0 } } if ( ! ( Y = da ) ) a : { var wa ; if ( wa = f . input . charCodeAt ( f . position ) , 34 !== wa ) Y = ! 1 ; else { f . kind = "scalar" ; f . result = "" ; f . position ++ ; for ( Y = da = f . position ; 0 !== ( wa = f . input . charCodeAt ( f . position ) ) ; ) { if ( 34 ===
wa ) { Y = ( q ( f , Y , f . position , ! 0 ) , f . position ++ , ! 0 ) ; break a } if ( 92 === wa ) { if ( q ( f , Y , f . position , ! 0 ) , wa = f . input . charCodeAt ( ++ f . position ) , c ( wa ) ) B ( f , ! 1 , h ) ; else if ( 256 > wa && pa [ wa ] ) f . result += qa [ wa ] , f . position ++ ; else if ( 0 < ( v = 120 === wa ? 2 : 117 === wa ? 4 : 85 === wa ? 8 : 0 ) ) { da = v ; for ( Y = 0 ; 0 < da ; da -- ) wa = f . input . charCodeAt ( ++ f . position ) , ga = void 0 , 0 <= ( v = 48 <= wa && 57 >= wa ? wa - 48 : ( ga = 32 | wa , 97 <= ga && 102 >= ga ? ga - 97 + 10 : - 1 ) ) ? Y = ( Y << 4 ) + v : t ( f , "expected hexadecimal character" ) ; wa = f . result ; Y = 65535 >= Y ? String . fromCharCode ( Y ) : String . fromCharCode ( ( Y - 65536 >>
10 ) + 55296 , ( Y - 65536 & 1023 ) + 56320 ) ; f . result = wa + Y ; f . position ++ } else t ( f , "unknown escape sequence" ) ; Y = da = f . position } else c ( wa ) ? ( q ( f , Y , da , ! 0 ) , p ( f , B ( f , ! 1 , h ) ) , Y = da = f . position ) : f . position === f . lineStart && F ( f ) ? t ( f , "unexpected end of the document within a double quoted scalar" ) : ( f . position ++ , da = f . position ) } t ( f , "unexpected end of the stream within a double quoted scalar" ) ; Y = void 0 } } if ( Y ) W = ! 0 ; else { var na ; var Xa ; if ( na = f . input . charCodeAt ( f . position ) , 42 !== na ) na = ! 1 ; else { na = f . input . charCodeAt ( ++ f . position ) ; for ( wa = f . position ; 0 !==
na && ! e ( na ) && ! g ( na ) ; ) na = f . input . charCodeAt ( ++ f . position ) ; na = ( f . position === wa && t ( f , "name of an alias node must contain at least one character" ) , Xa = f . input . slice ( wa , f . position ) , f . anchorMap . hasOwnProperty ( Xa ) || t ( f , 'unidentified alias "' + Xa + '"' ) , f . result = f . anchorMap [ Xa ] , B ( f , ! 0 , - 1 ) , ! 0 ) } if ( na ) W = ! 0 , null === f . tag && null === f . anchor || t ( f , "alias node should not have any properties" ) ; else { k = Ga === k ; var nb , ta ; wa = f . kind ; Y = f . result ; if ( ta = f . input . charCodeAt ( f . position ) , e ( ta ) || g ( ta ) || 35 === ta || 38 === ta || 42 === ta || 33 === ta ||
124 === ta || 62 === ta || 39 === ta || 34 === ta || 37 === ta || 64 === ta || 96 === ta ) x = ! 1 ; else if ( ( 63 === ta || 45 === ta ) && ( G = f . input . charCodeAt ( f . position + 1 ) , e ( G ) || k && g ( G ) ) ) x = ! 1 ; else { f . kind = "scalar" ; f . result = "" ; Xa = na = f . position ; for ( da = ! 1 ; 0 !== ta ; ) { if ( 58 === ta ) { if ( G = f . input . charCodeAt ( f . position + 1 ) , e ( G ) || k && g ( G ) ) break } else if ( 35 === ta ) { if ( x = f . input . charCodeAt ( f . position - 1 ) , e ( x ) ) break } else { if ( f . position === f . lineStart && F ( f ) || k && g ( ta ) ) break ; if ( c ( ta ) ) { if ( nb = f . line , ta = f . lineStart , da = f . lineIndent , B ( f , ! 1 , - 1 ) , f . lineIndent >= h ) { da = ! 0 ; ta =
2017-07-25 17:51:59 +00:00
f . input . charCodeAt ( f . position ) ; continue } f . position = na ; f . line = nb ; f . lineStart = ta ; f . lineIndent = da ; break } } da && ( q ( f , Xa , na , ! 1 ) , p ( f , f . line - nb ) , Xa = na = f . position , da = ! 1 ) ; b ( ta ) || ( na = f . position + 1 ) ; ta = f . input . charCodeAt ( ++ f . position ) } x = ( q ( f , Xa , na , ! 1 ) , ! ! f . result || ( f . kind = wa , f . result = Y , ! 1 ) ) } x && ( W = ! 0 , null === f . tag && ( f . tag = "?" ) ) } } null !== f . anchor && ( f . anchorMap [ f . anchor ] = f . result ) } } else 0 === S && ( W = w && u ( f , m ) ) ; if ( null !== f . tag && "!" !== f . tag ) if ( "?" === f . tag ) for ( x = 0 , G = f . implicitTypes . length ; x < G ; x += 1 ) { if ( K = f . implicitTypes [ x ] ,
2017-07-20 23:09:21 +00:00
K . resolve ( f . result ) ) { f . result = K . construct ( f . result ) ; f . tag = K . tag ; null !== f . anchor && ( f . anchorMap [ f . anchor ] = f . result ) ; break } } else ya . call ( f . typeMap , f . tag ) ? ( K = f . typeMap [ f . tag ] , null !== f . result && K . kind !== f . kind && t ( f , "unacceptable node kind for !<" + f . tag + '> tag; it should be "' + K . kind + '", not "' + f . kind + '"' ) , K . resolve ( f . result ) ? ( f . result = K . construct ( f . result ) , null !== f . anchor && ( f . anchorMap [ f . anchor ] = f . result ) ) : t ( f , "cannot resolve a node with !<" + f . tag + "> explicit tag" ) ) : t ( f , "unknown tag !<" + f . tag + ">" ) ; return null !==
f . listener && f . listener ( "close" , f ) , null !== f . tag || null !== f . anchor || W } function G ( f , g ) { f = String ( f ) ; g = g || { } ; 0 !== f . length && ( 10 !== f . charCodeAt ( f . length - 1 ) && 13 !== f . charCodeAt ( f . length - 1 ) && ( f += "\n" ) , 65279 === f . charCodeAt ( 0 ) && ( f = f . slice ( 1 ) ) ) ; var h = new m ( f , g ) ; for ( h . input += "\x00" ; 32 === h . input . charCodeAt ( h . position ) ; ) h . lineIndent += 1 , h . position += 1 ; for ( ; h . position < h . length - 1 ; ) { var k = void 0 , n , r , q , p = h , u = p . position , v = ! 1 ; p . version = null ; p . checkLineBreaks = p . legacy ; p . tagMap = { } ; for ( p . anchorMap = { } ; 0 !== p . input . charCodeAt ( p . position ) &&
( B ( p , ! 0 , - 1 ) , k = p . input . charCodeAt ( p . position ) , ! ( 0 < p . lineIndent || 37 !== k ) ) ; ) { v = ! 0 ; k = p . input . charCodeAt ( ++ p . position ) ; for ( q = p . position ; 0 !== k && ! e ( k ) ; ) k = p . input . charCodeAt ( ++ p . position ) ; r = p . input . slice ( q , p . position ) ; n = [ ] ; for ( 1 > r . length && t ( p , "directive name must not be less than one character in length" ) ; 0 !== k ; ) { for ( ; b ( k ) ; ) k = p . input . charCodeAt ( ++ p . position ) ; if ( 35 === k ) { do k = p . input . charCodeAt ( ++ p . position ) ; while ( 0 !== k && ! c ( k ) ) ; break } if ( c ( k ) ) break ; for ( q = p . position ; 0 !== k && ! e ( k ) ; ) k = p . input . charCodeAt ( ++ p . position ) ;
n . push ( p . input . slice ( q , p . position ) ) } 0 !== k && A ( p ) ; ya . call ( ga , r ) ? ga [ r ] ( p , r , n ) : x ( p , 'unknown document directive "' + r + '"' ) } B ( p , ! 0 , - 1 ) ; 0 === p . lineIndent && 45 === p . input . charCodeAt ( p . position ) && 45 === p . input . charCodeAt ( p . position + 1 ) && 45 === p . input . charCodeAt ( p . position + 2 ) ? ( p . position += 3 , B ( p , ! 0 , - 1 ) ) : v && t ( p , "directives end mark is expected" ) ; E ( p , p . lineIndent - 1 , O , ! 1 , ! 0 ) ; B ( p , ! 0 , - 1 ) ; p . checkLineBreaks && R . test ( p . input . slice ( u , p . position ) ) && x ( p , "non-ASCII line breaks are interpreted as content" ) ; p . documents . push ( p . result ) ;
2017-07-25 17:51:59 +00:00
p . position === p . lineStart && F ( p ) ? 46 === p . input . charCodeAt ( p . position ) && ( p . position += 3 , B ( p , ! 0 , - 1 ) ) : p . position < p . length - 1 && t ( p , "end of the stream or a document separator is expected" ) } return h . documents } function N ( b , c , e ) { var f = G ( b , e ) ; b = 0 ; for ( e = f . length ; b < e ; b += 1 ) c ( f [ b ] ) } function K ( b , c ) { var e = G ( b , c ) ; if ( 0 !== e . length ) { if ( 1 === e . length ) return e [ 0 ] ; throw new V ( "expected a single document in the stream, but found more" ) ; } } var P = f ( "./common" ) , V = f ( "./exception" ) , S = f ( "./mark" ) , W = f ( "./schema/default_safe" ) , ja = f ( "./schema/default_full" ) ,
2017-07-20 23:09:21 +00:00
ya = Object . prototype . hasOwnProperty , Ga = 1 , za = 2 , X = 3 , O = 4 , T = 1 , M = 2 , ka = 3 , ca = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/ , R = /[\x85\u2028\u2029]/ , ea = /[,\[\]\{\}]/ , Y = /^(?:!|!!|![a-z\-]+!)$/i , ha = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i , pa = Array ( 256 ) , qa = Array ( 256 ) ; for ( f = 0 ; 256 > f ; f ++ ) pa [ f ] = r ( f ) ? 1 : 0 , qa [ f ] = r ( f ) ; var ga = { YAML : function ( b , c , e ) { var f ; null !== b . version && t ( b , "duplication of %YAML directive" ) ;
1 !== e . length && t ( b , "YAML directive accepts exactly one argument" ) ; f = /^([0-9]+)\.([0-9]+)$/ . exec ( e [ 0 ] ) ; null === f && t ( b , "ill-formed argument of the YAML directive" ) ; c = parseInt ( f [ 1 ] , 10 ) ; f = parseInt ( f [ 2 ] , 10 ) ; 1 !== c && t ( b , "unacceptable YAML version of the document" ) ; b . version = e [ 0 ] ; b . checkLineBreaks = 2 > f ; 1 !== f && 2 !== f && x ( b , "unsupported YAML version of the document" ) } , TAG : function ( b , c , e ) { 2 !== e . length && t ( b , "TAG directive accepts exactly two arguments" ) ; c = e [ 0 ] ; e = e [ 1 ] ; Y . test ( c ) || t ( b , "ill-formed tag handle (first argument) of the TAG directive" ) ;
ya . call ( b . tagMap , c ) && t ( b , 'there is a previously declared suffix for "' + c + '" tag handle' ) ; ha . test ( e ) || t ( b , "ill-formed tag prefix (second argument) of the TAG directive" ) ; b . tagMap [ c ] = e } } ; k . exports . loadAll = N ; k . exports . load = K ; k . exports . safeLoadAll = function ( b , c , e ) { N ( b , c , P . extend ( { schema : W } , e ) ) } ; k . exports . safeLoad = function ( b , c ) { return K ( b , P . extend ( { schema : W } , c ) ) } } , { "./common" : 2 , "./exception" : 4 , "./mark" : 6 , "./schema/default_full" : 9 , "./schema/default_safe" : 10 } ] , 6 : [ function ( f , k , h ) { function c ( b , c , f , h , k ) { this . name =
b ; this . buffer = c ; this . position = f ; this . line = h ; this . column = k } var b = f ( "./common" ) ; c . prototype . getSnippet = function ( c , f ) { var e , g , h , k , x ; if ( ! this . buffer ) return null ; c = c || 4 ; f = f || 75 ; e = "" ; for ( g = this . position ; 0 < g && - 1 === "\x00\r\n\u0085\u2028\u2029" . indexOf ( this . buffer . charAt ( g - 1 ) ) ; ) if ( -- g , this . position - g > f / 2 - 1 ) { e = " ... " ; g += 5 ; break } h = "" ; for ( k = this . position ; k < this . buffer . length && - 1 === "\x00\r\n\u0085\u2028\u2029" . indexOf ( this . buffer . charAt ( k ) ) ; ) if ( k += 1 , k - this . position > f / 2 - 1 ) { h = " ... " ; k -= 5 ; break } return x = this . buffer . slice ( g ,
k ) , b . repeat ( " " , c ) + e + x + h + "\n" + b . repeat ( " " , c + this . position - g + e . length ) + "^" } ; c . prototype . toString = function ( b ) { var c , e = "" ; return this . name && ( e += 'in "' + this . name + '" ' ) , e += "at line " + ( this . line + 1 ) + ", column " + ( this . column + 1 ) , b || ( c = this . getSnippet ( ) , c && ( e += ":\n" + c ) ) , e } ; k . exports = c } , { "./common" : 2 } ] , 7 : [ function ( f , k , h ) { function c ( b , e , f ) { var g = [ ] ; return b . include . forEach ( function ( b ) { f = c ( b , e , f ) } ) , b [ e ] . forEach ( function ( b ) { f . forEach ( function ( c , e ) { c . tag === b . tag && g . push ( e ) } ) ; f . push ( b ) } ) , f . filter ( function ( b , c ) { return - 1 ===
2017-07-25 17:51:59 +00:00
g . indexOf ( c ) } ) } function b ( ) { function b ( b ) { f [ b . tag ] = b } var c , e , f = { } ; c = 0 ; for ( e = arguments . length ; c < e ; c += 1 ) arguments [ c ] . forEach ( b ) ; return f } function e ( e ) { this . include = e . include || [ ] ; this . implicit = e . implicit || [ ] ; this . explicit = e . explicit || [ ] ; this . implicit . forEach ( function ( b ) { if ( b . loadKind && "scalar" !== b . loadKind ) throw new r ( "There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported." ) ; } ) ; this . compiledImplicit = c ( this , "implicit" , [ ] ) ; this . compiledExplicit =
2017-07-20 23:09:21 +00:00
c ( this , "explicit" , [ ] ) ; this . compiledTypeMap = b ( this . compiledImplicit , this . compiledExplicit ) } var g = f ( "./common" ) , r = f ( "./exception" ) , m = f ( "./type" ) ; e . DEFAULT = null ; e . create = function ( ) { var b , c ; switch ( arguments . length ) { case 1 : b = e . DEFAULT ; c = arguments [ 0 ] ; break ; case 2 : b = arguments [ 0 ] ; c = arguments [ 1 ] ; break ; default : throw new r ( "Wrong number of arguments for Schema.create function" ) ; } if ( b = g . toArray ( b ) , c = g . toArray ( c ) , ! b . every ( function ( b ) { return b instanceof e } ) ) throw new r ( "Specified list of super schemas (or a single Schema object) contains a non-Schema object." ) ;
if ( ! c . every ( function ( b ) { return b instanceof m } ) ) throw new r ( "Specified list of YAML types (or a single Type object) contains a non-Type object." ) ; return new e ( { include : b , explicit : c } ) } ; k . exports = e } , { "./common" : 2 , "./exception" : 4 , "./type" : 13 } ] , 8 : [ function ( f , k , h ) { h = f ( "../schema" ) ; k . exports = new h ( { include : [ f ( "./json" ) ] } ) } , { "../schema" : 7 , "./json" : 12 } ] , 9 : [ function ( f , k , h ) { h = f ( "../schema" ) ; k . exports = h . DEFAULT = new h ( { include : [ f ( "./default_safe" ) ] , explicit : [ f ( "../type/js/undefined" ) , f ( "../type/js/regexp" ) , f ( "../type/js/function" ) ] } ) } ,
{ "../schema" : 7 , "../type/js/function" : 18 , "../type/js/regexp" : 19 , "../type/js/undefined" : 20 , "./default_safe" : 10 } ] , 10 : [ function ( f , k , h ) { h = f ( "../schema" ) ; k . exports = new h ( { include : [ f ( "./core" ) ] , implicit : [ f ( "../type/timestamp" ) , f ( "../type/merge" ) ] , explicit : [ f ( "../type/binary" ) , f ( "../type/omap" ) , f ( "../type/pairs" ) , f ( "../type/set" ) ] } ) } , { "../schema" : 7 , "../type/binary" : 14 , "../type/merge" : 22 , "../type/omap" : 24 , "../type/pairs" : 25 , "../type/set" : 27 , "../type/timestamp" : 29 , "./core" : 8 } ] , 11 : [ function ( f , k , h ) { h = f ( "../schema" ) ;
k . exports = new h ( { explicit : [ f ( "../type/str" ) , f ( "../type/seq" ) , f ( "../type/map" ) ] } ) } , { "../schema" : 7 , "../type/map" : 21 , "../type/seq" : 26 , "../type/str" : 28 } ] , 12 : [ function ( f , k , h ) { h = f ( "../schema" ) ; k . exports = new h ( { include : [ f ( "./failsafe" ) ] , implicit : [ f ( "../type/null" ) , f ( "../type/bool" ) , f ( "../type/int" ) , f ( "../type/float" ) ] } ) } , { "../schema" : 7 , "../type/bool" : 15 , "../type/float" : 16 , "../type/int" : 17 , "../type/null" : 23 , "./failsafe" : 11 } ] , 13 : [ function ( f , k , h ) { function c ( b ) { var c = { } ; return null !== b && Object . keys ( b ) . forEach ( function ( e ) { b [ e ] . forEach ( function ( b ) { c [ String ( b ) ] =
e } ) } ) , c } var b = f ( "./exception" ) , e = "kind resolve construct instanceOf predicate represent defaultStyle styleAliases" . split ( " " ) , g = [ "scalar" , "sequence" , "mapping" ] ; k . exports = function ( f , h ) { if ( h = h || { } , Object . keys ( h ) . forEach ( function ( c ) { if ( - 1 === e . indexOf ( c ) ) throw new b ( 'Unknown option "' + c + '" is met in definition of "' + f + '" YAML type.' ) ; } ) , this . tag = f , this . kind = h . kind || null , this . resolve = h . resolve || function ( ) { return ! 0 } , this . construct = h . construct || function ( b ) { return b } , this . instanceOf = h . instanceOf || null , this . predicate =
2017-07-25 17:51:59 +00:00
h . predicate || null , this . represent = h . represent || null , this . defaultStyle = h . defaultStyle || null , this . styleAliases = c ( h . styleAliases || null ) , - 1 === g . indexOf ( this . kind ) ) throw new b ( 'Unknown kind "' + this . kind + '" is specified for "' + f + '" YAML type.' ) ; } } , { "./exception" : 4 } ] , 14 : [ function ( f , k , h ) { var c ; try { c = f ( "buffer" ) . Buffer } catch ( b ) { } f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:binary" , { kind : "scalar" , resolve : function ( b ) { if ( null === b ) return ! 1 ; var c , f , h = 0 , k = b . length ; for ( f = 0 ; f < k ; f ++ ) if ( c = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" . indexOf ( b . charAt ( f ) ) ,
! ( 64 < c ) ) { if ( 0 > c ) return ! 1 ; h += 6 } return 0 === h % 8 } , construct : function ( b ) { var e , f = b . replace ( /[\r\n=]/g , "" ) , h = f . length , k = 0 , n = [ ] ; for ( b = 0 ; b < h ; b ++ ) 0 === b % 4 && b && ( n . push ( k >> 16 & 255 ) , n . push ( k >> 8 & 255 ) , n . push ( 255 & k ) ) , k = k << 6 | "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" . indexOf ( f . charAt ( b ) ) ; return e = h % 4 * 6 , 0 === e ? ( n . push ( k >> 16 & 255 ) , n . push ( k >> 8 & 255 ) , n . push ( 255 & k ) ) : 18 === e ? ( n . push ( k >> 10 & 255 ) , n . push ( k >> 2 & 255 ) ) : 12 === e && n . push ( k >> 4 & 255 ) , c ? new c ( n ) : n } , predicate : function ( b ) { return c && c . isBuffer ( b ) } ,
represent : function ( b ) { var c , f , h = "" , k = 0 , n = b . length ; for ( c = 0 ; c < n ; c ++ ) 0 === c % 3 && c && ( h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 18 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 12 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 6 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ 63 & k ] ) , k = ( k << 8 ) + b [ c ] ; return f = n % 3 , 0 === f ? ( h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >>
2017-07-20 23:09:21 +00:00
18 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 12 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 6 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ 63 & k ] ) : 2 === f ? ( h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 10 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 4 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k <<
2 & 63 ] , h += "=" ) : 1 === f && ( h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k >> 2 & 63 ] , h += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r" [ k << 4 & 63 ] , h += "=" , h += "=" ) , h } } ) } , { "../type" : 13 } ] , 15 : [ function ( f , k , h ) { f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:bool" , { kind : "scalar" , resolve : function ( c ) { if ( null === c ) return ! 1 ; var b = c . length ; return 4 === b && ( "true" === c || "True" === c || "TRUE" === c ) || 5 === b && ( "false" === c || "False" === c || "FALSE" === c ) } , construct : function ( c ) { return "true" ===
c || "True" === c || "TRUE" === c } , predicate : function ( c ) { return "[object Boolean]" === Object . prototype . toString . call ( c ) } , represent : { lowercase : function ( c ) { return c ? "true" : "false" } , uppercase : function ( c ) { return c ? "TRUE" : "FALSE" } , camelcase : function ( c ) { return c ? "True" : "False" } } , defaultStyle : "lowercase" } ) } , { "../type" : 13 } ] , 16 : [ function ( f , k , h ) { var c = f ( "../common" ) ; f = f ( "../type" ) ; var b = /^(?:[-+]?(?:[0-9][0-9_]*)\.[0-9_]*(?:[eE][-+][0-9]+)?|\.[0-9_]+(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*|[-+]?\.(?:inf|Inf|INF)|\.(?:nan|NaN|NAN))$/ ,
2017-07-25 17:51:59 +00:00
e = /^[-+]?[0-9]+e/ ; k . exports = new f ( "tag:yaml.org,2002:float" , { kind : "scalar" , resolve : function ( c ) { return null !== c && ! ! b . test ( c ) } , construct : function ( b ) { var c , e , f , g ; return c = b . replace ( /_/g , "" ) . toLowerCase ( ) , e = "-" === c [ 0 ] ? - 1 : 1 , g = [ ] , 0 <= "+-" . indexOf ( c [ 0 ] ) && ( c = c . slice ( 1 ) ) , ".inf" === c ? 1 === e ? Number . POSITIVE _INFINITY : Number . NEGATIVE _INFINITY : ".nan" === c ? NaN : 0 <= c . indexOf ( ":" ) ? ( c . split ( ":" ) . forEach ( function ( b ) { g . unshift ( parseFloat ( b , 10 ) ) } ) , c = 0 , f = 1 , g . forEach ( function ( b ) { c += b * f ; f *= 60 } ) , e * c ) : e * parseFloat ( c , 10 ) } , predicate : function ( b ) { return "[object Number]" ===
2017-07-20 23:09:21 +00:00
Object . prototype . toString . call ( b ) && ( 0 !== b % 1 || c . isNegativeZero ( b ) ) } , represent : function ( b , f ) { var g ; if ( isNaN ( b ) ) switch ( f ) { case "lowercase" : return ".nan" ; case "uppercase" : return ".NAN" ; case "camelcase" : return ".NaN" } else if ( Number . POSITIVE _INFINITY === b ) switch ( f ) { case "lowercase" : return ".inf" ; case "uppercase" : return ".INF" ; case "camelcase" : return ".Inf" } else if ( Number . NEGATIVE _INFINITY === b ) switch ( f ) { case "lowercase" : return "-.inf" ; case "uppercase" : return "-.INF" ; case "camelcase" : return "-.Inf" } else if ( c . isNegativeZero ( b ) ) return "-0.0" ;
2017-07-25 17:51:59 +00:00
return g = b . toString ( 10 ) , e . test ( g ) ? g . replace ( "e" , ".e" ) : g } , defaultStyle : "lowercase" } ) } , { "../common" : 2 , "../type" : 13 } ] , 17 : [ function ( f , k , h ) { var c = f ( "../common" ) ; f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:int" , { kind : "scalar" , resolve : function ( b ) { if ( null === b ) return ! 1 ; var c , f = b . length , h = 0 , k = ! 1 ; if ( ! f ) return ! 1 ; if ( c = b [ h ] , "-" !== c && "+" !== c || ( c = b [ ++ h ] ) , "0" === c ) { if ( h + 1 === f ) return ! 0 ; if ( c = b [ ++ h ] , "b" === c ) { for ( h ++ ; h < f ; h ++ ) if ( c = b [ h ] , "_" !== c ) { if ( "0" !== c && "1" !== c ) return ! 1 ; k = ! 0 } return k } if ( "x" === c ) { for ( h ++ ; h < f ; h ++ ) if ( c =
b [ h ] , "_" !== c ) { k = b . charCodeAt ( h ) ; if ( ! ( 48 <= k && 57 >= k || 65 <= k && 70 >= k || 97 <= k && 102 >= k ) ) return ! 1 ; k = ! 0 } return k } for ( ; h < f ; h ++ ) if ( c = b [ h ] , "_" !== c ) { k = b . charCodeAt ( h ) ; if ( ! ( 48 <= k && 55 >= k ) ) return ! 1 ; k = ! 0 } return k } for ( ; h < f ; h ++ ) if ( c = b [ h ] , "_" !== c ) { if ( ":" === c ) break ; k = b . charCodeAt ( h ) ; if ( ! ( 48 <= k && 57 >= k ) ) return ! 1 ; k = ! 0 } return ! ! k && ( ":" !== c || /^(:[0-5]?[0-9])+$/ . test ( b . slice ( h ) ) ) } , construct : function ( b ) { var c , f , h = b ; b = 1 ; var k = [ ] ; return - 1 !== h . indexOf ( "_" ) && ( h = h . replace ( /_/g , "" ) ) , c = h [ 0 ] , "-" !== c && "+" !== c || ( "-" === c && ( b = - 1 ) , h = h . slice ( 1 ) ,
2017-07-20 23:09:21 +00:00
c = h [ 0 ] ) , "0" === h ? 0 : "0" === c ? "b" === h [ 1 ] ? b * parseInt ( h . slice ( 2 ) , 2 ) : "x" === h [ 1 ] ? b * parseInt ( h , 16 ) : b * parseInt ( h , 8 ) : - 1 !== h . indexOf ( ":" ) ? ( h . split ( ":" ) . forEach ( function ( b ) { k . unshift ( parseInt ( b , 10 ) ) } ) , h = 0 , f = 1 , k . forEach ( function ( b ) { h += b * f ; f *= 60 } ) , b * h ) : b * parseInt ( h , 10 ) } , predicate : function ( b ) { return "[object Number]" === Object . prototype . toString . call ( b ) && 0 === b % 1 && ! c . isNegativeZero ( b ) } , represent : { binary : function ( b ) { return "0b" + b . toString ( 2 ) } , octal : function ( b ) { return "0" + b . toString ( 8 ) } , decimal : function ( b ) { return b . toString ( 10 ) } ,
hexadecimal : function ( b ) { return "0x" + b . toString ( 16 ) . toUpperCase ( ) } } , defaultStyle : "decimal" , styleAliases : { binary : [ 2 , "bin" ] , octal : [ 8 , "oct" ] , decimal : [ 10 , "dec" ] , hexadecimal : [ 16 , "hex" ] } } ) } , { "../common" : 2 , "../type" : 13 } ] , 18 : [ function ( f , k , h ) { var c ; try { c = f ( "esprima" ) } catch ( b ) { "undefined" != typeof window && ( c = window . esprima ) } f = f ( "../../type" ) ; k . exports = new f ( "tag:yaml.org,2002:js/function" , { kind : "scalar" , resolve : function ( b ) { if ( null === b ) return ! 1 ; try { var e = c . parse ( "(" + b + ")" , { range : ! 0 } ) ; return "Program" === e . type &&
1 === e . body . length && "ExpressionStatement" === e . body [ 0 ] . type && "FunctionExpression" === e . body [ 0 ] . expression . type } catch ( g ) { return ! 1 } } , construct : function ( b ) { var e ; b = "(" + b + ")" ; var f = c . parse ( b , { range : ! 0 } ) , h = [ ] ; if ( "Program" !== f . type || 1 !== f . body . length || "ExpressionStatement" !== f . body [ 0 ] . type || "FunctionExpression" !== f . body [ 0 ] . expression . type ) throw Error ( "Failed to resolve function" ) ; return f . body [ 0 ] . expression . params . forEach ( function ( b ) { h . push ( b . name ) } ) , e = f . body [ 0 ] . expression . body . range , new Function ( h , b . slice ( e [ 0 ] +
1 , e [ 1 ] - 1 ) ) } , predicate : function ( b ) { return "[object Function]" === Object . prototype . toString . call ( b ) } , represent : function ( b ) { return b . toString ( ) } } ) } , { "../../type" : 13 } ] , 19 : [ function ( f , k , h ) { f = f ( "../../type" ) ; k . exports = new f ( "tag:yaml.org,2002:js/regexp" , { kind : "scalar" , resolve : function ( c ) { if ( null === c || 0 === c . length ) return ! 1 ; var b = /\/([gim]*)$/ . exec ( c ) , e = "" ; return "/" === c [ 0 ] && ( ( b && ( e = b [ 1 ] ) , 3 < e . length ) || "/" !== c [ c . length - e . length - 1 ] ) ? ! 1 : ! 0 } , construct : function ( c ) { var b = c ; c = /\/([gim]*)$/ . exec ( c ) ; var e = "" ; return "/" ===
b [ 0 ] && ( c && ( e = c [ 1 ] ) , b = b . slice ( 1 , b . length - e . length - 1 ) ) , new RegExp ( b , e ) } , predicate : function ( c ) { return "[object RegExp]" === Object . prototype . toString . call ( c ) } , represent : function ( c ) { var b = "/" + c . source + "/" ; return c . global && ( b += "g" ) , c . multiline && ( b += "m" ) , c . ignoreCase && ( b += "i" ) , b } } ) } , { "../../type" : 13 } ] , 20 : [ function ( f , k , h ) { f = f ( "../../type" ) ; k . exports = new f ( "tag:yaml.org,2002:js/undefined" , { kind : "scalar" , resolve : function ( ) { return ! 0 } , construct : function ( ) { } , predicate : function ( c ) { return "undefined" == typeof c } , represent : function ( ) { return "" } } ) } ,
{ "../../type" : 13 } ] , 21 : [ function ( f , k , h ) { f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:map" , { kind : "mapping" , construct : function ( c ) { return null !== c ? c : { } } } ) } , { "../type" : 13 } ] , 22 : [ function ( f , k , h ) { f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:merge" , { kind : "scalar" , resolve : function ( c ) { return "<<" === c || null === c } } ) } , { "../type" : 13 } ] , 23 : [ function ( f , k , h ) { f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:null" , { kind : "scalar" , resolve : function ( c ) { if ( null === c ) return ! 0 ; var b = c . length ; return 1 === b && "~" === c || 4 ===
b && ( "null" === c || "Null" === c || "NULL" === c ) } , construct : function ( ) { return null } , predicate : function ( c ) { return null === c } , represent : { canonical : function ( ) { return "~" } , lowercase : function ( ) { return "null" } , uppercase : function ( ) { return "NULL" } , camelcase : function ( ) { return "Null" } } , defaultStyle : "lowercase" } ) } , { "../type" : 13 } ] , 24 : [ function ( f , k , h ) { f = f ( "../type" ) ; var c = Object . prototype . hasOwnProperty , b = Object . prototype . toString ; k . exports = new f ( "tag:yaml.org,2002:omap" , { kind : "sequence" , resolve : function ( e ) { if ( null === e ) return ! 0 ;
2017-07-25 17:51:59 +00:00
var f , h , k , n , t , x = [ ] ; f = 0 ; for ( h = e . length ; f < h ; f += 1 ) { if ( k = e [ f ] , t = ! 1 , "[object Object]" !== b . call ( k ) ) return ! 1 ; for ( n in k ) if ( c . call ( k , n ) ) { if ( t ) return ! 1 ; t = ! 0 } if ( ! t || - 1 !== x . indexOf ( n ) ) return ! 1 ; x . push ( n ) } return ! 0 } , construct : function ( b ) { return null !== b ? b : [ ] } } ) } , { "../type" : 13 } ] , 25 : [ function ( f , k , h ) { f = f ( "../type" ) ; var c = Object . prototype . toString ; k . exports = new f ( "tag:yaml.org,2002:pairs" , { kind : "sequence" , resolve : function ( b ) { if ( null === b ) return ! 0 ; var e , f , h , k , n ; n = Array ( b . length ) ; e = 0 ; for ( f = b . length ; e < f ; e += 1 ) { if ( ( h = b [ e ] ,
"[object Object]" !== c . call ( h ) ) || ( k = Object . keys ( h ) , 1 !== k . length ) ) return ! 1 ; n [ e ] = [ k [ 0 ] , h [ k [ 0 ] ] ] } return ! 0 } , construct : function ( b ) { if ( null === b ) return [ ] ; var c , f , h , k , n ; n = Array ( b . length ) ; c = 0 ; for ( f = b . length ; c < f ; c += 1 ) h = b [ c ] , k = Object . keys ( h ) , n [ c ] = [ k [ 0 ] , h [ k [ 0 ] ] ] ; return n } } ) } , { "../type" : 13 } ] , 26 : [ function ( f , k , h ) { f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:seq" , { kind : "sequence" , construct : function ( c ) { return null !== c ? c : [ ] } } ) } , { "../type" : 13 } ] , 27 : [ function ( f , k , h ) { f = f ( "../type" ) ; var c = Object . prototype . hasOwnProperty ;
2017-07-20 23:09:21 +00:00
k . exports = new f ( "tag:yaml.org,2002:set" , { kind : "mapping" , resolve : function ( b ) { if ( null === b ) return ! 0 ; for ( var e in b ) if ( c . call ( b , e ) && null !== b [ e ] ) return ! 1 ; return ! 0 } , construct : function ( b ) { return null !== b ? b : { } } } ) } , { "../type" : 13 } ] , 28 : [ function ( f , k , h ) { f = f ( "../type" ) ; k . exports = new f ( "tag:yaml.org,2002:str" , { kind : "scalar" , construct : function ( c ) { return null !== c ? c : "" } } ) } , { "../type" : 13 } ] , 29 : [ function ( f , k , h ) { f = f ( "../type" ) ; var c = /^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$/ , b = /^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\.([0-9]*))?(?:[ \t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$/ ;
2017-07-25 17:51:59 +00:00
k . exports = new f ( "tag:yaml.org,2002:timestamp" , { kind : "scalar" , resolve : function ( e ) { return null !== e && ( null !== c . exec ( e ) || null !== b . exec ( e ) ) } , construct : function ( e ) { var f , h , k , n , t , x , q , v , z , A = 0 , B = null ; if ( f = c . exec ( e ) , null === f && ( f = b . exec ( e ) ) , null === f ) throw Error ( "Date resolve error" ) ; if ( e = + f [ 1 ] , h = + f [ 2 ] - 1 , k = + f [ 3 ] , ! f [ 4 ] ) return new Date ( Date . UTC ( e , h , k ) ) ; if ( n = + f [ 4 ] , t = + f [ 5 ] , x = + f [ 6 ] , f [ 7 ] ) { for ( A = f [ 7 ] . slice ( 0 , 3 ) ; 3 > A . length ; ) A += "0" ; A = + A } return f [ 9 ] && ( q = + f [ 10 ] , v = + ( f [ 11 ] || 0 ) , B = 6E4 * ( 60 * q + v ) , "-" === f [ 9 ] && ( B = - B ) ) , z = new Date ( Date . UTC ( e ,
2017-07-20 23:09:21 +00:00
h , k , n , t , x , A ) ) , B && z . setTime ( z . getTime ( ) - B ) , z } , instanceOf : Date , represent : function ( b ) { return b . toISOString ( ) } } ) } , { "../type" : 13 } ] , "/" : [ function ( f , k , h ) { f = f ( "./lib/js-yaml.js" ) ; k . exports = f } , { "./lib/js-yaml.js" : 1 } ] } , { } , [ ] ) ( "/" ) } ) ;
( function ( a , f , k ) { function h ( a ) { var b = [ ] ; return r ( b , f . noop ) . chars ( a ) , b . join ( "" ) } function c ( a , b ) { var c , e = { } , g = a . split ( "," ) ; for ( c = 0 ; c < g . length ; c ++ ) e [ b ? f . lowercase ( g [ c ] ) : g [ c ] ] = ! 0 ; return e } function b ( a , b ) { function c ( a , c , h , k ) { if ( c = f . lowercase ( c ) , J [ c ] ) for ( ; r . last ( ) && E [ r . last ( ) ] ; ) g ( "" , r . last ( ) ) ; I [ c ] && r . last ( ) == c && g ( "" , c ) ; ( k = u [ c ] || ! ! k ) || r . push ( c ) ; var m = { } ; h . replace ( x , function ( a , b , c , f , g ) { m [ b ] = e ( c || f || g || "" ) } ) ; b . start && b . start ( c , m , k ) } function g ( a , c ) { var e , g = 0 ; if ( c = f . lowercase ( c ) ) for ( g = r . length - 1 ; 0 <= g && r [ g ] !=
c ; g -- ) ; if ( 0 <= g ) { for ( e = r . length - 1 ; e >= g ; e -- ) b . end && b . end ( r [ e ] ) ; r . length = g } } "string" != typeof a && ( a = null === a || "undefined" == typeof a ? "" : "" + a ) ; var h , k , p , r = [ ] , F = a ; for ( r . last = function ( ) { return r [ r . length - 1 ] } ; a ; ) { if ( p = "" , k = ! 0 , r . last ( ) && G [ r . last ( ) ] ? ( a = a . replace ( new RegExp ( "([\\W\\w]*)<\\s*\\/\\s*" + r . last ( ) + "[^>]*>" , "i" ) , function ( a , c ) { return c = c . replace ( z , "$1" ) . replace ( B , "$1" ) , b . chars && b . chars ( e ( c ) ) , "" } ) , g ( "" , r . last ( ) ) ) : ( 0 === a . indexOf ( "\x3c!--" ) ? ( h = a . indexOf ( "--" , 4 ) , 0 <= h && a . lastIndexOf ( "--\x3e" , h ) === h && ( b . comment &&
b . comment ( a . substring ( 4 , h ) ) , a = a . substring ( h + 3 ) , k = ! 1 ) ) : A . test ( a ) ? ( h = a . match ( A ) ) && ( a = a . replace ( h [ 0 ] , "" ) , k = ! 1 ) : v . test ( a ) ? ( h = a . match ( t ) ) && ( a = a . substring ( h [ 0 ] . length ) , h [ 0 ] . replace ( t , g ) , k = ! 1 ) : q . test ( a ) && ( ( h = a . match ( n ) ) ? ( h [ 4 ] && ( a = a . substring ( h [ 0 ] . length ) , h [ 0 ] . replace ( n , c ) ) , k = ! 1 ) : ( p += "<" , a = a . substring ( 1 ) ) ) , k && ( h = a . indexOf ( "<" ) , p += 0 > h ? a : a . substring ( 0 , h ) , a = 0 > h ? "" : a . substring ( h ) , b . chars && b . chars ( e ( p ) ) ) ) , a == F ) throw m ( "badparse" , a ) ; F = a } g ( ) } function e ( a ) { return a ? ( V . innerHTML = a . replace ( /</g , "<" ) , V . textContent ) :
"" } function g ( a ) { return a . replace ( /&/g , "&" ) . replace ( F , function ( a ) { var b = a . charCodeAt ( 0 ) ; return a = a . charCodeAt ( 1 ) , "&#" + ( 1024 * ( b - 55296 ) + ( a - 56320 ) + 65536 ) + ";" } ) . replace ( p , function ( a ) { return "&#" + a . charCodeAt ( 0 ) + ";" } ) . replace ( /</g , "<" ) . replace ( />/g , ">" ) } function r ( a , b ) { var c = ! 1 , e = f . bind ( a , a . push ) ; return { start : function ( a , h , k ) { a = f . lowercase ( a ) ; ! c && G [ a ] && ( c = a ) ; c || ! 0 !== N [ a ] || ( e ( "<" ) , e ( a ) , f . forEach ( h , function ( c , h ) { var k = f . lowercase ( h ) , m = "img" === a && "src" === k || "background" === k ; ! 0 !== P [ k ] || ! 0 === K [ k ] &&
! b ( c , m ) || ( e ( " " ) , e ( h ) , e ( '="' ) , e ( g ( c ) ) , e ( '"' ) ) } ) , e ( k ? "/>" : ">" ) ) } , end : function ( a ) { a = f . lowercase ( a ) ; c || ! 0 !== N [ a ] || ( e ( "</" ) , e ( a ) , e ( ">" ) ) ; a == c && ( c = ! 1 ) } , chars : function ( a ) { c || e ( g ( a ) ) } } } var m = f . $$minErr ( "$sanitize" ) , n = /^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/ , t = /^<\/\s*([\w:-]+)[^>]*>/ , x = /([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g , q = /^</ , v = /^<\// , z = /\x3c!--(.*?)--\x3e/g , A = /<!DOCTYPE([^>]*?)>/i , B = /<!\[CDATA\[(.*?)]]\x3e/g ,
F = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g , p = /([^\#-~| |!])/g , u = c ( "area,br,col,hr,img,wbr" ) ; a = c ( "colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr" ) ; k = c ( "rp,rt" ) ; var I = f . extend ( { } , k , a ) , J = f . extend ( { } , a , c ( "address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul" ) ) , E = f . extend ( { } , k , c ( "a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var" ) ) ;
a = c ( "circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,stop,svg,switch,text,title,tspan,use" ) ; var G = c ( "script,style" ) , N = f . extend ( { } , u , J , E , I , a ) , K = c ( "background,cite,href,longdesc,src,usemap,xlink:href" ) ; a = c ( "abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,valign,value,vspace,width" ) ;
k = c ( "accent-height,accumulate,additive,alphabetic,arabic-form,ascent,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan" ,
! 0 ) ; var P = f . extend ( { } , K , k , a ) , V = document . createElement ( "pre" ) ; f . module ( "ngSanitize" , [ ] ) . provider ( "$sanitize" , function ( ) { this . $get = [ "$$sanitizeUri" , function ( a ) { return function ( c ) { var e = [ ] ; return b ( c , r ( e , function ( b , c ) { return ! /^unsafe/ . test ( a ( b , c ) ) } ) ) , e . join ( "" ) } } ] } ) ; f . module ( "ngSanitize" ) . filter ( "linky" , [ "$sanitize" , function ( a ) { var b = /((ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"\u201d\u2019]/i , c = /^mailto:/i ; return function ( e , g ) { function k ( a ) { a && t . push ( h ( a ) ) } function m ( a ,
b ) { t . push ( "<a " ) ; f . isDefined ( g ) && t . push ( 'target="' , g , '" ' ) ; t . push ( 'href="' , a . replace ( /"/g , """ ) , '">' ) ; k ( b ) ; t . push ( "</a>" ) } if ( ! e ) return e ; for ( var n , p , q , r = e , t = [ ] ; n = r . match ( b ) ; ) p = n [ 0 ] , n [ 2 ] || n [ 4 ] || ( p = ( n [ 3 ] ? "http://" : "mailto:" ) + p ) , q = n . index , k ( r . substr ( 0 , q ) ) , m ( p , n [ 0 ] . replace ( c , "" ) ) , r = r . substring ( q + n [ 0 ] . length ) ; return k ( r ) , a ( t . join ( "" ) ) } } ] ) } ) ( window , window . angular ) ;