upgrade to angular 1.0.0rc5 reality-distortion

master
Igor Minar 12 years ago
parent 8f64ca234d
commit 0a299592d2

@ -1,3 +1,9 @@
/**
* @license AngularJS v1.0.0rc5
* (c) 2010-2012 AngularJS http://angularjs.org
* License: MIT
*/
(function(angular) {
'use strict';
/**
@ -161,3 +167,5 @@ angular.module('ngCookies', ['ng']).
};
}]);
})(window.angular);

@ -1,2 +1,7 @@
angular.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(d,c){var b={},f={},g,h=!1,i=angular.copy,j=angular.isUndefined;c.addPollFn(function(){'use strict';var a=c.cookies();g!=a&&(g=a,i(a,f),i(a,b),h&&d.$apply())})();h=!0;d.$watch(function(){var a,e,d;for(a in f)j(b[a])&&c.cookies(a,void 0);for(a in b)e=b[a],angular.isString(e)?e!==f[a]&&(c.cookies(a,e),d=!0):angular.isDefined(f[a])?b[a]=f[a]:delete b[a];if(d)for(a in e=c.cookies(),b)b[a]!==e[a]&&(j(e[a])?delete b[a]:
b[a]=e[a])});return b}]).factory("$cookieStore",["$cookies",function(d){return{get:function(c){return angular.fromJson(d[c])},put:function(c,b){d[c]=angular.toJson(b)},remove:function(c){delete d[c]}}}]);
/*
AngularJS v1.0.0rc5
(c) 2010-2012 AngularJS http://angularjs.org
License: MIT
*/
(function(f){'use strict';f.module("ngCookies",["ng"]).factory("$cookies",["$rootScope","$browser",function(d,c){var b={},g={},h,i=!1,j=f.copy,k=f.isUndefined;c.addPollFn(function(){var a=c.cookies();h!=a&&(h=a,j(a,g),j(a,b),i&&d.$apply())})();i=!0;d.$watch(function(){var a,e,d;for(a in g)k(b[a])&&c.cookies(a,void 0);for(a in b)e=b[a],f.isString(e)?e!==g[a]&&(c.cookies(a,e),d=!0):f.isDefined(g[a])?b[a]=g[a]:delete b[a];if(d)for(a in e=c.cookies(),b)b[a]!==e[a]&&(k(e[a])?delete b[a]:b[a]=e[a])});return b}]).factory("$cookieStore",
["$cookies",function(d){return{get:function(c){return f.fromJson(d[c])},put:function(c,b){d[c]=f.toJson(b)},remove:function(c){delete d[c]}}}])})(window.angular);

@ -1,5 +1,5 @@
/**
* @license AngularJS v1.0.0rc4
* @license AngularJS v1.0.0rc5
* (c) 2010-2012 AngularJS http://angularjs.org
* License: MIT
*/
@ -61,7 +61,7 @@ function setupModuleLoader(window) {
* </pre>
*
* However it's more likely that you'll just use
* {@link angular.module.ng.$compileProvider.directive.ng-app ng-app} or
* {@link angular.module.ng.$compileProvider.directive.ngApp ngApp} or
* {@link angular.bootstrap} to simplify this process for you.
*
* @param {!string} name The name of the module to create or retrieve.

@ -1,5 +1,5 @@
/*
AngularJS v1.0.0rc4
AngularJS v1.0.0rc5
(c) 2010-2012 AngularJS http://angularjs.org
License: MIT
*/

@ -1,3 +1,9 @@
/**
* @license AngularJS v1.0.0rc5
* (c) 2010-2012 AngularJS http://angularjs.org
* License: MIT
*/
(function(angular) {
'use strict';
/**
@ -418,3 +424,5 @@ angular.module('ngResource', ['ng']).
return ResourceFactory;
}]);
})(window.angular);

@ -1,5 +1,10 @@
angular.module("ngResource",["ng"]).factory("$resource",["$http","$parse",function(u,v){function f(b,c){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(c?null:/%20/g,"+")}function h(b,c){this.template=b+="#";this.defaults=c||{};var a=this.urlParams={};j(b.split(/\W/),function(c){c&&b.match(RegExp("[^\\\\]:"+c+"\\W"))&&(a[c]=!0)});this.template=b.replace(/\\:/g,":")}function s(b,c,a){function r(d){var b={};j(c||{},
function(a,w){var l;a.charAt&&a.charAt(0)=="@"?(l=a.substr(1),l=v(l)(d)):l=a;b[w]=l});return b}function e(a){t(a||{},this)}var x=new h(b),a=q({},y,a);j(a,function(d,f){var h=d.method=="POST"||d.method=="PUT";e[f]=function(a,b,c,f){var i={},g,k=n,o=null;switch(arguments.length){case 4:o=f,k=c;case 3:case 2:if(p(b)){if(p(a)){k=a;o=b;break}k=b;o=c}else{i=a;g=b;k=c;break}case 1:p(a)?k=a:h?g=a:i=a;break;case 0:break;default:throw"Expected between 0-4 arguments [params, data, success, error], got "+arguments.length+
" arguments.";}var m=this instanceof e?this:d.isArray?[]:new e(g);u({method:d.method,url:x.url(q({},r(g),d.params||{},i)),data:g}).then(function(a){'use strict';var b=a.data;if(b)d.isArray?(m.length=0,j(b,function(a){m.push(new e(a))})):t(b,m);(k||n)(m,a.headers)},o);return m};e.bind=function(d){return s(b,q({},c,d),a)};e.prototype["$"+f]=function(a,b,c){var d=r(this),i=n,g;switch(arguments.length){case 3:d=a;i=b;g=c;break;case 2:case 1:p(a)?(i=a,g=b):(d=a,i=b||n);case 0:break;default:throw"Expected between 1-3 arguments [params, success, error], got "+
arguments.length+" arguments.";}e[f].call(this,d,h?this:void 0,i,g)}});return e}var y={get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}},n=angular.noop,j=angular.forEach,q=angular.extend,t=angular.copy,p=angular.isFunction;h.prototype={url:function(b){var c=this,a=this.template,h,b=b||{};j(this.urlParams,function(e,d){h=f(b[d]||c.defaults[d]||"",!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+");a=a.replace(RegExp(":"+
d+"(\\W)"),h+"$1")});var a=a.replace(/\/?#$/,""),e=[];j(b,function(a,b){c.urlParams[b]||e.push(f(b)+"="+f(a))});e.sort();a=a.replace(/\/*$/,"");return a+(e.length?"?"+e.join("&"):"")}};return s}]);
/*
AngularJS v1.0.0rc5
(c) 2010-2012 AngularJS http://angularjs.org
License: MIT
*/
(function(f){'use strict';f.module("ngResource",["ng"]).factory("$resource",["$http","$parse",function(u,v){function g(b,c){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(c?null:/%20/g,"+")}function l(b,c){this.template=b+="#";this.defaults=c||{};var a=this.urlParams={};j(b.split(/\W/),function(c){c&&b.match(RegExp("[^\\\\]:"+c+"\\W"))&&(a[c]=!0)});this.template=b.replace(/\\:/g,":")}function s(b,c,a){function f(d){var b={};
j(c||{},function(a,w){var m;a.charAt&&a.charAt(0)=="@"?(m=a.substr(1),m=v(m)(d)):m=a;b[w]=m});return b}function e(a){t(a||{},this)}var x=new l(b),a=r({},y,a);j(a,function(d,g){var l=d.method=="POST"||d.method=="PUT";e[g]=function(a,b,c,g){var i={},h,k=o,p=null;switch(arguments.length){case 4:p=g,k=c;case 3:case 2:if(q(b)){if(q(a)){k=a;p=b;break}k=b;p=c}else{i=a;h=b;k=c;break}case 1:q(a)?k=a:l?h=a:i=a;break;case 0:break;default:throw"Expected between 0-4 arguments [params, data, success, error], got "+
arguments.length+" arguments.";}var n=this instanceof e?this:d.isArray?[]:new e(h);u({method:d.method,url:x.url(r({},f(h),d.params||{},i)),data:h}).then(function(a){var b=a.data;if(b)d.isArray?(n.length=0,j(b,function(a){n.push(new e(a))})):t(b,n);(k||o)(n,a.headers)},p);return n};e.bind=function(d){return s(b,r({},c,d),a)};e.prototype["$"+g]=function(a,b,c){var d=f(this),i=o,h;switch(arguments.length){case 3:d=a;i=b;h=c;break;case 2:case 1:q(a)?(i=a,h=b):(d=a,i=b||o);case 0:break;default:throw"Expected between 1-3 arguments [params, success, error], got "+
arguments.length+" arguments.";}e[g].call(this,d,l?this:void 0,i,h)}});return e}var y={get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}},o=f.noop,j=f.forEach,r=f.extend,t=f.copy,q=f.isFunction;l.prototype={url:function(b){var c=this,a=this.template,f,b=b||{};j(this.urlParams,function(e,d){f=g(b[d]||c.defaults[d]||"",!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+");a=a.replace(RegExp(":"+d+"(\\W)"),f+"$1")});
var a=a.replace(/\/?#$/,""),e=[];j(b,function(a,b){c.urlParams[b]||e.push(g(b)+"="+g(a))});e.sort();a=a.replace(/\/*$/,"");return a+(e.length?"?"+e.join("&"):"")}};return s}])})(window.angular);

@ -0,0 +1,535 @@
/**
* @license AngularJS v1.0.0rc5
* (c) 2010-2012 AngularJS http://angularjs.org
* License: MIT
*/
(function(angular) {
'use strict';
/**
* @ngdoc overview
* @name angular.module.ngSanitize
* @description
*/
/*
* HTML Parser By Misko Hevery (misko@hevery.com)
* based on: HTML Parser By John Resig (ejohn.org)
* Original code by Erik Arvidsson, Mozilla Public License
* http://erik.eae.net/simplehtmlparser/simplehtmlparser.js
*
* // Use like so:
* htmlParser(htmlString, {
* start: function(tag, attrs, unary) {},
* end: function(tag) {},
* chars: function(text) {},
* comment: function(text) {}
* });
*
*/
/**
* @ngdoc service
* @name angular.module.ngSanitize.$sanitize
* @function
*
* @description
* The input is sanitized by parsing the html into tokens. All safe tokens (from a whitelist) are
* then serialized back to properly escaped html string. This means that no unsafe input can make
* it into the returned string, however, since our parser is more strict than a typical browser
* parser, it's possible that some obscure input, which would be recognized as valid HTML by a
* browser, won't make it through the sanitizer.
*
* @param {string} html Html input.
* @returns {string} Sanitized html.
*
* @example
<doc:example module="ngSanitize">
<doc:source>
<script>
function Ctrl($scope) {
$scope.snippet =
'<p style="color:blue">an html\n' +
'<em onmouseover="this.textContent=\'PWN3D!\'">click here</em>\n' +
'snippet</p>';
}
</script>
<div ng-controller="Ctrl">
Snippet: <textarea ng-model="snippet" cols="60" rows="3"></textarea>
<table>
<tr>
<td>Filter</td>
<td>Source</td>
<td>Rendered</td>
</tr>
<tr id="html-filter">
<td>html filter</td>
<td>
<pre>&lt;div ng-bind-html="snippet"&gt;<br/>&lt;/div&gt;</pre>
</td>
<td>
<div ng-bind-html="snippet"></div>
</td>
</tr>
<tr id="escaped-html">
<td>no filter</td>
<td><pre>&lt;div ng-bind="snippet"&gt;<br/>&lt;/div&gt;</pre></td>
<td><div ng-bind="snippet"></div></td>
</tr>
<tr id="html-unsafe-filter">
<td>unsafe html filter</td>
<td><pre>&lt;div ng-bind-html-unsafe="snippet"&gt;<br/>&lt;/div&gt;</pre></td>
<td><div ng-bind-html-unsafe="snippet"></div></td>
</tr>
</table>
</div>
</doc:source>
<doc:scenario>
it('should sanitize the html snippet ', function() {
expect(using('#html-filter').element('div').html()).
toBe('<p>an html\n<em>click here</em>\nsnippet</p>');
});
it('should escape snippet without any filter', function() {
expect(using('#escaped-html').element('div').html()).
toBe("&lt;p style=\"color:blue\"&gt;an html\n" +
"&lt;em onmouseover=\"this.textContent='PWN3D!'\"&gt;click here&lt;/em&gt;\n" +
"snippet&lt;/p&gt;");
});
it('should inline raw snippet if filtered as unsafe', function() {
expect(using('#html-unsafe-filter').element("div").html()).
toBe("<p style=\"color:blue\">an html\n" +
"<em onmouseover=\"this.textContent='PWN3D!'\">click here</em>\n" +
"snippet</p>");
});
it('should update', function() {
input('snippet').enter('new <b>text</b>');
expect(using('#html-filter').binding('snippet')).toBe('new <b>text</b>');
expect(using('#escaped-html').element('div').html()).toBe("new &lt;b&gt;text&lt;/b&gt;");
expect(using('#html-unsafe-filter').binding("snippet")).toBe('new <b>text</b>');
});
</doc:scenario>
</doc:example>
*/
var $sanitize = function(html) {
var buf = [];
htmlParser(html, htmlSanitizeWriter(buf));
return buf.join('');
};
// Regular Expressions for parsing tags and attributes
var START_TAG_REGEXP = /^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,
END_TAG_REGEXP = /^<\s*\/\s*([\w:-]+)[^>]*>/,
ATTR_REGEXP = /([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,
BEGIN_TAG_REGEXP = /^</,
BEGING_END_TAGE_REGEXP = /^<\s*\//,
COMMENT_REGEXP = /<!--(.*?)-->/g,
CDATA_REGEXP = /<!\[CDATA\[(.*?)]]>/g,
URI_REGEXP = /^((ftp|https?):\/\/|mailto:|#)/,
NON_ALPHANUMERIC_REGEXP = /([^\#-~| |!])/g; // Match everything outside of normal chars and " (quote character)
// Good source of info about elements and attributes
// http://dev.w3.org/html5/spec/Overview.html#semantics
// http://simon.html5.org/html-elements
// Safe Void Elements - HTML5
// http://dev.w3.org/html5/spec/Overview.html#void-elements
var voidElements = makeMap("area,br,col,hr,img,wbr");
// Elements that you can, intentionally, leave open (and which close themselves)
// http://dev.w3.org/html5/spec/Overview.html#optional-tags
var optionalEndTagBlockElements = makeMap("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),
optionalEndTagInlineElements = makeMap("rp,rt"),
optionalEndTagElements = angular.extend({}, optionalEndTagInlineElements, optionalEndTagBlockElements);
// Safe Block Elements - HTML5
var blockElements = angular.extend({}, optionalEndTagBlockElements, makeMap("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"));
// Inline Elements - HTML5
var inlineElements = angular.extend({}, optionalEndTagInlineElements, makeMap("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"));
// Special Elements (can contain anything)
var specialElements = makeMap("script,style");
var validElements = angular.extend({}, voidElements, blockElements, inlineElements, optionalEndTagElements);
//Attributes that have href and hence need to be sanitized
var uriAttrs = makeMap("background,cite,href,longdesc,src,usemap");
var validAttrs = angular.extend({}, uriAttrs, makeMap(
'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,span,start,summary,target,title,type,'+
'valign,value,vspace,width'));
function makeMap(str) {
var obj = {}, items = str.split(','), i;
for (i = 0; i < items.length; i++) obj[items[i]] = true;
return obj;
}
/**
* @example
* htmlParser(htmlString, {
* start: function(tag, attrs, unary) {},
* end: function(tag) {},
* chars: function(text) {},
* comment: function(text) {}
* });
*
* @param {string} html string
* @param {object} handler
*/
function htmlParser( html, handler ) {
var index, chars, match, stack = [], last = html;
stack.last = function() { return stack[ stack.length - 1 ]; };
while ( html ) {
chars = true;
// Make sure we're not in a script or style element
if ( !stack.last() || !specialElements[ stack.last() ] ) {
// Comment
if ( html.indexOf("<!--") === 0 ) {
index = html.indexOf("-->");
if ( index >= 0 ) {
if (handler.comment) handler.comment( html.substring( 4, index ) );
html = html.substring( index + 3 );
chars = false;
}
// end tag
} else if ( BEGING_END_TAGE_REGEXP.test(html) ) {
match = html.match( END_TAG_REGEXP );
if ( match ) {
html = html.substring( match[0].length );
match[0].replace( END_TAG_REGEXP, parseEndTag );
chars = false;
}
// start tag
} else if ( BEGIN_TAG_REGEXP.test(html) ) {
match = html.match( START_TAG_REGEXP );
if ( match ) {
html = html.substring( match[0].length );
match[0].replace( START_TAG_REGEXP, parseStartTag );
chars = false;
}
}
if ( chars ) {
index = html.indexOf("<");
var text = index < 0 ? html : html.substring( 0, index );
html = index < 0 ? "" : html.substring( index );
if (handler.chars) handler.chars( decodeEntities(text) );
}
} else {
html = html.replace(new RegExp("(.*)<\\s*\\/\\s*" + stack.last() + "[^>]*>", 'i'), function(all, text){
text = text.
replace(COMMENT_REGEXP, "$1").
replace(CDATA_REGEXP, "$1");
if (handler.chars) handler.chars( decodeEntities(text) );
return "";
});
parseEndTag( "", stack.last() );
}
if ( html == last ) {
throw "Parse Error: " + html;
}
last = html;
}
// Clean up any remaining tags
parseEndTag();
function parseStartTag( tag, tagName, rest, unary ) {
tagName = angular.lowercase(tagName);
if ( blockElements[ tagName ] ) {
while ( stack.last() && inlineElements[ stack.last() ] ) {
parseEndTag( "", stack.last() );
}
}
if ( optionalEndTagElements[ tagName ] && stack.last() == tagName ) {
parseEndTag( "", tagName );
}
unary = voidElements[ tagName ] || !!unary;
if ( !unary )
stack.push( tagName );
var attrs = {};
rest.replace(ATTR_REGEXP, function(match, name, doubleQuotedValue, singleQoutedValue, unqoutedValue) {
var value = doubleQuotedValue
|| singleQoutedValue
|| unqoutedValue
|| '';
attrs[name] = decodeEntities(value);
});
if (handler.start) handler.start( tagName, attrs, unary );
}
function parseEndTag( tag, tagName ) {
var pos = 0, i;
tagName = angular.lowercase(tagName);
if ( tagName )
// Find the closest opened tag of the same type
for ( pos = stack.length - 1; pos >= 0; pos-- )
if ( stack[ pos ] == tagName )
break;
if ( pos >= 0 ) {
// Close all the open elements, up the stack
for ( i = stack.length - 1; i >= pos; i-- )
if (handler.end) handler.end( stack[ i ] );
// Remove the open elements from the stack
stack.length = pos;
}
}
}
/**
* decodes all entities into regular string
* @param value
* @returns {string} A string with decoded entities.
*/
var hiddenPre=document.createElement("pre");
function decodeEntities(value) {
hiddenPre.innerHTML=value.replace(/</g,"&lt;");
return hiddenPre.innerText || hiddenPre.textContent || '';
}
/**
* Escapes all potentially dangerous characters, so that the
* resulting string can be safely inserted into attribute or
* element text.
* @param value
* @returns escaped text
*/
function encodeEntities(value) {
return value.
replace(/&/g, '&amp;').
replace(NON_ALPHANUMERIC_REGEXP, function(value){
return '&#' + value.charCodeAt(0) + ';';
}).
replace(/</g, '&lt;').
replace(/>/g, '&gt;');
}
/**
* create an HTML/XML writer which writes to buffer
* @param {Array} buf use buf.jain('') to get out sanitized html string
* @returns {object} in the form of {
* start: function(tag, attrs, unary) {},
* end: function(tag) {},
* chars: function(text) {},
* comment: function(text) {}
* }
*/
function htmlSanitizeWriter(buf){
var ignore = false;
var out = angular.bind(buf, buf.push);
return {
start: function(tag, attrs, unary){
tag = angular.lowercase(tag);
if (!ignore && specialElements[tag]) {
ignore = tag;
}
if (!ignore && validElements[tag] == true) {
out('<');
out(tag);
angular.forEach(attrs, function(value, key){
var lkey=angular.lowercase(key);
if (validAttrs[lkey]==true && (uriAttrs[lkey]!==true || value.match(URI_REGEXP))) {
out(' ');
out(key);
out('="');
out(encodeEntities(value));
out('"');
}
});
out(unary ? '/>' : '>');
}
},
end: function(tag){
tag = angular.lowercase(tag);
if (!ignore && validElements[tag] == true) {
out('</');
out(tag);
out('>');
}
if (tag == ignore) {
ignore = false;
}
},
chars: function(chars){
if (!ignore) {
out(encodeEntities(chars));
}
}
};
}
// define ngSanitize module and register $sanitize service
angular.module('ngSanitize', []).value('$sanitize', $sanitize);
/**
* @ngdoc directive
* @name angular.module.ngSanitize.directive.ngBindHtml
*
* @description
* Creates a binding that will sanitize the result of evaluating the `expression` with the
* {@link angular.module.ng.$sanitize $sanitize} service and innerHTML the result into the current
* element.
*
* See {@link angular.module.ng.$sanitize $sanitize} docs for examples.
*
* @element ANY
* @param {expression} ngBindHtml {@link guide/dev_guide.expressions Expression} to evaluate.
*/
angular.module('ngSanitize').directive('ngBindHtml', ['$sanitize', function($sanitize) {
return function(scope, element, attr) {
element.addClass('ng-binding').data('$binding', attr.ngBindHtml);
scope.$watch(attr.ngBindHtml, function(value) {
value = $sanitize(value);
element.html(value || '');
});
};
}]);
/**
* @ngdoc filter
* @name angular.module.ngSanitize.filter.linky
* @function
*
* @description
* Finds links in text input and turns them into html links. Supports http/https/ftp/mailto and
* plain email address links.
*
* @param {string} text Input text.
* @returns {string} Html-linkified text.
*
* @example
<doc:example module="ngSanitize">
<doc:source>
<script>
function Ctrl($scope) {
$scope.snippet =
'Pretty text with some links:\n'+
'http://angularjs.org/,\n'+
'mailto:us@somewhere.org,\n'+
'another@somewhere.org,\n'+
'and one more: ftp://127.0.0.1/.';
}
</script>
<div ng-controller="Ctrl">
Snippet: <textarea ng-model="snippet" cols="60" rows="3"></textarea>
<table>
<tr>
<td>Filter</td>
<td>Source</td>
<td>Rendered</td>
</tr>
<tr id="linky-filter">
<td>linky filter</td>
<td>
<pre>&lt;div ng-bind-html="snippet | linky"&gt;<br>&lt;/div&gt;</pre>
</td>
<td>
<div ng-bind-html="snippet | linky"></div>
</td>
</tr>
<tr id="escaped-html">
<td>no filter</td>
<td><pre>&lt;div ng-bind="snippet"&gt;<br>&lt;/div&gt;</pre></td>
<td><div ng-bind="snippet"></div></td>
</tr>
</table>
</doc:source>
<doc:scenario>
it('should linkify the snippet with urls', function() {
expect(using('#linky-filter').binding('snippet | linky')).
toBe('Pretty text with some links:&#10;' +
'<a href="http://angularjs.org/">http://angularjs.org/</a>,&#10;' +
'<a href="mailto:us@somewhere.org">us@somewhere.org</a>,&#10;' +
'<a href="mailto:another@somewhere.org">another@somewhere.org</a>,&#10;' +
'and one more: <a href="ftp://127.0.0.1/">ftp://127.0.0.1/</a>.');
});
it ('should not linkify snippet without the linky filter', function() {
expect(using('#escaped-html').binding('snippet')).
toBe("Pretty text with some links:\n" +
"http://angularjs.org/,\n" +
"mailto:us@somewhere.org,\n" +
"another@somewhere.org,\n" +
"and one more: ftp://127.0.0.1/.");
});
it('should update', function() {
input('snippet').enter('new http://link.');
expect(using('#linky-filter').binding('snippet | linky')).
toBe('new <a href="http://link">http://link</a>.');
expect(using('#escaped-html').binding('snippet')).toBe('new http://link.');
});
</doc:scenario>
</doc:example>
*/
angular.module('ngSanitize').filter('linky', function() {
var LINKY_URL_REGEXP = /((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s\.\;\,\(\)\{\}\<\>]/,
MAILTO_REGEXP = /^mailto:/;
return function(text) {
if (!text) return text;
var match;
var raw = text;
var html = [];
// TODO(vojta): use $sanitize instead
var writer = htmlSanitizeWriter(html);
var url;
var i;
while ((match = raw.match(LINKY_URL_REGEXP))) {
// We can not end in these as they are sometimes found at the end of the sentence
url = match[0];
// if we did not match ftp/http/mailto then assume mailto
if (match[2] == match[3]) url = 'mailto:' + url;
i = match.index;
writer.chars(raw.substr(0, i));
writer.start('a', {href:url});
writer.chars(match[0].replace(MAILTO_REGEXP, ''));
writer.end('a');
raw = raw.substring(i + match[0].length);
}
writer.chars(raw);
return html.join('');
};
});
})(window.angular);

@ -0,0 +1,13 @@
/*
AngularJS v1.0.0rc5
(c) 2010-2012 AngularJS http://angularjs.org
License: MIT
*/
(function(g){'use strict';function i(a){var d={},a=a.split(","),b;for(b=0;b<a.length;b++)d[a[b]]=!0;return d}function z(a,d){function b(a,b,c,h){b=g.lowercase(b);if(m[b])for(;f.last()&&n[f.last()];)e("",f.last());o[b]&&f.last()==b&&e("",b);(h=p[b]||!!h)||f.push(b);var j={};c.replace(A,function(a,b,d,e,c){j[b]=k(d||e||c||"")});d.start&&d.start(b,j,h)}function e(a,b){var e=0,c;if(b=g.lowercase(b))for(e=f.length-1;e>=0;e--)if(f[e]==b)break;if(e>=0){for(c=f.length-1;c>=e;c--)d.end&&d.end(f[c]);f.length=
e}}var c,h,f=[],j=a;for(f.last=function(){return f[f.length-1]};a;){h=!0;if(!f.last()||!q[f.last()]){if(a.indexOf("<\!--")===0)c=a.indexOf("--\>"),c>=0&&(d.comment&&d.comment(a.substring(4,c)),a=a.substring(c+3),h=!1);else if(B.test(a)){if(c=a.match(r))a=a.substring(c[0].length),c[0].replace(r,e),h=!1}else if(C.test(a)&&(c=a.match(s)))a=a.substring(c[0].length),c[0].replace(s,b),h=!1;h&&(c=a.indexOf("<"),h=c<0?a:a.substring(0,c),a=c<0?"":a.substring(c),d.chars&&d.chars(k(h)))}else a=a.replace(RegExp("(.*)<\\s*\\/\\s*"+
f.last()+"[^>]*>","i"),function(b,a){a=a.replace(D,"$1").replace(E,"$1");d.chars&&d.chars(k(a));return""}),e("",f.last());if(a==j)throw"Parse Error: "+a;j=a}e()}function k(a){l.innerHTML=a.replace(/</g,"&lt;");return l.innerText||l.textContent||""}function t(a){return a.replace(/&/g,"&amp;").replace(F,function(a){return"&#"+a.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function u(a){var d=!1,b=g.bind(a,a.push);return{start:function(a,c,h){a=g.lowercase(a);!d&&q[a]&&(d=a);!d&&v[a]==
!0&&(b("<"),b(a),g.forEach(c,function(a,c){var e=g.lowercase(c);if(G[e]==!0&&(w[e]!==!0||a.match(H)))b(" "),b(c),b('="'),b(t(a)),b('"')}),b(h?"/>":">"))},end:function(a){a=g.lowercase(a);!d&&v[a]==!0&&(b("</"),b(a),b(">"));a==d&&(d=!1)},chars:function(a){d||b(t(a))}}}var s=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,r=/^<\s*\/\s*([\w:-]+)[^>]*>/,A=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,C=/^</,B=/^<\s*\//,D=/<\!--(.*?)--\>/g,
E=/<!\[CDATA\[(.*?)]]\>/g,H=/^((ftp|https?):\/\/|mailto:|#)/,F=/([^\#-~| |!])/g,p=i("area,br,col,hr,img,wbr"),x=i("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),y=i("rp,rt"),o=g.extend({},y,x),m=g.extend({},x,i("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")),n=g.extend({},y,i("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")),
q=i("script,style"),v=g.extend({},p,m,n,o),w=i("background,cite,href,longdesc,src,usemap"),G=g.extend({},w,i("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,span,start,summary,target,title,type,valign,value,vspace,width")),l=document.createElement("pre");g.module("ngSanitize",[]).value("$sanitize",function(a){var d=[];
z(a,u(d));return d.join("")});g.module("ngSanitize").directive("ngBindHtml",["$sanitize",function(a){return function(d,b,e){b.addClass("ng-binding").data("$binding",e.ngBindHtml);d.$watch(e.ngBindHtml,function(c){c=a(c);b.html(c||"")})}}]);g.module("ngSanitize").filter("linky",function(){var a=/((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s\.\;\,\(\)\{\}\<\>]/,d=/^mailto:/;return function(b){if(!b)return b;for(var e=b,c=[],h=u(c),f,g;b=e.match(a);)f=b[0],b[2]==b[3]&&(f="mailto:"+f),g=b.index,
h.chars(e.substr(0,g)),h.start("a",{href:f}),h.chars(b[0].replace(d,"")),h.end("a"),e=e.substring(g+b[0].length);h.chars(e);return c.join("")}})})(window.angular);

File diff suppressed because it is too large Load Diff

@ -1,156 +1,149 @@
/*
AngularJS v1.0.0rc4
AngularJS v1.0.0rc5
(c) 2010-2012 AngularJS http://angularjs.org
License: MIT
*/
(function(V,W,t){'use strict';function l(b,a,c){var d;if(b)if(L(b))for(d in b)d!="prototype"&&d!=oc&&d!=pc&&b.hasOwnProperty(d)&&a.call(c,b[d],d);else if(b.forEach&&b.forEach!==l)b.forEach(a,c);else if(M(b)&&ta(b.length))for(d=0;d<b.length;d++)a.call(c,b[d],d);else for(d in b)b.hasOwnProperty(d)&&a.call(c,b[d],d);return b}function qb(b){var a=[],c;for(c in b)b.hasOwnProperty(c)&&a.push(c);return a.sort()}function qc(b,a,c){for(var d=qb(b),e=0;e<d.length;e++)a.call(c,b[d[e]],d[e]);return d}function rb(b){return function(a,
c){b(c,a)}}function Ra(){for(var b=Y.length,a;b;){b--;a=Y[b].charCodeAt(0);if(a==57)return Y[b]="A",Y.join("");if(a==90)Y[b]="0";else return Y[b]=String.fromCharCode(a+1),Y.join("")}Y.unshift("0");return Y.join("")}function u(b){l(arguments,function(a){a!==b&&l(a,function(a,d){b[d]=a})});return b}function w(b){return parseInt(b,10)}function Sa(b,a){return u(new (u(function(){},{prototype:b})),a)}function E(){}function ua(b){return b}function y(b){return function(){return b}}function p(b){return typeof b==
Ta}function v(b){return typeof b!=Ta}function M(b){return b!=null&&typeof b==rc}function C(b){return typeof b==sc}function ta(b){return typeof b=="number"}function ja(b){return Ua.apply(b)=="[object Date]"}function J(b){return Ua.apply(b)=="[object Array]"}function L(b){return typeof b=="function"}function ka(b){return b&&b.document&&b.location&&b.alert&&b.setInterval}function R(b){return C(b)?b.replace(/^\s*/,"").replace(/\s*$/,""):b}function tc(b){return b&&(b.nodeName||b.bind&&b.find)}function Z(b){var a=
{},b=b.split(","),c;for(c=0;c<b.length;c++)a[b[c]]=!0;return a}function Va(b,a,c){var d=[];l(b,function(b,g,f){d.push(a.call(c,b,g,f))});return d}function uc(b,a){var c=0,d;if(J(b)||C(b))return b.length;else if(M(b))for(d in b)(!a||b.hasOwnProperty(d))&&c++;return c}function Wa(b,a){if(b.indexOf)return b.indexOf(a);for(var c=0;c<b.length;c++)if(a===b[c])return c;return-1}function va(b,a){var c=Wa(b,a);c>=0&&b.splice(c,1);return a}function X(b,a){if(ka(b)||b&&b.$evalAsync&&b.$watch)throw z("Can't copy Window or Scope");
if(a){if(b===a)throw z("Can't copy equivalent objects or arrays");if(J(b)){for(;a.length;)a.pop();for(var c=0;c<b.length;c++)a.push(X(b[c]))}else for(c in l(a,function(b,c){delete a[c]}),b)a[c]=X(b[c])}else(a=b)&&(J(b)?a=X(b,[]):ja(b)?a=new Date(b.getTime()):M(b)&&(a=X(b,{})));return a}function vc(b,a){var a=a||{},c;for(c in b)b.hasOwnProperty(c)&&c.substr(0,2)!=="$$"&&(a[c]=b[c]);return a}function da(b,a){if(b===a)return!0;if(b===null||a===null)return!1;if(b!==b&&a!==a)return!0;var c=typeof b,d;
if(c==typeof a&&c=="object")if(J(b)){if((c=b.length)==a.length){for(d=0;d<c;d++)if(!da(b[d],a[d]))return!1;return!0}}else if(ja(b))return ja(a)&&b.getTime()==a.getTime();else{if(b&&b.$evalAsync&&b.$watch||a&&a.$evalAsync&&a.$watch||ka(b)||ka(a))return!1;c={};for(d in b){if(d.charAt(0)!=="$"&&!L(b[d])&&!da(b[d],a[d]))return!1;c[d]=!0}for(d in a)if(!c[d]&&d.charAt(0)!=="$"&&!L(a[d]))return!1;return!0}return!1}function wa(b,a){var c=arguments.length>2?ga.call(arguments,2):[];return L(a)&&!(a instanceof
RegExp)?c.length?function(){return arguments.length?a.apply(b,c.concat(ga.call(arguments,0))):a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}:a}function wc(b,a){var c=a;/^\$+/.test(b)?c=t:ka(a)?c="$WINDOW":a&&W===a?c="$DOCUMENT":a&&a.$evalAsync&&a.$watch&&(c="$SCOPE");return c}function $(b,a){return JSON.stringify(b,wc,a?" ":null)}function sb(b){return C(b)?JSON.parse(b):b}function Xa(b){b&&b.length!==0?(b=A(""+b),b=!(b=="f"||b=="0"||b=="false"||b=="no"||b=="n"||
b=="[]")):b=!1;return b}function xa(b){b=q(b).clone();try{b.html("")}catch(a){}return q("<div>").append(b).html().match(/^(<[^>]+>)/)[1]}function Ya(b){var a={},c,d;l((b||"").split("&"),function(b){b&&(c=b.split("="),d=decodeURIComponent(c[0]),a[d]=v(c[1])?decodeURIComponent(c[1]):!0)});return a}function tb(b){var a=[];l(b,function(b,d){a.push(Za(d,!0)+(b===!0?"":"="+Za(b,!0)))});return a.length?a.join("&"):""}function $a(b){return Za(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,
"+")}function Za(b,a){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(a?null:/%20/g,"+")}function xc(b,a){function c(a){a&&d.push(a)}var d=[b],e,g,f=["ng:app","ng-app","x-ng-app","data-ng-app"],h=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/;l(f,function(a){f[a]=!0;c(W.getElementById(a));a=a.replace(":","\\:");b.querySelectorAll&&(l(b.querySelectorAll("."+a),c),l(b.querySelectorAll("."+a+"\\:"),c),l(b.querySelectorAll("["+a+"]"),c))});
l(d,function(a){if(!e){var b=h.exec(" "+a.className+" ");b?(e=a,g=(b[2]||"").replace(/\s+/g,",")):l(a.attributes,function(b){if(!e&&f[b.name])e=a,g=b.value})}});e&&a(e,g?[g]:[])}function ub(b,a){b=q(b);a=a||[];a.unshift("ng");var c=vb(a);c.invoke(["$rootScope","$compile","$injector",function(a,c,g){a.$apply(function(){b.data("$injector",g);c(b)(a)})}]);return c}function ab(b,a){a=a||"_";return b.replace(yc,function(b,d){return(d?a:"")+b.toLowerCase()})}function la(b,a,c){if(!b)throw new z("Argument '"+
(a||"?")+"' is "+(c||"required"));return b}function ma(b,a,c){c&&J(b)&&(b=b[b.length-1]);la(L(b),a,"not a function, got "+(b&&typeof b=="object"?b.constructor.name||"Object":typeof b));return b}function zc(b){function a(a,b,e){return a[b]||(a[b]=e())}return a(a(b,"angular",Object),"module",function(){var b={};return function(d,e,g){e&&b.hasOwnProperty(d)&&(b[d]=null);return a(b,d,function(){function a(c,d,e){return function(){b[e||"push"]([c,d,arguments]);return k}}if(!e)throw z("No module: "+d);
var b=[],c=[],j=a("$injector","invoke"),k={_invokeQueue:b,_runBlocks:c,requires:e,name:d,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:j,run:function(a){c.push(a);return this}};g&&j(g);return k})}})}function wb(b){return b.replace(Ac,function(a,
b,d,e){return e?d.toUpperCase():d}).replace(Bc,"Moz$1")}function bb(b,a){function c(){var e;for(var b=[this],c=a,f,h,i,j,k,n,m;b.length;){f=b.shift();h=0;for(i=f.length;h<i;h++){j=q(f[h]);c?(m=(k=j.data("events"))&&k.$destroy)&&l(m,function(a){a.handler()}):c=!c;k=0;for(e=(n=j.children()).length,j=e;k<j;k++)b.push(ha(n[k]))}}return d.apply(this,arguments)}var d=ha.fn[b],d=d.$original||d;c.$original=d;ha.fn[b]=c}function S(b){if(b instanceof S)return b;if(!(this instanceof S)){if(C(b)&&b.charAt(0)!=
"<")throw z("selectors not implemented");return new S(b)}if(C(b)){var a=W.createElement("div");a.innerHTML="<div>&nbsp;</div>"+b;a.removeChild(a.firstChild);cb(this,a.childNodes);this.remove()}else cb(this,b)}function db(b){return b.cloneNode(!0)}function na(b){xb(b);for(var a=0,b=b.childNodes||[];a<b.length;a++)na(b[a])}function xb(b){var a=b[ya],c=za[a];c&&(c.bind&&l(c.bind,function(a,c){c=="$destroy"?a({}):eb(b,c,a)}),delete za[a],b[ya]=t)}function Aa(b,a,c){var d=b[ya],d=za[d||-1];if(v(c))d||
(b[ya]=d=Cc++,d=za[d]={}),d[a]=c;else return d?d[a]:null}function Ba(b,a){return(" "+b.className+" ").replace(/[\n\t]/g," ").indexOf(" "+a+" ")>-1}function yb(b,a){a&&l(a.split(" "),function(a){b.className=R((" "+b.className+" ").replace(/[\n\t]/g," ").replace(" "+R(a)+" "," "))})}function zb(b,a){a&&l(a.split(" "),function(a){if(!Ba(b,a))b.className=R(b.className+" "+R(a))})}function cb(b,a){if(a)for(var a=!a.nodeName&&v(a.length)&&!ka(a)?a:[a],c=0;c<a.length;c++)b.push(a[c])}function Ab(b,a){return Ca(b,
"$"+(a||"ngController")+"Controller")}function Ca(b,a,c){b=q(b);for(b[0].nodeType==9&&(b=b.find("html"));b.length;){if(c=b.data(a))return c;b=b.parent()}}function Bb(b,a){return Cb[b.nodeName]&&Da[a.toLowerCase()]}function fb(b){var a=function(c){if(!c.preventDefault)c.preventDefault=function(){c.returnValue=!1};if(!c.stopPropagation)c.stopPropagation=function(){c.cancelBubble=!0};if(!c.target)c.target=c.srcElement||W;if(p(c.defaultPrevented)){var d=c.preventDefault;c.preventDefault=function(){c.defaultPrevented=
!0;d.call(c)};c.defaultPrevented=!1}c.isDefaultPrevented=function(){return c.defaultPrevented};l(a.fns,function(a){a.call(b,c)});ea<8?(c.preventDefault=null,c.stopPropagation=null,c.isDefaultPrevented=null):(delete c.preventDefault,delete c.stopPropagation,delete c.isDefaultPrevented)};a.fns=[];return a}function oa(b){var a=typeof b,c;if(a=="object"&&b!==null)if(typeof(c=b.$$hashKey)=="function")c=b.$$hashKey();else{if(c===t)c=b.$$hashKey=Ra()}else c=b;return a+":"+c}function Ea(b){l(b,this.put,this)}
function gb(){}function Dc(b){ma(b);if(!b.$inject){var a=b.$inject=[],c=b.toString().replace(Ec,"").match(Fc);l(c[1].split(Gc),function(b){b.replace(Hc,function(b,c,d){a.push(d)})})}return b.$inject}function vb(b){function a(a){return function(b,c){if(M(b))l(b,rb(a));else return a(b,c)}}function c(a,b){L(b)&&(b=n.instantiate(b));if(!b.$get)throw z("Provider "+a+" must define $get factory method.");return k[a+h]=b}function d(a,b){return c(a,{$get:b})}function e(a){var b=[];l(a,function(a){if(!j.get(a))if(j.put(a,
!0),C(a)){var c=pa(a);b=b.concat(e(c.requires)).concat(c._runBlocks);try{for(var d=c._invokeQueue,c=0,f=d.length;c<f;c++){var g=d[c],i=g[0]=="$injector"?n:n.get(g[0]);i[g[1]].apply(i,g[2])}}catch(h){throw h.message&&(h.message+=" from "+a),h;}}else if(L(a))try{b.push(n.invoke(a))}catch(k){throw k.message&&(k.message+=" from "+a),k;}else if(J(a))try{b.push(n.invoke(a))}catch(m){throw m.message&&(m.message+=" from "+String(a[a.length-1])),m;}else ma(a,"module")});return b}function g(a,b){function c(d){if(typeof d!==
"string")throw z("Service name expected");if(a.hasOwnProperty(d)){if(a[d]===f)throw z("Circular dependency: "+i.join(" <- "));return a[d]}else try{return i.unshift(d),a[d]=f,a[d]=b(d)}finally{i.shift()}}function d(a,b,e){var f=[],g,h,j;typeof a=="function"?(g=Dc(a),h=g.length):(J(a)&&(g=a,h=g.length-1,a=g[h]),ma(a,"fn"));for(var k=0;k<h;k++)j=g[k],f.push(e&&e.hasOwnProperty(j)?e[j]:c(j,i));switch(b?-1:f.length){case 0:return a();case 1:return a(f[0]);case 2:return a(f[0],f[1]);case 3:return a(f[0],
f[1],f[2]);case 4:return a(f[0],f[1],f[2],f[3]);case 5:return a(f[0],f[1],f[2],f[3],f[4]);case 6:return a(f[0],f[1],f[2],f[3],f[4],f[5]);case 7:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6]);case 8:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7]);case 9:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8]);case 10:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],f[9]);default:return a.apply(b,f)}}return{invoke:d,instantiate:function(a,b){var c=function(){},e;c.prototype=(J(a)?a[a.length-1]:a).prototype;
c=new c;e=d(a,c,b);return M(e)?e:c},get:c}}var f={},h="Provider",i=[],j=new Ea,k={$provide:{provider:a(c),factory:a(d),service:a(function(a,b){return d(a,["$injector",function(a){return a.instantiate(b)}])}),value:a(function(a,b){return d(a,y(b))}),constant:a(function(a,b){k[a]=b;m[a]=b}),decorator:function(a,b){var c=n.get(a+h),d=c.$get;c.$get=function(){var a=o.invoke(d,c);return o.invoke(b,null,{$delegate:a})}}}},n=g(k,function(){throw z("Unknown provider: "+i.join(" <- "));}),m={},o=m.$injector=
g(m,function(a){a=n.get(a+h);return o.invoke(a.$get,a)});l(e(b),function(a){o.invoke(a||E)});return o}function Ic(){var b=!0;this.disableAutoScrolling=function(){b=!1};this.$get=["$window","$location","$rootScope",function(a,c,d){function e(a){var b=null;l(a,function(a){!b&&A(a.nodeName)==="a"&&(b=a)});return b}function g(){var b=c.hash(),d;b?(d=f.getElementById(b))?d.scrollIntoView():(d=e(f.getElementsByName(b)))?d.scrollIntoView():b==="top"&&a.scrollTo(0,0):a.scrollTo(0,0)}var f=a.document;b&&d.$watch(function(){return c.hash()},
function(){d.$evalAsync(g)});return g}]}function Jc(b,a,c,d,e){function g(a){try{a.apply(null,ga.call(arguments,1))}finally{if(r--,r===0)for(;s.length;)try{s.pop()()}catch(b){d.error(b)}}}function f(a,b){(function G(){l(x,function(a){a()});B=b(G,a)})()}function h(){N!=i.url()&&(N=i.url(),l(K,function(a){a(i.url())}))}var i=this,j=a[0],k=b.location,n=b.history,m=b.setTimeout,o=b.clearTimeout,I={};i.isMock=!1;var r=0,s=[];i.$$completeOutstandingRequest=g;i.$$incOutstandingRequestCount=function(){r++};
i.notifyWhenNoOutstandingRequests=function(a){l(x,function(a){a()});r===0?a():s.push(a)};var x=[],B;i.addPollFn=function(a){p(B)&&f(100,m);x.push(a);return a};var N=k.href;i.url=function(a,b){return a?(N=a,e.history?b?n.replaceState(null,"",a):n.pushState(null,"",a):b?k.replace(a):k.href=a,i):k.href};var K=[],D=!1;i.onUrlChange=function(a){D||(e.history&&q(b).bind("popstate",h),e.hashchange?q(b).bind("hashchange",h):i.addPollFn(h),D=!0);K.push(a);return a};var T={},P="";i.cookies=function(a,b){var c,
e,f,g;if(a)if(b===t)j.cookie=escape(a)+"=;expires=Thu, 01 Jan 1970 00:00:00 GMT";else{if(C(b))j.cookie=escape(a)+"="+escape(b),c=a.length+b.length+1,c>4096&&d.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+c+" > 4096 bytes)!"),T.length>20&&d.warn("Cookie '"+a+"' possibly not set or overflowed because too many cookies were already set ("+T.length+" > 20 )")}else{if(j.cookie!==P){P=j.cookie;c=P.split("; ");T={};for(f=0;f<c.length;f++)e=c[f],g=e.indexOf("="),g>0&&(T[unescape(e.substring(0,
g))]=unescape(e.substring(g+1)))}return T}};i.defer=function(a,b){var c;r++;c=m(function(){delete I[c];g(a)},b||0);I[c]=!0;return c};i.defer.cancel=function(a){return I[a]?(delete I[a],o(a),g(E),!0):!1};i.addCss=function(a){var b=q(j.createElement("link"));b.attr("rel","stylesheet");b.attr("type","text/css");b.attr("href",a);c.append(b)};i.addJs=function(a,b){var d=j.createElement("script");d.type="text/javascript";d.src=a;if(ea)d.onreadystatechange=function(){/loaded|complete/.test(d.readyState)&&
b&&b()};else if(b)d.onload=d.onerror=b;c[0].appendChild(d);return d};i.baseHref=function(){var b=a.find("base").attr("href");return b?b.replace(/^https?\:\/\/[^\/]*/,""):b}}function Kc(){this.$get=["$window","$log","$sniffer","$document",function(b,a,c,d){return new Jc(b,d,d.find("body"),a,c)}]}function Lc(){this.$get=function(){function b(b,d){function e(a){if(a!=n){if(m){if(m==a)m=a.n}else m=a;g(a.n,a.p);g(a,n);n=a;n.n=null}}function g(a,b){if(a!=b){if(a)a.p=b;if(b)b.n=a}}if(b in a)throw z("cacheId "+
b+" taken");var f=0,h=u({},d,{id:b}),i={},j=d&&d.capacity||Number.MAX_VALUE,k={},n=null,m=null;return a[b]={put:function(a,b){var c=k[a]||(k[a]={key:a});e(c);p(b)||(a in i||f++,i[a]=b,f>j&&this.remove(m.key))},get:function(a){var b=k[a];if(b)return e(b),i[a]},remove:function(a){var b=k[a];if(b==n)n=b.p;if(b==m)m=b.n;g(b.n,b.p);delete k[a];delete i[a];f--},removeAll:function(){i={};f=0;k={};n=m=null},destroy:function(){k=h=i=null;delete a[b]},info:function(){return u({},h,{size:f})}}}var a={};b.info=
function(){var b={};l(a,function(a,e){b[e]=a.info()});return b};b.get=function(b){return a[b]};return b}}function Mc(){this.$get=["$cacheFactory",function(b){return b("templates")}]}function Db(b){var a={},c="Directive",d=/^\s*directive\:\s*([\d\w\-_]+)\s+(.*)$/,e=/(([\d\w\-_]+)(?:\:([^;]+))?;?)/,g=/\<\<content\>\>/i,f=/^\<[\s\S]*\>$/;this.directive=function i(d,e){C(d)?(la(e,"directive"),a.hasOwnProperty(d)||(a[d]=[],b.factory(d+c,["$injector","$exceptionHandler",function(b,c){var e=[];l(a[d],function(a){try{var f=
b.invoke(a);if(L(f))f={compile:y(f)};else if(!f.compile&&f.link)f.compile=y(f.link);f.priority=f.priority||0;f.name=f.name||d;f.require=f.require||f.controller&&f.name;f.restrict=f.restrict||"A";e.push(f)}catch(g){c(g)}});return e}])),a[d].push(e)):l(d,rb(i));return this};this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller",function(b,j,k,n,m,o,I){function r(a,b,c){a instanceof q||(a=q(a));l(a,function(b,c){b.nodeType==3&&(a[c]=q(b).wrap("<span>").parent()[0])});
var d=B(a,b,a,c);return function(b,c){la(b,"scope");var e=c?ra.clone.call(a):a;x(e.data("$scope",b),"ng-scope");c&&c(e,b);d&&d(b,e,e);return e}}function s(a,b){throw z("Unsupported '"+b+"' for '"+a+"'.");}function x(a,b){try{a.addClass(b)}catch(c){}}function B(a,b,c,d){function e(a,c,d,g){for(var i,j,k,m,n,Q=0,o=0,s=f.length;Q<s;o++)k=c[o],j=f[Q++],i=f[Q++],j?(j.scope?(m=a.$new(M(j.scope)),q(k).data("$scope",m)):m=a,(n=j.transclude)||!g&&b?j(i,m,k,d,function(b){return function(c){var d=a.$new();return b(d,
c).bind("$destroy",wa(d,d.$destroy))}}(n||b)):j(i,m,k,t,g)):i&&i(a,k.childNodes,t,g)}for(var f=[],g,i,j,k=0;k<a.length;k++)i=new ba,g=N(a[k],[],i,d),i=(g=g.length?K(g,a[k],i,b,c):null)&&g.terminal?null:B(a[k].childNodes,g?g.transclude:b),f.push(g),f.push(i),j=j||g||i;return j?e:null}function N(a,b,c,f){var g=c.$attr;switch(a.nodeType){case 1:D(b,ca(Eb(a).toLowerCase()),"E",f);for(var i,j,k,m=a.attributes,n=0,o=m&&m.length;n<o;n++)if(i=m[n],i.specified)j=i.name,k=ca(j.toLowerCase()),g[k]=j,c[k]=i=
R(ea&&j=="href"?decodeURIComponent(a.getAttribute(j,2)):i.value),Bb(a,k)&&(c[k]=!0),G(a,b,i,k),D(b,k,"A",f);g=a.className;if(C(g))for(;a=e.exec(g);)k=ca(a[2]),D(b,k,"C",f)&&(c[k]=R(a[3])),g=g.substr(a.index+a[0].length);break;case 3:p(b,a.nodeValue);break;case 8:if(a=d.exec(a.nodeValue))k=ca(a[1]),D(b,k,"M",f)&&(c[k]=R(a[2]))}b.sort(Fa);return b}function K(a,b,c,d,e){function f(a,b){if(a)a.require=H.require,n.push(a);if(b)b.require=H.require,o.push(b)}function i(a,b){var c,d="data",e=!1;if(C(a)){for(;(c=
a.charAt(0))=="^"||c=="?";)a=a.substr(1),c=="^"&&(d="inheritedData"),e=e||c=="?";c=b[d]("$"+a+"Controller");if(!c&&!e)throw z("No controller: "+a);}else J(a)&&(c=[],l(a,function(a){c.push(i(a,b))}));return c}function j(a,d,e,f,g){var m,Q,r,aa,x;m=b===e?c:vc(c,new ba(q(e),c.$attr));Q=m.$$element;K&&M(K.scope)&&l(K.scope,function(a,b){(Ha[a]||s)(b,a,d.$parent||d,d,m)});y&&l(y,function(a){var b={$scope:d,$element:Q,$attrs:m,$transclude:g};l(a.inject||{},function(a,c){(Ha[a]||s)(c,a,K?d.$parent||d:d,
b,m)});x=a.controller;x=="@"&&(x=m[a.name]);Q.data("$"+a.name+"Controller",I(x,b))});f=0;for(r=n.length;f<r;f++)try{aa=n[f],aa(d,Q,m,aa.require&&i(aa.require,Q))}catch(D){k(D,xa(Q))}a&&a(d,e.childNodes,t,g);f=0;for(r=o.length;f<r;f++)try{aa=o[f],aa(d,Q,m,aa.require&&i(aa.require,Q))}catch(Nc){k(Nc,xa(Q))}}for(var m=-Number.MAX_VALUE,n=[],o=[],K=null,D=null,B=null,Fa=null,G=c.$$element=q(b),H,u,p,E,A=d,y,v,w=0,F=a.length;w<F;w++){H=a[w];p=t;if(m>H.priority)break;if(p=H.scope)qa("isolated scope",D,
H,G),M(p)&&(x(G,"ng-isolate-scope"),D=H),x(G,"ng-scope"),K=K||H;u=H.name;if(p=H.controller)y=y||{},qa("'"+u+"' controller",y[u],H,G),y[u]=H;if(p=H.transclude)qa("transclusion",E,H,G),E=H,m=H.priority,p=="element"?(p=q(b),b=(G=c.$$element=q("<\!-- "+u+": "+c[u]+" --\>"))[0],Ga(e,q(p[0]),b),A=r(p,d,m)):(p=q(db(b)),G.html(""),A=r(p.contents(),d));if(p=H.template)qa("template",B,H,G),B=H,u=p.replace(g,G.html()),b=q(u)[0],H.replace?(Ga(e,G,b),F={$attr:{}},a=a.concat(N(b,a.splice(w+1,a.length-(w+1)),F)),
T(c,F),F=a.length):G.html(u);if(H.templateUrl)qa("template",B,H,G),B=H,Fa=P(a.splice(w,a.length-w),j,G,c,e,H.replace,A),F=a.length;else if(H.compile)try{v=H.compile(G,c,A),L(v)?f(null,v):v&&f(v.pre,v.post)}catch(O){k(O,xa(G))}if(H.terminal)j.terminal=!0,m=Math.max(m,H.priority)}v=Fa||j;v.scope=K&&K.scope;v.transclude=E&&A;return v}function D(d,e,f,g){var j=!1;if(a.hasOwnProperty(e))for(var m,e=b.get(e+c),n=0,o=e.length;n<o;n++)try{if(m=e[n],(g===t||g>m.priority)&&m.restrict.indexOf(f)!=-1)d.push(m),
j=!0}catch(s){k(s)}return j}function T(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;l(a,function(d,e){e.charAt(0)!="$"&&(b[e]&&(d+=(e==="style"?";":" ")+b[e]),a.$set(e,d,!0,c[e]))});l(b,function(b,f){f=="class"?x(e,b):f=="style"?e.attr("style",e.attr("style")+";"+b):f.charAt(0)!="$"&&!a.hasOwnProperty(f)&&(a[f]=b,d[f]=c[f])})}function P(a,b,c,d,e,i,j){var k=[],o,s,Ha=c[0],r=a.shift(),I=u({},r,{templateUrl:null,transclude:null}),x=c.html();c.html("");n.get(r.templateUrl,{cache:m}).success(function(m){m=
R(m).replace(g,x);if(i&&!m.match(f))throw z("Template must have exactly one root element: "+m);var n,r;i?(r={$attr:{}},n=q(m)[0],Ga(e,c,n),N(c[0],a,r),T(d,r)):(n=c[0],c.html(m));a.unshift(I);o=K(a,c,d,j);for(s=B(c.contents(),j);k.length;){var l=k.pop(),m=k.pop();r=k.pop();var D=k.pop(),ba=n;r!==Ha&&(ba=db(n),Ga(m,q(r),ba));o(function(){b(s,D,ba,e,l)},D,ba,e,l)}k=null}).error(function(a,b,c,d){throw z("Failed to load template: "+d.url);});return function(a,c,d,e,f){k?(k.push(c),k.push(d),k.push(e),
k.push(f)):o(function(){b(s,c,d,e,f)},c,d,e,f)}}function Fa(a,b){return b.priority-a.priority}function qa(a,b,c,d){if(b)throw z("Multiple directives ["+b.name+", "+c.name+"] asking for "+a+" on: "+xa(d));}function p(a,b){var c=j(b,!0);c&&a.push({priority:0,compile:y(function(a,b){var d=b.parent(),e=d.data("$binding")||[];e.push(c);x(d.data("$binding",e),"ng-binding");a.$watch(c,function(a){b[0].nodeValue=a})})})}function G(a,b,c,d){var e=j(c,!0);e&&b.push({priority:100,compile:y(function(a,b,c){d===
"class"&&(e=j(c[d],!0));c.$$observers[d]=[];c[d]=t;a.$watch(e,function(a){c.$set(d,a)})})})}function Ga(a,b,c){var d=b[0],e=d.parentNode,f,g;if(a){f=0;for(g=a.length;f<g;f++)a[f]==d&&(a[f]=c)}e&&e.replaceChild(c,d);b[0]=c}var Ha={attribute:function(a,b,c,d,e){d[a]=e[a]},evaluate:function(a,b,c,d,e){d[a]=c.$eval(e[a])},bind:function(a,b,c,d,e){var f=j(e[a]);d.$watch(function(){return f(c)},function(b){d[a]=b})},accessor:function(a,b,c,d,e){var f=E,g=E,i=e[a];i&&(f=o(i),g=f.assign||function(){throw z("Expression '"+
i+"' not assignable.");});d[a]=function(a){return arguments.length?g(c,a):f(c)}},expression:function(a,b,c,d,e){d[a]=function(b){o(e[a])(c,b)}}},ba=function(a,b){this.$$element=a;this.$$observers={};this.$attr=b||{}};ba.prototype={$normalize:ca,$set:function(a,b,c,d){var e=Bb(this.$$element[0],a.toLowerCase());e&&(this.$$element.prop(a,b),d=e);this[a]=b;d?this.$attr[a]=d:(d=this.$attr[a])||(this.$attr[a]=d=ab(a,"-"));c!==!1&&(b===null||b===t?this.$$element.removeAttr(d):this.$$element.attr(d,b));
l(this.$$observers[a],function(a){try{a(b)}catch(c){k(c)}})},$observe:function(a,b){this.$$observers[a]&&this.$$observers[a].push(b)}};return r}]}function ca(b){return wb(b.replace(Oc,""))}function Pc(){var b={};this.register=function(a,c){b[a]=c};this.$get=["$injector","$window",function(a,c){return function(d,e){if(C(d)){var g=d,d=b.hasOwnProperty(g)?b[g]:hb(e.$scope,g,!0)||hb(c,g,!0);ma(d,g,!0)}return a.instantiate(d,e)}}]}function Qc(){this.$get=["$rootScope","$browser",function(b,a){function c(c,
e){return a.defer(function(){b.$apply(c)},e)}c.cancel=function(b){return a.defer.cancel(b)};return c}]}function Rc(){this.$get=["$window",function(b){return q(b.document)}]}function Sc(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function Tc(){var b="{{",a="}}";this.startSymbol=function(a){return a?(b=a,this):b};this.endSymbol=function(c){return c?(a=c,this):b};this.$get=["$parse",function(c){var d=b.length,e=a.length;return function(g,f){for(var h,i,j=0,k=[],
n=g.length,m=!1,o=[];j<n;)(h=g.indexOf(b,j))!=-1&&(i=g.indexOf(a,h+d))!=-1?(j!=h&&k.push(g.substring(j,h)),k.push(j=c(m=g.substring(h+d,i))),j.exp=m,j=i+e,m=!0):(j!=n&&k.push(g.substring(j)),j=n);if(!(n=k.length))k.push(""),n=1;if(!f||m)return o.length=n,j=function(a){for(var b=0,c=n,d;b<c;b++){if(typeof(d=k[b])=="function")d=d(a),d==null||d==t?d="":typeof d!="string"&&(d=$(d));o[b]=d}return o.join("")},j.exp=g,j.parts=k,j}}]}function Fb(b){for(var b=b.split("/"),a=b.length;a--;)b[a]=$a(b[a]);return b.join("/")}
function Ia(b,a){var c=Gb.exec(b),c={protocol:c[1],host:c[3],port:w(c[5])||Hb[c[1]]||null,path:c[6]||"/",search:c[8],hash:c[10]};if(a)a.$$protocol=c.protocol,a.$$host=c.host,a.$$port=c.port;return c}function sa(b,a,c){return b+"://"+a+(c==Hb[b]?"":":"+c)}function Uc(b,a,c){var d=Ia(b);return decodeURIComponent(d.path)!=a||p(d.hash)||d.hash.indexOf(c)!==0?b:sa(d.protocol,d.host,d.port)+a.substr(0,a.lastIndexOf("/"))+d.hash.substr(c.length)}function Vc(b,a,c){var d=Ia(b);if(decodeURIComponent(d.path)==
a)return b;else{var e=d.search&&"?"+d.search||"",g=d.hash&&"#"+d.hash||"",f=a.substr(0,a.lastIndexOf("/")),h=d.path.substr(f.length);if(d.path.indexOf(f)!==0)throw'Invalid url "'+b+'", missing path prefix "'+f+'" !';return sa(d.protocol,d.host,d.port)+a+"#"+c+h+e+g}}function ib(b,a){a=a||"";this.$$parse=function(b){var d=Ia(b,this);if(d.path.indexOf(a)!==0)throw'Invalid url "'+b+'", missing path prefix "'+a+'" !';this.$$path=decodeURIComponent(d.path.substr(a.length));this.$$search=Ya(d.search);this.$$hash=
d.hash&&decodeURIComponent(d.hash)||"";this.$$compose()};this.$$compose=function(){var b=tb(this.$$search),d=this.$$hash?"#"+$a(this.$$hash):"";this.$$url=Fb(this.$$path)+(b?"?"+b:"")+d;this.$$absUrl=sa(this.$$protocol,this.$$host,this.$$port)+a+this.$$url};this.$$parse(b)}function jb(b,a){var c;this.$$parse=function(b){var e=Ia(b,this);if(e.hash&&e.hash.indexOf(a)!==0)throw'Invalid url "'+b+'", missing hash prefix "'+a+'" !';c=e.path+(e.search?"?"+e.search:"");e=Wc.exec((e.hash||"").substr(a.length));
this.$$path=e[1]?(e[1].charAt(0)=="/"?"":"/")+decodeURIComponent(e[1]):"";this.$$search=Ya(e[3]);this.$$hash=e[5]&&decodeURIComponent(e[5])||"";this.$$compose()};this.$$compose=function(){var b=tb(this.$$search),e=this.$$hash?"#"+$a(this.$$hash):"";this.$$url=Fb(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=sa(this.$$protocol,this.$$host,this.$$port)+c+(this.$$url?"#"+a+this.$$url:"")};this.$$parse(b)}function Ja(b){return function(){return this[b]}}function Ib(b,a){return function(c){if(p(c))return this[b];
this[b]=a(c);this.$$compose();return this}}function Xc(){var b="",a=!1;this.hashPrefix=function(a){return v(a)?(b=a,this):b};this.html5Mode=function(b){return v(b)?(a=b,this):a};this.$get=["$rootScope","$browser","$sniffer","$document",function(c,d,e,g){var f,h=d.baseHref()||"/",i=h.substr(0,h.lastIndexOf("/")),j=d.url();if(a){var e=f=e.history?new ib(Uc(j,h,b),i):new jb(Vc(j,h,b),b),k=sa(e.protocol(),e.host(),e.port())+i;g.bind("click",function(a){if(!a.ctrlKey&&!(a.metaKey||a.which==2)){for(var b=
q(a.target);b.length&&A(b[0].nodeName)!=="a";)b=b.parent();var d=b.attr("href");d&&!v(b.attr("ng-ext-link"))&&!b.attr("target")&&(d=d.replace(k,""),d.substr(0,4)!="http"&&(d=d.indexOf(i)===0?d.substr(i.length):d,f.url(d),c.$apply(),a.preventDefault(),V.angular["ff-684208-preventDefault"]=!0))}})}else f=new jb(j,b);f.absUrl()!=j&&d.url(f.absUrl(),!0);d.onUrlChange(function(a){f.absUrl()!=a&&(c.$evalAsync(function(){f.$$parse(a)}),c.$$phase||c.$digest())});var n=0;c.$watch(function(){d.url()!=f.absUrl()&&
(n++,c.$evalAsync(function(){d.url(f.absUrl(),f.$$replace);f.$$replace=!1}));return n});return f}]}function Yc(){this.$get=["$window",function(b){function a(a){a instanceof z&&(a.stack?a=a.message&&a.stack.indexOf(a.message)===-1?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function c(c){var e=b.console||{},g=e[c]||e.log||E;return g.apply?function(){var b=[];l(arguments,function(c){b.push(a(c))});return g.apply(e,b)}:function(a,b){g(a,b)}}
return{log:c("log"),warn:c("warn"),info:c("info"),error:c("error")}}]}function Zc(b){function a(a){return a.indexOf(r)!=-1}function c(){return o+1<b.length?b.charAt(o+1):!1}function d(a){return"0"<=a&&a<="9"}function e(a){return a==" "||a=="\r"||a=="\t"||a=="\n"||a=="\u000b"||a=="\u00a0"}function g(a){return"a"<=a&&a<="z"||"A"<=a&&a<="Z"||"_"==a||a=="$"}function f(a){return a=="-"||a=="+"||d(a)}function h(a,c,d){d=d||o;throw z("Lexer Error: "+a+" at column"+(v(c)?"s "+c+"-"+o+" ["+b.substring(c,d)+
"]":" "+d)+" in expression ["+b+"].");}function i(){for(var a="",e=o;o<b.length;){var g=A(b.charAt(o));if(g=="."||d(g))a+=g;else{var i=c();if(g=="e"&&f(i))a+=g;else if(f(g)&&i&&d(i)&&a.charAt(a.length-1)=="e")a+=g;else if(f(g)&&(!i||!d(i))&&a.charAt(a.length-1)=="e")h("Invalid exponent");else break}o++}a*=1;n.push({index:e,text:a,json:!0,fn:function(){return a}})}function j(){for(var a="",c=o,f,i,k;o<b.length;){var j=b.charAt(o);if(j=="."||g(j)||d(j))j=="."&&(f=o),a+=j;else break;o++}if(f)for(i=o;i<
b.length;){j=b.charAt(i);if(j=="("){k=a.substr(f-c+1);a=a.substr(0,f-c);o=i;break}if(e(j))i++;else break}c={index:c,text:a};if(Ka.hasOwnProperty(a))c.fn=c.json=Ka[a];else{var m=Jb(a);c.fn=u(function(a,b){return m(a,b)},{assign:function(b,c){return Kb(b,a,c)}})}n.push(c);k&&(n.push({index:f,text:".",json:!1}),n.push({index:f+1,text:k,json:!1}))}function k(a){var c=o;o++;for(var d="",e=a,f=!1;o<b.length;){var g=b.charAt(o);e+=g;if(f)g=="u"?(g=b.substring(o+1,o+5),g.match(/[\da-f]{4}/i)||h("Invalid unicode escape [\\u"+
g+"]"),o+=4,d+=String.fromCharCode(parseInt(g,16))):(f=$c[g],d+=f?f:g),f=!1;else if(g=="\\")f=!0;else if(g==a){o++;n.push({index:c,text:e,string:d,json:!0,fn:function(){return d}});return}else d+=g;o++}h("Unterminated quote",c)}for(var n=[],m,o=0,I=[],r,s=":";o<b.length;){r=b.charAt(o);if(a("\"'"))k(r);else if(d(r)||a(".")&&d(c()))i();else if(g(r)){if(j(),"{,".indexOf(s)!=-1&&I[0]=="{"&&(m=n[n.length-1]))m.json=m.text.indexOf(".")==-1}else if(a("(){}[].,;:"))n.push({index:o,text:r,json:":[,".indexOf(s)!=
-1&&a("{[")||a("}]:,")}),a("{[")&&I.unshift(r),a("}]")&&I.shift(),o++;else if(e(r)){o++;continue}else{var l=r+c(),B=Ka[r],N=Ka[l];N?(n.push({index:o,text:l,fn:N}),o+=2):B?(n.push({index:o,text:r,fn:B,json:"[,:".indexOf(s)!=-1&&a("+-")}),o+=1):h("Unexpected next character ",o,o+1)}s=r}return n}function ad(b,a,c){function d(a,c){throw z("Syntax Error: Token '"+c.text+"' "+a+" at column "+(c.index+1)+" of the expression ["+b+"] starting at ["+b.substring(c.index)+"].");}function e(){if(P.length===0)throw z("Unexpected end of expression: "+
b);return P[0]}function g(a,b,c,d){if(P.length>0){var e=P[0],f=e.text;if(f==a||f==b||f==c||f==d||!a&&!b&&!c&&!d)return e}return!1}function f(b,c,e,f){return(b=g(b,c,e,f))?(a&&!b.json&&d("is not valid json",b),P.shift(),b):!1}function h(a){f(a)||d("is unexpected, expecting ["+a+"]",g())}function i(a,b){return function(c,d){return a(c,d,b)}}function j(a,b,c){return function(d,e){return b(d,e,a,c)}}function k(){for(var a=[];;)if(P.length>0&&!g("}",")",";","]")&&a.push(A()),!f(";"))return a.length==1?
a[0]:function(b,c){for(var d,e=0;e<a.length;e++){var f=a[e];f&&(d=f(b,c))}return d}}function n(){for(var a=f(),b=c(a.text),d=[];;)if(a=f(":"))d.push(p());else{var e=function(a,c,e){for(var e=[e],f=0;f<d.length;f++)e.push(d[f](a,c));return b.apply(a,e)};return function(){return e}}}function m(){for(var a=o(),b;;)if(b=f("||"))a=j(a,b.fn,o());else return a}function o(){var a=I(),b;if(b=f("&&"))a=j(a,b.fn,o());return a}function I(){var a=r(),b;if(b=f("==","!="))a=j(a,b.fn,I());return a}function r(){var a;
a=s();for(var b;b=f("+","-");)a=j(a,b.fn,s());if(b=f("<",">","<=",">="))a=j(a,b.fn,r());return a}function s(){for(var a=l(),b;b=f("*","/","%");)a=j(a,b.fn,l());return a}function l(){var a;return f("+")?B():(a=f("-"))?j(D,a.fn,l()):(a=f("!"))?i(a.fn,l()):B()}function B(){var a;if(f("("))a=A(),h(")");else if(f("["))a=N();else if(f("{"))a=K();else{var b=f();(a=b.fn)||d("not a primary expression",b)}for(var c;b=f("(","[",".");)b.text==="("?(a=q(a,c),c=null):b.text==="["?(c=a,a=G(a)):b.text==="."?(c=a,
a=v(a)):d("IMPOSSIBLE");return a}function N(){var a=[];if(e().text!="]"){do a.push(p());while(f(","))}h("]");return function(b,c){for(var d=[],e=0;e<a.length;e++)d.push(a[e](b,c));return d}}function K(){var a=[];if(e().text!="}"){do{var b=f(),b=b.string||b.text;h(":");var c=p();a.push({key:b,value:c})}while(f(","))}h("}");return function(b,c){for(var d={},e=0;e<a.length;e++){var f=a[e],g=f.value(b,c);d[f.key]=g}return d}}var D=y(0),T,P=Zc(b),p=function(){var a=m(),c,e;return(e=f("="))?(a.assign||
d("implies assignment but ["+b.substring(0,e.index)+"] can not be assigned to",e),c=m(),function(b,d){return a.assign(b,c(b,d),d)}):a},q=function(a,b){var c=[];if(e().text!=")"){do c.push(p());while(f(","))}h(")");return function(d,e){for(var f=[],g=b?b(d,e):d,i=0;i<c.length;i++)f.push(c[i](d,e));i=a(d,e)||E;return i.apply?i.apply(g,f):i(f[0],f[1],f[2],f[3],f[4])}},v=function(a){var b=f().text,c=Jb(b);return u(function(b,d){return c(a(b,d),d)},{assign:function(c,d,e){return Kb(a(c,e),b,d)}})},G=function(a){var b=
p();h("]");return u(function(c,d){var e=a(c,d),f=b(c,d),g;if(!e)return t;if((e=e[f])&&e.then){g=e;if(!("$$v"in e))g.$$v=t,g.then(function(a){g.$$v=a});e=e.$$v}return e},{assign:function(c,d,e){return a(c,e)[b(c,e)]=d}})},A=function(){for(var a=p(),b;;)if(b=f("|"))a=j(a,b.fn,n());else return a};a?(p=m,q=v=G=A=function(){d("is not valid json",{text:b,index:0})},T=B()):T=k();P.length!==0&&d("is an unexpected token",P[0]);return T}function Kb(b,a,c){for(var a=a.split("."),d=0;a.length>1;d++){var e=a.shift(),
g=b[e];g||(g={},b[e]=g);b=g}return b[a.shift()]=c}function hb(b,a,c){if(!a)return b;for(var a=a.split("."),d,e=b,g=a.length,f=0;f<g;f++)d=a[f],b&&(b=(e=b)[d]);return!c&&L(b)?wa(e,b):b}function Jb(b){if(kb.hasOwnProperty(b))return kb[b];var a,c="var l, fn, p;\n";l(b.split("."),function(a,b){c+="if(!s) return s;\nl=s;\ns="+(b?"s":'((k&&k.hasOwnProperty("'+a+'"))?k:s)')+'["'+a+'"];\nif (s && s.then) {\n if (!("$$v" in s)) {\n p=s;\n p.$$v = undefined;\n p.then(function(v) {p.$$v=v;});\n}\n s=s.$$v\n}\n'});
c+="return s;";a=Function("s","k",c);a.toString=function(){return c};return kb[b]=a}function bd(){var b={};this.$get=["$filter",function(a){return function(c){switch(typeof c){case "string":return b.hasOwnProperty(c)?b[c]:b[c]=ad(c,!1,a);case "function":return c;default:return E}}}]}function cd(){this.$get=["$rootScope","$exceptionHandler",function(b,a){return dd(function(a){b.$evalAsync(a)},a)}]}function dd(b,a){function c(a){return a}function d(a){return f(a)}var e=function(){var h=[],i,j;return j=
{resolve:function(a){if(h){var c=h;h=t;i=g(a);c.length&&b(function(){for(var a,b=0,d=c.length;b<d;b++)a=c[b],i.then(a[0],a[1])})}},reject:function(a){j.resolve(f(a))},promise:{then:function(b,f){var g=e(),j=function(d){try{g.resolve((b||c)(d))}catch(e){a(e),g.reject(e)}},l=function(b){try{g.resolve((f||d)(b))}catch(c){a(c),g.reject(c)}};h?h.push([j,l]):i.then(j,l);return g.promise}}}},g=function(a){return a&&a.then?a:{then:function(c){var d=e();b(function(){d.resolve(c(a))});return d.promise}}},f=
function(a){return{then:function(c,f){var g=e();b(function(){g.resolve((f||d)(a))});return g.promise}}};return{defer:e,reject:f,when:function(h,i,j){var k=e(),n,m=function(b){try{return(i||c)(b)}catch(d){return a(d),f(d)}},o=function(b){try{return(j||d)(b)}catch(c){return a(c),f(c)}};b(function(){g(h).then(function(a){n||(n=!0,k.resolve(g(a).then(m,o)))},function(a){n||(n=!0,k.resolve(o(a)))})});return k.promise},all:function(a){var b=e(),c=a.length,d=[];c?l(a,function(a,e){g(a).then(function(a){e in
d||(d[e]=a,--c||b.resolve(d))},function(a){e in d||b.reject(a)})}):b.resolve(d);return b.promise}}}function ed(){var b={};this.when=function(a,c){b[a]=u({reloadOnSearch:!0},c);if(a){var d=a[a.length-1]=="/"?a.substr(0,a.length-1):a+"/";b[d]={redirectTo:a}}return this};this.otherwise=function(a){this.when(null,a);return this};this.$get=["$rootScope","$location","$routeParams",function(a,c,d){function e(){var a,d;l(b,function(b,e){if(!d&&(a=f(c.path(),e)))d=Sa(b,{params:u({},c.search(),a),pathParams:a}),
d.$route=b});return d||b[null]&&Sa(b[null],{params:{},pathParams:{}})}function g(a,b){var c=[];l((a||"").split(":"),function(a,d){if(d==0)c.push(a);else{var e=a.match(/(\w+)(.*)/),f=e[1];c.push(b[f]);c.push(e[2]||"");delete b[f]}});return c.join("")}var f=function(a,b){var c="^"+b.replace(/([\.\\\(\)\^\$])/g,"\\$1")+"$",d=[],e={};l(b.split(/\W/),function(a){if(a){var b=RegExp(":"+a+"([\\W])");c.match(b)&&(c=c.replace(b,"([^\\/]*)$1"),d.push(a))}});var f=a.match(RegExp(c));f&&l(d,function(a,b){e[a]=
f[b+1]});return f?e:null},h=0,i=!1,j={routes:b,reload:function(){h++;i=!0}};a.$watch(function(){return h+c.url()},function(){var b=e(),f=j.current;if(b&&f&&b.$route===f.$route&&da(b.pathParams,f.pathParams)&&!b.reloadOnSearch&&!i)f.params=b.params,X(f.params,d),a.$broadcast("$routeUpdate",f);else if(b||f)i=!1,a.$broadcast("$beforeRouteChange",b,f),(j.current=b)&&(b.redirectTo?C(b.redirectTo)?c.path(g(b.redirectTo,b.params)).search(b.params).replace():c.url(b.redirectTo(b.pathParams,c.path(),c.search())).replace():
X(b.params,d)),a.$broadcast("$afterRouteChange",b,f)});return j}]}function fd(){this.$get=y({})}function gd(){var b=10;this.digestTtl=function(a){arguments.length&&(b=a);return b};this.$get=["$injector","$exceptionHandler","$parse",function(a,c,d){function e(){this.$id=Ra();this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this["this"]=this.$root=this;this.$$asyncQueue=[];this.$$listeners={}}function g(a,b){var c=a.$root;if(c.$$phase)throw z(c.$$phase+
" already in progress");c.$$phase=b}function f(a,b){var c=d(a);ma(c,b);return c}function h(){}e.prototype={$new:function(a){if(L(a))throw z("API-CHANGE: Use $controller to instantiate controllers.");a?(a=new e,a.$root=this.$root):(a=function(){},a.prototype=this,a=new a,a.$id=Ra());a["this"]=a;a.$$listeners={};a.$parent=this;a.$$asyncQueue=[];a.$$watchers=a.$$nextSibling=a.$$childHead=a.$$childTail=null;a.$$prevSibling=this.$$childTail;this.$$childHead?this.$$childTail=this.$$childTail.$$nextSibling=
a:this.$$childHead=this.$$childTail=a;return a},$watch:function(a,b,c){var d=f(a,"watch"),e=this.$$watchers,g={fn:b,last:h,get:d,exp:a,eq:!!c};if(!L(b)){var l=f(b||E,"listener");g.fn=function(a,b,c){l(c)}}if(!e)e=this.$$watchers=[];e.unshift(g);return function(){va(e,g)}},$digest:function(){var a,d,e,f,m,o,l,r=b,s,x=[],B,N;g(this,"$digest");do{l=!1;s=this;do{for(m=s.$$asyncQueue;m.length;)try{s.$eval(m.shift())}catch(K){c(K)}if(f=s.$$watchers)for(o=f.length;o--;)try{if(a=f[o],(d=a.get(s))!==(e=a.last)&&
!(a.eq?da(d,e):typeof d=="number"&&typeof e=="number"&&isNaN(d)&&isNaN(e)))l=!0,a.last=a.eq?X(d):d,a.fn(d,e===h?d:e,s),r<5&&(B=4-r,x[B]||(x[B]=[]),N=L(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,N+="; newVal: "+$(d)+"; oldVal: "+$(e),x[B].push(N))}catch(D){c(D)}if(!(f=s.$$childHead||s!==this&&s.$$nextSibling))for(;s!==this&&!(f=s.$$nextSibling);)s=s.$parent}while(s=f);if(l&&!r--)throw z(b+" $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: "+$(x));}while(l||
(function(V,X,t){'use strict';function l(b,a,c){var d;if(b)if(L(b))for(d in b)d!="prototype"&&d!="length"&&d!="name"&&b.hasOwnProperty(d)&&a.call(c,b[d],d);else if(b.forEach&&b.forEach!==l)b.forEach(a,c);else if(M(b)&&ra(b.length))for(d=0;d<b.length;d++)a.call(c,b[d],d);else for(d in b)b.hasOwnProperty(d)&&a.call(c,b[d],d);return b}function mb(b){var a=[],c;for(c in b)b.hasOwnProperty(c)&&a.push(c);return a.sort()}function Zb(b,a,c){for(var d=mb(b),e=0;e<d.length;e++)a.call(c,b[d[e]],d[e]);return d}
function nb(b){return function(a,c){b(c,a)}}function sa(){for(var b=Y.length,a;b;){b--;a=Y[b].charCodeAt(0);if(a==57)return Y[b]="A",Y.join("");if(a==90)Y[b]="0";else return Y[b]=String.fromCharCode(a+1),Y.join("")}Y.unshift("0");return Y.join("")}function H(b){l(arguments,function(a){a!==b&&l(a,function(a,d){b[d]=a})});return b}function x(b){return parseInt(b,10)}function Qa(b,a){return H(new (H(function(){},{prototype:b})),a)}function u(){}function ta(b){return b}function A(b){return function(){return b}}
function r(b){return typeof b=="undefined"}function B(b){return typeof b!="undefined"}function M(b){return b!=null&&typeof b=="object"}function C(b){return typeof b=="string"}function ra(b){return typeof b=="number"}function ha(b){return Ra.apply(b)=="[object Date]"}function I(b){return Ra.apply(b)=="[object Array]"}function L(b){return typeof b=="function"}function ia(b){return b&&b.document&&b.location&&b.alert&&b.setInterval}function R(b){return C(b)?b.replace(/^\s*/,"").replace(/\s*$/,""):b}function $b(b){return b&&
(b.nodeName||b.bind&&b.find)}function Sa(b,a,c){var d=[];l(b,function(b,g,f){d.push(a.call(c,b,g,f))});return d}function ac(b,a){var c=0,d;if(I(b)||C(b))return b.length;else if(M(b))for(d in b)(!a||b.hasOwnProperty(d))&&c++;return c}function Ta(b,a){if(b.indexOf)return b.indexOf(a);for(var c=0;c<b.length;c++)if(a===b[c])return c;return-1}function ua(b,a){var c=Ta(b,a);c>=0&&b.splice(c,1);return a}function W(b,a){if(ia(b)||b&&b.$evalAsync&&b.$watch)throw z("Can't copy Window or Scope");if(a){if(b===
a)throw z("Can't copy equivalent objects or arrays");if(I(b)){for(;a.length;)a.pop();for(var c=0;c<b.length;c++)a.push(W(b[c]))}else for(c in l(a,function(b,c){delete a[c]}),b)a[c]=W(b[c])}else(a=b)&&(I(b)?a=W(b,[]):ha(b)?a=new Date(b.getTime()):M(b)&&(a=W(b,{})));return a}function bc(b,a){var a=a||{},c;for(c in b)b.hasOwnProperty(c)&&c.substr(0,2)!=="$$"&&(a[c]=b[c]);return a}function ca(b,a){if(b===a)return!0;if(b===null||a===null)return!1;if(b!==b&&a!==a)return!0;var c=typeof b,d;if(c==typeof a&&
c=="object")if(I(b)){if((c=b.length)==a.length){for(d=0;d<c;d++)if(!ca(b[d],a[d]))return!1;return!0}}else if(ha(b))return ha(a)&&b.getTime()==a.getTime();else{if(b&&b.$evalAsync&&b.$watch||a&&a.$evalAsync&&a.$watch||ia(b)||ia(a))return!1;c={};for(d in b){if(d.charAt(0)!=="$"&&!L(b[d])&&!ca(b[d],a[d]))return!1;c[d]=!0}for(d in a)if(!c[d]&&d.charAt(0)!=="$"&&!L(a[d]))return!1;return!0}return!1}function Ua(b,a){var c=arguments.length>2?ea.call(arguments,2):[];return L(a)&&!(a instanceof RegExp)?c.length?
function(){return arguments.length?a.apply(b,c.concat(ea.call(arguments,0))):a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}:a}function cc(b,a){var c=a;/^\$+/.test(b)?c=t:ia(a)?c="$WINDOW":a&&X===a?c="$DOCUMENT":a&&a.$evalAsync&&a.$watch&&(c="$SCOPE");return c}function Z(b,a){return JSON.stringify(b,cc,a?" ":null)}function ob(b){return C(b)?JSON.parse(b):b}function Va(b){b&&b.length!==0?(b=w(""+b),b=!(b=="f"||b=="0"||b=="false"||b=="no"||b=="n"||b=="[]")):b=!1;return b}
function va(b){b=p(b).clone();try{b.html("")}catch(a){}return p("<div>").append(b).html().match(/^(<[^>]+>)/)[1]}function Wa(b){var a={},c,d;l((b||"").split("&"),function(b){b&&(c=b.split("="),d=decodeURIComponent(c[0]),a[d]=B(c[1])?decodeURIComponent(c[1]):!0)});return a}function pb(b){var a=[];l(b,function(b,d){a.push(Xa(d,!0)+(b===!0?"":"="+Xa(b,!0)))});return a.length?a.join("&"):""}function Ya(b){return Xa(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Xa(b,a){return encodeURIComponent(b).replace(/%40/gi,
"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(a?null:/%20/g,"+")}function dc(b,a){function c(a){a&&d.push(a)}var d=[b],e,g,f=["ng:app","ng-app","x-ng-app","data-ng-app"],i=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/;l(f,function(a){f[a]=!0;c(X.getElementById(a));a=a.replace(":","\\:");b.querySelectorAll&&(l(b.querySelectorAll("."+a),c),l(b.querySelectorAll("."+a+"\\:"),c),l(b.querySelectorAll("["+a+"]"),c))});l(d,function(a){if(!e){var b=i.exec(" "+a.className+" ");b?(e=a,g=(b[2]||
"").replace(/\s+/g,",")):l(a.attributes,function(b){if(!e&&f[b.name])e=a,g=b.value})}});e&&a(e,g?[g]:[])}function qb(b,a){b=p(b);a=a||[];a.unshift("ng");var c=rb(a);c.invoke(["$rootScope","$compile","$injector",function(a,c,g){a.$apply(function(){b.data("$injector",g);c(b)(a)})}]);return c}function Za(b,a){a=a||"_";return b.replace(ec,function(b,d){return(d?a:"")+b.toLowerCase()})}function ja(b,a,c){if(!b)throw new z("Argument '"+(a||"?")+"' is "+(c||"required"));return b}function ka(b,a,c){c&&I(b)&&
(b=b[b.length-1]);ja(L(b),a,"not a function, got "+(b&&typeof b=="object"?b.constructor.name||"Object":typeof b));return b}function fc(b){function a(a,b,e){return a[b]||(a[b]=e())}return a(a(b,"angular",Object),"module",function(){var b={};return function(d,e,g){e&&b.hasOwnProperty(d)&&(b[d]=null);return a(b,d,function(){function a(c,d,e){return function(){b[e||"push"]([c,d,arguments]);return k}}if(!e)throw z("No module: "+d);var b=[],c=[],j=a("$injector","invoke"),k={_invokeQueue:b,_runBlocks:c,
requires:e,name:d,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:j,run:function(a){c.push(a);return this}};g&&j(g);return k})}})}function sb(b){return b.replace(gc,function(a,b,d,e){return e?d.toUpperCase():d}).replace(hc,"Moz$1")}function $a(b,
a){function c(){var e;for(var b=[this],c=a,f,i,h,j,k,n,m;b.length;){f=b.shift();i=0;for(h=f.length;i<h;i++){j=p(f[i]);c?(m=(k=j.data("events"))&&k.$destroy)&&l(m,function(a){a.handler()}):c=!c;k=0;for(e=(n=j.children()).length,j=e;k<j;k++)b.push(fa(n[k]))}}return d.apply(this,arguments)}var d=fa.fn[b],d=d.$original||d;c.$original=d;fa.fn[b]=c}function S(b){if(b instanceof S)return b;if(!(this instanceof S)){if(C(b)&&b.charAt(0)!="<")throw z("selectors not implemented");return new S(b)}if(C(b)){var a=
X.createElement("div");a.innerHTML="<div>&nbsp;</div>"+b;a.removeChild(a.firstChild);ab(this,a.childNodes);this.remove()}else ab(this,b)}function bb(b){return b.cloneNode(!0)}function la(b){tb(b);for(var a=0,b=b.childNodes||[];a<b.length;a++)la(b[a])}function tb(b){var a=b[wa],c=xa[a];c&&(c.bind&&l(c.bind,function(a,c){c=="$destroy"?a({}):cb(b,c,a)}),delete xa[a],b[wa]=t)}function ya(b,a,c){var d=b[wa],d=xa[d||-1];if(B(c))d||(b[wa]=d=ic++,d=xa[d]={}),d[a]=c;else return d?d[a]:null}function za(b,a){return(" "+
b.className+" ").replace(/[\n\t]/g," ").indexOf(" "+a+" ")>-1}function ub(b,a){a&&l(a.split(" "),function(a){b.className=R((" "+b.className+" ").replace(/[\n\t]/g," ").replace(" "+R(a)+" "," "))})}function vb(b,a){a&&l(a.split(" "),function(a){if(!za(b,a))b.className=R(b.className+" "+R(a))})}function ab(b,a){if(a)for(var a=!a.nodeName&&B(a.length)&&!ia(a)?a:[a],c=0;c<a.length;c++)b.push(a[c])}function wb(b,a){return Aa(b,"$"+(a||"ngController")+"Controller")}function Aa(b,a,c){b=p(b);for(b[0].nodeType==
9&&(b=b.find("html"));b.length;){if(c=b.data(a))return c;b=b.parent()}}function xb(b,a){return yb[b.nodeName]&&Ba[a.toLowerCase()]}function db(b){var a=function(c){if(!c.preventDefault)c.preventDefault=function(){c.returnValue=!1};if(!c.stopPropagation)c.stopPropagation=function(){c.cancelBubble=!0};if(!c.target)c.target=c.srcElement||X;if(r(c.defaultPrevented)){var d=c.preventDefault;c.preventDefault=function(){c.defaultPrevented=!0;d.call(c)};c.defaultPrevented=!1}c.isDefaultPrevented=function(){return c.defaultPrevented};
l(a.fns,function(a){a.call(b,c)});da<8?(c.preventDefault=null,c.stopPropagation=null,c.isDefaultPrevented=null):(delete c.preventDefault,delete c.stopPropagation,delete c.isDefaultPrevented)};a.fns=[];return a}function ma(b){var a=typeof b,c;if(a=="object"&&b!==null)if(typeof(c=b.$$hashKey)=="function")c=b.$$hashKey();else{if(c===t)c=b.$$hashKey=sa()}else c=b;return a+":"+c}function Ca(b){l(b,this.put,this)}function eb(){}function jc(b){ka(b);if(!b.$inject){var a=b.$inject=[],c=b.toString().replace(kc,
"").match(lc);l(c[1].split(mc),function(b){b.replace(nc,function(b,c,d){a.push(d)})})}return b.$inject}function rb(b){function a(a){return function(b,c){if(M(b))l(b,nb(a));else return a(b,c)}}function c(a,b){L(b)&&(b=n.instantiate(b));if(!b.$get)throw z("Provider "+a+" must define $get factory method.");return k[a+i]=b}function d(a,b){return c(a,{$get:b})}function e(a){var b=[];l(a,function(a){if(!j.get(a))if(j.put(a,!0),C(a)){var c=na(a);b=b.concat(e(c.requires)).concat(c._runBlocks);try{for(var d=
c._invokeQueue,c=0,f=d.length;c<f;c++){var h=d[c],g=h[0]=="$injector"?n:n.get(h[0]);g[h[1]].apply(g,h[2])}}catch(i){throw i.message&&(i.message+=" from "+a),i;}}else if(L(a))try{b.push(n.invoke(a))}catch(k){throw k.message&&(k.message+=" from "+a),k;}else if(I(a))try{b.push(n.invoke(a))}catch(m){throw m.message&&(m.message+=" from "+String(a[a.length-1])),m;}else ka(a,"module")});return b}function g(a,b){function c(d){if(typeof d!=="string")throw z("Service name expected");if(a.hasOwnProperty(d)){if(a[d]===
f)throw z("Circular dependency: "+h.join(" <- "));return a[d]}else try{return h.unshift(d),a[d]=f,a[d]=b(d)}finally{h.shift()}}function d(a,b,e){var f=[],g,i,j;typeof a=="function"?(g=jc(a),i=g.length):(I(a)&&(g=a,i=g.length-1,a=g[i]),ka(a,"fn"));for(var k=0;k<i;k++)j=g[k],f.push(e&&e.hasOwnProperty(j)?e[j]:c(j,h));switch(b?-1:f.length){case 0:return a();case 1:return a(f[0]);case 2:return a(f[0],f[1]);case 3:return a(f[0],f[1],f[2]);case 4:return a(f[0],f[1],f[2],f[3]);case 5:return a(f[0],f[1],
f[2],f[3],f[4]);case 6:return a(f[0],f[1],f[2],f[3],f[4],f[5]);case 7:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6]);case 8:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7]);case 9:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8]);case 10:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],f[9]);default:return a.apply(b,f)}}return{invoke:d,instantiate:function(a,b){var c=function(){},e;c.prototype=(I(a)?a[a.length-1]:a).prototype;c=new c;e=d(a,c,b);return M(e)?e:c},get:c}}var f={},i="Provider",
h=[],j=new Ca,k={$provide:{provider:a(c),factory:a(d),service:a(function(a,b){return d(a,["$injector",function(a){return a.instantiate(b)}])}),value:a(function(a,b){return d(a,A(b))}),constant:a(function(a,b){k[a]=b;m[a]=b}),decorator:function(a,b){var c=n.get(a+i),d=c.$get;c.$get=function(){var a=o.invoke(d,c);return o.invoke(b,null,{$delegate:a})}}}},n=g(k,function(){throw z("Unknown provider: "+h.join(" <- "));}),m={},o=m.$injector=g(m,function(a){a=n.get(a+i);return o.invoke(a.$get,a)});l(e(b),
function(a){o.invoke(a||u)});return o}function oc(){var b=!0;this.disableAutoScrolling=function(){b=!1};this.$get=["$window","$location","$rootScope",function(a,c,d){function e(a){var b=null;l(a,function(a){!b&&w(a.nodeName)==="a"&&(b=a)});return b}function g(){var b=c.hash(),d;b?(d=f.getElementById(b))?d.scrollIntoView():(d=e(f.getElementsByName(b)))?d.scrollIntoView():b==="top"&&a.scrollTo(0,0):a.scrollTo(0,0)}var f=a.document;b&&d.$watch(function(){return c.hash()},function(){d.$evalAsync(g)});
return g}]}function pc(b,a,c,d,e){function g(a){try{a.apply(null,ea.call(arguments,1))}finally{if(q--,q===0)for(;s.length;)try{s.pop()()}catch(b){d.error(b)}}}function f(a,b){(function F(){l(y,function(a){a()});v=b(F,a)})()}function i(){N!=h.url()&&(N=h.url(),l(K,function(a){a(h.url())}))}var h=this,j=a[0],k=b.location,n=b.history,m=b.setTimeout,o=b.clearTimeout,J={};h.isMock=!1;var q=0,s=[];h.$$completeOutstandingRequest=g;h.$$incOutstandingRequestCount=function(){q++};h.notifyWhenNoOutstandingRequests=
function(a){l(y,function(a){a()});q===0?a():s.push(a)};var y=[],v;h.addPollFn=function(a){r(v)&&f(100,m);y.push(a);return a};var N=k.href;h.url=function(a,b){return a?(N=a,e.history?b?n.replaceState(null,"",a):n.pushState(null,"",a):b?k.replace(a):k.href=a,h):k.href};var K=[],D=!1;h.onUrlChange=function(a){D||(e.history&&p(b).bind("popstate",i),e.hashchange?p(b).bind("hashchange",i):h.addPollFn(i),D=!0);K.push(a);return a};var T={},P="";h.cookies=function(a,b){var c,e,f,g;if(a)if(b===t)j.cookie=escape(a)+
"=;expires=Thu, 01 Jan 1970 00:00:00 GMT";else{if(C(b))j.cookie=escape(a)+"="+escape(b),c=a.length+b.length+1,c>4096&&d.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+c+" > 4096 bytes)!"),T.length>20&&d.warn("Cookie '"+a+"' possibly not set or overflowed because too many cookies were already set ("+T.length+" > 20 )")}else{if(j.cookie!==P){P=j.cookie;c=P.split("; ");T={};for(f=0;f<c.length;f++)e=c[f],g=e.indexOf("="),g>0&&(T[unescape(e.substring(0,g))]=unescape(e.substring(g+
1)))}return T}};h.defer=function(a,b){var c;q++;c=m(function(){delete J[c];g(a)},b||0);J[c]=!0;return c};h.defer.cancel=function(a){return J[a]?(delete J[a],o(a),g(u),!0):!1};h.baseHref=function(){var b=a.find("base").attr("href");return b?b.replace(/^https?\:\/\/[^\/]*/,""):b}}function qc(){this.$get=["$window","$log","$sniffer","$document",function(b,a,c,d){return new pc(b,d,d.find("body"),a,c)}]}function rc(){this.$get=function(){function b(b,d){function e(a){if(a!=n){if(m){if(m==a)m=a.n}else m=
a;g(a.n,a.p);g(a,n);n=a;n.n=null}}function g(a,b){if(a!=b){if(a)a.p=b;if(b)b.n=a}}if(b in a)throw z("cacheId "+b+" taken");var f=0,i=H({},d,{id:b}),h={},j=d&&d.capacity||Number.MAX_VALUE,k={},n=null,m=null;return a[b]={put:function(a,b){var c=k[a]||(k[a]={key:a});e(c);r(b)||(a in h||f++,h[a]=b,f>j&&this.remove(m.key))},get:function(a){var b=k[a];if(b)return e(b),h[a]},remove:function(a){var b=k[a];if(b==n)n=b.p;if(b==m)m=b.n;g(b.n,b.p);delete k[a];delete h[a];f--},removeAll:function(){h={};f=0;k=
{};n=m=null},destroy:function(){k=i=h=null;delete a[b]},info:function(){return H({},i,{size:f})}}}var a={};b.info=function(){var b={};l(a,function(a,e){b[e]=a.info()});return b};b.get=function(b){return a[b]};return b}}function sc(){this.$get=["$cacheFactory",function(b){return b("templates")}]}function zb(b){var a={},c="Directive",d=/^\s*directive\:\s*([\d\w\-_]+)\s+(.*)$/,e=/(([\d\w\-_]+)(?:\:([^;]+))?;?)/,g=/\<\<content\>\>/i,f=/^\<[\s\S]*\>$/;this.directive=function h(d,e){C(d)?(ja(e,"directive"),
a.hasOwnProperty(d)||(a[d]=[],b.factory(d+c,["$injector","$exceptionHandler",function(b,c){var e=[];l(a[d],function(a){try{var f=b.invoke(a);if(L(f))f={compile:A(f)};else if(!f.compile&&f.link)f.compile=A(f.link);f.priority=f.priority||0;f.name=f.name||d;f.require=f.require||f.controller&&f.name;f.restrict=f.restrict||"A";e.push(f)}catch(g){c(g)}});return e}])),a[d].push(e)):l(d,nb(h));return this};this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller",
function(b,j,k,n,m,o,J){function q(a,b,c){a instanceof p||(a=p(a));l(a,function(b,c){b.nodeType==3&&(a[c]=p(b).wrap("<span>").parent()[0])});var d=v(a,b,a,c);return function(b,c){ja(b,"scope");var e=c?pa.clone.call(a):a;y(e.data("$scope",b),"ng-scope");c&&c(e,b);d&&d(b,e,e);return e}}function s(a,b){throw z("Unsupported '"+b+"' for '"+a+"'.");}function y(a,b){try{a.addClass(b)}catch(c){}}function v(a,b,c,d){function e(a,c,d,g){for(var h,j,k,m,n,Q=0,o=0,s=f.length;Q<s;o++)k=c[o],j=f[Q++],h=f[Q++],
j?(j.scope?(m=a.$new(M(j.scope)),p(k).data("$scope",m)):m=a,(n=j.transclude)||!g&&b?j(h,m,k,d,function(b){return function(c){var d=a.$new();return b(d,c).bind("$destroy",Ua(d,d.$destroy))}}(n||b)):j(h,m,k,t,g)):h&&h(a,k.childNodes,t,g)}for(var f=[],g,h,k,j=0;j<a.length;j++)h=new aa,g=N(a[j],[],h,d),h=(g=g.length?K(g,a[j],h,b,c):null)&&g.terminal?null:v(a[j].childNodes,g?g.transclude:b),f.push(g),f.push(h),k=k||g||h;return k?e:null}function N(a,b,c,f){var g=c.$attr;switch(a.nodeType){case 1:D(b,ba(Ab(a).toLowerCase()),
"E",f);for(var h,j,k,m=a.attributes,n=0,o=m&&m.length;n<o;n++)if(h=m[n],h.specified)j=h.name,k=ba(j.toLowerCase()),g[k]=j,c[k]=h=R(da&&j=="href"?decodeURIComponent(a.getAttribute(j,2)):h.value),xb(a,k)&&(c[k]=!0),F(a,b,h,k),D(b,k,"A",f);g=a.className;if(C(g))for(;a=e.exec(g);)k=ba(a[2]),D(b,k,"C",f)&&(c[k]=R(a[3])),g=g.substr(a.index+a[0].length);break;case 3:r(b,a.nodeValue);break;case 8:if(a=d.exec(a.nodeValue))k=ba(a[1]),D(b,k,"M",f)&&(c[k]=R(a[2]))}b.sort(Da);return b}function K(a,b,c,d,e){function f(a,
b){if(a)a.require=G.require,n.push(a);if(b)b.require=G.require,o.push(b)}function h(a,b){var c,d="data",e=!1;if(C(a)){for(;(c=a.charAt(0))=="^"||c=="?";)a=a.substr(1),c=="^"&&(d="inheritedData"),e=e||c=="?";c=b[d]("$"+a+"Controller");if(!c&&!e)throw z("No controller: "+a);}else I(a)&&(c=[],l(a,function(a){c.push(h(a,b))}));return c}function j(a,d,e,f,g){var m,Q,q,$,y;m=b===e?c:bc(c,new aa(p(e),c.$attr));Q=m.$$element;K&&M(K.scope)&&l(K.scope,function(a,b){(Fa[a]||s)(b,a,d.$parent||d,d,m)});B&&l(B,
function(a){var b={$scope:d,$element:Q,$attrs:m,$transclude:g};l(a.inject||{},function(a,c){(Fa[a]||s)(c,a,K?d.$parent||d:d,b,m)});y=a.controller;y=="@"&&(y=m[a.name]);Q.data("$"+a.name+"Controller",J(y,b))});f=0;for(q=n.length;f<q;f++)try{$=n[f],$(d,Q,m,$.require&&h($.require,Q))}catch(D){k(D,va(Q))}a&&a(d,e.childNodes,t,g);f=0;for(q=o.length;f<q;f++)try{$=o[f],$(d,Q,m,$.require&&h($.require,Q))}catch(tc){k(tc,va(Q))}}for(var m=-Number.MAX_VALUE,n=[],o=[],K=null,D=null,v=null,Da=null,F=c.$$element=
p(b),G,r,u,H,A=d,B,x,w=0,E=a.length;w<E;w++){G=a[w];u=t;if(m>G.priority)break;if(u=G.scope)oa("isolated scope",D,G,F),M(u)&&(y(F,"ng-isolate-scope"),D=G),y(F,"ng-scope"),K=K||G;r=G.name;if(u=G.controller)B=B||{},oa("'"+r+"' controller",B[r],G,F),B[r]=G;if(u=G.transclude)oa("transclusion",H,G,F),H=G,m=G.priority,u=="element"?(u=p(b),b=(F=c.$$element=p("<\!-- "+r+": "+c[r]+" --\>"))[0],Ea(e,p(u[0]),b),A=q(u,d,m)):(u=p(bb(b)),F.html(""),A=q(u.contents(),d));if(u=G.template)oa("template",v,G,F),v=G,r=
u.replace(g,F.html()),b=p(r)[0],G.replace?(Ea(e,F,b),E={$attr:{}},a=a.concat(N(b,a.splice(w+1,a.length-(w+1)),E)),T(c,E),E=a.length):F.html(r);if(G.templateUrl)oa("template",v,G,F),v=G,Da=P(a.splice(w,a.length-w),j,F,c,e,G.replace,A),E=a.length;else if(G.compile)try{x=G.compile(F,c,A),L(x)?f(null,x):x&&f(x.pre,x.post)}catch(O){k(O,va(F))}if(G.terminal)j.terminal=!0,m=Math.max(m,G.priority)}x=Da||j;x.scope=K&&K.scope;x.transclude=H&&A;return x}function D(d,e,f,g){var j=!1;if(a.hasOwnProperty(e))for(var m,
e=b.get(e+c),n=0,o=e.length;n<o;n++)try{if(m=e[n],(g===t||g>m.priority)&&m.restrict.indexOf(f)!=-1)d.push(m),j=!0}catch(s){k(s)}return j}function T(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;l(a,function(d,e){e.charAt(0)!="$"&&(b[e]&&(d+=(e==="style"?";":" ")+b[e]),a.$set(e,d,!0,c[e]))});l(b,function(b,f){f=="class"?y(e,b):f=="style"?e.attr("style",e.attr("style")+";"+b):f.charAt(0)!="$"&&!a.hasOwnProperty(f)&&(a[f]=b,d[f]=c[f])})}function P(a,b,c,d,e,h,j){var k=[],o,s,Fa=c[0],q=a.shift(),J=H({},
q,{templateUrl:null,transclude:null}),y=c.html();c.html("");n.get(q.templateUrl,{cache:m}).success(function(m){m=R(m).replace(g,y);if(h&&!m.match(f))throw z("Template must have exactly one root element: "+m);var n,q;h?(q={$attr:{}},n=p(m)[0],Ea(e,c,n),N(c[0],a,q),T(d,q)):(n=c[0],c.html(m));a.unshift(J);o=K(a,c,d,j);for(s=v(c.contents(),j);k.length;){var l=k.pop(),m=k.pop();q=k.pop();var D=k.pop(),aa=n;q!==Fa&&(aa=bb(n),Ea(m,p(q),aa));o(function(){b(s,D,aa,e,l)},D,aa,e,l)}k=null}).error(function(a,
b,c,d){throw z("Failed to load template: "+d.url);});return function(a,c,d,e,f){k?(k.push(c),k.push(d),k.push(e),k.push(f)):o(function(){b(s,c,d,e,f)},c,d,e,f)}}function Da(a,b){return b.priority-a.priority}function oa(a,b,c,d){if(b)throw z("Multiple directives ["+b.name+", "+c.name+"] asking for "+a+" on: "+va(d));}function r(a,b){var c=j(b,!0);c&&a.push({priority:0,compile:A(function(a,b){var d=b.parent(),e=d.data("$binding")||[];e.push(c);y(d.data("$binding",e),"ng-binding");a.$watch(c,function(a){b[0].nodeValue=
a})})})}function F(a,b,c,d){var e=j(c,!0);e&&b.push({priority:100,compile:A(function(a,b,c){d==="class"&&(e=j(c[d],!0));c.$$observers[d]=[];c[d]=t;a.$watch(e,function(a){c.$set(d,a)})})})}function Ea(a,b,c){var d=b[0],e=d.parentNode,f,g;if(a){f=0;for(g=a.length;f<g;f++)a[f]==d&&(a[f]=c)}e&&e.replaceChild(c,d);b[0]=c}var Fa={attribute:function(a,b,c,d,e){d[a]=e[a]},evaluate:function(a,b,c,d,e){d[a]=c.$eval(e[a])},bind:function(a,b,c,d,e){var f=j(e[a]);d.$watch(function(){return f(c)},function(b){d[a]=
b})},accessor:function(a,b,c,d,e){var f=u,g=u,h=e[a];h&&(f=o(h),g=f.assign||function(){throw z("Expression '"+h+"' not assignable.");});d[a]=function(a){return arguments.length?g(c,a):f(c)}},expression:function(a,b,c,d,e){d[a]=function(b){o(e[a])(c,b)}}},aa=function(a,b){this.$$element=a;this.$$observers={};this.$attr=b||{}};aa.prototype={$normalize:ba,$set:function(a,b,c,d){var e=xb(this.$$element[0],a.toLowerCase());e&&(this.$$element.prop(a,b),d=e);this[a]=b;d?this.$attr[a]=d:(d=this.$attr[a])||
(this.$attr[a]=d=Za(a,"-"));c!==!1&&(b===null||b===t?this.$$element.removeAttr(d):this.$$element.attr(d,b));l(this.$$observers[a],function(a){try{a(b)}catch(c){k(c)}})},$observe:function(a,b){this.$$observers[a]&&this.$$observers[a].push(b)}};return q}]}function ba(b){return sb(b.replace(uc,""))}function vc(){var b={};this.register=function(a,c){b[a]=c};this.$get=["$injector","$window",function(a,c){return function(d,e){if(C(d)){var g=d,d=b.hasOwnProperty(g)?b[g]:fb(e.$scope,g,!0)||fb(c,g,!0);ka(d,
g,!0)}return a.instantiate(d,e)}}]}function wc(){this.$get=["$rootScope","$browser",function(b,a){function c(c,e){return a.defer(function(){b.$apply(c)},e)}c.cancel=function(b){return a.defer.cancel(b)};return c}]}function xc(){this.$get=["$window",function(b){return p(b.document)}]}function yc(){this.$get=["$log",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function zc(){var b="{{",a="}}";this.startSymbol=function(a){return a?(b=a,this):b};this.endSymbol=function(c){return c?(a=
c,this):b};this.$get=["$parse",function(c){var d=b.length,e=a.length;return function(g,f){for(var i,h,j=0,k=[],n=g.length,m=!1,o=[];j<n;)(i=g.indexOf(b,j))!=-1&&(h=g.indexOf(a,i+d))!=-1?(j!=i&&k.push(g.substring(j,i)),k.push(j=c(m=g.substring(i+d,h))),j.exp=m,j=h+e,m=!0):(j!=n&&k.push(g.substring(j)),j=n);if(!(n=k.length))k.push(""),n=1;if(!f||m)return o.length=n,j=function(a){for(var b=0,c=n,d;b<c;b++){if(typeof(d=k[b])=="function")d=d(a),d==null||d==t?d="":typeof d!="string"&&(d=Z(d));o[b]=d}return o.join("")},
j.exp=g,j.parts=k,j}}]}function Bb(b){for(var b=b.split("/"),a=b.length;a--;)b[a]=Ya(b[a]);return b.join("/")}function Ga(b,a){var c=Cb.exec(b),c={protocol:c[1],host:c[3],port:x(c[5])||Db[c[1]]||null,path:c[6]||"/",search:c[8],hash:c[10]};if(a)a.$$protocol=c.protocol,a.$$host=c.host,a.$$port=c.port;return c}function qa(b,a,c){return b+"://"+a+(c==Db[b]?"":":"+c)}function Ac(b,a,c){var d=Ga(b);return decodeURIComponent(d.path)!=a||r(d.hash)||d.hash.indexOf(c)!==0?b:qa(d.protocol,d.host,d.port)+a.substr(0,
a.lastIndexOf("/"))+d.hash.substr(c.length)}function Bc(b,a,c){var d=Ga(b);if(decodeURIComponent(d.path)==a)return b;else{var e=d.search&&"?"+d.search||"",g=d.hash&&"#"+d.hash||"",f=a.substr(0,a.lastIndexOf("/")),i=d.path.substr(f.length);if(d.path.indexOf(f)!==0)throw'Invalid url "'+b+'", missing path prefix "'+f+'" !';return qa(d.protocol,d.host,d.port)+a+"#"+c+i+e+g}}function gb(b,a){a=a||"";this.$$parse=function(b){var d=Ga(b,this);if(d.path.indexOf(a)!==0)throw'Invalid url "'+b+'", missing path prefix "'+
a+'" !';this.$$path=decodeURIComponent(d.path.substr(a.length));this.$$search=Wa(d.search);this.$$hash=d.hash&&decodeURIComponent(d.hash)||"";this.$$compose()};this.$$compose=function(){var b=pb(this.$$search),d=this.$$hash?"#"+Ya(this.$$hash):"";this.$$url=Bb(this.$$path)+(b?"?"+b:"")+d;this.$$absUrl=qa(this.$$protocol,this.$$host,this.$$port)+a+this.$$url};this.$$parse(b)}function hb(b,a){var c;this.$$parse=function(b){var e=Ga(b,this);if(e.hash&&e.hash.indexOf(a)!==0)throw'Invalid url "'+b+'", missing hash prefix "'+
a+'" !';c=e.path+(e.search?"?"+e.search:"");e=Cc.exec((e.hash||"").substr(a.length));this.$$path=e[1]?(e[1].charAt(0)=="/"?"":"/")+decodeURIComponent(e[1]):"";this.$$search=Wa(e[3]);this.$$hash=e[5]&&decodeURIComponent(e[5])||"";this.$$compose()};this.$$compose=function(){var b=pb(this.$$search),e=this.$$hash?"#"+Ya(this.$$hash):"";this.$$url=Bb(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=qa(this.$$protocol,this.$$host,this.$$port)+c+(this.$$url?"#"+a+this.$$url:"")};this.$$parse(b)}function Ha(b){return function(){return this[b]}}
function Eb(b,a){return function(c){if(r(c))return this[b];this[b]=a(c);this.$$compose();return this}}function Dc(){var b="",a=!1;this.hashPrefix=function(a){return B(a)?(b=a,this):b};this.html5Mode=function(b){return B(b)?(a=b,this):a};this.$get=["$rootScope","$browser","$sniffer","$document",function(c,d,e,g){var f,i=d.baseHref()||"/",h=i.substr(0,i.lastIndexOf("/")),j=d.url();if(a){var e=f=e.history?new gb(Ac(j,i,b),h):new hb(Bc(j,i,b),b),k=qa(e.protocol(),e.host(),e.port())+h;g.bind("click",function(a){if(!a.ctrlKey&&
!(a.metaKey||a.which==2)){for(var b=p(a.target);b.length&&w(b[0].nodeName)!=="a";)b=b.parent();var d=b.prop("href");if(d&&!(b.attr("target")||d.indexOf(k)!==0))f.url(d.substr(k.length)),c.$apply(),a.preventDefault(),V.angular["ff-684208-preventDefault"]=!0}})}else f=new hb(j,b);f.absUrl()!=j&&d.url(f.absUrl(),!0);d.onUrlChange(function(a){f.absUrl()!=a&&(c.$evalAsync(function(){f.$$parse(a)}),c.$$phase||c.$digest())});var n=0;c.$watch(function(){d.url()!=f.absUrl()&&(n++,c.$evalAsync(function(){d.url(f.absUrl(),
f.$$replace);f.$$replace=!1}));return n});return f}]}function Ec(){this.$get=["$window",function(b){function a(a){a instanceof z&&(a.stack?a=a.message&&a.stack.indexOf(a.message)===-1?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function c(c){var e=b.console||{},g=e[c]||e.log||u;return g.apply?function(){var b=[];l(arguments,function(c){b.push(a(c))});return g.apply(e,b)}:function(a,b){g(a,b)}}return{log:c("log"),warn:c("warn"),info:c("info"),
error:c("error")}}]}function Fc(b){function a(a){return a.indexOf(q)!=-1}function c(){return o+1<b.length?b.charAt(o+1):!1}function d(a){return"0"<=a&&a<="9"}function e(a){return a==" "||a=="\r"||a=="\t"||a=="\n"||a=="\u000b"||a=="\u00a0"}function g(a){return"a"<=a&&a<="z"||"A"<=a&&a<="Z"||"_"==a||a=="$"}function f(a){return a=="-"||a=="+"||d(a)}function i(a,c,d){d=d||o;throw z("Lexer Error: "+a+" at column"+(B(c)?"s "+c+"-"+o+" ["+b.substring(c,d)+"]":" "+d)+" in expression ["+b+"].");}function h(){for(var a=
"",e=o;o<b.length;){var g=w(b.charAt(o));if(g=="."||d(g))a+=g;else{var h=c();if(g=="e"&&f(h))a+=g;else if(f(g)&&h&&d(h)&&a.charAt(a.length-1)=="e")a+=g;else if(f(g)&&(!h||!d(h))&&a.charAt(a.length-1)=="e")i("Invalid exponent");else break}o++}a*=1;n.push({index:e,text:a,json:!0,fn:function(){return a}})}function j(){for(var a="",c=o,f,h,k;o<b.length;){var j=b.charAt(o);if(j=="."||g(j)||d(j))j=="."&&(f=o),a+=j;else break;o++}if(f)for(h=o;h<b.length;){j=b.charAt(h);if(j=="("){k=a.substr(f-c+1);a=a.substr(0,
f-c);o=h;break}if(e(j))h++;else break}c={index:c,text:a};if(Ia.hasOwnProperty(a))c.fn=c.json=Ia[a];else{var m=Fb(a);c.fn=H(function(a,b){return m(a,b)},{assign:function(b,c){return Gb(b,a,c)}})}n.push(c);k&&(n.push({index:f,text:".",json:!1}),n.push({index:f+1,text:k,json:!1}))}function k(a){var c=o;o++;for(var d="",e=a,f=!1;o<b.length;){var g=b.charAt(o);e+=g;if(f)g=="u"?(g=b.substring(o+1,o+5),g.match(/[\da-f]{4}/i)||i("Invalid unicode escape [\\u"+g+"]"),o+=4,d+=String.fromCharCode(parseInt(g,
16))):(f=Gc[g],d+=f?f:g),f=!1;else if(g=="\\")f=!0;else if(g==a){o++;n.push({index:c,text:e,string:d,json:!0,fn:function(){return d}});return}else d+=g;o++}i("Unterminated quote",c)}for(var n=[],m,o=0,J=[],q,s=":";o<b.length;){q=b.charAt(o);if(a("\"'"))k(q);else if(d(q)||a(".")&&d(c()))h();else if(g(q)){if(j(),"{,".indexOf(s)!=-1&&J[0]=="{"&&(m=n[n.length-1]))m.json=m.text.indexOf(".")==-1}else if(a("(){}[].,;:"))n.push({index:o,text:q,json:":[,".indexOf(s)!=-1&&a("{[")||a("}]:,")}),a("{[")&&J.unshift(q),
a("}]")&&J.shift(),o++;else if(e(q)){o++;continue}else{var l=q+c(),v=Ia[q],N=Ia[l];N?(n.push({index:o,text:l,fn:N}),o+=2):v?(n.push({index:o,text:q,fn:v,json:"[,:".indexOf(s)!=-1&&a("+-")}),o+=1):i("Unexpected next character ",o,o+1)}s=q}return n}function Hc(b,a,c){function d(a,c){throw z("Syntax Error: Token '"+c.text+"' "+a+" at column "+(c.index+1)+" of the expression ["+b+"] starting at ["+b.substring(c.index)+"].");}function e(){if(P.length===0)throw z("Unexpected end of expression: "+b);return P[0]}
function g(a,b,c,d){if(P.length>0){var e=P[0],f=e.text;if(f==a||f==b||f==c||f==d||!a&&!b&&!c&&!d)return e}return!1}function f(b,c,e,f){return(b=g(b,c,e,f))?(a&&!b.json&&d("is not valid json",b),P.shift(),b):!1}function i(a){f(a)||d("is unexpected, expecting ["+a+"]",g())}function h(a,b){return function(c,d){return a(c,d,b)}}function j(a,b,c){return function(d,e){return b(d,e,a,c)}}function k(){for(var a=[];;)if(P.length>0&&!g("}",")",";","]")&&a.push(B()),!f(";"))return a.length==1?a[0]:function(b,
c){for(var d,e=0;e<a.length;e++){var f=a[e];f&&(d=f(b,c))}return d}}function n(){for(var a=f(),b=c(a.text),d=[];;)if(a=f(":"))d.push(r());else{var e=function(a,c,e){for(var e=[e],f=0;f<d.length;f++)e.push(d[f](a,c));return b.apply(a,e)};return function(){return e}}}function m(){for(var a=o(),b;;)if(b=f("||"))a=j(a,b.fn,o());else return a}function o(){var a=l(),b;if(b=f("&&"))a=j(a,b.fn,o());return a}function l(){var a=q(),b;if(b=f("==","!="))a=j(a,b.fn,l());return a}function q(){var a;a=s();for(var b;b=
f("+","-");)a=j(a,b.fn,s());if(b=f("<",">","<=",">="))a=j(a,b.fn,q());return a}function s(){for(var a=y(),b;b=f("*","/","%");)a=j(a,b.fn,y());return a}function y(){var a;return f("+")?v():(a=f("-"))?j(D,a.fn,y()):(a=f("!"))?h(a.fn,y()):v()}function v(){var a;if(f("("))a=B(),i(")");else if(f("["))a=N();else if(f("{"))a=K();else{var b=f();(a=b.fn)||d("not a primary expression",b)}for(var c;b=f("(","[",".");)b.text==="("?(a=p(a,c),c=null):b.text==="["?(c=a,a=F(a)):b.text==="."?(c=a,a=x(a)):d("IMPOSSIBLE");
return a}function N(){var a=[];if(e().text!="]"){do a.push(r());while(f(","))}i("]");return function(b,c){for(var d=[],e=0;e<a.length;e++)d.push(a[e](b,c));return d}}function K(){var a=[];if(e().text!="}"){do{var b=f(),b=b.string||b.text;i(":");var c=r();a.push({key:b,value:c})}while(f(","))}i("}");return function(b,c){for(var d={},e=0;e<a.length;e++){var f=a[e],g=f.value(b,c);d[f.key]=g}return d}}var D=A(0),T,P=Fc(b),r=function(){var a=m(),c,e;return(e=f("="))?(a.assign||d("implies assignment but ["+
b.substring(0,e.index)+"] can not be assigned to",e),c=m(),function(b,d){return a.assign(b,c(b,d),d)}):a},p=function(a,b){var c=[];if(e().text!=")"){do c.push(r());while(f(","))}i(")");return function(d,e){for(var f=[],g=b?b(d,e):d,h=0;h<c.length;h++)f.push(c[h](d,e));h=a(d,e)||u;return h.apply?h.apply(g,f):h(f[0],f[1],f[2],f[3],f[4])}},x=function(a){var b=f().text,c=Fb(b);return H(function(b,d){return c(a(b,d),d)},{assign:function(c,d,e){return Gb(a(c,e),b,d)}})},F=function(a){var b=r();i("]");return H(function(c,
d){var e=a(c,d),f=b(c,d),g;if(!e)return t;if((e=e[f])&&e.then){g=e;if(!("$$v"in e))g.$$v=t,g.then(function(a){g.$$v=a});e=e.$$v}return e},{assign:function(c,d,e){return a(c,e)[b(c,e)]=d}})},B=function(){for(var a=r(),b;;)if(b=f("|"))a=j(a,b.fn,n());else return a};a?(r=m,p=x=F=B=function(){d("is not valid json",{text:b,index:0})},T=v()):T=k();P.length!==0&&d("is an unexpected token",P[0]);return T}function Gb(b,a,c){for(var a=a.split("."),d=0;a.length>1;d++){var e=a.shift(),g=b[e];g||(g={},b[e]=g);
b=g}return b[a.shift()]=c}function fb(b,a,c){if(!a)return b;for(var a=a.split("."),d,e=b,g=a.length,f=0;f<g;f++)d=a[f],b&&(b=(e=b)[d]);return!c&&L(b)?Ua(e,b):b}function Fb(b){if(ib.hasOwnProperty(b))return ib[b];var a,c="var l, fn, p;\n";l(b.split("."),function(a,b){c+="if(!s) return s;\nl=s;\ns="+(b?"s":'((k&&k.hasOwnProperty("'+a+'"))?k:s)')+'["'+a+'"];\nif (s && s.then) {\n if (!("$$v" in s)) {\n p=s;\n p.$$v = undefined;\n p.then(function(v) {p.$$v=v;});\n}\n s=s.$$v\n}\n'});c+="return s;";a=
Function("s","k",c);a.toString=function(){return c};return ib[b]=a}function Ic(){var b={};this.$get=["$filter",function(a){return function(c){switch(typeof c){case "string":return b.hasOwnProperty(c)?b[c]:b[c]=Hc(c,!1,a);case "function":return c;default:return u}}}]}function Jc(){this.$get=["$rootScope","$exceptionHandler",function(b,a){return Kc(function(a){b.$evalAsync(a)},a)}]}function Kc(b,a){function c(a){return a}function d(a){return f(a)}var e=function(){var i=[],h,j;return j={resolve:function(a){if(i){var c=
i;i=t;h=g(a);c.length&&b(function(){for(var a,b=0,d=c.length;b<d;b++)a=c[b],h.then(a[0],a[1])})}},reject:function(a){j.resolve(f(a))},promise:{then:function(b,f){var g=e(),j=function(d){try{g.resolve((b||c)(d))}catch(e){a(e),g.reject(e)}},l=function(b){try{g.resolve((f||d)(b))}catch(c){a(c),g.reject(c)}};i?i.push([j,l]):h.then(j,l);return g.promise}}}},g=function(a){return a&&a.then?a:{then:function(c){var d=e();b(function(){d.resolve(c(a))});return d.promise}}},f=function(a){return{then:function(c,
f){var g=e();b(function(){g.resolve((f||d)(a))});return g.promise}}};return{defer:e,reject:f,when:function(i,h,j){var k=e(),n,m=function(b){try{return(h||c)(b)}catch(d){return a(d),f(d)}},o=function(b){try{return(j||d)(b)}catch(c){return a(c),f(c)}};b(function(){g(i).then(function(a){n||(n=!0,k.resolve(g(a).then(m,o)))},function(a){n||(n=!0,k.resolve(o(a)))})});return k.promise},all:function(a){var b=e(),c=a.length,d=[];c?l(a,function(a,e){g(a).then(function(a){e in d||(d[e]=a,--c||b.resolve(d))},
function(a){e in d||b.reject(a)})}):b.resolve(d);return b.promise}}}function Lc(){var b={};this.when=function(a,c){b[a]=H({reloadOnSearch:!0},c);if(a){var d=a[a.length-1]=="/"?a.substr(0,a.length-1):a+"/";b[d]={redirectTo:a}}return this};this.otherwise=function(a){this.when(null,a);return this};this.$get=["$rootScope","$location","$routeParams",function(a,c,d){function e(){var a,d;l(b,function(b,e){if(!d&&(a=f(c.path(),e)))d=Qa(b,{params:H({},c.search(),a),pathParams:a}),d.$route=b});return d||b[null]&&
Qa(b[null],{params:{},pathParams:{}})}function g(a,b){var c=[];l((a||"").split(":"),function(a,d){if(d==0)c.push(a);else{var e=a.match(/(\w+)(.*)/),f=e[1];c.push(b[f]);c.push(e[2]||"");delete b[f]}});return c.join("")}var f=function(a,b){var c="^"+b.replace(/([\.\\\(\)\^\$])/g,"\\$1")+"$",d=[],e={};l(b.split(/\W/),function(a){if(a){var b=RegExp(":"+a+"([\\W])");c.match(b)&&(c=c.replace(b,"([^\\/]*)$1"),d.push(a))}});var f=a.match(RegExp(c));f&&l(d,function(a,b){e[a]=f[b+1]});return f?e:null},i=0,
h=!1,j={routes:b,reload:function(){i++;h=!0}};a.$watch(function(){return i+c.url()},function(){var b=e(),f=j.current;if(b&&f&&b.$route===f.$route&&ca(b.pathParams,f.pathParams)&&!b.reloadOnSearch&&!h)f.params=b.params,W(f.params,d),a.$broadcast("$routeUpdate",f);else if(b||f)h=!1,a.$broadcast("$beforeRouteChange",b,f),(j.current=b)&&(b.redirectTo?C(b.redirectTo)?c.path(g(b.redirectTo,b.params)).search(b.params).replace():c.url(b.redirectTo(b.pathParams,c.path(),c.search())).replace():W(b.params,d)),
a.$broadcast("$afterRouteChange",b,f)});return j}]}function Mc(){this.$get=A({})}function Nc(){var b=10;this.digestTtl=function(a){arguments.length&&(b=a);return b};this.$get=["$injector","$exceptionHandler","$parse",function(a,c,d){function e(){this.$id=sa();this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this["this"]=this.$root=this;this.$$asyncQueue=[];this.$$listeners={}}function g(a,b){var c=a.$root;if(c.$$phase)throw z(c.$$phase+
" already in progress");c.$$phase=b}function f(a,b){var c=d(a);ka(c,b);return c}function i(){}e.prototype={$new:function(a){if(L(a))throw z("API-CHANGE: Use $controller to instantiate controllers.");a?(a=new e,a.$root=this.$root):(a=function(){},a.prototype=this,a=new a,a.$id=sa());a["this"]=a;a.$$listeners={};a.$parent=this;a.$$asyncQueue=[];a.$$watchers=a.$$nextSibling=a.$$childHead=a.$$childTail=null;a.$$prevSibling=this.$$childTail;this.$$childHead?this.$$childTail=this.$$childTail.$$nextSibling=
a:this.$$childHead=this.$$childTail=a;return a},$watch:function(a,b,c){var d=f(a,"watch"),e=this.$$watchers,g={fn:b,last:i,get:d,exp:a,eq:!!c};if(!L(b)){var l=f(b||u,"listener");g.fn=function(a,b,c){l(c)}}if(!e)e=this.$$watchers=[];e.unshift(g);return function(){ua(e,g)}},$digest:function(){var a,d,e,f,m,o,l,q=b,s,y=[],v,N;g(this,"$digest");do{l=!1;s=this;do{for(m=s.$$asyncQueue;m.length;)try{s.$eval(m.shift())}catch(K){c(K)}if(f=s.$$watchers)for(o=f.length;o--;)try{if(a=f[o],(d=a.get(s))!==(e=a.last)&&
!(a.eq?ca(d,e):typeof d=="number"&&typeof e=="number"&&isNaN(d)&&isNaN(e)))l=!0,a.last=a.eq?W(d):d,a.fn(d,e===i?d:e,s),q<5&&(v=4-q,y[v]||(y[v]=[]),N=L(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,N+="; newVal: "+Z(d)+"; oldVal: "+Z(e),y[v].push(N))}catch(D){c(D)}if(!(f=s.$$childHead||s!==this&&s.$$nextSibling))for(;s!==this&&!(f=s.$$nextSibling);)s=s.$parent}while(s=f);if(l&&!q--)throw z(b+" $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: "+Z(y));}while(l||
m.length);this.$root.$$phase=null},$destroy:function(){if(this.$root!=this){var a=this.$parent;this.$broadcast("$destroy");if(a.$$childHead==this)a.$$childHead=this.$$nextSibling;if(a.$$childTail==this)a.$$childTail=this.$$prevSibling;if(this.$$prevSibling)this.$$prevSibling.$$nextSibling=this.$$nextSibling;if(this.$$nextSibling)this.$$nextSibling.$$prevSibling=this.$$prevSibling}},$eval:function(a,b){return d(a)(this,b)},$evalAsync:function(a){this.$$asyncQueue.push(a)},$apply:function(a){try{return g(this,
"$apply"),this.$eval(a)}catch(b){c(b)}finally{this.$root.$$phase=null,this.$root.$digest()}},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]=c=[]);c.push(b);return function(){va(c,b)}},$emit:function(a,b){var d=[],e,f=this,g={name:a,targetScope:f,cancel:function(){g.cancelled=!0},cancelled:!1},h=[g].concat(ga.call(arguments,1)),l,s;do{e=f.$$listeners[a]||d;g.currentScope=f;l=0;for(s=e.length;l<s;l++)try{if(e[l].apply(null,h),g.cancelled)return g}catch(x){c(x)}f=f.$parent}while(f);
return g},$broadcast:function(a,b){var d=this,e=this,f={name:a,targetScope:this},g=[f].concat(ga.call(arguments,1));do if(d=e,f.currentScope=d,l(d.$$listeners[a],function(a){try{a.apply(null,g)}catch(b){c(b)}}),!(e=d.$$childHead||d!==this&&d.$$nextSibling))for(;d!==this&&!(e=d.$$nextSibling);)d=d.$parent;while(d=e);return f}};return new e}]}function hd(){this.$get=y(function(b){var a=[];id(b,Lb(a));return a.join("")})}function id(b,a){function c(b,c,e,g){c=A(c);if(Mb[c])for(;f.last()&&Nb[f.last()];)d("",
f.last());Ob[c]&&f.last()==c&&d("",c);(g=Pb[c]||!!g)||f.push(c);var h={};e.replace(jd,function(a,b,c,d,e){h[b]=lb(c||d||e||"")});a.start&&a.start(c,h,g)}function d(b,c){var d=0,e;if(c=A(c))for(d=f.length-1;d>=0;d--)if(f[d]==c)break;if(d>=0){for(e=f.length-1;e>=d;e--)a.end&&a.end(f[e]);f.length=d}}var e,g,f=[],h=b;for(f.last=function(){return f[f.length-1]};b;){g=!0;if(!f.last()||!Qb[f.last()]){if(b.indexOf("<\!--")===0)e=b.indexOf("--\>"),e>=0&&(a.comment&&a.comment(b.substring(4,e)),b=b.substring(e+
3),g=!1);else if(kd.test(b)){if(e=b.match(Rb))b=b.substring(e[0].length),e[0].replace(Rb,d),g=!1}else if(ld.test(b)&&(e=b.match(Sb)))b=b.substring(e[0].length),e[0].replace(Sb,c),g=!1;g&&(e=b.indexOf("<"),g=e<0?b:b.substring(0,e),b=e<0?"":b.substring(e),a.chars&&a.chars(lb(g)))}else b=b.replace(RegExp("(.*)<\\s*\\/\\s*"+f.last()+"[^>]*>","i"),function(b,c){c=c.replace(md,"$1").replace(nd,"$1");a.chars&&a.chars(lb(c));return""}),d("",f.last());if(b==h)throw"Parse Error: "+b;h=b}d()}function lb(b){mb.innerHTML=
b.replace(/</g,"&lt;");return mb.innerText||mb.textContent||""}function Tb(b){return b.replace(/&/g,"&amp;").replace(od,function(a){return"&#"+a.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Lb(b){var a=!1,c=wa(b,b.push);return{start:function(b,e,g){b=A(b);!a&&Qb[b]&&(a=b);!a&&Ub[b]==!0&&(c("<"),c(b),l(e,function(a,b){var d=A(b);if(pd[d]==!0&&(Vb[d]!==!0||a.match(qd)))c(" "),c(b),c('="'),c(Tb(a)),c('"')}),c(g?"/>":">"))},end:function(b){b=A(b);!a&&Ub[b]==!0&&(c("</"),c(b),
c(">"));b==a&&(a=!1)},chars:function(b){a||c(Tb(b))}}}function rd(){this.$get=["$window",function(b){var a={};return{history:!(!b.history||!b.history.pushState),hashchange:"onhashchange"in b&&(!b.document.documentMode||b.document.documentMode>7),hasEvent:function(c){if(p(a[c])){var d=b.document.createElement("div");a[c]="on"+c in d}return a[c]}}}]}function sd(){this.$get=y(V)}function Wb(b){var a={},c,d,e;if(!b)return a;l(b.split("\n"),function(b){e=b.indexOf(":");c=A(R(b.substr(0,e)));d=R(b.substr(e+
1));c&&(a[c]?a[c]+=", "+d:a[c]=d)});return a}function Xb(b){var a=M(b)?b:t;return function(c){a||(a=Wb(b));return c?a[A(c)]||null:a}}function Yb(b,a,c){if(L(c))return c(b,a);l(c,function(c){b=c(b,a)});return b}function td(){var b=/^\s*(\[|\{[^\{])/,a=/[\}\]]\s*$/,c=/^\)\]\}',?\n/,d=this.defaults={transformResponse:[function(d){C(d)&&(d=d.replace(c,""),b.test(d)&&a.test(d)&&(d=sb(d,!0)));return d}],transformRequest:[function(a){return M(a)&&Ua.apply(a)!=="[object File]"?$(a):a}],headers:{common:{Accept:"application/json, text/plain, */*",
"X-Requested-With":"XMLHttpRequest"},post:{"Content-Type":"application/json"},put:{"Content-Type":"application/json"}}},e=this.responseInterceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(a,b,c,i,j,k){function n(a){function c(a){var b=u({},a,{data:Yb(a.data,a.headers,g)});return 200<=a.status&&a.status<300?b:j.reject(b)}a.method=ia(a.method);var e=a.transformRequest||d.transformRequest,g=a.transformResponse||d.transformResponse,h=d.headers,h=
u({"X-XSRF-TOKEN":b.cookies()["XSRF-TOKEN"]},h.common,h[A(a.method)],a.headers),e=Yb(a.data,Xb(h),e),i;p(a.data)&&delete h["Content-Type"];i=m(a,e,h);i=i.then(c,c);l(r,function(a){i=a(i)});i.success=function(b){i.then(function(c){b(c.data,c.status,c.headers,a)});return i};i.error=function(b){i.then(null,function(c){b(c.data,c.status,c.headers,a)});return i};return i}function m(b,c,d){function e(a,b,c){l&&(200<=a&&a<300?l.put(p,[a,b,Wb(c)]):l.remove(p));f(b,a,c);i.$apply()}function f(a,c,d){c=Math.max(c,
0);(200<=c&&c<300?m.resolve:m.reject)({data:a,status:c,headers:Xb(d),config:b})}function h(){var a=Wa(n.pendingRequests,b);a!==-1&&n.pendingRequests.splice(a,1)}var m=j.defer(),k=m.promise,l,r,p=o(b.url,b.params);n.pendingRequests.push(b);k.then(h,h);b.cache&&b.method=="GET"&&(l=M(b.cache)?b.cache:I);if(l)if(r=l.get(p))if(r.then)return r.then(h,h),r;else J(r)?f(r[1],r[0],X(r[2])):f(r,200,{});else l.put(p,k);r||a(b.method,p,c,e,d,b.timeout,b.withCredentials);return k}function o(a,b){if(!b)return a;
var c=[];qc(b,function(a,b){a==null||a==t||(M(a)&&(a=$(a)),c.push(encodeURIComponent(b)+"="+encodeURIComponent(a)))});return a+(a.indexOf("?")==-1?"?":"&")+c.join("&")}var I=c("$http"),r=[];l(e,function(a){r.push(C(a)?k.get(a):k.invoke(a))});n.pendingRequests=[];(function(a){l(arguments,function(a){n[a]=function(b,c){return n(u(c||{},{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){l(arguments,function(a){n[a]=function(b,c,d){return n(u(d||{},{method:a,url:b,data:c}))}})})("post",
"put");return n}]}function ud(){this.$get=["$browser","$window","$document",function(b,a,c){return vd(b,wd,b.defer,a.angular.callbacks,c[0].body,a.location.protocol.replace(":",""))}]}function vd(b,a,c,d,e,g){return function(f,h,i,j,k,n,m){function o(a,c,d,e){c=(h.match(Gb)||["",g])[1]=="file"?d?200:404:c;a(c==1223?204:c,d,e);b.$$completeOutstandingRequest(E)}b.$$incOutstandingRequestCount();h=h||b.url();if(A(f)=="jsonp"){var I="_"+(d.counter++).toString(36);d[I]=function(a){d[I].data=a};var r=b.addJs(h.replace("JSON_CALLBACK",
"angular.callbacks."+I),function(){d[I].data?o(j,200,d[I].data):o(j,-2);delete d[I];e.removeChild(r)})}else{var s=new a;s.open(f,h,!0);l(k,function(a,b){a&&s.setRequestHeader(b,a)});var p;s.onreadystatechange=function(){s.readyState==4&&o(j,p||s.status,s.responseText,s.getAllResponseHeaders())};if(m)s.withCredentials=!0;s.send(i||"");n>0&&c(function(){p=-1;s.abort()},n)}}}function xd(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,
maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"\u00a4",posSuf:"",negPre:"(\u00a4",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),
AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(b){return b===1?"one":"other"}}}}function Zb(b){function a(a,e){return b.factory(a+c,e)}var c="Filter";this.register=a;this.$get=["$injector",function(a){return function(b){return a.get(b+c)}}];a("currency",$b);a("date",ac);a("filter",yd);a("json",zd);a("limitTo",Ad);a("linky",Bd);
a("lowercase",Cd);a("number",bc);a("orderBy",cc);a("uppercase",Dd)}function yd(){return function(b,a){if(!(b instanceof Array))return b;var c=[];c.check=function(a){for(var b=0;b<c.length;b++)if(!c[b](a))return!1;return!0};var d=function(a,b){if(b.charAt(0)==="!")return!d(a,b.substr(1));switch(typeof a){case "boolean":case "number":case "string":return(""+a).toLowerCase().indexOf(b)>-1;case "object":for(var c in a)if(c.charAt(0)!=="$"&&d(a[c],b))return!0;return!1;case "array":for(c=0;c<a.length;c++)if(d(a[c],
b))return!0;return!1;default:return!1}};switch(typeof a){case "boolean":case "number":case "string":a={$:a};case "object":for(var e in a)e=="$"?function(){var b=(""+a[e]).toLowerCase();b&&c.push(function(a){return d(a,b)})}():function(){var b=e,f=(""+a[e]).toLowerCase();f&&c.push(function(a){return d(hb(a,b),f)})}();break;case "function":c.push(a);break;default:return b}for(var g=[],f=0;f<b.length;f++){var h=b[f];c.check(h)&&g.push(h)}return g}}function $b(b){var a=b.NUMBER_FORMATS;return function(b,
d){if(p(d))d=a.CURRENCY_SYM;return dc(b,a.PATTERNS[1],a.GROUP_SEP,a.DECIMAL_SEP,2).replace(/\u00A4/g,d)}}function bc(b){var a=b.NUMBER_FORMATS;return function(b,d){return dc(b,a.PATTERNS[0],a.GROUP_SEP,a.DECIMAL_SEP,d)}}function dc(b,a,c,d,e){if(isNaN(b)||!isFinite(b))return"";var g=b<0,b=Math.abs(b),f=b+"",h="",i=[];if(f.indexOf("e")!==-1)h=f;else{f=(f.split(ec)[1]||"").length;p(e)&&(e=Math.min(Math.max(a.minFrac,f),a.maxFrac));var f=Math.pow(10,e),b=Math.round(b*f)/f,b=(""+b).split(ec),f=b[0],b=
b[1]||"",j=0,k=a.lgSize,n=a.gSize;if(f.length>=k+n)for(var j=f.length-k,m=0;m<j;m++)(j-m)%n===0&&m!==0&&(h+=c),h+=f.charAt(m);for(m=j;m<f.length;m++)(f.length-m)%k===0&&m!==0&&(h+=c),h+=f.charAt(m);for(;b.length<e;)b+="0";e&&(h+=d+b.substr(0,e))}i.push(g?a.negPre:a.posPre);i.push(h);i.push(g?a.negSuf:a.posSuf);return i.join("")}function nb(b,a,c){var d="";b<0&&(d="-",b=-b);for(b=""+b;b.length<a;)b="0"+b;c&&(b=b.substr(b.length-a));return d+b}function F(b,a,c,d){return function(e){e=e["get"+b]();if(c>
0||e>-c)e+=c;e===0&&c==-12&&(e=12);return nb(e,a,d)}}function La(b,a){return function(c,d){var e=c["get"+b](),g=ia(a?"SHORT"+b:b);return d[g][e]}}function ac(b){function a(a){var b;if(b=a.match(c)){var a=new Date(0),g=0,f=0;b[9]&&(g=w(b[9]+b[10]),f=w(b[9]+b[11]));a.setUTCFullYear(w(b[1]),w(b[2])-1,w(b[3]));a.setUTCHours(w(b[4]||0)-g,w(b[5]||0)-f,w(b[6]||0),w(b[7]||0))}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d{3}))?)?)?(Z|([+-])(\d\d):?(\d\d)))?$/;return function(c,
e){var g="",f=[],h,i,e=e||"mediumDate",e=b.DATETIME_FORMATS[e]||e;C(c)&&(c=Ed.test(c)?w(c):a(c));ta(c)&&(c=new Date(c));if(!ja(c))return c;for(;e;)(i=Fd.exec(e))?(f=f.concat(ga.call(i,1)),e=f.pop()):(f.push(e),e=null);l(f,function(a){h=Gd[a];g+=h?h(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function zd(){return function(b){return $(b,!0)}}function Bd(){var b=/((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s\.\;\,\(\)\{\}\<\>]/,a=/^mailto:/;return function(c){if(!c)return c;
for(var d=c,e=[],g=Lb(e),f,h;c=d.match(b);)f=c[0],c[2]==c[3]&&(f="mailto:"+f),h=c.index,g.chars(d.substr(0,h)),g.start("a",{href:f}),g.chars(c[0].replace(a,"")),g.end("a"),d=d.substring(h+c[0].length);g.chars(d);return e.join("")}}function Ad(){return function(b,a){if(!(b instanceof Array))return b;var a=w(a),c=[],d,e;if(!b||!(b instanceof Array))return c;a>b.length?a=b.length:a<-b.length&&(a=-b.length);a>0?(d=0,e=a):(d=b.length+a,e=b.length);for(;d<e;d++)c.push(b[d]);return c}}function cc(b){return function(a,
c,d){function e(a,b){return Xa(b)?function(b,c){return a(c,b)}:a}if(!(a instanceof Array))return a;if(!c)return a;for(var c=J(c)?c:[c],c=Va(c,function(a){var c=!1,d=a||ua;if(C(a)){if(a.charAt(0)=="+"||a.charAt(0)=="-")c=a.charAt(0)=="-",a=a.substring(1);d=b(a)}return e(function(a,b){var c;c=d(a);var e=d(b),f=typeof c,g=typeof e;f==g?(f=="string"&&(c=c.toLowerCase()),f=="string"&&(e=e.toLowerCase()),c=c===e?0:c<e?-1:1):c=f<g?-1:1;return c},c)}),g=[],f=0;f<a.length;f++)g.push(a[f]);return g.sort(e(function(a,
b){for(var d=0;d<c.length;d++){var e=c[d](a,b);if(e!==0)return e}return 0},d))}}function O(b){L(b)&&(b={link:b});b.restrict=b.restrict||"AC";return y(b)}function fc(b,a){function c(a,c){c=c?"-"+ab(c,"-"):"";b.removeClass((a?Ma:Na)+c).addClass((a?Na:Ma)+c)}var d=this,e=b.parent().controller("form")||Oa,g=0,f=d.$error={};d.$name=a.name;d.$dirty=!1;d.$pristine=!0;d.$valid=!0;d.$invalid=!1;e.$addControl(d);b.addClass(Pa);c(!0);d.$addControl=function(a){a.$name&&!d.hasOwnProperty(a.$name)&&(d[a.$name]=
a)};d.$removeControl=function(a){a.$name&&d[a.$name]===a&&delete d[a.$name];l(f,function(b,c){d.$setValidity(c,!0,a)})};d.$setValidity=function(a,b,j){var k=f[a];if(b){if(k&&(va(k,j),!k.length)){g--;if(!g)c(b),d.$valid=!0,d.$invalid=!1;f[a]=!1;c(!0,a);e.$setValidity(a,!0,d)}}else{g||c(b);if(k){if(Wa(k,j)!=-1)return}else f[a]=k=[],g++,c(!1,a),e.$setValidity(a,!1,d);k.push(j);d.$valid=!1;d.$invalid=!0}};d.$setDirty=function(){b.removeClass(Pa).addClass(gc);d.$dirty=!0;d.$pristine=!1}}function U(b){return p(b)||
b===""||b===null||b!==b}function Qa(b,a,c,d,e,g){var f=function(){var c=R(a.val());d.$viewValue!==c&&b.$apply(function(){d.$setViewValue(c)})};if(e.hasEvent("input"))a.bind("input",f);else{var h;a.bind("keydown",function(a){a=a.keyCode;a===91||15<a&&a<19||37<=a&&a<=40||h||(h=g.defer(function(){f();h=null}))});a.bind("change",f)}d.$render=function(){a.val(U(d.$viewValue)?"":d.$viewValue)};var i=c.ngPattern,j=function(a,b){return U(b)||a.test(b)?(d.$setValidity("pattern",!0),b):(d.$setValidity("pattern",
!1),t)};i&&(i.match(/^\/(.*)\/$/)?(i=RegExp(i.substr(1,i.length-2)),e=function(a){return j(i,a)}):e=function(a){var c=b.$eval(i);if(!c||!c.test)throw new z("Expected "+i+" to be a RegExp but was "+c);return j(c,a)},d.$formatters.push(e),d.$parsers.push(e));if(c.ngMinlength){var k=w(c.ngMinlength),e=function(a){return!U(a)&&a.length<k?(d.$setValidity("minlength",!1),t):(d.$setValidity("minlength",!0),a)};d.$parsers.push(e);d.$formatters.push(e)}if(c.ngMaxlength){var n=w(c.ngMaxlength),c=function(a){return!U(a)&&
a.length>n?(d.$setValidity("maxlength",!1),t):(d.$setValidity("maxlength",!0),a)};d.$parsers.push(c);d.$formatters.push(c)}}function ob(b,a){b="ngClass"+b;return O(function(c,d,e){c.$watch(e[b],function(b,e){if(a===!0||c.$index%2===a)e&&b!==e&&(M(e)&&!J(e)&&(e=Va(e,function(a,b){if(a)return b})),d.removeClass(J(e)?e.join(" "):e)),M(b)&&!J(b)&&(b=Va(b,function(a,b){if(a)return b})),b&&d.addClass(J(b)?b.join(" "):b)},!0)})}if(typeof W.getAttribute==Ta)W.getAttribute=function(){};var A=function(b){return C(b)?
b.toLowerCase():b},ia=function(b){return C(b)?b.toUpperCase():b},oc="length",pc="name",rc="object",sc="string",Ta="undefined",z=V.Error,ea=w((/msie (\d+)/.exec(A(navigator.userAgent))||[])[1]),q,ha,ga=[].slice,fa=[].push,Ua=Object.prototype.toString,hc=V.angular||(V.angular={}),pa,Eb,Y=["0","0","0"];E.$inject=[];ua.$inject=[];Eb=ea<9?function(b){b=b.nodeName?b:b[0];return b.scopeName&&b.scopeName!="HTML"?ia(b.scopeName+":"+b.nodeName):b.nodeName}:function(b){return b.nodeName?b.nodeName:b[0].nodeName};
var yc=/[A-Z]/g,Hd={full:"1.0.0rc4",major:1,minor:0,dot:0,codeName:"insomnia-induction"},za={},ya="ng-"+(new Date).getTime(),Cc=1,Id=V.document.addEventListener?function(b,a,c){b.addEventListener(a,c,!1)}:function(b,a,c){b.attachEvent("on"+a,c)},eb=V.document.removeEventListener?function(b,a,c){b.removeEventListener(a,c,!1)}:function(b,a,c){b.detachEvent("on"+a,c)},Ac=/([\:\-\_]+(.))/g,Bc=/^moz([A-Z])/,ra=S.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;this.bind("DOMContentLoaded",
a);S(V).bind("load",a)},toString:function(){var b=[];l(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return b>=0?q(this[b]):q(this[this.length+b])},length:0,push:fa,sort:[].sort,splice:[].splice},Da={};l("multiple,selected,checked,disabled,readOnly,required".split(","),function(b){Da[A(b)]=b});var Cb={};l("input,select,option,textarea,button,form".split(","),function(b){Cb[ia(b)]=!0});l({data:Aa,inheritedData:Ca,scope:function(b){return Ca(b,"$scope")},controller:Ab,injector:function(b){return Ca(b,
"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Ba,css:function(b,a,c){a=wb(a);if(v(c))b.style[a]=c;else{var d;ea<=8&&(d=b.currentStyle&&b.currentStyle[a],d===""&&(d="auto"));d=d||b.style[a];ea<=8&&(d=d===""?t:d);return d}},attr:function(b,a,c){var d=A(a);if(Da[d])if(v(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||E).specified?d:t;else if(v(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,
2),b===null?t:b},prop:function(b,a,c){if(v(c))b[a]=c;else return b[a]},text:u(ea<9?function(b,a){if(b.nodeType==1){if(p(a))return b.innerText;b.innerText=a}else{if(p(a))return b.nodeValue;b.nodeValue=a}}:function(b,a){if(p(a))return b.textContent;b.textContent=a},{$dv:""}),val:function(b,a){if(p(a))return b.value;b.value=a},html:function(b,a){if(p(a))return b.innerHTML;for(var c=0,d=b.childNodes;c<d.length;c++)na(d[c]);b.innerHTML=a}},function(b,a){S.prototype[a]=function(a,d){var e,g;if((b.length==
2&&b!==Ba&&b!==Ab?a:d)===t)if(M(a)){for(e=0;e<this.length;e++)for(g in a)b(this[e],g,a[g]);return this}else{if(this.length)return b(this[0],a,d)}else{for(e=0;e<this.length;e++)b(this[e],a,d);return this}return b.$dv}});l({removeData:xb,dealoc:na,bind:function a(c,d,e){var g=Aa(c,"bind");g||Aa(c,"bind",g={});l(d.split(" "),function(d){var h=g[d];if(!h)if(d=="mouseenter"||d=="mouseleave"){var i=g.mouseenter=fb(c),j=g.mouseleave=fb(c),k=0;a(c,"mouseover",function(a){k++;if(k==1)a.type="mouseenter",i(a)});
a(c,"mouseout",function(a){k--;if(k==0)a.type="mouseleave",j(a)});h=g[d]}else h=g[d]=fb(c),Id(c,d,h);h.fns.push(e)})},unbind:function(a,c,d){var e=Aa(a,"bind");e&&(p(c)?l(e,function(c,d){eb(a,d,c);delete e[d]}):p(d)?(eb(a,c,e[c]),delete e[c]):va(e[c].fns,d))},replaceWith:function(a,c){var d,e=a.parentNode;na(a);l(new S(c),function(c){d?e.insertBefore(c,d.nextSibling):e.replaceChild(c,a);d=c})},children:function(a){var c=[];l(a.childNodes,function(a){a.nodeName!="#text"&&c.push(a)});return c},contents:function(a){return a.childNodes},
append:function(a,c){l(new S(c),function(c){a.nodeType===1&&a.appendChild(c)})},prepend:function(a,c){if(a.nodeType===1){var d=a.firstChild;l(new S(c),function(c){d?a.insertBefore(c,d):(a.appendChild(c),d=c)})}},wrap:function(a,c){var c=q(c)[0],d=a.parentNode;d&&d.replaceChild(c,a);c.appendChild(a)},remove:function(a){na(a);var c=a.parentNode;c&&c.removeChild(a)},after:function(a,c){var d=a,e=a.parentNode;l(new S(c),function(a){e.insertBefore(a,d.nextSibling);d=a})},addClass:zb,removeClass:yb,toggleClass:function(a,
c,d){p(d)&&(d=!Ba(a,c));(d?zb:yb)(a,c)},parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},next:function(a){return a.nextSibling},find:function(a,c){return a.getElementsByTagName(c)},clone:db},function(a,c){S.prototype[c]=function(c,e){for(var g,f=0;f<this.length;f++)g==t?(g=a(this[f],c,e),g!==t&&(g=q(g))):cb(g,a(this[f],c,e));return g==t?this:g}});Ea.prototype={put:function(a,c){this[oa(a)]=c},get:function(a){return this[oa(a)]},remove:function(a){var c=this[a=oa(a)];delete this[a];
return c}};gb.prototype={push:function(a,c){var d=this[a=oa(a)];d?d.push(c):this[a]=[c]},shift:function(a){var c=this[a=oa(a)];if(c)return c.length==1?(delete this[a],c[0]):c.shift()}};var Fc=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,Gc=/,/,Hc=/^\s*(_?)(.+?)\1\s*$/,Ec=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;Db.$inject=["$provide"];var Oc=/^(x[\:\-_]|data[\:\-_])/i,Gb=/^(file|ftp|http|https):\/\/(\w+:{0,1}\w*@)?([\w\.-]*)(:([0-9]+))?(\/[^\?#]*)?(\?([^#]*))?(#(.*))?$/,ic=/^([^\?#]*)?(\?([^#]*))?(#(.*))?$/,Wc=
ic,Hb={http:80,https:443,ftp:21};ib.prototype={$$replace:!1,absUrl:Ja("$$absUrl"),url:function(a,c){if(p(a))return this.$$url;var d=ic.exec(a);d[1]&&this.path(decodeURIComponent(d[1]));if(d[2]||d[1])this.search(d[3]||"");this.hash(d[5]||"",c);return this},protocol:Ja("$$protocol"),host:Ja("$$host"),port:Ja("$$port"),path:Ib("$$path",function(a){return a.charAt(0)=="/"?a:"/"+a}),search:function(a,c){if(p(a))return this.$$search;v(c)?c===null?delete this.$$search[a]:this.$$search[a]=c:this.$$search=
C(a)?Ya(a):a;this.$$compose();return this},hash:Ib("$$hash",ua),replace:function(){this.$$replace=!0;return this}};jb.prototype=Sa(ib.prototype);var Ka={"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:E,"+":function(a,c,d,e){d=d(a,c);e=e(a,c);return(v(d)?d:0)+(v(e)?e:0)},"-":function(a,c,d,e){d=d(a,c);e=e(a,c);return(v(d)?d:0)-(v(e)?e:0)},"*":function(a,c,d,e){return d(a,c)*e(a,c)},"/":function(a,c,d,e){return d(a,c)/e(a,c)},"%":function(a,c,d,e){return d(a,
c)%e(a,c)},"^":function(a,c,d,e){return d(a,c)^e(a,c)},"=":E,"==":function(a,c,d,e){return d(a,c)==e(a,c)},"!=":function(a,c,d,e){return d(a,c)!=e(a,c)},"<":function(a,c,d,e){return d(a,c)<e(a,c)},">":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"&":function(a,c,d,e){return d(a,c)&e(a,c)},"|":function(a,c,d,e){return e(a,
c)(a,c,d(a,c))},"!":function(a,c,d){return!d(a,c)}},$c={n:"\n",f:"\u000c",r:"\r",t:"\t",v:"\u000b","'":"'",'"':'"'},kb={},Sb=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,Rb=/^<\s*\/\s*([\w:-]+)[^>]*>/,jd=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,ld=/^</,kd=/^<\s*\//,md=/<\!--(.*?)--\>/g,nd=/<!\[CDATA\[(.*?)]]\>/g,qd=/^((ftp|https?):\/\/|mailto:|#)/,od=/([^\#-~| |!])/g,Pb=Z("area,br,col,hr,img,wbr"),fa=Z("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),
jc=Z("rp,rt"),Ob=u({},jc,fa),Mb=u({},fa,Z("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")),Nb=u({},jc,Z("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")),Qb=Z("script,style"),Ub=u({},Pb,Mb,Nb,Ob),Vb=Z("background,cite,href,longdesc,src,usemap"),pd=u({},Vb,Z("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,span,start,summary,target,title,type,valign,value,vspace,width")),
mb=W.createElement("pre"),wd=V.XMLHttpRequest||function(){try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(c){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw new z("This browser does not support XMLHttpRequest.");};Zb.$inject=["$provide"];$b.$inject=["$locale"];bc.$inject=["$locale"];var ec=".",Gd={yyyy:F("FullYear",4),yy:F("FullYear",2,0,!0),y:F("FullYear",1),MMMM:La("Month"),MMM:La("Month",!0),MM:F("Month",2,1),
M:F("Month",1,1),dd:F("Date",2),d:F("Date",1),HH:F("Hours",2),H:F("Hours",1),hh:F("Hours",2,-12),h:F("Hours",1,-12),mm:F("Minutes",2),m:F("Minutes",1),ss:F("Seconds",2),s:F("Seconds",1),EEEE:La("Day"),EEE:La("Day",!0),a:function(a,c){return a.getHours()<12?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=a.getTimezoneOffset();return nb(a/60,2)+nb(Math.abs(a%60),2)}},Fd=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,Ed=/^\d+$/;ac.$inject=["$locale"];var Cd=y(A),Dd=y(ia);cc.$inject=
["$parse"];var Jd=y({restrict:"E",compile:function(a,c){c.href||c.$set("href","");return function(a,c){c.bind("click",function(a){c.attr("href")||a.preventDefault()})}}}),pb={};l(Da,function(a,c){var d=ca("ng-"+c);pb[d]=function(){return{priority:100,compile:function(){return function(a,g,f){f.$$observers[c]=[];a.$watch(f[d],function(a){f.$set(c,!!a)})}}}}});l(["src","href"],function(a){var c=ca("ng-"+a);pb[c]=function(){return{priority:99,compile:function(){return function(d,e,g){d=g[c];d==t?(g.$$observers[a]=
[],g.$observe(c,function(c){g.$set(a,c)})):g.$set(a,d)}}}}});var Oa={$addControl:E,$removeControl:E,$setValidity:E,$setDirty:E};fc.$inject=["$element","$attrs","$scope"];var fa={name:"form",restrict:"E",controller:fc,compile:function(){return{pre:function(a,c,d,e){d.action||c.bind("submit",function(a){a.preventDefault()});var g=c.parent().controller("form"),f=d.name||d.ngForm;f&&(a[f]=e);g&&c.bind("$destroy",function(){g.$removeControl(e);f&&(a[f]=t);u(e,Oa)})}}}},Kd=y(fa),Ld=y(u(X(fa),{restrict:"EAC"})),
Md=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,Nd=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/,Od=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,kc={text:Qa,number:function(a,c,d,e,g,f){Qa(a,c,d,e,g,f);e.$parsers.push(function(a){var c=U(a);return c||Od.test(a)?(e.$setValidity("number",!0),a===""?null:c?a:parseFloat(a)):(e.$setValidity("number",!1),t)});e.$formatters.push(function(a){return U(a)?"":""+a});if(d.min){var h=parseFloat(d.min),a=function(a){return!U(a)&&
a<h?(e.$setValidity("min",!1),t):(e.$setValidity("min",!0),a)};e.$parsers.push(a);e.$formatters.push(a)}if(d.max){var i=parseFloat(d.max),d=function(a){return!U(a)&&a>i?(e.$setValidity("max",!1),t):(e.$setValidity("max",!0),a)};e.$parsers.push(d);e.$formatters.push(d)}e.$formatters.push(function(a){return U(a)||ta(a)?(e.$setValidity("number",!0),a):(e.$setValidity("number",!1),t)})},url:function(a,c,d,e,g,f){Qa(a,c,d,e,g,f);a=function(a){return U(a)||Md.test(a)?(e.$setValidity("url",!0),a):(e.$setValidity("url",
!1),t)};e.$formatters.push(a);e.$parsers.push(a)},email:function(a,c,d,e,g,f){Qa(a,c,d,e,g,f);a=function(a){return U(a)||Nd.test(a)?(e.$setValidity("email",!0),a):(e.$setValidity("email",!1),t)};e.$formatters.push(a);e.$parsers.push(a)},radio:function(a,c,d,e){c.attr("name",d.id+"@"+d.name);c.bind("click",function(){c[0].checked&&a.$apply(function(){e.$setViewValue(d.value)})});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e){var g=
d.ngTrueValue,f=d.ngFalseValue;C(g)||(g=!0);C(f)||(f=!1);c.bind("click",function(){a.$apply(function(){e.$setViewValue(c[0].checked)})});e.$render=function(){c[0].checked=e.$viewValue};e.$formatters.push(function(a){return a===g});e.$parsers.push(function(a){return a?g:f})},hidden:E,button:E,submit:E,reset:E},lc=["$browser","$sniffer",function(a,c){return{restrict:"E",require:"?ngModel",link:function(d,e,g,f){f&&(kc[A(g.type)]||kc.text)(d,e,g,f,c,a)}}}],Na="ng-valid",Ma="ng-invalid",Pa="ng-pristine",
gc="ng-dirty",Pd=["$scope","$exceptionHandler","$attrs","ngModel","$element",function(a,c,d,e,g){function f(a,c){c=c?"-"+ab(c,"-"):"";g.removeClass((a?Ma:Na)+c).addClass((a?Na:Ma)+c)}this.$modelValue=this.$viewValue=Number.NaN;this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$render=E;this.$name=d.name;var h=g.inheritedData("$formController")||Oa,i=0,j=this.$error={};g.addClass(Pa);f(!0);this.$setValidity=function(a,
c){if(j[a]!==!c){if(c){if(j[a]&&i--,!i)f(!0),this.$valid=!0,this.$invalid=!1}else f(!1),this.$invalid=!0,this.$valid=!1,i++;j[a]=!c;f(c,a);h.$setValidity(a,c,this)}};this.$setViewValue=function(a){this.$viewValue=a;if(this.$pristine)this.$dirty=!0,this.$pristine=!1,g.removeClass(Pa).addClass(gc),h.$setDirty();l(this.$parsers,function(c){a=c(a)});if(this.$modelValue!==a)this.$modelValue=a,e(a),l(this.$viewChangeListeners,function(a){try{a()}catch(d){c(d)}})};var k=this;a.$watch(function(){return e()},
function(a){if(k.$modelValue!==a){var c=k.$formatters,d=c.length;for(k.$modelValue=a;d--;)a=c[d](a);if(k.$viewValue!==a)k.$viewValue=a,k.$render()}})}],Qd=[function(){return{inject:{ngModel:"accessor"},require:["ngModel","^?form"],controller:Pd,link:function(a,c,d,e){var g=e[0],f=e[1]||Oa;f.$addControl(g);c.bind("$destroy",function(){f.$removeControl(g)})}}}],Rd=y({require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),mc=[function(){return{require:"?ngModel",
link:function(a,c,d,e){if(e){var g=function(a){if(d.required&&(U(a)||a===!1))e.$setValidity("required",!1);else return e.$setValidity("required",!0),a};e.$formatters.push(g);e.$parsers.unshift(g);d.$observe("required",function(){g(e.$viewValue)})}}}}],Sd=function(){return{require:"ngModel",link:function(a,c,d,e){var g=(a=/\/(.*)\//.exec(d.ngList))&&RegExp(a[1])||d.ngList||",",f=function(a){var c=[];a&&l(a.split(g),function(a){a&&c.push(R(a))});return c};e.$parsers.push(f);e.$formatters.push(function(a){return J(a)&&
!da(f(e.$viewValue),a)?a.join(", "):t})}}},Td=/^(true|false|\d+)$/,Ud=[function(){return{priority:100,compile:function(a,c){return Td.test(c.ngValue)?function(a){c.$set("value",a.$eval(c.ngValue))}:function(a,c,g){g.$$observers.value=[];a.$watch(g.ngValue,function(a){g.$set("value",a,!1)})}}}}],Vd=O(function(a,c,d){c.addClass("ng-binding").data("$binding",d.ngBind);a.$watch(d.ngBind,function(a){c.text(a==t?"":a)})}),Wd=O(function(a,c,d){c.addClass("ng-binding").data("$binding",d.ngBindHtmlUnsafe);
a.$watch(d.ngBindHtmlUnsafe,function(a){c.html(a==t?"":a)})}),Xd=["$sanitize",function(a){return function(c,d,e){d.addClass("ng-binding").data("$binding",e.ngBindHtml);c.$watch(e.ngBindHtml,function(c){(c=a(c))&&d.html(c)})}}],Yd=["$interpolate",function(a){return function(c,d,e){c=a(d.attr(e.$attr.ngBindTemplate));d.addClass("ng-binding").data("$binding",c);e.$observe("ngBindTemplate",function(a){d.text(a)})}}],Zd=ob("",!0),$d=ob("Odd",0),ae=ob("Even",1),be=O({compile:function(a,c){c.$set("ngCloak",
t);a.removeClass("ng-cloak")}}),ce=[function(){return{scope:!0,controller:"@"}}],nc={};l("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave".split(" "),function(a){var c=ca("ng-"+a);nc[c]=["$parse",function(d){return function(e,g,f){var h=d(f[c]);g.bind(A(a),function(a){e.$apply(function(){h(e,{$event:a})})})}}]});var de=O(function(a,c,d){c.bind("submit",function(){a.$apply(d.ngSubmit)})}),ee=["$http","$templateCache","$anchorScroll","$compile",function(a,c,d,e){return{restrict:"ECA",
terminal:!0,compile:function(g,f){var h=f.ngInclude||f.src,i=f.onload||"",j=f.autoscroll;return function(f,g){var m=0,l,p=function(){l&&(l.$destroy(),l=null);g.html("")};f.$watch(h,function(h){var s=++m;h?a.get(h,{cache:c}).success(function(a){s===m&&(l&&l.$destroy(),l=f.$new(),g.html(a),e(g.contents())(l),v(j)&&(!j||f.$eval(j))&&d(),l.$emit("$includeContentLoaded"),f.$eval(i))}).error(function(){s===m&&p()}):p()})}}}}],fe=O({compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),ge=
O({terminal:!0,priority:1E3}),he=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,g,f){var h=f.count,i=g.attr(f.$attr.when),j=f.offset||0,k=e.$eval(i),n={};l(k,function(a,e){n[e]=c(a.replace(d,"{{"+h+"-"+j+"}}"))});e.$watch(function(){var c=parseFloat(e.$eval(h));return isNaN(c)?"":(k[c]||(c=a.pluralCat(c-j)),n[c](e,g,!0))},function(a){g.text(a)})}}}],ie=O({transclude:"element",priority:1E3,terminal:!0,compile:function(a,c,d){return function(a,c,f){var h=f.ngRepeat,
f=h.match(/^\s*(.+)\s+in\s+(.*)\s*$/),i,j,k;if(!f)throw z("Expected ng-repeat in form of '_item_ in _collection_' but got '"+h+"'.");h=f[1];i=f[2];f=h.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/);if(!f)throw z("'item' in 'item in collection' should be identifier or (key, value) but got '"+h+"'.");j=f[3]||f[1];k=f[2];var l=new gb;a.$watch(function(a){var e,f,h=a.$eval(i),s=uc(h,!0),p,B=new gb,t,q,D,u,v=c;if(J(h))D=h||[];else{D=[];for(t in h)h.hasOwnProperty(t)&&t.charAt(0)!="$"&&D.push(t);
D.sort()}e=0;for(f=D.length;e<f;e++){t=h===D?e:D[e];q=h[t];if(u=l.shift(q)){p=u.scope;B.push(q,u);if(e!==u.index)u.index=e,v.after(u.element);v=u.element}else p=a.$new();p[j]=q;k&&(p[k]=t);p.$index=e;p.$position=e===0?"first":e==s-1?"last":"middle";u||d(p,function(a){v.after(a);u={scope:p,element:v=a,index:e};B.push(q,u)})}for(t in l)if(l.hasOwnProperty(t))for(D=l[t];D.length;)q=D.pop(),q.element.remove(),q.scope.$destroy();l=B})}}}),je=O(function(a,c,d){a.$watch(d.ngShow,function(a){c.css("display",
Xa(a)?"":"none")})}),ke=O(function(a,c,d){a.$watch(d.ngHide,function(a){c.css("display",Xa(a)?"none":"")})}),le=O(function(a,c,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&l(d,function(a,d){c.css(d,"")});a&&c.css(a)},!0)}),me=y({restrict:"EA",compile:function(a,c){var d=c.ngSwitch||c.on,e={};a.data("ng-switch",e);return function(a,f){var h,i,j;a.$watch(d,function(d){i&&(j.$destroy(),i.remove(),i=j=null);if(h=e["!"+d]||e["?"])a.$eval(c.change),j=a.$new(),h(j,function(a){i=a;f.append(a)})})}}}),ne=
O({transclude:"element",priority:500,compile:function(a,c,d){a=a.inheritedData("ng-switch");la(a);a["!"+c.ngSwitchWhen]=d}}),oe=O({transclude:"element",priority:500,compile:function(a,c,d){a=a.inheritedData("ng-switch");la(a);a["?"]=d}}),pe=O({controller:["$transclude","$element",function(a,c){a(function(a){c.append(a)})}]}),qe=["$http","$templateCache","$route","$anchorScroll","$compile","$controller",function(a,c,d,e,g,f){return{restrict:"ECA",terminal:!0,link:function(h,i,j){function k(){function j(){s===
l&&(i.html(""),m&&(m.$destroy(),m=null))}var k=d.current&&d.current.template,s=++l;k?a.get(k,{cache:c}).success(function(a){if(s===l){i.html(a);m&&(m.$destroy(),m=null);var a=g(i.contents()),c=d.current;m=c.scope=h.$new();c.controller&&(c=f(c.controller,{$scope:m}),i.contents().data("$ngControllerController",c));a(m);m.$emit("$viewContentLoaded");m.$eval(o);e()}}).error(j):j()}var l=0,m,o=j.onload||"";h.$on("$afterRouteChange",k);k()}}}],re=["$templateCache",function(a){return{restrict:"E",terminal:!0,
compile:function(c,d){d.type=="text/ng-template"&&a.put(d.id,c.text())}}}],se=y({terminal:!0}),te=["$compile","$parse",function(a,c){var d=/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+group\s+by\s+(.*))?\s+for\s+(?:([\$\w][\$\w\d]*)|(?:\(\s*([\$\w][\$\w\d]*)\s*,\s*([\$\w][\$\w\d]*)\s*\)))\s+in\s+(.*)$/;return{restrict:"E",require:"?ngModel",link:function(e,g,f,h){function i(a,c,d){d.$render=function(){c.val(d.$viewValue)};c.bind("change",function(){a.$apply(function(){d.$setViewValue(c.val())})})}function j(a,
c,d){var e;d.$render=function(){var a=new Ea(d.$viewValue);l(c.children(),function(c){c.selected=v(a.get(c.value))})};a.$watch(function(){da(e,d.$viewValue)||(e=X(d.$viewValue),d.$render())});c.bind("change",function(){a.$apply(function(){var a=[];l(c.children(),function(c){c.selected&&a.push(c.value)});d.$setViewValue(a)})})}function k(e,f,g){function i(){var a={"":[]},c=[""],d,h,l,m,q;l=g.$modelValue;m=v(e)||[];var z=o?qb(m):m,B,w,x;w={};q=!1;var C,F;if(n)q=new Ea(l);else if(l===null||G)a[""].push({selected:l===
null,id:"",label:""}),q=!0;for(x=0;B=z.length,x<B;x++){w[k]=m[o?w[o]=z[x]:x];d=p(e,w)||"";if(!(h=a[d]))h=a[d]=[],c.push(d);n?d=q.remove(u(e,w))!=t:(d=l===u(e,w),q=q||d);h.push({id:o?z[x]:x,label:j(e,w)||"",selected:d})}!n&&!q&&a[""].unshift({id:"?",label:"",selected:!0});w=0;for(z=c.length;w<z;w++){d=c[w];h=a[d];if(y.length<=w)l={element:E.clone().attr("label",d),label:h.label},m=[l],y.push(m),f.append(l.element);else if(m=y[w],l=m[0],l.label!=d)l.element.attr("label",l.label=d);C=null;x=0;for(B=
h.length;x<B;x++)if(d=h[x],q=m[x+1]){C=q.element;if(q.label!==d.label)C.text(q.label=d.label);if(q.id!==d.id)C.val(q.id=d.id);if(q.element.selected!==d.selected)C.prop("selected",q.selected=d.selected)}else d.id===""&&G?F=G:(F=A.clone()).val(d.id).attr("selected",d.selected).text(d.label),m.push({element:F,label:d.label,id:d.id,selected:d.selected}),C?C.after(F):l.element.append(F),C=F;for(x++;m.length>x;)m.pop().element.remove()}for(;y.length>w;)y.pop()[0].element.remove()}var h;if(!(h=m.match(d)))throw z("Expected ng-options in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '"+
m+"'.");var j=c(h[2]||h[1]),k=h[4]||h[6],o=h[5],p=c(h[3]||""),u=c(h[2]?h[1]:k),v=c(h[7]),A=q(W.createElement("option")),E=q(W.createElement("optgroup")),G=!1,y=[[{element:f,label:""}]];l(f.children(),function(c){c.value==""&&(G=q(c).remove(),a(G)(e))});f.html("");f.bind("change",function(){e.$apply(function(){var a,c=v(e)||[],d={},h,i,j,l,m,p;if(n){i=[];l=0;for(p=y.length;l<p;l++){a=y[l];j=1;for(m=a.length;j<m;j++)if((h=a[j].element)[0].selected)h=h.val(),o&&(d[o]=h),d[k]=c[h],i.push(u(e,d))}}else h=
f.val(),h=="?"?i=t:h==""?i=null:(d[k]=c[h],o&&(d[o]=h),i=u(e,d));g.$setViewValue(i)})});g.$render=i;e.$watch(i)}if(h){var n=f.multiple,m=f.ngOptions;if(n&&(f.required||f.ngRequired)){var o=function(a){h.$setValidity("required",!f.required||a&&a.length);return a};h.$parsers.push(o);h.$formatters.unshift(o);f.$observe("required",function(){o(h.$viewValue)})}m?k(e,g,h):n?j(e,g,h):i(e,g,h)}}}}],ue=["$interpolate",function(a){return{restrict:"E",priority:100,compile:function(c,d){if(p(d.value)){var e=
a(c.text(),!0);if(e)return function(a,c,d){a.$watch(e,function(a){d.$set("value",a)})};else d.$set("value",c.text())}}}}],ve=y({restrict:"E",terminal:!0});(ha=V.jQuery)?(q=ha,u(ha.fn,{scope:ra.scope,controller:ra.controller,injector:ra.injector,inheritedData:ra.inheritedData}),bb("remove",!0),bb("empty"),bb("html")):q=S;hc.element=q;(function(a){u(a,{bootstrap:ub,copy:X,extend:u,equals:da,element:q,forEach:l,injector:vb,noop:E,bind:wa,toJson:$,fromJson:sb,identity:ua,isUndefined:p,isDefined:v,isString:C,
isFunction:L,isObject:M,isNumber:ta,isElement:tc,isArray:J,version:Hd,isDate:ja,lowercase:A,uppercase:ia,callbacks:{counter:0}});pa=zc(V);try{pa("ngLocale")}catch(c){pa("ngLocale",[]).provider("$locale",xd)}pa("ng",["ngLocale"],["$provide",function(a){a.provider("$compile",Db).directive({a:Jd,input:lc,textarea:lc,form:Kd,script:re,select:te,style:ve,option:ue,ngBind:Vd,ngBindHtml:Xd,ngBindHtmlUnsafe:Wd,ngBindTemplate:Yd,ngClass:Zd,ngClassEven:ae,ngClassOdd:$d,ngCloak:be,ngController:ce,ngForm:Ld,
ngHide:ke,ngInclude:ee,ngInit:fe,ngNonBindable:ge,ngPluralize:he,ngRepeat:ie,ngShow:je,ngSubmit:de,ngStyle:le,ngSwitch:me,ngSwitchWhen:ne,ngSwitchDefault:oe,ngOptions:se,ngView:qe,ngTransclude:pe,ngModel:Qd,ngList:Sd,ngChange:Rd,required:mc,ngRequired:mc,ngValue:Ud}).directive(pb).directive(nc);a.provider({$anchorScroll:Ic,$browser:Kc,$cacheFactory:Lc,$controller:Pc,$defer:Qc,$document:Rc,$exceptionHandler:Sc,$filter:Zb,$interpolate:Tc,$http:td,$httpBackend:ud,$location:Xc,$log:Yc,$parse:bd,$route:ed,
$routeParams:fd,$rootScope:gd,$q:cd,$sanitize:hd,$sniffer:rd,$templateCache:Mc,$window:sd})}])})(hc);q(W).ready(function(){xc(W,ub)})})(window,document);angular.element(document).find("head").append('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak{display:none;}ng\\:form{display:block;}</style>');
"$apply"),this.$eval(a)}catch(b){c(b)}finally{this.$root.$$phase=null,this.$root.$digest()}},$on:function(a,b){var c=this.$$listeners[a];c||(this.$$listeners[a]=c=[]);c.push(b);return function(){ua(c,b)}},$emit:function(a,b){var d=[],e,f=this,g={name:a,targetScope:f,cancel:function(){g.cancelled=!0},cancelled:!1},i=[g].concat(ea.call(arguments,1)),l,s;do{e=f.$$listeners[a]||d;g.currentScope=f;l=0;for(s=e.length;l<s;l++)try{if(e[l].apply(null,i),g.cancelled)return g}catch(y){c(y)}f=f.$parent}while(f);
return g},$broadcast:function(a,b){var d=this,e=this,f={name:a,targetScope:this},g=[f].concat(ea.call(arguments,1));do if(d=e,f.currentScope=d,l(d.$$listeners[a],function(a){try{a.apply(null,g)}catch(b){c(b)}}),!(e=d.$$childHead||d!==this&&d.$$nextSibling))for(;d!==this&&!(e=d.$$nextSibling);)d=d.$parent;while(d=e);return f}};return new e}]}function Oc(){this.$get=["$window",function(b){var a={};return{history:!(!b.history||!b.history.pushState),hashchange:"onhashchange"in b&&(!b.document.documentMode||
b.document.documentMode>7),hasEvent:function(c){if(r(a[c])){var d=b.document.createElement("div");a[c]="on"+c in d}return a[c]}}}]}function Pc(){this.$get=A(V)}function Hb(b){var a={},c,d,e;if(!b)return a;l(b.split("\n"),function(b){e=b.indexOf(":");c=w(R(b.substr(0,e)));d=R(b.substr(e+1));c&&(a[c]?a[c]+=", "+d:a[c]=d)});return a}function Ib(b){var a=M(b)?b:t;return function(c){a||(a=Hb(b));return c?a[w(c)]||null:a}}function Jb(b,a,c){if(L(c))return c(b,a);l(c,function(c){b=c(b,a)});return b}function Qc(){var b=
/^\s*(\[|\{[^\{])/,a=/[\}\]]\s*$/,c=/^\)\]\}',?\n/,d=this.defaults={transformResponse:[function(d){C(d)&&(d=d.replace(c,""),b.test(d)&&a.test(d)&&(d=ob(d,!0)));return d}],transformRequest:[function(a){return M(a)&&Ra.apply(a)!=="[object File]"?Z(a):a}],headers:{common:{Accept:"application/json, text/plain, */*","X-Requested-With":"XMLHttpRequest"},post:{"Content-Type":"application/json"},put:{"Content-Type":"application/json"}}},e=this.responseInterceptors=[];this.$get=["$httpBackend","$browser",
"$cacheFactory","$rootScope","$q","$injector",function(a,b,c,h,j,k){function n(a){function c(a){var b=H({},a,{data:Jb(a.data,a.headers,g)});return 200<=a.status&&a.status<300?b:j.reject(b)}a.method=ga(a.method);var e=a.transformRequest||d.transformRequest,g=a.transformResponse||d.transformResponse,h=d.headers,h=H({"X-XSRF-TOKEN":b.cookies()["XSRF-TOKEN"]},h.common,h[w(a.method)],a.headers),e=Jb(a.data,Ib(h),e),i;r(a.data)&&delete h["Content-Type"];i=m(a,e,h);i=i.then(c,c);l(q,function(a){i=a(i)});
i.success=function(b){i.then(function(c){b(c.data,c.status,c.headers,a)});return i};i.error=function(b){i.then(null,function(c){b(c.data,c.status,c.headers,a)});return i};return i}function m(b,c,d){function e(a,b,c){l&&(200<=a&&a<300?l.put(r,[a,b,Hb(c)]):l.remove(r));f(b,a,c);h.$apply()}function f(a,c,d){c=Math.max(c,0);(200<=c&&c<300?m.resolve:m.reject)({data:a,status:c,headers:Ib(d),config:b})}function i(){var a=Ta(n.pendingRequests,b);a!==-1&&n.pendingRequests.splice(a,1)}var m=j.defer(),k=m.promise,
l,q,r=o(b.url,b.params);n.pendingRequests.push(b);k.then(i,i);b.cache&&b.method=="GET"&&(l=M(b.cache)?b.cache:J);if(l)if(q=l.get(r))if(q.then)return q.then(i,i),q;else I(q)?f(q[1],q[0],W(q[2])):f(q,200,{});else l.put(r,k);q||a(b.method,r,c,e,d,b.timeout,b.withCredentials);return k}function o(a,b){if(!b)return a;var c=[];Zb(b,function(a,b){a==null||a==t||(M(a)&&(a=Z(a)),c.push(encodeURIComponent(b)+"="+encodeURIComponent(a)))});return a+(a.indexOf("?")==-1?"?":"&")+c.join("&")}var J=c("$http"),q=[];
l(e,function(a){q.push(C(a)?k.get(a):k.invoke(a))});n.pendingRequests=[];(function(a){l(arguments,function(a){n[a]=function(b,c){return n(H(c||{},{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){l(arguments,function(a){n[a]=function(b,c,d){return n(H(d||{},{method:a,url:b,data:c}))}})})("post","put");n.defaults=d;return n}]}function Rc(){this.$get=["$browser","$window","$document",function(b,a,c){return Sc(b,Tc,b.defer,a.angular.callbacks,c[0],a.location.protocol.replace(":",""))}]}
function Sc(b,a,c,d,e,g){function f(a,b){var c=e.createElement("script"),d=function(){e.body.removeChild(c);b&&b()};c.type="text/javascript";c.src=a;da?c.onreadystatechange=function(){/loaded|complete/.test(c.readyState)&&d()}:c.onload=c.onerror=d;e.body.appendChild(c)}return function(e,h,j,k,n,m,o){function J(a,c,d,e){c=(h.match(Cb)||["",g])[1]=="file"?d?200:404:c;a(c==1223?204:c,d,e);b.$$completeOutstandingRequest(u)}b.$$incOutstandingRequestCount();h=h||b.url();if(w(e)=="jsonp"){var q="_"+(d.counter++).toString(36);
d[q]=function(a){d[q].data=a};f(h.replace("JSON_CALLBACK","angular.callbacks."+q),function(){d[q].data?J(k,200,d[q].data):J(k,-2);delete d[q]})}else{var s=new a;s.open(e,h,!0);l(n,function(a,b){a&&s.setRequestHeader(b,a)});var y;s.onreadystatechange=function(){s.readyState==4&&J(k,y||s.status,s.responseText,s.getAllResponseHeaders())};if(o)s.withCredentials=!0;s.send(j||"");m>0&&c(function(){y=-1;s.abort()},m)}}}function Uc(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",
GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"\u00a4",posSuf:"",negPre:"(\u00a4",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),
SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(b){return b===1?"one":"other"}}}}function Kb(b){function a(a,e){return b.factory(a+c,e)}var c="Filter";this.register=a;this.$get=["$injector",function(a){return function(b){return a.get(b+c)}}];a("currency",Lb);a("date",Mb);a("filter",
Vc);a("json",Wc);a("limitTo",Xc);a("lowercase",Yc);a("number",Nb);a("orderBy",Ob);a("uppercase",Zc)}function Vc(){return function(b,a){if(!(b instanceof Array))return b;var c=[];c.check=function(a){for(var b=0;b<c.length;b++)if(!c[b](a))return!1;return!0};var d=function(a,b){if(b.charAt(0)==="!")return!d(a,b.substr(1));switch(typeof a){case "boolean":case "number":case "string":return(""+a).toLowerCase().indexOf(b)>-1;case "object":for(var c in a)if(c.charAt(0)!=="$"&&d(a[c],b))return!0;return!1;
case "array":for(c=0;c<a.length;c++)if(d(a[c],b))return!0;return!1;default:return!1}};switch(typeof a){case "boolean":case "number":case "string":a={$:a};case "object":for(var e in a)e=="$"?function(){var b=(""+a[e]).toLowerCase();b&&c.push(function(a){return d(a,b)})}():function(){var b=e,f=(""+a[e]).toLowerCase();f&&c.push(function(a){return d(fb(a,b),f)})}();break;case "function":c.push(a);break;default:return b}for(var g=[],f=0;f<b.length;f++){var i=b[f];c.check(i)&&g.push(i)}return g}}function Lb(b){var a=
b.NUMBER_FORMATS;return function(b,d){if(r(d))d=a.CURRENCY_SYM;return Pb(b,a.PATTERNS[1],a.GROUP_SEP,a.DECIMAL_SEP,2).replace(/\u00A4/g,d)}}function Nb(b){var a=b.NUMBER_FORMATS;return function(b,d){return Pb(b,a.PATTERNS[0],a.GROUP_SEP,a.DECIMAL_SEP,d)}}function Pb(b,a,c,d,e){if(isNaN(b)||!isFinite(b))return"";var g=b<0,b=Math.abs(b),f=b+"",i="",h=[];if(f.indexOf("e")!==-1)i=f;else{f=(f.split(Qb)[1]||"").length;r(e)&&(e=Math.min(Math.max(a.minFrac,f),a.maxFrac));var f=Math.pow(10,e),b=Math.round(b*
f)/f,b=(""+b).split(Qb),f=b[0],b=b[1]||"",j=0,k=a.lgSize,n=a.gSize;if(f.length>=k+n)for(var j=f.length-k,m=0;m<j;m++)(j-m)%n===0&&m!==0&&(i+=c),i+=f.charAt(m);for(m=j;m<f.length;m++)(f.length-m)%k===0&&m!==0&&(i+=c),i+=f.charAt(m);for(;b.length<e;)b+="0";e&&(i+=d+b.substr(0,e))}h.push(g?a.negPre:a.posPre);h.push(i);h.push(g?a.negSuf:a.posSuf);return h.join("")}function jb(b,a,c){var d="";b<0&&(d="-",b=-b);for(b=""+b;b.length<a;)b="0"+b;c&&(b=b.substr(b.length-a));return d+b}function E(b,a,c,d){return function(e){e=
e["get"+b]();if(c>0||e>-c)e+=c;e===0&&c==-12&&(e=12);return jb(e,a,d)}}function Ja(b,a){return function(c,d){var e=c["get"+b](),g=ga(a?"SHORT"+b:b);return d[g][e]}}function Mb(b){function a(a){var b;if(b=a.match(c)){var a=new Date(0),g=0,f=0;b[9]&&(g=x(b[9]+b[10]),f=x(b[9]+b[11]));a.setUTCFullYear(x(b[1]),x(b[2])-1,x(b[3]));a.setUTCHours(x(b[4]||0)-g,x(b[5]||0)-f,x(b[6]||0),x(b[7]||0))}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d{3}))?)?)?(Z|([+-])(\d\d):?(\d\d)))?$/;
return function(c,e){var g="",f=[],i,h,e=e||"mediumDate",e=b.DATETIME_FORMATS[e]||e;C(c)&&(c=$c.test(c)?x(c):a(c));ra(c)&&(c=new Date(c));if(!ha(c))return c;for(;e;)(h=ad.exec(e))?(f=f.concat(ea.call(h,1)),e=f.pop()):(f.push(e),e=null);l(f,function(a){i=bd[a];g+=i?i(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function Wc(){return function(b){return Z(b,!0)}}function Xc(){return function(b,a){if(!(b instanceof Array))return b;var a=x(a),c=[],d,e;if(!b||!(b instanceof
Array))return c;a>b.length?a=b.length:a<-b.length&&(a=-b.length);a>0?(d=0,e=a):(d=b.length+a,e=b.length);for(;d<e;d++)c.push(b[d]);return c}}function Ob(b){return function(a,c,d){function e(a,b){return Va(b)?function(b,c){return a(c,b)}:a}if(!(a instanceof Array))return a;if(!c)return a;for(var c=I(c)?c:[c],c=Sa(c,function(a){var c=!1,d=a||ta;if(C(a)){if(a.charAt(0)=="+"||a.charAt(0)=="-")c=a.charAt(0)=="-",a=a.substring(1);d=b(a)}return e(function(a,b){var c;c=d(a);var e=d(b),f=typeof c,g=typeof e;
f==g?(f=="string"&&(c=c.toLowerCase()),f=="string"&&(e=e.toLowerCase()),c=c===e?0:c<e?-1:1):c=f<g?-1:1;return c},c)}),g=[],f=0;f<a.length;f++)g.push(a[f]);return g.sort(e(function(a,b){for(var d=0;d<c.length;d++){var e=c[d](a,b);if(e!==0)return e}return 0},d))}}function O(b){L(b)&&(b={link:b});b.restrict=b.restrict||"AC";return A(b)}function Rb(b,a){function c(a,c){c=c?"-"+Za(c,"-"):"";b.removeClass((a?Ka:La)+c).addClass((a?La:Ka)+c)}var d=this,e=b.parent().controller("form")||Ma,g=0,f=d.$error={};
d.$name=a.name;d.$dirty=!1;d.$pristine=!0;d.$valid=!0;d.$invalid=!1;e.$addControl(d);b.addClass(Na);c(!0);d.$addControl=function(a){a.$name&&!d.hasOwnProperty(a.$name)&&(d[a.$name]=a)};d.$removeControl=function(a){a.$name&&d[a.$name]===a&&delete d[a.$name];l(f,function(b,c){d.$setValidity(c,!0,a)})};d.$setValidity=function(a,b,j){var k=f[a];if(b){if(k&&(ua(k,j),!k.length)){g--;if(!g)c(b),d.$valid=!0,d.$invalid=!1;f[a]=!1;c(!0,a);e.$setValidity(a,!0,d)}}else{g||c(b);if(k){if(Ta(k,j)!=-1)return}else f[a]=
k=[],g++,c(!1,a),e.$setValidity(a,!1,d);k.push(j);d.$valid=!1;d.$invalid=!0}};d.$setDirty=function(){b.removeClass(Na).addClass(Sb);d.$dirty=!0;d.$pristine=!1}}function U(b){return r(b)||b===""||b===null||b!==b}function Oa(b,a,c,d,e,g){var f=function(){var c=R(a.val());d.$viewValue!==c&&b.$apply(function(){d.$setViewValue(c)})};if(e.hasEvent("input"))a.bind("input",f);else{var i;a.bind("keydown",function(a){a=a.keyCode;a===91||15<a&&a<19||37<=a&&a<=40||i||(i=g.defer(function(){f();i=null}))});a.bind("change",
f)}d.$render=function(){a.val(U(d.$viewValue)?"":d.$viewValue)};var h=c.ngPattern,j=function(a,b){return U(b)||a.test(b)?(d.$setValidity("pattern",!0),b):(d.$setValidity("pattern",!1),t)};h&&(h.match(/^\/(.*)\/$/)?(h=RegExp(h.substr(1,h.length-2)),e=function(a){return j(h,a)}):e=function(a){var c=b.$eval(h);if(!c||!c.test)throw new z("Expected "+h+" to be a RegExp but was "+c);return j(c,a)},d.$formatters.push(e),d.$parsers.push(e));if(c.ngMinlength){var k=x(c.ngMinlength),e=function(a){return!U(a)&&
a.length<k?(d.$setValidity("minlength",!1),t):(d.$setValidity("minlength",!0),a)};d.$parsers.push(e);d.$formatters.push(e)}if(c.ngMaxlength){var n=x(c.ngMaxlength),c=function(a){return!U(a)&&a.length>n?(d.$setValidity("maxlength",!1),t):(d.$setValidity("maxlength",!0),a)};d.$parsers.push(c);d.$formatters.push(c)}}function kb(b,a){b="ngClass"+b;return O(function(c,d,e){c.$watch(e[b],function(b,e){if(a===!0||c.$index%2===a)e&&b!==e&&(M(e)&&!I(e)&&(e=Sa(e,function(a,b){if(a)return b})),d.removeClass(I(e)?
e.join(" "):e)),M(b)&&!I(b)&&(b=Sa(b,function(a,b){if(a)return b})),b&&d.addClass(I(b)?b.join(" "):b)},!0)})}if(typeof X.getAttribute=="undefined")X.getAttribute=function(){};var w=function(b){return C(b)?b.toLowerCase():b},ga=function(b){return C(b)?b.toUpperCase():b},z=V.Error,da=x((/msie (\d+)/.exec(w(navigator.userAgent))||[])[1]),p,fa,ea=[].slice,Pa=[].push,Ra=Object.prototype.toString,Tb=V.angular||(V.angular={}),na,Ab,Y=["0","0","0"];u.$inject=[];ta.$inject=[];Ab=da<9?function(b){b=b.nodeName?
b:b[0];return b.scopeName&&b.scopeName!="HTML"?ga(b.scopeName+":"+b.nodeName):b.nodeName}:function(b){return b.nodeName?b.nodeName:b[0].nodeName};var ec=/[A-Z]/g,cd={full:"1.0.0rc5",major:1,minor:0,dot:0,codeName:"reality-distortion"},xa={},wa="ng-"+(new Date).getTime(),ic=1,dd=V.document.addEventListener?function(b,a,c){b.addEventListener(a,c,!1)}:function(b,a,c){b.attachEvent("on"+a,c)},cb=V.document.removeEventListener?function(b,a,c){b.removeEventListener(a,c,!1)}:function(b,a,c){b.detachEvent("on"+
a,c)},gc=/([\:\-\_]+(.))/g,hc=/^moz([A-Z])/,pa=S.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;this.bind("DOMContentLoaded",a);S(V).bind("load",a)},toString:function(){var b=[];l(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return b>=0?p(this[b]):p(this[this.length+b])},length:0,push:Pa,sort:[].sort,splice:[].splice},Ba={};l("multiple,selected,checked,disabled,readOnly,required".split(","),function(b){Ba[w(b)]=b});var yb={};l("input,select,option,textarea,button,form".split(","),
function(b){yb[ga(b)]=!0});l({data:ya,inheritedData:Aa,scope:function(b){return Aa(b,"$scope")},controller:wb,injector:function(b){return Aa(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:za,css:function(b,a,c){a=sb(a);if(B(c))b.style[a]=c;else{var d;da<=8&&(d=b.currentStyle&&b.currentStyle[a],d===""&&(d="auto"));d=d||b.style[a];da<=8&&(d=d===""?t:d);return d}},attr:function(b,a,c){var d=w(a);if(Ba[d])if(B(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));
else return b[a]||(b.attributes.getNamedItem(a)||u).specified?d:t;else if(B(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),b===null?t:b},prop:function(b,a,c){if(B(c))b[a]=c;else return b[a]},text:H(da<9?function(b,a){if(b.nodeType==1){if(r(a))return b.innerText;b.innerText=a}else{if(r(a))return b.nodeValue;b.nodeValue=a}}:function(b,a){if(r(a))return b.textContent;b.textContent=a},{$dv:""}),val:function(b,a){if(r(a))return b.value;b.value=a},html:function(b,a){if(r(a))return b.innerHTML;
for(var c=0,d=b.childNodes;c<d.length;c++)la(d[c]);b.innerHTML=a}},function(b,a){S.prototype[a]=function(a,d){var e,g;if((b.length==2&&b!==za&&b!==wb?a:d)===t)if(M(a)){for(e=0;e<this.length;e++)for(g in a)b(this[e],g,a[g]);return this}else{if(this.length)return b(this[0],a,d)}else{for(e=0;e<this.length;e++)b(this[e],a,d);return this}return b.$dv}});l({removeData:tb,dealoc:la,bind:function a(c,d,e){var g=ya(c,"bind");g||ya(c,"bind",g={});l(d.split(" "),function(d){var i=g[d];if(!i)if(d=="mouseenter"||
d=="mouseleave"){var h=g.mouseenter=db(c),j=g.mouseleave=db(c),k=0;a(c,"mouseover",function(a){k++;if(k==1)a.type="mouseenter",h(a)});a(c,"mouseout",function(a){k--;if(k==0)a.type="mouseleave",j(a)});i=g[d]}else i=g[d]=db(c),dd(c,d,i);i.fns.push(e)})},unbind:function(a,c,d){var e=ya(a,"bind");e&&(r(c)?l(e,function(c,d){cb(a,d,c);delete e[d]}):r(d)?(cb(a,c,e[c]),delete e[c]):ua(e[c].fns,d))},replaceWith:function(a,c){var d,e=a.parentNode;la(a);l(new S(c),function(c){d?e.insertBefore(c,d.nextSibling):
e.replaceChild(c,a);d=c})},children:function(a){var c=[];l(a.childNodes,function(a){a.nodeName!="#text"&&c.push(a)});return c},contents:function(a){return a.childNodes},append:function(a,c){l(new S(c),function(c){a.nodeType===1&&a.appendChild(c)})},prepend:function(a,c){if(a.nodeType===1){var d=a.firstChild;l(new S(c),function(c){d?a.insertBefore(c,d):(a.appendChild(c),d=c)})}},wrap:function(a,c){var c=p(c)[0],d=a.parentNode;d&&d.replaceChild(c,a);c.appendChild(a)},remove:function(a){la(a);var c=
a.parentNode;c&&c.removeChild(a)},after:function(a,c){var d=a,e=a.parentNode;l(new S(c),function(a){e.insertBefore(a,d.nextSibling);d=a})},addClass:vb,removeClass:ub,toggleClass:function(a,c,d){r(d)&&(d=!za(a,c));(d?vb:ub)(a,c)},parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},next:function(a){return a.nextSibling},find:function(a,c){return a.getElementsByTagName(c)},clone:bb},function(a,c){S.prototype[c]=function(c,e){for(var g,f=0;f<this.length;f++)g==t?(g=a(this[f],c,e),g!==t&&
(g=p(g))):ab(g,a(this[f],c,e));return g==t?this:g}});Ca.prototype={put:function(a,c){this[ma(a)]=c},get:function(a){return this[ma(a)]},remove:function(a){var c=this[a=ma(a)];delete this[a];return c}};eb.prototype={push:function(a,c){var d=this[a=ma(a)];d?d.push(c):this[a]=[c]},shift:function(a){var c=this[a=ma(a)];if(c)return c.length==1?(delete this[a],c[0]):c.shift()}};var lc=/^function\s*[^\(]*\(\s*([^\)]*)\)/m,mc=/,/,nc=/^\s*(_?)(.+?)\1\s*$/,kc=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;zb.$inject=["$provide"];
var uc=/^(x[\:\-_]|data[\:\-_])/i,Cb=/^(file|ftp|http|https):\/\/(\w+:{0,1}\w*@)?([\w\.-]*)(:([0-9]+))?(\/[^\?#]*)?(\?([^#]*))?(#(.*))?$/,Ub=/^([^\?#]*)?(\?([^#]*))?(#(.*))?$/,Cc=Ub,Db={http:80,https:443,ftp:21};gb.prototype={$$replace:!1,absUrl:Ha("$$absUrl"),url:function(a,c){if(r(a))return this.$$url;var d=Ub.exec(a);d[1]&&this.path(decodeURIComponent(d[1]));if(d[2]||d[1])this.search(d[3]||"");this.hash(d[5]||"",c);return this},protocol:Ha("$$protocol"),host:Ha("$$host"),port:Ha("$$port"),path:Eb("$$path",
function(a){return a.charAt(0)=="/"?a:"/"+a}),search:function(a,c){if(r(a))return this.$$search;B(c)?c===null?delete this.$$search[a]:this.$$search[a]=c:this.$$search=C(a)?Wa(a):a;this.$$compose();return this},hash:Eb("$$hash",ta),replace:function(){this.$$replace=!0;return this}};hb.prototype=Qa(gb.prototype);var Ia={"null":function(){return null},"true":function(){return!0},"false":function(){return!1},undefined:u,"+":function(a,c,d,e){d=d(a,c);e=e(a,c);return(B(d)?d:0)+(B(e)?e:0)},"-":function(a,
c,d,e){d=d(a,c);e=e(a,c);return(B(d)?d:0)-(B(e)?e:0)},"*":function(a,c,d,e){return d(a,c)*e(a,c)},"/":function(a,c,d,e){return d(a,c)/e(a,c)},"%":function(a,c,d,e){return d(a,c)%e(a,c)},"^":function(a,c,d,e){return d(a,c)^e(a,c)},"=":u,"==":function(a,c,d,e){return d(a,c)==e(a,c)},"!=":function(a,c,d,e){return d(a,c)!=e(a,c)},"<":function(a,c,d,e){return d(a,c)<e(a,c)},">":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,
c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"&":function(a,c,d,e){return d(a,c)&e(a,c)},"|":function(a,c,d,e){return e(a,c)(a,c,d(a,c))},"!":function(a,c,d){return!d(a,c)}},Gc={n:"\n",f:"\u000c",r:"\r",t:"\t",v:"\u000b","'":"'",'"':'"'},ib={},Tc=V.XMLHttpRequest||function(){try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(c){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw new z("This browser does not support XMLHttpRequest.");
};Kb.$inject=["$provide"];Lb.$inject=["$locale"];Nb.$inject=["$locale"];var Qb=".",bd={yyyy:E("FullYear",4),yy:E("FullYear",2,0,!0),y:E("FullYear",1),MMMM:Ja("Month"),MMM:Ja("Month",!0),MM:E("Month",2,1),M:E("Month",1,1),dd:E("Date",2),d:E("Date",1),HH:E("Hours",2),H:E("Hours",1),hh:E("Hours",2,-12),h:E("Hours",1,-12),mm:E("Minutes",2),m:E("Minutes",1),ss:E("Seconds",2),s:E("Seconds",1),EEEE:Ja("Day"),EEE:Ja("Day",!0),a:function(a,c){return a.getHours()<12?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){a=a.getTimezoneOffset();
return jb(a/60,2)+jb(Math.abs(a%60),2)}},ad=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,$c=/^\d+$/;Mb.$inject=["$locale"];var Yc=A(w),Zc=A(ga);Ob.$inject=["$parse"];var ed=A({restrict:"E",compile:function(a,c){c.href||c.$set("href","");return function(a,c){c.bind("click",function(a){c.attr("href")||a.preventDefault()})}}}),lb={};l(Ba,function(a,c){var d=ba("ng-"+c);lb[d]=function(){return{priority:100,compile:function(){return function(a,g,f){f.$$observers[c]=[];
a.$watch(f[d],function(a){f.$set(c,!!a)})}}}}});l(["src","href"],function(a){var c=ba("ng-"+a);lb[c]=function(){return{priority:99,compile:function(){return function(d,e,g){d=g[c];d==t?(g.$$observers[a]=[],g.$observe(c,function(c){g.$set(a,c)})):g.$set(a,d)}}}}});var Ma={$addControl:u,$removeControl:u,$setValidity:u,$setDirty:u};Rb.$inject=["$element","$attrs","$scope"];var Pa={name:"form",restrict:"E",controller:Rb,compile:function(){return{pre:function(a,c,d,e){d.action||c.bind("submit",function(a){a.preventDefault()});
var g=c.parent().controller("form"),f=d.name||d.ngForm;f&&(a[f]=e);g&&c.bind("$destroy",function(){g.$removeControl(e);f&&(a[f]=t);H(e,Ma)})}}}},fd=A(Pa),gd=A(H(W(Pa),{restrict:"EAC"})),hd=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,id=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/,jd=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,Vb={text:Oa,number:function(a,c,d,e,g,f){Oa(a,c,d,e,g,f);e.$parsers.push(function(a){var c=U(a);return c||jd.test(a)?(e.$setValidity("number",
!0),a===""?null:c?a:parseFloat(a)):(e.$setValidity("number",!1),t)});e.$formatters.push(function(a){return U(a)?"":""+a});if(d.min){var i=parseFloat(d.min),a=function(a){return!U(a)&&a<i?(e.$setValidity("min",!1),t):(e.$setValidity("min",!0),a)};e.$parsers.push(a);e.$formatters.push(a)}if(d.max){var h=parseFloat(d.max),d=function(a){return!U(a)&&a>h?(e.$setValidity("max",!1),t):(e.$setValidity("max",!0),a)};e.$parsers.push(d);e.$formatters.push(d)}e.$formatters.push(function(a){return U(a)||ra(a)?
(e.$setValidity("number",!0),a):(e.$setValidity("number",!1),t)})},url:function(a,c,d,e,g,f){Oa(a,c,d,e,g,f);a=function(a){return U(a)||hd.test(a)?(e.$setValidity("url",!0),a):(e.$setValidity("url",!1),t)};e.$formatters.push(a);e.$parsers.push(a)},email:function(a,c,d,e,g,f){Oa(a,c,d,e,g,f);a=function(a){return U(a)||id.test(a)?(e.$setValidity("email",!0),a):(e.$setValidity("email",!1),t)};e.$formatters.push(a);e.$parsers.push(a)},radio:function(a,c,d,e){r(d.name)&&c.attr("name",sa());c.bind("click",
function(){c[0].checked&&a.$apply(function(){e.$setViewValue(d.value)})});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e){var g=d.ngTrueValue,f=d.ngFalseValue;C(g)||(g=!0);C(f)||(f=!1);c.bind("click",function(){a.$apply(function(){e.$setViewValue(c[0].checked)})});e.$render=function(){c[0].checked=e.$viewValue};e.$formatters.push(function(a){return a===g});e.$parsers.push(function(a){return a?g:f})},hidden:u,button:u,submit:u,reset:u},
Wb=["$browser","$sniffer",function(a,c){return{restrict:"E",require:"?ngModel",link:function(d,e,g,f){f&&(Vb[w(g.type)]||Vb.text)(d,e,g,f,c,a)}}}],La="ng-valid",Ka="ng-invalid",Na="ng-pristine",Sb="ng-dirty",kd=["$scope","$exceptionHandler","$attrs","ngModel","$element",function(a,c,d,e,g){function f(a,c){c=c?"-"+Za(c,"-"):"";g.removeClass((a?Ka:La)+c).addClass((a?La:Ka)+c)}this.$modelValue=this.$viewValue=Number.NaN;this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$pristine=
!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$render=u;this.$name=d.name;var i=g.inheritedData("$formController")||Ma,h=0,j=this.$error={};g.addClass(Na);f(!0);this.$setValidity=function(a,c){if(j[a]!==!c){if(c){if(j[a]&&h--,!h)f(!0),this.$valid=!0,this.$invalid=!1}else f(!1),this.$invalid=!0,this.$valid=!1,h++;j[a]=!c;f(c,a);i.$setValidity(a,c,this)}};this.$setViewValue=function(a){this.$viewValue=a;if(this.$pristine)this.$dirty=!0,this.$pristine=!1,g.removeClass(Na).addClass(Sb),i.$setDirty();
l(this.$parsers,function(c){a=c(a)});if(this.$modelValue!==a)this.$modelValue=a,e(a),l(this.$viewChangeListeners,function(a){try{a()}catch(d){c(d)}})};var k=this;a.$watch(function(){return e()},function(a){if(k.$modelValue!==a){var c=k.$formatters,d=c.length;for(k.$modelValue=a;d--;)a=c[d](a);if(k.$viewValue!==a)k.$viewValue=a,k.$render()}})}],ld=[function(){return{inject:{ngModel:"accessor"},require:["ngModel","^?form"],controller:kd,link:function(a,c,d,e){var g=e[0],f=e[1]||Ma;f.$addControl(g);
c.bind("$destroy",function(){f.$removeControl(g)})}}}],md=A({require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),Xb=[function(){return{require:"?ngModel",link:function(a,c,d,e){if(e){var g=function(a){if(d.required&&(U(a)||a===!1))e.$setValidity("required",!1);else return e.$setValidity("required",!0),a};e.$formatters.push(g);e.$parsers.unshift(g);d.$observe("required",function(){g(e.$viewValue)})}}}}],nd=function(){return{require:"ngModel",link:function(a,
c,d,e){var g=(a=/\/(.*)\//.exec(d.ngList))&&RegExp(a[1])||d.ngList||",",f=function(a){var c=[];a&&l(a.split(g),function(a){a&&c.push(R(a))});return c};e.$parsers.push(f);e.$formatters.push(function(a){return I(a)&&!ca(f(e.$viewValue),a)?a.join(", "):t})}}},od=/^(true|false|\d+)$/,pd=[function(){return{priority:100,compile:function(a,c){return od.test(c.ngValue)?function(a,c,g){g.$set("value",a.$eval(g.ngValue))}:function(a,c,g){g.$$observers.value=[];a.$watch(g.ngValue,function(a){g.$set("value",
a,!1)})}}}}],qd=O(function(a,c,d){c.addClass("ng-binding").data("$binding",d.ngBind);a.$watch(d.ngBind,function(a){c.text(a==t?"":a)})}),rd=["$interpolate",function(a){return function(c,d,e){c=a(d.attr(e.$attr.ngBindTemplate));d.addClass("ng-binding").data("$binding",c);e.$observe("ngBindTemplate",function(a){d.text(a)})}}],sd=[function(){return function(a,c,d){c.addClass("ng-binding").data("$binding",d.ngBindHtmlUnsafe);a.$watch(d.ngBindHtmlUnsafe,function(a){c.html(a||"")})}}],td=kb("",!0),ud=kb("Odd",
0),vd=kb("Even",1),wd=O({compile:function(a,c){c.$set("ngCloak",t);a.removeClass("ng-cloak")}}),xd=[function(){return{scope:!0,controller:"@"}}],Yb={};l("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave".split(" "),function(a){var c=ba("ng-"+a);Yb[c]=["$parse",function(d){return function(e,g,f){var i=d(f[c]);g.bind(w(a),function(a){e.$apply(function(){i(e,{$event:a})})})}}]});var yd=O(function(a,c,d){c.bind("submit",function(){a.$apply(d.ngSubmit)})}),zd=["$http",
"$templateCache","$anchorScroll","$compile",function(a,c,d,e){return{restrict:"ECA",terminal:!0,compile:function(g,f){var i=f.ngInclude||f.src,h=f.onload||"",j=f.autoscroll;return function(f,g){var m=0,l,r=function(){l&&(l.$destroy(),l=null);g.html("")};f.$watch(i,function(i){var s=++m;i?a.get(i,{cache:c}).success(function(a){s===m&&(l&&l.$destroy(),l=f.$new(),g.html(a),e(g.contents())(l),B(j)&&(!j||f.$eval(j))&&d(),l.$emit("$includeContentLoaded"),f.$eval(h))}).error(function(){s===m&&r()}):r()})}}}}],
Ad=O({compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),Bd=O({terminal:!0,priority:1E3}),Cd=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,g,f){var i=f.count,h=g.attr(f.$attr.when),j=f.offset||0,k=e.$eval(h),n={};l(k,function(a,e){n[e]=c(a.replace(d,"{{"+i+"-"+j+"}}"))});e.$watch(function(){var c=parseFloat(e.$eval(i));return isNaN(c)?"":(k[c]||(c=a.pluralCat(c-j)),n[c](e,g,!0))},function(a){g.text(a)})}}}],Dd=O({transclude:"element",priority:1E3,
terminal:!0,compile:function(a,c,d){return function(a,c,f){var i=f.ngRepeat,f=i.match(/^\s*(.+)\s+in\s+(.*)\s*$/),h,j,k;if(!f)throw z("Expected ngRepeat in form of '_item_ in _collection_' but got '"+i+"'.");i=f[1];h=f[2];f=i.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/);if(!f)throw z("'item' in 'item in collection' should be identifier or (key, value) but got '"+i+"'.");j=f[3]||f[1];k=f[2];var l=new eb;a.$watch(function(a){var e,f,i=a.$eval(h),s=ac(i,!0),r,v=new eb,t,u,D,p,x=c;if(I(i))D=
i||[];else{D=[];for(t in i)i.hasOwnProperty(t)&&t.charAt(0)!="$"&&D.push(t);D.sort()}e=0;for(f=D.length;e<f;e++){t=i===D?e:D[e];u=i[t];if(p=l.shift(u)){r=p.scope;v.push(u,p);if(e!==p.index)p.index=e,x.after(p.element);x=p.element}else r=a.$new();r[j]=u;k&&(r[k]=t);r.$index=e;r.$position=e===0?"first":e==s-1?"last":"middle";p||d(r,function(a){x.after(a);p={scope:r,element:x=a,index:e};v.push(u,p)})}for(t in l)if(l.hasOwnProperty(t))for(D=l[t];D.length;)u=D.pop(),u.element.remove(),u.scope.$destroy();
l=v})}}}),Ed=O(function(a,c,d){a.$watch(d.ngShow,function(a){c.css("display",Va(a)?"":"none")})}),Fd=O(function(a,c,d){a.$watch(d.ngHide,function(a){c.css("display",Va(a)?"none":"")})}),Gd=O(function(a,c,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&l(d,function(a,d){c.css(d,"")});a&&c.css(a)},!0)}),Hd=A({restrict:"EA",compile:function(a,c){var d=c.ngSwitch||c.on,e={};a.data("ng-switch",e);return function(a,f){var i,h,j;a.$watch(d,function(d){h&&(j.$destroy(),h.remove(),h=j=null);if(i=e["!"+d]||e["?"])a.$eval(c.change),
j=a.$new(),i(j,function(a){h=a;f.append(a)})})}}}),Id=O({transclude:"element",priority:500,compile:function(a,c,d){a=a.inheritedData("ng-switch");ja(a);a["!"+c.ngSwitchWhen]=d}}),Jd=O({transclude:"element",priority:500,compile:function(a,c,d){a=a.inheritedData("ng-switch");ja(a);a["?"]=d}}),Kd=O({controller:["$transclude","$element",function(a,c){a(function(a){c.append(a)})}]}),Ld=["$http","$templateCache","$route","$anchorScroll","$compile","$controller",function(a,c,d,e,g,f){return{restrict:"ECA",
terminal:!0,link:function(i,h,j){function k(){function j(){s===l&&(h.html(""),m&&(m.$destroy(),m=null))}var k=d.current&&d.current.template,s=++l;k?a.get(k,{cache:c}).success(function(a){if(s===l){h.html(a);m&&(m.$destroy(),m=null);var a=g(h.contents()),c=d.current;m=c.scope=i.$new();c.controller&&(c=f(c.controller,{$scope:m}),h.contents().data("$ngControllerController",c));a(m);m.$emit("$viewContentLoaded");m.$eval(o);e()}}).error(j):j()}var l=0,m,o=j.onload||"";i.$on("$afterRouteChange",k);k()}}}],
Md=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(c,d){d.type=="text/ng-template"&&a.put(d.id,c.text())}}}],Nd=A({terminal:!0}),Od=["$compile","$parse",function(a,c){var d=/^\s*(.*?)(?:\s+as\s+(.*?))?(?:\s+group\s+by\s+(.*))?\s+for\s+(?:([\$\w][\$\w\d]*)|(?:\(\s*([\$\w][\$\w\d]*)\s*,\s*([\$\w][\$\w\d]*)\s*\)))\s+in\s+(.*)$/;return{restrict:"E",require:"?ngModel",link:function(e,g,f,i){function h(a,c,d){d.$render=function(){c.val(d.$viewValue)};c.bind("change",function(){a.$apply(function(){d.$setViewValue(c.val())})})}
function j(a,c,d){var e;d.$render=function(){var a=new Ca(d.$viewValue);l(c.children(),function(c){c.selected=B(a.get(c.value))})};a.$watch(function(){ca(e,d.$viewValue)||(e=W(d.$viewValue),d.$render())});c.bind("change",function(){a.$apply(function(){var a=[];l(c.children(),function(c){c.selected&&a.push(c.value)});d.$setViewValue(a)})})}function k(e,f,g){function h(){var a={"":[]},c=[""],d,i,l,m,p;l=g.$modelValue;m=x(e)||[];var y=o?mb(m):m,z,v,w;v={};p=!1;var C,E;if(n)p=new Ca(l);else if(l===null||
F)a[""].push({selected:l===null,id:"",label:""}),p=!0;for(w=0;z=y.length,w<z;w++){v[k]=m[o?v[o]=y[w]:w];d=r(e,v)||"";if(!(i=a[d]))i=a[d]=[],c.push(d);n?d=p.remove(u(e,v))!=t:(d=l===u(e,v),p=p||d);i.push({id:o?y[w]:w,label:j(e,v)||"",selected:d})}!n&&!p&&a[""].unshift({id:"?",label:"",selected:!0});v=0;for(y=c.length;v<y;v++){d=c[v];i=a[d];if(A.length<=v)l={element:H.clone().attr("label",d),label:i.label},m=[l],A.push(m),f.append(l.element);else if(m=A[v],l=m[0],l.label!=d)l.element.attr("label",l.label=
d);C=null;w=0;for(z=i.length;w<z;w++)if(d=i[w],p=m[w+1]){C=p.element;if(p.label!==d.label)C.text(p.label=d.label);if(p.id!==d.id)C.val(p.id=d.id);if(p.element.selected!==d.selected)C.prop("selected",p.selected=d.selected)}else d.id===""&&F?E=F:(E=B.clone()).val(d.id).attr("selected",d.selected).text(d.label),m.push({element:E,label:d.label,id:d.id,selected:d.selected}),C?C.after(E):l.element.append(E),C=E;for(w++;m.length>w;)m.pop().element.remove()}for(;A.length>v;)A.pop()[0].element.remove()}var i;
if(!(i=m.match(d)))throw z("Expected ngOptions in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '"+m+"'.");var j=c(i[2]||i[1]),k=i[4]||i[6],o=i[5],r=c(i[3]||""),u=c(i[2]?i[1]:k),x=c(i[7]),B=p(X.createElement("option")),H=p(X.createElement("optgroup")),F=!1,A=[[{element:f,label:""}]];l(f.children(),function(c){c.value==""&&(F=p(c).remove(),a(F)(e))});f.html("");f.bind("change",function(){e.$apply(function(){var a,c=x(e)||[],d={},h,i,j,l,m,p;if(n){i=[];l=0;for(p=A.length;l<
p;l++){a=A[l];j=1;for(m=a.length;j<m;j++)if((h=a[j].element)[0].selected)h=h.val(),o&&(d[o]=h),d[k]=c[h],i.push(u(e,d))}}else h=f.val(),h=="?"?i=t:h==""?i=null:(d[k]=c[h],o&&(d[o]=h),i=u(e,d));g.$setViewValue(i)})});g.$render=h;e.$watch(h)}if(i){var n=f.multiple,m=f.ngOptions;if(n&&(f.required||f.ngRequired)){var o=function(a){i.$setValidity("required",!f.required||a&&a.length);return a};i.$parsers.push(o);i.$formatters.unshift(o);f.$observe("required",function(){o(i.$viewValue)})}m?k(e,g,i):n?j(e,
g,i):h(e,g,i)}}}}],Pd=["$interpolate",function(a){return{restrict:"E",priority:100,compile:function(c,d){if(r(d.value)){var e=a(c.text(),!0);if(e)return function(a,c,d){a.$watch(e,function(a){d.$set("value",a)})};else d.$set("value",c.text())}}}}],Qd=A({restrict:"E",terminal:!0});(fa=V.jQuery)?(p=fa,H(fa.fn,{scope:pa.scope,controller:pa.controller,injector:pa.injector,inheritedData:pa.inheritedData}),$a("remove",!0),$a("empty"),$a("html")):p=S;Tb.element=p;(function(a){H(a,{bootstrap:qb,copy:W,extend:H,
equals:ca,element:p,forEach:l,injector:rb,noop:u,bind:Ua,toJson:Z,fromJson:ob,identity:ta,isUndefined:r,isDefined:B,isString:C,isFunction:L,isObject:M,isNumber:ra,isElement:$b,isArray:I,version:cd,isDate:ha,lowercase:w,uppercase:ga,callbacks:{counter:0}});na=fc(V);try{na("ngLocale")}catch(c){na("ngLocale",[]).provider("$locale",Uc)}na("ng",["ngLocale"],["$provide",function(a){a.provider("$compile",zb).directive({a:ed,input:Wb,textarea:Wb,form:fd,script:Md,select:Od,style:Qd,option:Pd,ngBind:qd,ngBindHtmlUnsafe:sd,
ngBindTemplate:rd,ngClass:td,ngClassEven:vd,ngClassOdd:ud,ngCloak:wd,ngController:xd,ngForm:gd,ngHide:Fd,ngInclude:zd,ngInit:Ad,ngNonBindable:Bd,ngPluralize:Cd,ngRepeat:Dd,ngShow:Ed,ngSubmit:yd,ngStyle:Gd,ngSwitch:Hd,ngSwitchWhen:Id,ngSwitchDefault:Jd,ngOptions:Nd,ngView:Ld,ngTransclude:Kd,ngModel:ld,ngList:nd,ngChange:md,required:Xb,ngRequired:Xb,ngValue:pd}).directive(lb).directive(Yb);a.provider({$anchorScroll:oc,$browser:qc,$cacheFactory:rc,$controller:vc,$defer:wc,$document:xc,$exceptionHandler:yc,
$filter:Kb,$interpolate:zc,$http:Qc,$httpBackend:Rc,$location:Dc,$log:Ec,$parse:Ic,$route:Lc,$routeParams:Mc,$rootScope:Nc,$q:Jc,$sniffer:Oc,$templateCache:sc,$window:Pc})}])})(Tb);p(X).ready(function(){dc(X,qb)})})(window,document);angular.element(document).find("head").append('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak{display:none;}ng\\:form{display:block;}</style>');

