summaryrefslogtreecommitdiffstats
path: root/js/vendor/angular
diff options
context:
space:
mode:
Diffstat (limited to 'js/vendor/angular')
-rw-r--r--js/vendor/angular/.bower.json8
-rw-r--r--js/vendor/angular/angular.js185
-rw-r--r--js/vendor/angular/angular.min.js471
-rw-r--r--js/vendor/angular/angular.min.js.gzipbin39789 -> 39789 bytes
-rw-r--r--js/vendor/angular/angular.min.js.map6
-rw-r--r--js/vendor/angular/bower.json2
6 files changed, 368 insertions, 304 deletions
diff --git a/js/vendor/angular/.bower.json b/js/vendor/angular/.bower.json
index 6cb135a42..c62199eb3 100644
--- a/js/vendor/angular/.bower.json
+++ b/js/vendor/angular/.bower.json
@@ -1,14 +1,14 @@
{
"name": "angular",
- "version": "1.3.0-rc.2",
+ "version": "1.3.0-rc.3",
"main": "./angular.js",
"dependencies": {},
"homepage": "https://github.com/angular/bower-angular",
- "_release": "1.3.0-rc.2",
+ "_release": "1.3.0-rc.3",
"_resolution": {
"type": "version",
- "tag": "v1.3.0-rc.2",
- "commit": "dbe57c6c9495752c3d1cf3a75fc5aa624ff3ba06"
+ "tag": "v1.3.0-rc.3",
+ "commit": "b35bc522b2bcc4258994d6738e3f7ad91e42cdc0"
},
"_source": "git://github.com/angular/bower-angular.git",
"_target": "~1.3.*",
diff --git a/js/vendor/angular/angular.js b/js/vendor/angular/angular.js
index a3527e899..ff96d85ea 100644
--- a/js/vendor/angular/angular.js
+++ b/js/vendor/angular/angular.js
@@ -1,5 +1,5 @@
/**
- * @license AngularJS v1.3.0-rc.2
+ * @license AngularJS v1.3.0-rc.3
* (c) 2010-2014 Google, Inc. http://angularjs.org
* License: MIT
*/
@@ -71,7 +71,7 @@ function minErr(module, ErrorConstructor) {
return match;
});
- message = message + '\nhttp://errors.angularjs.org/1.3.0-rc.2/' +
+ message = message + '\nhttp://errors.angularjs.org/1.3.0-rc.3/' +
(module ? module + '/' : '') + code;
for (i = 2; i < arguments.length; i++) {
message = message + (i == 2 ? '?' : '&') + 'p' + (i-2) + '=' +
@@ -131,7 +131,6 @@ function minErr(module, ErrorConstructor) {
trim: true,
isElement: true,
makeMap: true,
- map: true,
size: true,
includes: true,
arrayRemove: true,
@@ -408,7 +407,7 @@ function setHashKey(obj, h) {
* @kind function
*
* @description
- * Extends the destination object `dst` by copying all of the properties from the `src` object(s)
+ * Extends the destination object `dst` by copying own enumerable properties from the `src` object(s)
* to `dst`. You can specify multiple `src` objects.
*
* @param {Object} dst Destination object.
@@ -698,15 +697,6 @@ function nodeName_(element) {
}
-function map(obj, iterator, context) {
- var results = [];
- forEach(obj, function(value, index, list) {
- results.push(iterator.call(context, value, index, list));
- });
- return results;
-}
-
-
/**
* @description
* Determines the number of elements in an array, the number of properties an object has, or
@@ -2122,11 +2112,11 @@ function setupModuleLoader(window) {
* - `codeName` – `{string}` – Code name of the release, such as "jiggling-armfat".
*/
var version = {
- full: '1.3.0-rc.2', // all of these placeholder strings will be replaced by grunt's
+ full: '1.3.0-rc.3', // all of these placeholder strings will be replaced by grunt's
major: 1, // package task
minor: 3,
dot: 0,
- codeName: 'tactile-perception'
+ codeName: 'aggressive-pacifism'
};
@@ -8532,12 +8522,13 @@ function $HttpProvider() {
expect(data.getText()).toMatch(/Hello, \$http!/);
});
- it('should make a JSONP request to angularjs.org', function() {
- sampleJsonpBtn.click();
- fetchBtn.click();
- expect(status.getText()).toMatch('200');
- expect(data.getText()).toMatch(/Super Hero!/);
- });
+// Commented out due to flakes. See https://github.com/angular/angular.js/issues/9185
+// it('should make a JSONP request to angularjs.org', function() {
+// sampleJsonpBtn.click();
+// fetchBtn.click();
+// expect(status.getText()).toMatch('200');
+// expect(data.getText()).toMatch(/Super Hero!/);
+// });
it('should make JSONP request to invalid URL and invoke the error handler',
function() {
@@ -10337,7 +10328,10 @@ function locationGetterSetter(property, preprocess) {
*/
function $LocationProvider(){
var hashPrefix = '',
- html5Mode = false;
+ html5Mode = {
+ enabled: false,
+ requireBase: true
+ };
/**
* @ngdoc method
@@ -10359,12 +10353,30 @@ function $LocationProvider(){
* @ngdoc method
* @name $locationProvider#html5Mode
* @description
- * @param {boolean=} mode Use HTML5 strategy if available.
- * @returns {*} current value if used as getter or itself (chaining) if used as setter
+ * @param {(boolean|Object)=} mode If boolean, sets `html5Mode.enabled` to value.
+ * If object, sets `enabled` and `requireBase` to respective values.
+ * - **enabled** – `{boolean}` – Sets `html5Mode.enabled`. If true, will rely on
+ * `history.pushState` to change urls where supported. Will fall back to hash-prefixed paths
+ * in browsers that do not support `pushState`.
+ * - **requireBase** - `{boolean}` - Sets `html5Mode.requireBase` (default: `true`). When
+ * html5Mode is enabled, specifies whether or not a <base> tag is required to be present. If
+ * `enabled` and `requireBase` are true, and a base tag is not present, an error will be
+ * thrown when `$location` is injected. See the
+ * {@link guide/$location $location guide for more information}
+ *
+ * @returns {Object} html5Mode object if used as getter or itself (chaining) if used as setter
*/
this.html5Mode = function(mode) {
- if (isDefined(mode)) {
- html5Mode = mode;
+ if (isBoolean(mode)) {
+ html5Mode.enabled = mode;
+ return this;
+ } else if (isObject(mode)) {
+ html5Mode.enabled = isBoolean(mode.enabled) ?
+ mode.enabled :
+ html5Mode.enabled;
+ html5Mode.requireBase = isBoolean(mode.requireBase) ?
+ mode.requireBase :
+ html5Mode.requireBase;
return this;
} else {
return html5Mode;
@@ -10406,8 +10418,8 @@ function $LocationProvider(){
initialUrl = $browser.url(),
appBase;
- if (html5Mode) {
- if (!baseHref) {
+ if (html5Mode.enabled) {
+ if (!baseHref && html5Mode.requireBase) {
throw $locationMinErr('nobase',
"$location in HTML5 mode requires a <base> tag to be present!");
}
@@ -16374,9 +16386,9 @@ var uppercaseFilter = valueFn(uppercase);
}]);
</script>
<div ng-controller="ExampleController">
- Limit {{numbers}} to: <input type="integer" ng-model="numLimit">
+ Limit {{numbers}} to: <input type="number" step="1" ng-model="numLimit">
<p>Output numbers: {{ numbers | limitTo:numLimit }}</p>
- Limit {{letters}} to: <input type="integer" ng-model="letterLimit">
+ Limit {{letters}} to: <input type="number" step="1" ng-model="letterLimit">
<p>Output letters: {{ letters | limitTo:letterLimit }}</p>
Limit {{longNumber}} to: <input type="integer" ng-model="longNumberLimit">
<p>Output long number: {{ longNumber | limitTo:longNumberLimit }}</p>
@@ -16399,17 +16411,18 @@ var uppercaseFilter = valueFn(uppercase);
expect(limitedLongNumber.getText()).toEqual('Output long number: 234');
});
- it('should update the output when -3 is entered', function() {
- numLimitInput.clear();
- numLimitInput.sendKeys('-3');
- letterLimitInput.clear();
- letterLimitInput.sendKeys('-3');
- longNumberLimitInput.clear();
- longNumberLimitInput.sendKeys('-3');
- expect(limitedNumbers.getText()).toEqual('Output numbers: [7,8,9]');
- expect(limitedLetters.getText()).toEqual('Output letters: ghi');
- expect(limitedLongNumber.getText()).toEqual('Output long number: 342');
- });
+ // There is a bug in safari and protractor that doesn't like the minus key
+ // it('should update the output when -3 is entered', function() {
+ // numLimitInput.clear();
+ // numLimitInput.sendKeys('-3');
+ // letterLimitInput.clear();
+ // letterLimitInput.sendKeys('-3');
+ // longNumberLimitInput.clear();
+ // longNumberLimitInput.sendKeys('-3');
+ // expect(limitedNumbers.getText()).toEqual('Output numbers: [7,8,9]');
+ // expect(limitedLetters.getText()).toEqual('Output letters: ghi');
+ // expect(limitedLongNumber.getText()).toEqual('Output long number: 342');
+ // });
it('should not exceed the maximum size of input array', function() {
numLimitInput.clear();
@@ -16424,7 +16437,7 @@ var uppercaseFilter = valueFn(uppercase);
});
</file>
</example>
- */
+*/
function limitToFilter(){
return function(input, limit) {
if (isNumber(input)) input = input.toString();
@@ -16588,7 +16601,7 @@ function orderByFilter($parse){
if (!(isArrayLike(array))) return array;
if (!sortPredicate) return array;
sortPredicate = isArray(sortPredicate) ? sortPredicate: [sortPredicate];
- sortPredicate = map(sortPredicate, function(predicate){
+ sortPredicate = sortPredicate.map(function(predicate){
var descending = false, get = predicate || identity;
if (isString(predicate)) {
if ((predicate.charAt(0) == '+' || predicate.charAt(0) == '-')) {
@@ -17130,6 +17143,7 @@ forEach(['src', 'srcset', 'href'], function(attrName) {
*/
var nullFormCtrl = {
$addControl: noop,
+ $$renameControl: nullFormRenameControl,
$removeControl: noop,
$setValidity: noop,
$$setPending: noop,
@@ -17140,6 +17154,10 @@ var nullFormCtrl = {
},
SUBMITTED_CLASS = 'ng-submitted';
+function nullFormRenameControl(control, name) {
+ control.$name = name;
+}
+
/**
* @ngdoc type
* @name form.FormController
@@ -17177,17 +17195,18 @@ SUBMITTED_CLASS = 'ng-submitted';
*
*/
//asks for $scope to fool the BC controller module
-FormController.$inject = ['$element', '$attrs', '$scope', '$animate'];
-function FormController(element, attrs, $scope, $animate) {
+FormController.$inject = ['$element', '$attrs', '$scope', '$animate', '$interpolate'];
+function FormController(element, attrs, $scope, $animate, $interpolate) {
var form = this,
- parentForm = element.parent().controller('form') || nullFormCtrl,
controls = [];
+ var parentForm = form.$$parentForm = element.parent().controller('form') || nullFormCtrl;
+
// init state
form.$error = {};
form.$$success = {};
form.$pending = undefined;
- form.$name = attrs.name || attrs.ngForm;
+ form.$name = $interpolate(attrs.name || attrs.ngForm || '')($scope);
form.$dirty = false;
form.$pristine = true;
form.$valid = true;
@@ -17253,6 +17272,17 @@ function FormController(element, attrs, $scope, $animate) {
}
};
+ // Private API: rename a form control
+ form.$$renameControl = function(control, newName) {
+ var oldName = control.$name;
+
+ if (form[oldName] === control) {
+ delete form[oldName];
+ }
+ form[newName] = control;
+ control.$name = newName;
+ };
+
/**
* @ngdoc method
* @name form.FormController#$removeControl
@@ -17358,6 +17388,25 @@ function FormController(element, attrs, $scope, $animate) {
/**
* @ngdoc method
+ * @name form.FormController#$setUntouched
+ *
+ * @description
+ * Sets the form to its untouched state.
+ *
+ * This method can be called to remove the 'ng-touched' class and set the form controls to their
+ * untouched state (ng-untouched class).
+ *
+ * Setting a form controls back to their untouched state is often useful when setting the form
+ * back to its pristine state.
+ */
+ form.$setUntouched = function () {
+ forEach(controls, function(control) {
+ control.$setUntouched();
+ });
+ };
+
+ /**
+ * @ngdoc method
* @name form.FormController#$setSubmitted
*
* @description
@@ -17573,13 +17622,20 @@ var formDirectiveFactory = function(isNgForm) {
});
}
- var parentFormCtrl = formElement.parent().controller('form'),
- alias = attr.name || attr.ngForm;
+ var parentFormCtrl = controller.$$parentForm,
+ alias = controller.$name;
if (alias) {
setter(scope, alias, controller, alias);
+ attr.$observe(attr.name ? 'name' : 'ngForm', function(newValue) {
+ if (alias === newValue) return;
+ setter(scope, alias, undefined, alias);
+ alias = newValue;
+ setter(scope, alias, controller, alias);
+ parentFormCtrl.$$renameControl(controller, alias);
+ });
}
- if (parentFormCtrl) {
+ if (parentFormCtrl !== nullFormCtrl) {
formElement.on('$destroy', function() {
parentFormCtrl.$removeControl(controller);
if (alias) {
@@ -17614,10 +17670,10 @@ var URL_REGEXP = /^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\
var EMAIL_REGEXP = /^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;
var NUMBER_REGEXP = /^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/;
var DATE_REGEXP = /^(\d{4})-(\d{2})-(\d{2})$/;
-var DATETIMELOCAL_REGEXP = /^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d))?$/;
+var DATETIMELOCAL_REGEXP = /^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
var WEEK_REGEXP = /^(\d{4})-W(\d\d)$/;
var MONTH_REGEXP = /^(\d{4})-(\d\d)$/;
-var TIME_REGEXP = /^(\d\d):(\d\d)(?::(\d\d))?$/;
+var TIME_REGEXP = /^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/;
var DEFAULT_REGEXP = /(\s+|^)default(\s+|$)/;
var $ngModelMinErr = new minErr('ngModel');
@@ -17881,8 +17937,8 @@ var inputType = {
</example>
*/
'datetime-local': createDateInputType('datetimelocal', DATETIMELOCAL_REGEXP,
- createDateParser(DATETIMELOCAL_REGEXP, ['yyyy', 'MM', 'dd', 'HH', 'mm', 'ss']),
- 'yyyy-MM-ddTHH:mm:ss'),
+ createDateParser(DATETIMELOCAL_REGEXP, ['yyyy', 'MM', 'dd', 'HH', 'mm', 'ss', 'sss']),
+ 'yyyy-MM-ddTHH:mm:ss.sss'),
/**
* @ngdoc input
@@ -17970,8 +18026,8 @@ var inputType = {
</example>
*/
'time': createDateInputType('time', TIME_REGEXP,
- createDateParser(TIME_REGEXP, ['HH', 'mm', 'ss']),
- 'HH:mm:ss'),
+ createDateParser(TIME_REGEXP, ['HH', 'mm', 'ss', 'sss']),
+ 'HH:mm:ss.sss'),
/**
* @ngdoc input
@@ -18667,7 +18723,7 @@ function createDateParser(regexp, mapping) {
HH: date.getHours(),
mm: date.getMinutes(),
ss: date.getSeconds(),
- sss: date.getMilliseconds()
+ sss: date.getMilliseconds() / 1000
};
} else {
map = { yyyy: 1970, MM: 1, dd: 1, HH: 0, mm: 0, ss: 0, sss: 0 };
@@ -18678,7 +18734,7 @@ function createDateParser(regexp, mapping) {
map[mapping[index]] = +part;
}
});
- return new Date(map.yyyy, map.MM - 1, map.dd, map.HH, map.mm, map.ss || 0, map.sss || 0);
+ return new Date(map.yyyy, map.MM - 1, map.dd, map.HH, map.mm, map.ss || 0, map.sss * 1000 || 0);
}
}
@@ -19257,8 +19313,8 @@ var VALID_CLASS = 'ng-valid',
*
*
*/
-var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$parse', '$animate', '$timeout', '$rootScope', '$q',
- function($scope, $exceptionHandler, $attr, $element, $parse, $animate, $timeout, $rootScope, $q) {
+var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$parse', '$animate', '$timeout', '$rootScope', '$q', '$interpolate',
+ function($scope, $exceptionHandler, $attr, $element, $parse, $animate, $timeout, $rootScope, $q, $interpolate) {
this.$viewValue = Number.NaN;
this.$modelValue = Number.NaN;
this.$validators = {};
@@ -19275,7 +19331,7 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', '$element', '$
this.$error = {}; // keep invalid keys here
this.$$success = {}; // keep valid keys here
this.$pending = undefined; // keep pending keys here
- this.$name = $attr.name;
+ this.$name = $interpolate($attr.name || '', false)($scope);
var parsedNgModel = $parse($attr.ngModel),
@@ -19987,6 +20043,12 @@ var ngModelDirective = function() {
// notify others, especially parent forms
formCtrl.$addControl(modelCtrl);
+ attr.$observe('name', function(newValue) {
+ if (modelCtrl.$name !== newValue) {
+ formCtrl.$$renameControl(modelCtrl, newValue);
+ }
+ });
+
scope.$on('$destroy', function() {
formCtrl.$removeControl(modelCtrl);
});
@@ -21301,6 +21363,7 @@ var ngCloakDirective = ngDirective({
*
* @element ANY
* @scope
+ * @priority 500
* @param {expression} ngController Name of a constructor function registered with the current
* {@link ng.$controllerProvider $controllerProvider} or an {@link guide/expression expression}
* that on the current scope evaluates to a constructor function.
diff --git a/js/vendor/angular/angular.min.js b/js/vendor/angular/angular.min.js
index e87d5b6ae..dae7873ec 100644
--- a/js/vendor/angular/angular.min.js
+++ b/js/vendor/angular/angular.min.js
@@ -1,241 +1,242 @@
/*
- AngularJS v1.3.0-rc.2
+ AngularJS v1.3.0-rc.3
(c) 2010-2014 Google, Inc. http://angularjs.org
License: MIT
*/
-(function(H,Z,s){'use strict';function M(b){return function(){var a=arguments[0],c;c="["+(b?b+":":"")+a+"] http://errors.angularjs.org/1.3.0-rc.2/"+(b?b+"/":"")+a;for(a=1;a<arguments.length;a++){c=c+(1==a?"?":"&")+"p"+(a-1)+"=";var d=encodeURIComponent,e;e=arguments[a];e="function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof e?"undefined":"string"!=typeof e?JSON.stringify(e):e;c+=d(e)}return Error(c)}}function Ma(b){if(null==b||Na(b))return!1;var a=b.length;return 1===b.nodeType&&
-a?!0:G(b)||O(b)||0===a||"number"===typeof a&&0<a&&a-1 in b}function q(b,a,c){var d,e;if(b)if(y(b))for(d in b)"prototype"==d||"length"==d||"name"==d||b.hasOwnProperty&&!b.hasOwnProperty(d)||a.call(c,b[d],d,b);else if(O(b)||Ma(b)){var f="object"!==typeof b;d=0;for(e=b.length;d<e;d++)(f||d in b)&&a.call(c,b[d],d,b)}else if(b.forEach&&b.forEach!==q)b.forEach(a,c,b);else for(d in b)b.hasOwnProperty(d)&&a.call(c,b[d],d,b);return b}function $b(b){var a=[],c;for(c in b)b.hasOwnProperty(c)&&a.push(c);return a.sort()}
-function qd(b,a,c){for(var d=$b(b),e=0;e<d.length;e++)a.call(c,b[d[e]],d[e]);return d}function ac(b){return function(a,c){b(c,a)}}function rd(){return++bb}function bc(b,a){a?b.$$hashKey=a:delete b.$$hashKey}function x(b){for(var a=b.$$hashKey,c=1,d=arguments.length;c<d;c++){var e=arguments[c];if(e)for(var f=Object.keys(e),g=0,h=f.length;g<h;g++){var k=f[g];b[k]=e[k]}}bc(b,a);return b}function $(b){return parseInt(b,10)}function cc(b,a){return x(new (x(function(){},{prototype:b})),a)}function v(){}
-function Oa(b){return b}function ha(b){return function(){return b}}function F(b){return"undefined"===typeof b}function B(b){return"undefined"!==typeof b}function Q(b){return null!==b&&"object"===typeof b}function G(b){return"string"===typeof b}function ea(b){return"number"===typeof b}function ia(b){return"[object Date]"===Fa.call(b)}function y(b){return"function"===typeof b}function cb(b){return"[object RegExp]"===Fa.call(b)}function Na(b){return b&&b.window===b}function Pa(b){return b&&b.$evalAsync&&
-b.$watch}function sd(b){return!(!b||!(b.nodeName||b.prop&&b.attr&&b.find))}function td(b){var a={};b=b.split(",");var c;for(c=0;c<b.length;c++)a[b[c]]=!0;return a}function qa(b){return P(b.nodeName||b[0].nodeName)}function ud(b,a,c){var d=[];q(b,function(b,f,g){d.push(a.call(c,b,f,g))});return d}function Qa(b,a){var c=b.indexOf(a);0<=c&&b.splice(c,1);return a}function Ga(b,a,c,d){if(Na(b)||Pa(b))throw Ra("cpws");if(a){if(b===a)throw Ra("cpi");c=c||[];d=d||[];if(Q(b)){var e=c.indexOf(b);if(-1!==e)return d[e];
-c.push(b);d.push(a)}if(O(b))for(var f=a.length=0;f<b.length;f++)e=Ga(b[f],null,c,d),Q(b[f])&&(c.push(b[f]),d.push(e)),a.push(e);else{var g=a.$$hashKey;O(a)?a.length=0:q(a,function(b,c){delete a[c]});for(f in b)b.hasOwnProperty(f)&&(e=Ga(b[f],null,c,d),Q(b[f])&&(c.push(b[f]),d.push(e)),a[f]=e);bc(a,g)}}else if(a=b)O(b)?a=Ga(b,[],c,d):ia(b)?a=new Date(b.getTime()):cb(b)?(a=new RegExp(b.source,b.toString().match(/[^\/]*$/)[0]),a.lastIndex=b.lastIndex):Q(b)&&(e=Object.create(Object.getPrototypeOf(b)),
-a=Ga(b,e,c,d));return a}function ra(b,a){if(O(b)){a=a||[];for(var c=0,d=b.length;c<d;c++)a[c]=b[c]}else if(Q(b))for(c in a=a||{},b)if("$"!==c.charAt(0)||"$"!==c.charAt(1))a[c]=b[c];return a||b}function sa(b,a){if(b===a)return!0;if(null===b||null===a)return!1;if(b!==b&&a!==a)return!0;var c=typeof b,d;if(c==typeof a&&"object"==c)if(O(b)){if(!O(a))return!1;if((c=b.length)==a.length){for(d=0;d<c;d++)if(!sa(b[d],a[d]))return!1;return!0}}else{if(ia(b))return ia(a)?sa(b.getTime(),a.getTime()):!1;if(cb(b)&&
-cb(a))return b.toString()==a.toString();if(Pa(b)||Pa(a)||Na(b)||Na(a)||O(a))return!1;c={};for(d in b)if("$"!==d.charAt(0)&&!y(b[d])){if(!sa(b[d],a[d]))return!1;c[d]=!0}for(d in a)if(!c.hasOwnProperty(d)&&"$"!==d.charAt(0)&&a[d]!==s&&!y(a[d]))return!1;return!0}return!1}function db(b,a,c){return b.concat(Sa.call(a,c))}function dc(b,a){var c=2<arguments.length?Sa.call(arguments,2):[];return!y(a)||a instanceof RegExp?a:c.length?function(){return arguments.length?a.apply(b,c.concat(Sa.call(arguments,0))):
-a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}}function vd(b,a){var c=a;"string"===typeof b&&"$"===b.charAt(0)&&"$"===b.charAt(1)?c=s:Na(a)?c="$WINDOW":a&&Z===a?c="$DOCUMENT":Pa(a)&&(c="$SCOPE");return c}function ta(b,a){return"undefined"===typeof b?s:JSON.stringify(b,vd,a?" ":null)}function ec(b){return G(b)?JSON.parse(b):b}function ua(b){b=D(b).clone();try{b.empty()}catch(a){}var c=D("<div>").append(b).html();try{return 3===b[0].nodeType?P(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,
-function(a,b){return"<"+P(b)})}catch(d){return P(c)}}function fc(b){try{return decodeURIComponent(b)}catch(a){}}function gc(b){var a={},c,d;q((b||"").split("&"),function(b){b&&(c=b.replace(/\+/g,"%20").split("="),d=fc(c[0]),B(d)&&(b=B(c[1])?fc(c[1]):!0,Ab.call(a,d)?O(a[d])?a[d].push(b):a[d]=[a[d],b]:a[d]=b))});return a}function Bb(b){var a=[];q(b,function(b,d){O(b)?q(b,function(b){a.push(Ca(d,!0)+(!0===b?"":"="+Ca(b,!0)))}):a.push(Ca(d,!0)+(!0===b?"":"="+Ca(b,!0)))});return a.length?a.join("&"):""}
-function eb(b){return Ca(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Ca(b,a){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,a?"%20":"+")}function wd(b,a){var c,d,e=fb.length;b=D(b);for(d=0;d<e;++d)if(c=fb[d]+a,G(c=b.attr(c)))return c;return null}function xd(b,a){var c,d,e={};q(fb,function(a){a+="app";!c&&b.hasAttribute&&b.hasAttribute(a)&&(c=b,d=b.getAttribute(a))});
-q(fb,function(a){a+="app";var e;!c&&(e=b.querySelector("["+a.replace(":","\\:")+"]"))&&(c=e,d=e.getAttribute(a))});c&&(e.strictDi=null!==wd(c,"strict-di"),a(c,d?[d]:[],e))}function hc(b,a,c){Q(c)||(c={});c=x({strictDi:!1},c);var d=function(){b=D(b);if(b.injector()){var d=b[0]===Z?"document":ua(b);throw Ra("btstrpd",d.replace(/</,"&lt;").replace(/>/,"&gt;"));}a=a||[];a.unshift(["$provide",function(a){a.value("$rootElement",b)}]);c.debugInfoEnabled&&a.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);
-a.unshift("ng");d=Cb(a,c.strictDi);d.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return d},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;H&&e.test(H.name)&&(c.debugInfoEnabled=!0,H.name=H.name.replace(e,""));if(H&&!f.test(H.name))return d();H.name=H.name.replace(f,"");Da.resumeBootstrap=function(b){q(b,function(b){a.push(b)});d()}}function yd(){H.name="NG_ENABLE_DEBUG_INFO!"+H.name;H.location.reload()}function zd(b){return Da.element(b).injector().get("$$testability")}
-function Db(b,a){a=a||"_";return b.replace(Ad,function(b,d){return(d?a:"")+b.toLowerCase()})}function Bd(){var b;ic||((na=H.jQuery)&&na.fn.on?(D=na,x(na.fn,{scope:Ha.scope,isolateScope:Ha.isolateScope,controller:Ha.controller,injector:Ha.injector,inheritedData:Ha.inheritedData}),b=na.cleanData,na.cleanData=function(a){var c;if(Eb)Eb=!1;else for(var d=0,e;null!=(e=a[d]);d++)(c=na._data(e,"events"))&&c.$destroy&&na(e).triggerHandler("$destroy");b(a)}):D=R,Da.element=D,ic=!0)}function Fb(b,a,c){if(!b)throw Ra("areq",
-a||"?",c||"required");return b}function gb(b,a,c){c&&O(b)&&(b=b[b.length-1]);Fb(y(b),a,"not a function, got "+(b&&"object"===typeof b?b.constructor.name||"Object":typeof b));return b}function Ia(b,a){if("hasOwnProperty"===b)throw Ra("badname",a);}function jc(b,a,c){if(!a)return b;a=a.split(".");for(var d,e=b,f=a.length,g=0;g<f;g++)d=a[g],b&&(b=(e=b)[d]);return!c&&y(b)?dc(e,b):b}function hb(b){var a=b[0];b=b[b.length-1];var c=[a];do{a=a.nextSibling;if(!a)break;c.push(a)}while(a!==b);return D(c)}function Cd(b){function a(a,
-b,c){return a[b]||(a[b]=c())}var c=M("$injector"),d=M("ng");b=a(b,"angular",Object);b.$$minErr=b.$$minErr||M;return a(b,"module",function(){var b={};return function(f,g,h){if("hasOwnProperty"===f)throw d("badname","module");g&&b.hasOwnProperty(f)&&(b[f]=null);return a(b,f,function(){function a(c,d,e,f){f||(f=b);return function(){f[e||"push"]([c,d,arguments]);return r}}if(!g)throw c("nomod",f);var b=[],d=[],e=[],m=a("$injector","invoke","push",d),r={_invokeQueue:b,_configBlocks:d,_runBlocks:e,requires:g,
-name:f,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),animation:a("$animateProvider","register"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:m,run:function(a){e.push(a);return this}};h&&m(h);return r})}})}function Dd(b){x(b,{bootstrap:hc,copy:Ga,extend:x,equals:sa,element:D,forEach:q,
-injector:Cb,noop:v,bind:dc,toJson:ta,fromJson:ec,identity:Oa,isUndefined:F,isDefined:B,isString:G,isFunction:y,isObject:Q,isNumber:ea,isElement:sd,isArray:O,version:Ed,isDate:ia,lowercase:P,uppercase:ib,callbacks:{counter:0},getTestability:zd,$$minErr:M,$$csp:Ta,reloadWithDebugInfo:yd,$$hasClass:jb});Ua=Cd(H);try{Ua("ngLocale")}catch(a){Ua("ngLocale",[]).provider("$locale",Fd)}Ua("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:Gd});a.provider("$compile",kc).directive({a:Hd,input:lc,
-textarea:lc,form:Id,script:Jd,select:Kd,style:Ld,option:Md,ngBind:Nd,ngBindHtml:Od,ngBindTemplate:Pd,ngClass:Qd,ngClassEven:Rd,ngClassOdd:Sd,ngCloak:Td,ngController:Ud,ngForm:Vd,ngHide:Wd,ngIf:Xd,ngInclude:Yd,ngInit:Zd,ngNonBindable:$d,ngPluralize:ae,ngRepeat:be,ngShow:ce,ngStyle:de,ngSwitch:ee,ngSwitchWhen:fe,ngSwitchDefault:ge,ngOptions:he,ngTransclude:ie,ngModel:je,ngList:ke,ngChange:le,pattern:mc,ngPattern:mc,required:nc,ngRequired:nc,minlength:oc,ngMinlength:oc,maxlength:pc,ngMaxlength:pc,ngValue:me,
-ngModelOptions:ne}).directive({ngInclude:oe}).directive(kb).directive(qc);a.provider({$anchorScroll:pe,$animate:qe,$browser:re,$cacheFactory:se,$controller:te,$document:ue,$exceptionHandler:ve,$filter:rc,$interpolate:we,$interval:xe,$http:ye,$httpBackend:ze,$location:Ae,$log:Be,$parse:Ce,$rootScope:De,$q:Ee,$$q:Fe,$sce:Ge,$sceDelegate:He,$sniffer:Ie,$templateCache:Je,$templateRequest:Ke,$$testability:Le,$timeout:Me,$window:Ne,$$rAF:Oe,$$asyncCallback:Pe})}])}function Va(b){return b.replace(Qe,function(a,
-b,d,e){return e?d.toUpperCase():d}).replace(Re,"Moz$1")}function sc(b){b=b.nodeType;return 1===b||!b||9===b}function tc(b,a){var c,d,e=a.createDocumentFragment(),f=[];if(Gb.test(b)){c=c||e.appendChild(a.createElement("div"));d=(Se.exec(b)||["",""])[1].toLowerCase();d=ja[d]||ja._default;c.innerHTML=d[1]+b.replace(Te,"<$1></$2>")+d[2];for(d=d[0];d--;)c=c.lastChild;f=db(f,c.childNodes);c=e.firstChild;c.textContent=""}else f.push(a.createTextNode(b));e.textContent="";e.innerHTML="";q(f,function(a){e.appendChild(a)});
-return e}function R(b){if(b instanceof R)return b;var a;G(b)&&(b=da(b),a=!0);if(!(this instanceof R)){if(a&&"<"!=b.charAt(0))throw Hb("nosel");return new R(b)}if(a){a=Z;var c;b=(c=Ue.exec(b))?[a.createElement(c[1])]:(c=tc(b,a))?c.childNodes:[]}uc(this,b)}function Ib(b){return b.cloneNode(!0)}function lb(b,a){a||mb(b);if(b.querySelectorAll)for(var c=b.querySelectorAll("*"),d=0,e=c.length;d<e;d++)mb(c[d])}function vc(b,a,c,d){if(B(d))throw Hb("offargs");var e=(d=nb(b))&&d.events;if(d&&d.handle)if(a)q(a.split(" "),
-function(a){F(c)?(b.removeEventListener(a,e[a],!1),delete e[a]):Qa(e[a]||[],c)});else for(a in e)"$destroy"!==a&&b.removeEventListener(a,e[a],!1),delete e[a]}function mb(b,a){var c=b.ng339,d=c&&ob[c];d&&(a?delete d.data[a]:(d.handle&&(d.events.$destroy&&d.handle({},"$destroy"),vc(b)),delete ob[c],b.ng339=s))}function nb(b,a){var c=b.ng339,c=c&&ob[c];a&&!c&&(b.ng339=c=++Ve,c=ob[c]={events:{},data:{},handle:s});return c}function Jb(b,a,c){if(sc(b)){var d=B(c),e=!d&&a&&!Q(a),f=!a;b=(b=nb(b,!e))&&b.data;
-if(d)b[a]=c;else{if(f)return b;if(e)return b&&b[a];x(b,a)}}}function jb(b,a){return b.getAttribute?-1<(" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+a+" "):!1}function Kb(b,a){a&&b.setAttribute&&q(a.split(" "),function(a){b.setAttribute("class",da((" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").replace(" "+da(a)+" "," ")))})}function Lb(b,a){if(a&&b.setAttribute){var c=(" "+(b.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");q(a.split(" "),function(a){a=
-da(a);-1===c.indexOf(" "+a+" ")&&(c+=a+" ")});b.setAttribute("class",da(c))}}function uc(b,a){if(a)if(a.nodeType)b[b.length++]=a;else{var c=a.length;if("number"===typeof c&&a.window!==a){if(c)for(var d=0;d<c;d++)b[b.length++]=a[d]}else b[b.length++]=a}}function wc(b,a){return pb(b,"$"+(a||"ngController")+"Controller")}function pb(b,a,c){9==b.nodeType&&(b=b.documentElement);for(a=O(a)?a:[a];b;){for(var d=0,e=a.length;d<e;d++)if((c=D.data(b,a[d]))!==s)return c;b=b.parentNode||11===b.nodeType&&b.host}}
-function xc(b){for(lb(b,!0);b.firstChild;)b.removeChild(b.firstChild)}function yc(b,a){a||lb(b);var c=b.parentNode;c&&c.removeChild(b)}function zc(b,a){var c=qb[a.toLowerCase()];return c&&Ac[qa(b)]&&c}function We(b,a){var c=b.nodeName;return("INPUT"===c||"TEXTAREA"===c)&&Bc[a]}function Xe(b,a){var c=function(c,e){c.isDefaultPrevented=function(){return c.defaultPrevented};var f=a[e||c.type],g=f?f.length:0;if(g){if(F(c.immediatePropagationStopped)){var h=c.stopImmediatePropagation;c.stopImmediatePropagation=
-function(){c.immediatePropagationStopped=!0;c.stopPropagation&&c.stopPropagation();h&&h.call(c)}}c.isImmediatePropagationStopped=function(){return!0===c.immediatePropagationStopped};1<g&&(f=ra(f));for(var k=0;k<g;k++)c.isImmediatePropagationStopped()||f[k].call(b,c)}};c.elem=b;return c}function Ja(b,a){var c=b&&b.$$hashKey;if(c)return"function"===typeof c&&(c=b.$$hashKey()),c;c=typeof b;return c="function"==c||"object"==c&&null!==b?b.$$hashKey=c+":"+(a||rd)():c+":"+b}function Wa(b,a){if(a){var c=
-0;this.nextUid=function(){return++c}}q(b,this.put,this)}function Ye(b){return(b=b.toString().replace(Cc,"").match(Dc))?"function("+(b[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function Mb(b,a,c){var d;if("function"===typeof b){if(!(d=b.$inject)){d=[];if(b.length){if(a)throw G(c)&&c||(c=b.name||Ye(b)),Ka("strictdi",c);a=b.toString().replace(Cc,"");a=a.match(Dc);q(a[1].split(Ze),function(a){a.replace($e,function(a,b,c){d.push(c)})})}b.$inject=d}}else O(b)?(a=b.length-1,gb(b[a],"fn"),d=b.slice(0,a)):
-gb(b,"fn",!0);return d}function Cb(b,a){function c(a){return function(b,c){if(Q(b))q(b,ac(a));else return a(b,c)}}function d(a,b){Ia(a,"service");if(y(b)||O(b))b=p.instantiate(b);if(!b.$get)throw Ka("pget",a);return n[a+"Provider"]=b}function e(a,b){return d(a,{$get:b})}function f(a){var b=[],c;q(a,function(a){function d(a){var b,c;b=0;for(c=a.length;b<c;b++){var e=a[b],f=p.get(e[0]);f[e[1]].apply(f,e[2])}}if(!l.get(a)){l.put(a,!0);try{G(a)?(c=Ua(a),b=b.concat(f(c.requires)).concat(c._runBlocks),
-d(c._invokeQueue),d(c._configBlocks)):y(a)?b.push(p.invoke(a)):O(a)?b.push(p.invoke(a)):gb(a,"module")}catch(e){throw O(a)&&(a=a[a.length-1]),e.message&&e.stack&&-1==e.stack.indexOf(e.message)&&(e=e.message+"\n"+e.stack),Ka("modulerr",a,e.stack||e.message||e);}}});return b}function g(b,c){function d(a){if(b.hasOwnProperty(a)){if(b[a]===h)throw Ka("cdep",a+" <- "+k.join(" <- "));return b[a]}try{return k.unshift(a),b[a]=h,b[a]=c(a)}catch(e){throw b[a]===h&&delete b[a],e;}finally{k.shift()}}function e(b,
-c,f,h){"string"===typeof f&&(h=f,f=null);var g=[];h=Mb(b,a,h);var k,m,l;m=0;for(k=h.length;m<k;m++){l=h[m];if("string"!==typeof l)throw Ka("itkn",l);g.push(f&&f.hasOwnProperty(l)?f[l]:d(l))}O(b)&&(b=b[k]);return b.apply(c,g)}return{invoke:e,instantiate:function(a,b,c){var d=function(){};d.prototype=(O(a)?a[a.length-1]:a).prototype;d=new d;a=e(a,d,b,c);return Q(a)||y(a)?a:d},get:d,annotate:Mb,has:function(a){return n.hasOwnProperty(a+"Provider")||b.hasOwnProperty(a)}}}a=!0===a;var h={},k=[],l=new Wa([],
-!0),n={$provide:{provider:c(d),factory:c(e),service:c(function(a,b){return e(a,["$injector",function(a){return a.instantiate(b)}])}),value:c(function(a,b){return e(a,ha(b))}),constant:c(function(a,b){Ia(a,"constant");n[a]=b;m[a]=b}),decorator:function(a,b){var c=p.get(a+"Provider"),d=c.$get;c.$get=function(){var a=r.invoke(d,c);return r.invoke(b,null,{$delegate:a})}}}},p=n.$injector=g(n,function(){throw Ka("unpr",k.join(" <- "));}),m={},r=m.$injector=g(m,function(a){var b=p.get(a+"Provider");return r.invoke(b.$get,
-b,s,a)});q(f(b),function(a){r.invoke(a||v)});return r}function pe(){var b=!0;this.disableAutoScrolling=function(){b=!1};this.$get=["$window","$location","$rootScope",function(a,c,d){function e(a){var b=null;q(a,function(a){b||"a"!==qa(a)||(b=a)});return b}function f(){var b=c.hash(),d;b?(d=g.getElementById(b))?d.scrollIntoView():(d=e(g.getElementsByName(b)))?d.scrollIntoView():"top"===b&&a.scrollTo(0,0):a.scrollTo(0,0)}var g=a.document;b&&d.$watch(function(){return c.hash()},function(){d.$evalAsync(f)});
-return f}]}function Pe(){this.$get=["$$rAF","$timeout",function(b,a){return b.supported?function(a){return b(a)}:function(b){return a(b,0,!1)}}]}function af(b,a,c,d){function e(a){try{a.apply(null,Sa.call(arguments,1))}finally{if(t--,0===t)for(;u.length;)try{u.pop()()}catch(b){c.error(b)}}}function f(a,b){(function fa(){q(w,function(a){a()});K=b(fa,a)})()}function g(){T=null;A!=h.url()&&(A=h.url(),q(C,function(a){a(h.url())}))}var h=this,k=a[0],l=b.location,n=b.history,p=b.setTimeout,m=b.clearTimeout,
-r={};h.isMock=!1;var t=0,u=[];h.$$completeOutstandingRequest=e;h.$$incOutstandingRequestCount=function(){t++};h.notifyWhenNoOutstandingRequests=function(a){q(w,function(a){a()});0===t?a():u.push(a)};var w=[],K;h.addPollFn=function(a){F(K)&&f(100,p);w.push(a);return a};var A=l.href,E=a.find("base"),T=null;h.url=function(a,c){l!==b.location&&(l=b.location);n!==b.history&&(n=b.history);if(a){if(A!=a)return A=a,d.history?c?n.replaceState(null,"",a):(n.pushState(null,"",a),E.attr("href",E.attr("href"))):
-(T=a,c?l.replace(a):l.href=a),h}else return T||l.href.replace(/%27/g,"'")};var C=[],X=!1;h.onUrlChange=function(a){if(!X){if(d.history)D(b).on("popstate",g);if(d.hashchange)D(b).on("hashchange",g);else h.addPollFn(g);X=!0}C.push(a);return a};h.$$checkUrlChange=g;h.baseHref=function(){var a=E.attr("href");return a?a.replace(/^(https?\:)?\/\/[^\/]*/,""):""};var I={},L="",N=h.baseHref();h.cookies=function(a,b){var d,e,f,h;if(a)b===s?k.cookie=encodeURIComponent(a)+"=;path="+N+";expires=Thu, 01 Jan 1970 00:00:00 GMT":
-G(b)&&(d=(k.cookie=encodeURIComponent(a)+"="+encodeURIComponent(b)+";path="+N).length+1,4096<d&&c.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+d+" > 4096 bytes)!"));else{if(k.cookie!==L)for(L=k.cookie,d=L.split("; "),I={},f=0;f<d.length;f++)e=d[f],h=e.indexOf("="),0<h&&(a=decodeURIComponent(e.substring(0,h)),I[a]===s&&(I[a]=decodeURIComponent(e.substring(h+1))));return I}};h.defer=function(a,b){var c;t++;c=p(function(){delete r[c];e(a)},b||0);r[c]=!0;return c};h.defer.cancel=
-function(a){return r[a]?(delete r[a],m(a),e(v),!0):!1}}function re(){this.$get=["$window","$log","$sniffer","$document",function(b,a,c,d){return new af(b,d,a,c)}]}function se(){this.$get=function(){function b(b,d){function e(a){a!=p&&(m?m==a&&(m=a.n):m=a,f(a.n,a.p),f(a,p),p=a,p.n=null)}function f(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(b in a)throw M("$cacheFactory")("iid",b);var g=0,h=x({},d,{id:b}),k={},l=d&&d.capacity||Number.MAX_VALUE,n={},p=null,m=null;return a[b]={put:function(a,b){if(l<Number.MAX_VALUE){var c=
-n[a]||(n[a]={key:a});e(c)}if(!F(b))return a in k||g++,k[a]=b,g>l&&this.remove(m.key),b},get:function(a){if(l<Number.MAX_VALUE){var b=n[a];if(!b)return;e(b)}return k[a]},remove:function(a){if(l<Number.MAX_VALUE){var b=n[a];if(!b)return;b==p&&(p=b.p);b==m&&(m=b.n);f(b.n,b.p);delete n[a]}delete k[a];g--},removeAll:function(){k={};g=0;n={};p=m=null},destroy:function(){n=h=k=null;delete a[b]},info:function(){return x({},h,{size:g})}}}var a={};b.info=function(){var b={};q(a,function(a,e){b[e]=a.info()});
-return b};b.get=function(b){return a[b]};return b}}function Je(){this.$get=["$cacheFactory",function(b){return b("templates")}]}function kc(b,a){function c(a,b){var c=/^\s*([@=&])(\??)\s*(\w*)\s*$/,d={};q(a,function(a,e){var f=a.match(c);if(!f)throw ka("iscp",b,e,a);d[e]={attrName:f[3]||e,mode:f[1],optional:"?"===f[2]}});return d}var d={},e=/^\s*directive\:\s*([\d\w_\-]+)\s+(.*)$/,f=/(([\d\w_\-]+)(?:\:([^;]+))?;?)/,g=td("ngSrc,ngSrcset,src,srcset"),h=/^(on[a-z]+|formaction)$/;this.directive=function n(a,
-e){Ia(a,"directive");G(a)?(Fb(e,"directiveFactory"),d.hasOwnProperty(a)||(d[a]=[],b.factory(a+"Directive",["$injector","$exceptionHandler",function(b,e){var f=[];q(d[a],function(d,h){try{var g=b.invoke(d);y(g)?g={compile:ha(g)}:!g.compile&&g.link&&(g.compile=ha(g.link));g.priority=g.priority||0;g.index=h;g.name=g.name||a;g.require=g.require||g.controller&&g.name;g.restrict=g.restrict||"EA";Q(g.scope)&&(g.$$isolateBindings=c(g.scope,g.name));f.push(g)}catch(k){e(k)}});return f}])),d[a].push(e)):q(a,
-ac(n));return this};this.aHrefSanitizationWhitelist=function(b){return B(b)?(a.aHrefSanitizationWhitelist(b),this):a.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(b){return B(b)?(a.imgSrcSanitizationWhitelist(b),this):a.imgSrcSanitizationWhitelist()};var k=!0;this.debugInfoEnabled=function(a){return B(a)?(k=a,this):k};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$document","$sce","$animate","$$sanitizeUri",
-function(a,b,c,r,t,u,w,K,A,E,T){function C(a,b){try{a.addClass(b)}catch(c){}}function X(a,b,c,d,e){a instanceof D||(a=D(a));q(a,function(b,c){3==b.nodeType&&b.nodeValue.match(/\S+/)&&(a[c]=D(b).wrap("<span></span>").parent()[0])});var f=I(a,b,a,c,d,e);X.$$addScopeClass(a);var g=null,h=a,k;return function(b,c,d,e,m){Fb(b,"scope");g||(g=(m=m&&m[0])?"foreignobject"!==qa(m)&&m.toString().match(/SVG/)?"svg":"html":"html");"html"!==g&&a[0]!==k&&(h=D(Nb(g,D("<div>").append(a).html())));k=a[0];m=c?Ha.clone.call(h):
-h;if(d)for(var n in d)m.data("$"+n+"Controller",d[n].instance);X.$$addScopeInfo(m,b);c&&c(m,b);f&&f(b,m,m,e);return m}}function I(a,b,c,d,e,f){function g(a,c,d,e){var f,k,m,n,u,p,t;if(r)for(t=Array(c.length),n=0;n<h.length;n+=3)f=h[n],t[f]=c[f];else t=c;n=0;for(u=h.length;n<u;)k=t[h[n++]],c=h[n++],f=h[n++],c?(c.scope?(m=a.$new(),X.$$addScopeInfo(D(k),m)):m=a,p=c.transcludeOnThisElement?L(a,c.transclude,e,c.elementTranscludeOnThisElement):!c.templateOnThisElement&&e?e:!e&&b?L(a,b):null,c(f,m,k,d,p)):
-f&&f(a,k.childNodes,s,e)}for(var h=[],k,m,n,u,r,p=0;p<a.length;p++){k=new Ob;m=N(a[p],[],k,0===p?d:s,e);(f=m.length?V(m,a[p],k,b,c,null,[],[],f):null)&&f.scope&&X.$$addScopeClass(k.$$element);k=f&&f.terminal||!(n=a[p].childNodes)||!n.length?null:I(n,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:b);if(f||k)h.push(p,f,k),u=!0,r=r||f;f=null}return u?g:null}function L(a,b,c,d){return function(e,f,h,g){var k=!1;e||(e=a.$new(),k=e.$$transcluded=!0);f=b(e,f,h,c,g);if(k&&!d)f.on("$destroy",
-function(){e.$destroy()});return f}}function N(b,c,h,g,k){var m=h.$attr,u;switch(b.nodeType){case 1:va(c,wa(qa(b)),"E",g,k);for(var r,p,t,A=b.attributes,E=0,K=A&&A.length;E<K;E++){var w=!1,I=!1;r=A[E];if(!Y||8<=Y||r.specified){u=r.name;r=da(r.value);p=wa(u);if(t=la.test(p))u=Db(p.substr(6),"-");var T=p.replace(/(Start|End)$/,""),S;a:{var q=T;if(d.hasOwnProperty(q)){S=void 0;for(var q=a.get(q+"Directive"),V=0,z=q.length;V<z;V++)if(S=q[V],S.multiElement){S=!0;break a}}S=!1}S&&p===T+"Start"&&(w=u,I=
-u.substr(0,u.length-5)+"end",u=u.substr(0,u.length-6));p=wa(u.toLowerCase());m[p]=u;if(t||!h.hasOwnProperty(p))h[p]=r,zc(b,p)&&(h[p]=!0);W(b,c,r,p,t);va(c,p,"A",g,k,w,I)}}b=b.className;if(G(b)&&""!==b)for(;u=f.exec(b);)p=wa(u[2]),va(c,p,"C",g,k)&&(h[p]=da(u[3])),b=b.substr(u.index+u[0].length);break;case 3:H(c,b.nodeValue);break;case 8:try{if(u=e.exec(b.nodeValue))p=wa(u[1]),va(c,p,"M",g,k)&&(h[p]=da(u[2]))}catch(N){}}c.sort(aa);return c}function S(a,b,c){var d=[],e=0;if(b&&a.hasAttribute&&a.hasAttribute(b)){do{if(!a)throw ka("uterdir",
-b,c);1==a.nodeType&&(a.hasAttribute(b)&&e++,a.hasAttribute(c)&&e--);d.push(a);a=a.nextSibling}while(0<e)}else d.push(a);return D(d)}function z(a,b,c){return function(d,e,f,h,g){e=S(e[0],b,c);return a(d,e,f,h,g)}}function V(a,d,e,f,h,g,k,n,r){function A(a,b,c,d){if(a){c&&(a=z(a,c,d));a.require=J.require;a.directiveName=la;if(C===J||J.$$isolateScope)a=Ec(a,{isolateScope:!0});k.push(a)}if(b){c&&(b=z(b,c,d));b.require=J.require;b.directiveName=la;if(C===J||J.$$isolateScope)b=Ec(b,{isolateScope:!0});n.push(b)}}
-function E(a,b,c,d){var e,f="data",h=!1;if(G(b)){for(;"^"==(e=b.charAt(0))||"