@ -1 +1 @@
1.0.0rc4
1.0.0rc5

@ -1,6 +1,6 @@
/**
* @license AngularJS v1.0.0rc4
* @license AngularJS v1.0.0rc5
* (c) 2010-2011 AngularJS http://angularjs.org
* License: MIT
*
@ -137,13 +137,6 @@ angular.mock.$Browser = function() {
self.baseHref = function() {
return this.$$baseHref;
};
self.$$scripts = [];
self.addJs = function(url, done) {
var script = {url: url, done: done};
self.$$scripts.push(script);
return script;
};
};
angular.mock.$Browser.prototype = {
@ -248,13 +241,15 @@ angular.mock.$ExceptionHandlerProvider = function() {
break;
case 'log':
var errors = [];
handler = function(e) {
if (arguments.length == 1) {
errors.push(e);
} else {
errors.push([].slice.call(arguments, 0));
}
}
};
handler.errors = errors;
break;
default:
@ -452,7 +447,7 @@ angular.mock.$LogProvider = function() {
if (angular.isString(timestamp)) {
var tsStr = timestamp;
self.origDate = jsonStringToDate(timestamp)
self.origDate = jsonStringToDate(timestamp);
timestamp = self.origDate.getTime();
if (isNaN(timestamp))
@ -1231,7 +1226,7 @@ function createHttpBackendMock($delegate, $browser) {
}
});
}
};
}
function MockHttpExpectation(method, url, data, headers) {
@ -1551,7 +1546,6 @@ window.jasmine && (function(window) {
*/
window.module = angular.mock.module = function() {
var moduleFns = Array.prototype.slice.call(arguments, 0);
var stack = new Error('Module Declaration Location:').stack;
return isSpecRunning() ? workFn() : workFn;
/////////////////////
function workFn() {

File diff suppressed because it is too large Load Diff

@ -1 +1 @@
1.0.0rc4
1.0.0rc5