// source --> http://keycapital.net/wp-content/themes/keycapital/menu/js/index.js (function($) { $.fn.menumaker = function(options) { var cssmenu = $(this), settings = $.extend({ format: "dropdown", sticky: false }, options); return this.each(function() { $(this).find(".button").on('click', function(){ $(this).toggleClass('menu-opened'); var mainmenu = $(this).next('ul'); if (mainmenu.hasClass('close')) { mainmenu.slideToggle().removeClass('open'); } else { mainmenu.slideToggle().addClass('open'); if (settings.format === "dropdown") { mainmenu.find('ul').show(); } } }); cssmenu.find('li ul').parent().addClass('has-sub'); multiTg = function() { cssmenu.find(".has-sub").prepend(''); cssmenu.find('.submenu-button').on('click', function() { $(this).toggleClass('submenu-opened'); if ($(this).siblings('ul').hasClass('open')) { $(this).siblings('ul').removeClass('open').slideToggle(); } else { $(this).siblings('ul').addClass('open').slideToggle(); } }); }; if (settings.format === 'multitoggle') multiTg(); else cssmenu.addClass('dropdown'); if (settings.sticky === true) cssmenu.css('position', 'fixed'); resizeFix = function() { var mediasize = 768; if ($( window ).width() > mediasize) { cssmenu.find('ul').show(); } if ($(window).width() <= mediasize) { cssmenu.find('ul').hide().removeClass('open'); } }; resizeFix(); return $(window).on('resize', resizeFix); }); }; })(jQuery); (function($){ $(document).ready(function(){ $("#cssmenu").menumaker({ format: "multitoggle" }); }); })(jQuery); // source --> http://keycapital.net/wp-content/themes/keycapital/js/default-grid.js var mejs,Cog,youTubeTracking;window.matchMedia=window.matchMedia||function(e,f){var c,a=e.documentElement,b=a.firstElementChild||a.firstChild,d=e.createElement("body"),g=e.createElement("div");return g.id="mq-test-1",g.style.cssText="position:absolute;top:-100em",d.appendChild(g),function(h){return g.innerHTML='­',a.insertBefore(d,b),c=42==g.offsetWidth,a.removeChild(d),{matches:c,media:h}}}(document),String.prototype.endsWith||(String.prototype.endsWith=function(suffix){return-1!==this.indexOf(suffix,this.length-suffix.length)}),function(window,undefined){function lodash(value){return value&&"object"==typeof value&&value.__wrapped__?value:this instanceof lodash?void(this.__wrapped__=value):new lodash(value)}function cachedContains(array,fromIndex,largeSize){var length,isLarge,cache,index,key;if(fromIndex||(fromIndex=0),length=array.length,isLarge=length-fromIndex>=(largeSize||largeArraySize),isLarge)for(cache={},index=fromIndex-1;++index-1}return indexOf(array,value,fromIndex)>-1}}function charAtCallback(value){return value.charCodeAt(0)}function compareAscending(a,b){var ai=a.index,bi=b.index;if(a=a.criteria,b=b.criteria,a!==b){if(a>b||"undefined"==typeof a)return 1;if(b>a||"undefined"==typeof b)return-1}return bi>ai?-1:1}function createBound(func,thisArg,partialArgs){function bound(){var result,args=arguments,thisBinding=isPartial?this:thisArg;return isFunc||(func=thisArg[key]),partialArgs.length&&(args=args.length?partialArgs.concat(slice(args)):partialArgs),this instanceof bound?(noop.prototype=func.prototype,thisBinding=new noop,noop.prototype=null,result=func.apply(thisBinding,args),isObject(result)?result:thisBinding):func.apply(thisBinding,args)}var isFunc=isFunction(func),isPartial=!partialArgs,key=thisArg;return isPartial&&(partialArgs=thisArg),isFunc||(thisArg=func),bound}function createCallback(func,thisArg,accumulating){return func?"function"!=typeof func?function(object){return object[func]}:"undefined"!=typeof thisArg?accumulating?function(accumulator,value,index,object){return func.call(thisArg,accumulator,value,index,object)}:function(value,index,object){return func.call(thisArg,value,index,object)}:func:identity}function createIterator(){var object,index,key,args,factory,data={arrayLoop:"",bottom:"",hasDontEnumBug:hasDontEnumBug,isKeysFast:isKeysFast,objectLoop:"",nonEnumArgs:nonEnumArgs,noCharByIndex:noCharByIndex,shadowed:shadowed,top:"",useHas:!0};for(index=0;object=arguments[index];index++)for(key in object)data[key]=object[key];return args=data.args,data.firstArg=/^[^,]+/.exec(args)[0],(factory=Function("createCallback, hasOwnProperty, isArguments, isString, objectTypes, nativeKeys, propertyIsEnumerable","return function("+args+") {\n"+iteratorTemplate(data)+"\n}"))(createCallback,hasOwnProperty,isArguments,isString,objectTypes,nativeKeys,propertyIsEnumerable)}function escapeStringChar(match){return"\\"+stringEscapes[match]}function escapeHtmlChar(match){return htmlEscapes[match]}function isNode(value){return"function"!=typeof value.toString&&"string"==typeof(value+"")}function noop(){}function slice(array,start,end){start||(start=0),"undefined"==typeof end&&(end=array?array.length:0);for(var index=-1,length=end-start||0,result=Array(0>length?0:length);++index-1:void 0}),result}function isFinite(value){return nativeIsFinite(value)&&!nativeIsNaN(parseFloat(value))}function isFunction(value){return"function"==typeof value}function isObject(value){return value?objectTypes[typeof value]:!1}function isNaN(value){return isNumber(value)&&value!=+value}function isNull(value){return null===value}function isNumber(value){return"number"==typeof value||toString.call(value)==numberClass}function isRegExp(value){return value instanceof RegExp||toString.call(value)==regexpClass}function isString(value){return"string"==typeof value||toString.call(value)==stringClass}function isUndefined(value){return"undefined"==typeof value}function merge(object,source,indicator){var args=arguments,index=0,length=2,stackA=args[3],stackB=args[4];for(indicator!==indicatorObject&&(stackA=[],stackB=[],"number"!=typeof indicator&&(length=args.length));++indexfromIndex?nativeMax(0,length+fromIndex):fromIndex)||0,"number"==typeof length?result=(isString(collection)?collection.indexOf(target,fromIndex):indexOf(collection,target,fromIndex))>-1:each(collection,function(value){return++index>=fromIndex?!(result=value===target):void 0}),result}function countBy(collection,callback,thisArg){var result={};return callback=createCallback(callback,thisArg),forEach(collection,function(value,key,collection){key=callback(value,key,collection),hasOwnProperty.call(result,key)?result[key]++:result[key]=1}),result}function every(collection,callback,thisArg){var index,length,result=!0;if(callback=createCallback(callback,thisArg),isArray(collection))for(index=-1,length=collection.length;++indexcomputed&&(computed=current,result=value)});else for(;++indexresult&&(result=collection[index]);return result}function min(collection,callback,thisArg){var computed=1/0,index=-1,length=collection?collection.length:0,result=computed;if(callback||!isArray(collection))callback=!callback&&isString(collection)?charAtCallback:createCallback(callback,thisArg),each(collection,function(value,index,collection){var current=callback(value,index,collection);computed>current&&(computed=current,result=value)});else for(;++indexfromIndex?nativeMax(0,length+fromIndex):fromIndex||0)-1;else if(fromIndex)return index=sortedIndex(array,value),array[index]===value?index:-1;for(;++index=100,result=[],seen=result;outer:for(;++indexfromIndex?nativeMax(0,index+fromIndex):nativeMin(fromIndex,index-1))+1);index--;)if(array[index]===value)return index;return-1}function object(keys,values){for(var key,index=-1,length=keys?keys.length:0,result={};++indexlow;)mid=low+high>>>1,callback(array[mid])=75,isLarge&&(cache={}),callback&&(seen=[],callback=createCallback(callback,thisArg));++indexn?func():function(){return--n<1?func.apply(this,arguments):void 0}}function bind(func,thisArg){return isBindFast||nativeBind&&arguments.length>2?nativeBind.call.apply(nativeBind,arguments):createBound(func,thisArg,slice(arguments,2))}function bindAll(object){for(var key,funcs=arguments,index=funcs.length>1?0:(funcs=functions(object),-1),length=funcs.length;++index=remaining?(clearTimeout(timeoutId),timeoutId=null,lastCalled=now,result=func.apply(thisArg,args)):timeoutId||(timeoutId=setTimeout(trailingCall,remaining)),result}}function wrap(value,wrapper){return function(){var args=[value];return push.apply(args,arguments),wrapper.apply(this,args)}}function escape(string){return null==string?"":(string+"").replace(reUnescapedHtml,escapeHtmlChar)}function identity(value){return value}function mixin(object){forEach(functions(object),function(methodName){var func=lodash[methodName]=object[methodName];lodash.prototype[methodName]=function(){var result,args=[this.__wrapped__];return push.apply(args,arguments),result=func.apply(lodash,args),new lodash(result)}})}function noConflict(){return window._=oldDash,this}function random(min,max){return null==min&&null==max&&(max=1),min=+min||0,null==max&&(max=min,min=0),min+floor(nativeRandom()*((+max||0)-min+1))}function result(object,property){var value=object?object[property]:null;return isFunction(value)?object[property]():value}function template(text,data,options){var isEvaluating,result,settings,index,interpolate,source,variable,hasVariable,reDelimiters,reDoubleVariable,sourceURL;text||(text=""),options||(options={}),settings=lodash.templateSettings,index=0,interpolate=options.interpolate||settings.interpolate||reNoMatch,source="__p += '",variable=options.variable||settings.variable,hasVariable=variable,reDelimiters=RegExp((options.escape||settings.escape||reNoMatch).source+"|"+interpolate.source+"|"+(interpolate===reInterpolate?reEsTemplate:reNoMatch).source+"|"+(options.evaluate||settings.evaluate||reNoMatch).source+"|$","g"),text.replace(reDelimiters,function(match,escapeValue,interpolateValue,esTemplateValue,evaluateValue,offset){return interpolateValue||(interpolateValue=esTemplateValue),source+=text.slice(index,offset).replace(reUnescapedString,escapeStringChar),escapeValue&&(source+="' +\n__e("+escapeValue+") +\n'"),evaluateValue&&(source+="';\n"+evaluateValue+";\n__p += '"),interpolateValue&&(source+="' +\n((__t = ("+interpolateValue+")) == null ? '' : __t) +\n'"),isEvaluating||(isEvaluating=evaluateValue||reComplexDelimiter.test(escapeValue||interpolateValue)),index=offset+match.length,match}),source+="';\n",hasVariable||(variable="obj",isEvaluating?source="with ("+variable+") {\n"+source+"\n}\n":(reDoubleVariable=RegExp("(\\(\\s*)"+variable+"\\."+variable+"\\b","g"),source=source.replace(reInsertVariable,"$&"+variable+".").replace(reDoubleVariable,"$1__d"))),source=(isEvaluating?source.replace(reEmptyStringLeading,""):source).replace(reEmptyStringMiddle,"$1").replace(reEmptyStringTrailing,"$1;"),source="function("+variable+") {\n"+(hasVariable?"":variable+" || ("+variable+" = {});\n")+"var __t, __p = '', __e = _.escape"+(isEvaluating?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":(hasVariable?"":", __d = "+variable+"."+variable+" || "+variable)+";\n")+source+"return __p\n}",sourceURL=useSourceURL?"\n//@ sourceURL="+(options.sourceURL||"/lodash/template/source["+templateCounter++ +"]"):"";try{result=Function("_","return "+source+sourceURL)(lodash)}catch(e){throw e.source=source,e}return data?result(data):(result.source=source,result)}function times(n,callback,thisArg){n=+n||0;for(var index=-1,result=Array(n);++index|{(\/]|\[\D|\b(?:delete|in|instanceof|new|typeof|void)\b/,reEscapedHtml=/&(?:amp|lt|gt|quot|#x27);/g,reEmptyStringLeading=/\b__p \+= '';/g,reEmptyStringMiddle=/\b(__p \+=) '' \+/g,reEmptyStringTrailing=/(__e\(.*?\)|\b__t\)) \+\n'';/g,reFlags=/\w*$/,reInsertVariable=/(?:__e|__t = )\(\s*(?![\d\s"']|this\.)/g,reNative=RegExp("^"+(objectRef.valueOf+"").replace(/[.*+?^=!:${}()|[\]\/\\]/g,"\\$&").replace(/valueOf|for [^\]]+/g,".+?")+"$"),reEsTemplate=/\$\{((?:(?=\\?)\\?[\s\S])*?)}/g,reInterpolate=/<%=([\s\S]+?)%>/g,reNoMatch=/($^)/,reUnescapedHtml=/[&<>"']/g,reUnescapedString=/['\n\r\t\u2028\u2029\\]/g,shadowed=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],templateCounter=0,ceil=Math.ceil,concat=arrayRef.concat,floor=Math.floor,getPrototypeOf=reNative.test(getPrototypeOf=Object.getPrototypeOf)&&getPrototypeOf,hasOwnProperty=objectRef.hasOwnProperty,push=arrayRef.push,propertyIsEnumerable=objectRef.propertyIsEnumerable,toString=objectRef.toString,nativeBind=reNative.test(nativeBind=slice.bind)&&nativeBind,nativeIsArray=reNative.test(nativeIsArray=Array.isArray)&&nativeIsArray,nativeIsFinite=window.isFinite,nativeIsNaN=window.isNaN,nativeKeys=reNative.test(nativeKeys=Object.keys)&&nativeKeys,nativeMax=Math.max,nativeMin=Math.min,nativeRandom=Math.random,argsClass="[object Arguments]",arrayClass="[object Array]",boolClass="[object Boolean]",dateClass="[object Date]",funcClass="[object Function]",numberClass="[object Number]",objectClass="[object Object]",regexpClass="[object RegExp]",stringClass="[object String]",isIeOpera=!!window.attachEvent,isV8=nativeBind&&!/\n|true/.test(nativeBind+isIeOpera),isBindFast=nativeBind&&!isV8,isKeysFast=nativeKeys&&(isIeOpera||isV8),hasObjectSpliceBug={0:1,length:1},arrayRef.splice.call(hasObjectSpliceBug,0,1),hasObjectSpliceBug=hasObjectSpliceBug[0],nonEnumArgs=!0,function(){function ctor(){this.x=1}var prop,props=[];ctor.prototype={valueOf:1,y:1};for(prop in new ctor)props.push(prop);for(prop in arguments)nonEnumArgs=!prop;hasDontEnumBug=!/valueOf/.test(props),iteratesOwnLast="x"!=props[0]}(1),argsAreObjects=arguments.constructor==Object,noArgsClass=!isArguments(arguments),noCharByIndex="x"[0]+Object("x")[0]!="xx";try{noNodeClass=toString.call(document)==objectClass}catch(e){}try{Function("//@")(),useSourceURL=!isIeOpera}catch(e){}cloneableClasses={},cloneableClasses[funcClass]=!1,cloneableClasses[argsClass]=cloneableClasses[arrayClass]=cloneableClasses[boolClass]=cloneableClasses[dateClass]=cloneableClasses[numberClass]=cloneableClasses[objectClass]=cloneableClasses[regexpClass]=cloneableClasses[stringClass]=!0,ctorByClass={},ctorByClass[arrayClass]=Array,ctorByClass[boolClass]=Boolean,ctorByClass[dateClass]=Date,ctorByClass[objectClass]=Object,ctorByClass[numberClass]=Number,ctorByClass[regexpClass]=RegExp,ctorByClass[stringClass]=String,objectTypes={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},stringEscapes={"\\":"\\","'":"'","\n":"n","\r":"r"," ":"t","\u2028":"u2028","\u2029":"u2029"},lodash.templateSettings={escape:/<%-([\s\S]+?)%>/g,evaluate:/<%([\s\S]+?)%>/g,interpolate:reInterpolate,variable:""},iteratorTemplate=template("<% if (obj.useStrict) { %>'use strict';\n<% } %>var index, iteratee = <%= firstArg %>, result = <%= firstArg %>;\nif (!<%= firstArg %>) return result;\n<%= top %>;\n<% if (arrayLoop) { %>var length = iteratee.length; index = -1;\nif (typeof length == 'number') { <% if (noCharByIndex) { %>\n if (isString(iteratee)) {\n iteratee = iteratee.split('')\n } <% } %>\n while (++index < length) {\n <%= arrayLoop %>\n }\n}\nelse { <% } else if (nonEnumArgs) { %>\n var length = iteratee.length; index = -1;\n if (length && isArguments(iteratee)) {\n while (++index < length) {\n index += '';\n <%= objectLoop %>\n }\n } else { <% } %> <% if (!hasDontEnumBug) { %>\n var skipProto = typeof iteratee == 'function' && \n propertyIsEnumerable.call(iteratee, 'prototype');\n <% } %> <% if (isKeysFast && useHas) { %>\n var ownIndex = -1,\n ownProps = objectTypes[typeof iteratee] ? nativeKeys(iteratee) : [],\n length = ownProps.length;\n\n while (++ownIndex < length) {\n index = ownProps[ownIndex];\n <% if (!hasDontEnumBug) { %>if (!(skipProto && index == 'prototype')) {\n <% } %> <%= objectLoop %>\n <% if (!hasDontEnumBug) { %>}\n<% } %> } <% } else { %>\n for (index in iteratee) {<% if (!hasDontEnumBug || useHas) { %>\n if (<% if (!hasDontEnumBug) { %>!(skipProto && index == 'prototype')<% } if (!hasDontEnumBug && useHas) { %> && <% } if (useHas) { %>hasOwnProperty.call(iteratee, index)<% } %>) { <% } %>\n <%= objectLoop %>; <% if (!hasDontEnumBug || useHas) { %>\n }<% } %>\n } <% } %> <% if (hasDontEnumBug) { %>\n\n var ctor = iteratee.constructor;\n <% for (var k = 0; k < 7; k++) { %>\n index = '<%= shadowed[k] %>';\n if (<% if (shadowed[k] == 'constructor') { %>!(ctor && ctor.prototype === iteratee) && <% } %>hasOwnProperty.call(iteratee, index)) {\n <%= objectLoop %>\n } <% } %> <% } %> <% if (arrayLoop || nonEnumArgs) { %>\n}<% } %>\n<%= bottom %>;\nreturn result"), assignIteratorOptions={args:"object, source, guard",top:"for (var argsIndex = 1, argsLength = typeof guard == 'number' ? 2 : arguments.length; argsIndex < argsLength; argsIndex++) {\n if ((iteratee = arguments[argsIndex])) {",objectLoop:"result[index] = iteratee[index]",bottom:" }\n}"},eachIteratorOptions={args:"collection, callback, thisArg",top:"callback = callback && typeof thisArg == 'undefined' ? callback : createCallback(callback, thisArg)",arrayLoop:"if (callback(iteratee[index], index, collection) === false) return result",objectLoop:"if (callback(iteratee[index], index, collection) === false) return result"},forOwnIteratorOptions={arrayLoop:null},each=createIterator(eachIteratorOptions),assign=createIterator(assignIteratorOptions),noArgsClass&&(isArguments=function(value){return value?hasOwnProperty.call(value,"callee"):!1}),forIn=createIterator(eachIteratorOptions,forOwnIteratorOptions,{useHas:!1}),forOwn=createIterator(eachIteratorOptions,forOwnIteratorOptions),htmlEscapes={"&":"&","<":"<",">":">",'"':""","'":"'"},htmlUnescapes=invert(htmlEscapes),defaults=createIterator(assignIteratorOptions,{objectLoop:"if (result[index] == null) "+assignIteratorOptions.objectLoop}),isArray=nativeIsArray||function(value){return argsAreObjects&&value instanceof Array||toString.call(value)==arrayClass},isFunction(/x/)&&(isFunction=function(value){return value instanceof Function||toString.call(value)==funcClass}),isPlainObject=getPrototypeOf?function(value){if(!value||"object"!=typeof value)return!1;var valueOf=value.valueOf,objProto="function"==typeof valueOf&&(objProto=getPrototypeOf(valueOf))&&getPrototypeOf(objProto);return objProto?value==objProto||getPrototypeOf(value)==objProto&&!isArguments(value):shimIsPlainObject(value)}:shimIsPlainObject,keys=nativeKeys?function(object){return"function"==typeof object&&propertyIsEnumerable.call(object,"prototype")?shimKeys(object):isObject(object)?nativeKeys(object):[]}:shimKeys,lodash.after=after,lodash.assign=assign,lodash.bind=bind,lodash.bindAll=bindAll,lodash.bindKey=bindKey,lodash.compact=compact,lodash.compose=compose,lodash.countBy=countBy,lodash.debounce=debounce,lodash.defaults=defaults,lodash.defer=defer,lodash.delay=delay,lodash.difference=difference,lodash.filter=filter,lodash.flatten=flatten,lodash.forEach=forEach,lodash.forIn=forIn,lodash.forOwn=forOwn,lodash.functions=functions,lodash.groupBy=groupBy,lodash.initial=initial,lodash.intersection=intersection,lodash.invert=invert,lodash.invoke=invoke,lodash.keys=keys,lodash.map=map,lodash.max=max,lodash.memoize=memoize,lodash.merge=merge,lodash.min=min,lodash.object=object,lodash.omit=omit,lodash.once=once,lodash.pairs=pairs,lodash.partial=partial,lodash.pick=pick,lodash.pluck=pluck,lodash.range=range,lodash.reject=reject,lodash.rest=rest,lodash.shuffle=shuffle,lodash.sortBy=sortBy,lodash.tap=tap,lodash.throttle=throttle,lodash.times=times,lodash.toArray=toArray,lodash.union=union,lodash.uniq=uniq,lodash.values=values,lodash.where=where,lodash.without=without,lodash.wrap=wrap,lodash.zip=zip,lodash.collect=map,lodash.drop=rest,lodash.each=forEach,lodash.extend=assign,lodash.methods=functions,lodash.select=filter,lodash.tail=rest,lodash.unique=uniq,mixin(lodash),lodash.clone=clone,lodash.cloneDeep=cloneDeep,lodash.contains=contains,lodash.escape=escape,lodash.every=every,lodash.find=find,lodash.has=has,lodash.identity=identity,lodash.indexOf=indexOf,lodash.isArguments=isArguments,lodash.isArray=isArray,lodash.isBoolean=isBoolean,lodash.isDate=isDate,lodash.isElement=isElement,lodash.isEmpty=isEmpty,lodash.isEqual=isEqual,lodash.isFinite=isFinite,lodash.isFunction=isFunction,lodash.isNaN=isNaN,lodash.isNull=isNull,lodash.isNumber=isNumber,lodash.isObject=isObject,lodash.isPlainObject=isPlainObject,lodash.isRegExp=isRegExp,lodash.isString=isString,lodash.isUndefined=isUndefined,lodash.lastIndexOf=lastIndexOf,lodash.mixin=mixin,lodash.noConflict=noConflict,lodash.random=random,lodash.reduce=reduce,lodash.reduceRight=reduceRight,lodash.result=result,lodash.size=size,lodash.some=some,lodash.sortedIndex=sortedIndex,lodash.template=template,lodash.unescape=unescape,lodash.uniqueId=uniqueId,lodash.all=every,lodash.any=some,lodash.detect=find,lodash.foldl=reduce,lodash.foldr=reduceRight,lodash.include=contains,lodash.inject=reduce,forOwn(lodash,function(func,methodName){lodash.prototype[methodName]||(lodash.prototype[methodName]=function(){var args=[this.__wrapped__];return push.apply(args,arguments),func.apply(lodash,args)})}),lodash.first=first,lodash.last=last,lodash.take=first,lodash.head=first,forOwn(lodash,function(func,methodName){lodash.prototype[methodName]||(lodash.prototype[methodName]=function(n,guard){var result=func(this.__wrapped__,n,guard);return null==n||guard?result:new lodash(result)})}),lodash.VERSION="1.0.0-rc.3",lodash.prototype.toString=wrapperToString,lodash.prototype.value=wrapperValueOf,lodash.prototype.valueOf=wrapperValueOf,each(["join","pop","shift"],function(methodName){var func=arrayRef[methodName];lodash.prototype[methodName]=function(){return func.apply(this.__wrapped__,arguments)}}),each(["push","reverse","sort","unshift"],function(methodName){var func=arrayRef[methodName];lodash.prototype[methodName]=function(){return func.apply(this.__wrapped__,arguments),this}}),each(["concat","slice","splice"],function(methodName){var func=arrayRef[methodName];lodash.prototype[methodName]=function(){var result=func.apply(this.__wrapped__,arguments);return new lodash(result)}}),hasObjectSpliceBug&&each(["pop","shift","splice"],function(methodName){var func=arrayRef[methodName],isSplice="splice"==methodName;lodash.prototype[methodName]=function(){var value=this.__wrapped__,result=func.apply(value,arguments);return 0===value.length&&delete value[0],isSplice?new lodash(result):result}}),lodash._each=each,lodash._iteratorTemplate=iteratorTemplate,"function"==typeof define&&"object"==typeof define.amd&&define.amd?(window._=lodash,define(function(){return lodash})):freeExports?"object"==typeof module&&module&&module.exports==freeExports?(module.exports=lodash)._=lodash:freeExports._=lodash:window._=lodash}(this),function(window,undefined){"use strict";function setup(){if(!Hammer.READY){Hammer.event.determineEventTypes();for(var name in Hammer.gestures)Hammer.gestures.hasOwnProperty(name)&&Hammer.detection.register(Hammer.gestures[name]);Hammer.event.onTouch(Hammer.DOCUMENT,Hammer.EVENT_MOVE,Hammer.detection.detect),Hammer.event.onTouch(Hammer.DOCUMENT,Hammer.EVENT_END,Hammer.detection.detect),Hammer.READY=!0}}var last_move_event,enable_detect,touch_triggered,Hammer=function(element,options){return new Hammer.Instance(element,options||{})};Hammer.defaults={stop_browser_behavior:{userSelect:"none",touchAction:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},Hammer.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,Hammer.HAS_TOUCHEVENTS="ontouchstart"in window,Hammer.MOBILE_REGEX=/mobile|tablet|ip(ad|hone|od)|android/i,Hammer.NO_MOUSEEVENTS=Hammer.HAS_TOUCHEVENTS&&navigator.userAgent.match(Hammer.MOBILE_REGEX),Hammer.EVENT_TYPES={},Hammer.DIRECTION_DOWN="down",Hammer.DIRECTION_LEFT="left",Hammer.DIRECTION_UP="up",Hammer.DIRECTION_RIGHT="right",Hammer.POINTER_MOUSE="mouse",Hammer.POINTER_TOUCH="touch",Hammer.POINTER_PEN="pen",Hammer.EVENT_START="start",Hammer.EVENT_MOVE="move",Hammer.EVENT_END="end",Hammer.DOCUMENT=document,Hammer.plugins={},Hammer.READY=!1,Hammer.Instance=function(element,options){var self=this;return setup(),this.element=element,this.enabled=!0,this.options=Hammer.utils.extend(Hammer.utils.extend({},Hammer.defaults),options||{}),this.options.stop_browser_behavior&&Hammer.utils.stopDefaultBrowserBehavior(this.element,this.options.stop_browser_behavior),Hammer.event.onTouch(element,Hammer.EVENT_START,function(ev){self.enabled&&Hammer.detection.startDetect(self,ev)}),this},Hammer.Instance.prototype={on:function(gesture,handler){var t,gestures=gesture.split(" ");for(t=0;t0&&eventType==Hammer.EVENT_END?eventType=Hammer.EVENT_MOVE:count_touches||(eventType=Hammer.EVENT_END),count_touches||null===last_move_event?last_move_event=ev:ev=last_move_event,handler.call(Hammer.detection,self.collectEventData(element,eventType,ev)),Hammer.HAS_POINTEREVENTS&&eventType==Hammer.EVENT_END&&(count_touches=Hammer.PointerEvent.updatePointer(eventType,ev))),count_touches||(last_move_event=null,enable_detect=!1,touch_triggered=!1,Hammer.PointerEvent.reset()))})},determineEventTypes:function(){var types;types=Hammer.HAS_POINTEREVENTS?Hammer.PointerEvent.getEvents():Hammer.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],Hammer.EVENT_TYPES[Hammer.EVENT_START]=types[0],Hammer.EVENT_TYPES[Hammer.EVENT_MOVE]=types[1],Hammer.EVENT_TYPES[Hammer.EVENT_END]=types[2]},getTouchList:function(ev){return Hammer.HAS_POINTEREVENTS?Hammer.PointerEvent.getTouchList():ev.touches?ev.touches:[{identifier:1,pageX:ev.pageX,pageY:ev.pageY,target:ev.target}]},collectEventData:function(element,eventType,ev){var touches=this.getTouchList(ev,eventType),pointerType=Hammer.POINTER_TOUCH;return(ev.type.match(/mouse/)||Hammer.PointerEvent.matchType(Hammer.POINTER_MOUSE,ev))&&(pointerType=Hammer.POINTER_MOUSE),{center:Hammer.utils.getCenter(touches),timeStamp:(new Date).getTime(),target:ev.target,touches:touches,eventType:eventType,pointerType:pointerType,srcEvent:ev,preventDefault:function(){this.srcEvent.preventManipulation&&this.srcEvent.preventManipulation(),this.srcEvent.preventDefault&&this.srcEvent.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return Hammer.detection.stopDetect()}}}},Hammer.PointerEvent={pointers:{},getTouchList:function(){var self=this,touchlist=[];return Object.keys(self.pointers).sort().forEach(function(id){touchlist.push(self.pointers[id])}),touchlist},updatePointer:function(type,pointerEvent){return type==Hammer.EVENT_END?this.pointers={}:(pointerEvent.identifier=pointerEvent.pointerId,this.pointers[pointerEvent.pointerId]=pointerEvent),Object.keys(this.pointers).length},matchType:function(pointerType,ev){if(!ev.pointerType)return!1;var types={};return types[Hammer.POINTER_MOUSE]=ev.pointerType==ev.MSPOINTER_TYPE_MOUSE||ev.pointerType==Hammer.POINTER_MOUSE,types[Hammer.POINTER_TOUCH]=ev.pointerType==ev.MSPOINTER_TYPE_TOUCH||ev.pointerType==Hammer.POINTER_TOUCH,types[Hammer.POINTER_PEN]=ev.pointerType==ev.MSPOINTER_TYPE_PEN||ev.pointerType==Hammer.POINTER_PEN,types[pointerType]},getEvents:function(){return["pointerdown MSPointerDown","pointermove MSPointerMove","pointerup pointercancel MSPointerUp MSPointerCancel"]},reset:function(){this.pointers={}}},Hammer.utils={extend:function(dest,src,merge){for(var key in src)dest[key]!==undefined&&merge||(dest[key]=src[key]);return dest},hasParent:function(node,parent){for(;node;){if(node==parent)return!0;node=node.parentNode}return!1},getCenter:function(touches){var t,len,valuesX=[],valuesY=[];for(t=0,len=touches.length;len>t;t++)valuesX.push(touches[t].pageX),valuesY.push(touches[t].pageY);return{pageX:(Math.min.apply(Math,valuesX)+Math.max.apply(Math,valuesX))/2,pageY:(Math.min.apply(Math,valuesY)+Math.max.apply(Math,valuesY))/2}},getVelocity:function(delta_time,delta_x,delta_y){return{x:Math.abs(delta_x/delta_time)||0,y:Math.abs(delta_y/delta_time)||0}},getAngle:function(touch1,touch2){var y=touch2.pageY-touch1.pageY,x=touch2.pageX-touch1.pageX;return 180*Math.atan2(y,x)/Math.PI},getDirection:function(touch1,touch2){var x=Math.abs(touch1.pageX-touch2.pageX),y=Math.abs(touch1.pageY-touch2.pageY);return x>=y?touch1.pageX-touch2.pageX>0?Hammer.DIRECTION_LEFT:Hammer.DIRECTION_RIGHT:touch1.pageY-touch2.pageY>0?Hammer.DIRECTION_UP:Hammer.DIRECTION_DOWN},getDistance:function(touch1,touch2){var x=touch2.pageX-touch1.pageX,y=touch2.pageY-touch1.pageY;return Math.sqrt(x*x+y*y)},getScale:function(start,end){return start.length>=2&&end.length>=2?this.getDistance(end[0],end[1])/this.getDistance(start[0],start[1]):1},getRotation:function(start,end){return start.length>=2&&end.length>=2?this.getAngle(end[1],end[0])-this.getAngle(start[1],start[0]):0},isVertical:function(direction){return direction==Hammer.DIRECTION_UP||direction==Hammer.DIRECTION_DOWN},stopDefaultBrowserBehavior:function(element,css_props){var prop,i,p,vendors=["webkit","khtml","moz","ms","o",""];if(css_props&&element.style){for(i=0;ig;g++)if(gesture=this.gestures[g],!this.stopped&&inst_options[gesture.name]!==!1&&gesture.handler.call(gesture,eventData,this.current.inst)===!1){this.stopDetect();break}return this.current&&(this.current.lastEvent=eventData),eventData.eventType==Hammer.EVENT_END&&!eventData.touches.length-1&&this.stopDetect(),eventData}},stopDetect:function(){this.previous=Hammer.utils.extend({},this.current),this.current=null,this.stopped=!0},extendEventData:function(ev){var i,len,delta_time,delta_x,delta_y,velocity,startEv=this.current.startEvent;if(startEv&&(ev.touches.length!=startEv.touches.length||ev.touches===startEv.touches))for(startEv.touches=[],i=0,len=ev.touches.length;len>i;i++)startEv.touches.push(Hammer.utils.extend({},ev.touches[i]));return delta_time=ev.timeStamp-startEv.timeStamp,delta_x=ev.center.pageX-startEv.center.pageX,delta_y=ev.center.pageY-startEv.center.pageY,velocity=Hammer.utils.getVelocity(delta_time,delta_x,delta_y),Hammer.utils.extend(ev,{deltaTime:delta_time,deltaX:delta_x,deltaY:delta_y,velocityX:velocity.x,velocityY:velocity.y,distance:Hammer.utils.getDistance(startEv.center,ev.center),angle:Hammer.utils.getAngle(startEv.center,ev.center),direction:Hammer.utils.getDirection(startEv.center,ev.center),scale:Hammer.utils.getScale(startEv.touches,ev.touches),rotation:Hammer.utils.getRotation(startEv.touches,ev.touches),startEvent:startEv}),ev},register:function(gesture){var options=gesture.defaults||{};return options[gesture.name]===undefined&&(options[gesture.name]=!0),Hammer.utils.extend(Hammer.defaults,options,!0),gesture.index=gesture.index||1e3,this.gestures.push(gesture),this.gestures.sort(function(a,b){return a.indexb.index?1:0}),this.gestures}},Hammer.gestures=Hammer.gestures||{},Hammer.gestures.Hold={name:"hold",index:10,defaults:{hold_timeout:500,hold_threshold:1},timer:null,handler:function(ev,inst){switch(ev.eventType){case Hammer.EVENT_START:clearTimeout(this.timer),Hammer.detection.current.name=this.name,this.timer=setTimeout(function(){"hold"==Hammer.detection.current.name&&inst.trigger("hold",ev)},inst.options.hold_timeout);break;case Hammer.EVENT_MOVE:ev.distance>inst.options.hold_threshold&&clearTimeout(this.timer);break;case Hammer.EVENT_END:clearTimeout(this.timer)}}},Hammer.gestures.Tap={name:"tap",index:100,defaults:{tap_max_touchtime:250,tap_max_distance:10,tap_always:!0,doubletap_distance:20,doubletap_interval:300},handler:function(ev,inst){if(ev.eventType==Hammer.EVENT_END){var prev=Hammer.detection.previous,did_doubletap=!1;if(ev.deltaTime>inst.options.tap_max_touchtime||ev.distance>inst.options.tap_max_distance)return;prev&&"tap"==prev.name&&ev.timeStamp-prev.lastEvent.timeStamp0&&ev.touches.length>inst.options.swipe_max_touches)return;(ev.velocityX>inst.options.swipe_velocity||ev.velocityY>inst.options.swipe_velocity)&&(inst.trigger(this.name,ev),inst.trigger(this.name+ev.direction,ev))}}},Hammer.gestures.Drag={name:"drag",index:50,defaults:{drag_min_distance:10,drag_max_touches:1,drag_block_horizontal:!1,drag_block_vertical:!1,drag_lock_to_axis:!1,drag_lock_min_distance:25},triggered:!1,handler:function(ev,inst){if(Hammer.detection.current.name!=this.name&&this.triggered)return inst.trigger(this.name+"end",ev),void(this.triggered=!1);if(!(inst.options.drag_max_touches>0&&ev.touches.length>inst.options.drag_max_touches))switch(ev.eventType){case Hammer.EVENT_START:this.triggered=!1;break;case Hammer.EVENT_MOVE:if(ev.distanceinst.options.transform_min_rotation&&inst.trigger("rotate",ev),scale_threshold>inst.options.transform_min_scale&&(inst.trigger("pinch",ev),inst.trigger("pinch"+(ev.scale<1?"in":"out"),ev));break;case Hammer.EVENT_END:this.triggered&&inst.trigger(this.name+"end",ev),this.triggered=!1}}},Hammer.gestures.Touch={name:"touch",index:-(1/0),defaults:{prevent_default:!1,prevent_mouseevents:!1},handler:function(ev,inst){return inst.options.prevent_mouseevents&&ev.pointerType==Hammer.POINTER_MOUSE?void ev.stopDetect():(inst.options.prevent_default&&ev.preventDefault(),void(ev.eventType==Hammer.EVENT_START&&inst.trigger(this.name,ev)))}},Hammer.gestures.Release={name:"release",index:1/0,handler:function(ev,inst){ev.eventType==Hammer.EVENT_END&&inst.trigger(this.name,ev)}},"object"==typeof module&&"object"==typeof module.exports?module.exports=Hammer:(window.Hammer=Hammer,"function"==typeof window.define&&window.define.amd&&window.define("hammer",[],function(){return Hammer}))}(this),function(window,undefined){function isArraylike(obj){var length=obj.length,type=jQuery.type(obj);return jQuery.isWindow(obj)?!1:1===obj.nodeType&&length?!0:"array"===type||"function"!==type&&(0===length||"number"==typeof length&&length>0&&length-1 in obj)}function createOptions(options){var object=optionsCache[options]={};return jQuery.each(options.match(core_rnotwhite)||[],function(_,flag){object[flag]=!0}),object}function internalData(elem,name,data,pvt){if(jQuery.acceptData(elem)){var thisCache,ret,internalKey=jQuery.expando,getByName="string"==typeof name,isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[internalKey]:elem[internalKey]&&internalKey;if(id&&cache[id]&&(pvt||cache[id].data)||!getByName||data!==undefined)return id||(isNode?elem[internalKey]=id=core_deletedIds.pop()||jQuery.guid++:id=internalKey),cache[id]||(cache[id]={},isNode||(cache[id].toJSON=jQuery.noop)),"object"!=typeof name&&"function"!=typeof name||(pvt?cache[id]=jQuery.extend(cache[id],name):cache[id].data=jQuery.extend(cache[id].data,name)),thisCache=cache[id],pvt||(thisCache.data||(thisCache.data={}),thisCache=thisCache.data),data!==undefined&&(thisCache[jQuery.camelCase(name)]=data),getByName?(ret=thisCache[name],null==ret&&(ret=thisCache[jQuery.camelCase(name)])):ret=thisCache,ret}}function internalRemoveData(elem,name,pvt){if(jQuery.acceptData(elem)){var i,l,thisCache,isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[jQuery.expando]:jQuery.expando;if(cache[id]){if(name&&(thisCache=pvt?cache[id]:cache[id].data)){jQuery.isArray(name)?name=name.concat(jQuery.map(name,jQuery.camelCase)):name in thisCache?name=[name]:(name=jQuery.camelCase(name),name=name in thisCache?[name]:name.split(" "));for(i=0,l=name.length;l>i;i++)delete thisCache[name[i]];if(!(pvt?isEmptyDataObject:jQuery.isEmptyObject)(thisCache))return}(pvt||(delete cache[id].data,isEmptyDataObject(cache[id])))&&(isNode?jQuery.cleanData([elem],!0):jQuery.support.deleteExpando||cache!=cache.window?delete cache[id]:cache[id]=null)}}}function dataAttr(elem,key,data){if(data===undefined&&1===elem.nodeType){var name="data-"+key.replace(rmultiDash,"-$1").toLowerCase();if(data=elem.getAttribute(name),"string"==typeof data){try{data="true"===data?!0:"false"===data?!1:"null"===data?null:+data+""===data?+data:rbrace.test(data)?jQuery.parseJSON(data):data}catch(e){}jQuery.data(elem,key,data)}else data=undefined}return data}function isEmptyDataObject(obj){var name;for(name in obj)if(("data"!==name||!jQuery.isEmptyObject(obj[name]))&&"toJSON"!==name)return!1;return!0}function returnTrue(){return!0}function returnFalse(){return!1}function sibling(cur,dir){do cur=cur[dir];while(cur&&1!==cur.nodeType);return cur}function winnow(elements,qualifier,keep){if(qualifier=qualifier||0,jQuery.isFunction(qualifier))return jQuery.grep(elements,function(elem,i){var retVal=!!qualifier.call(elem,i,elem);return retVal===keep});if(qualifier.nodeType)return jQuery.grep(elements,function(elem){return elem===qualifier===keep});if("string"==typeof qualifier){var filtered=jQuery.grep(elements,function(elem){return 1===elem.nodeType});if(isSimple.test(qualifier))return jQuery.filter(qualifier,filtered,!keep);qualifier=jQuery.filter(qualifier,filtered)}return jQuery.grep(elements,function(elem){return jQuery.inArray(elem,qualifier)>=0===keep})}function createSafeFragment(document){var list=nodeNames.split("|"),safeFrag=document.createDocumentFragment();if(safeFrag.createElement)for(;list.length;)safeFrag.createElement(list.pop());return safeFrag}function findOrAppend(elem,tag){return elem.getElementsByTagName(tag)[0]||elem.appendChild(elem.ownerDocument.createElement(tag))}function disableScript(elem){var attr=elem.getAttributeNode("type");return elem.type=(attr&&attr.specified)+"/"+elem.type,elem}function restoreScript(elem){var match=rscriptTypeMasked.exec(elem.type);return match?elem.type=match[1]:elem.removeAttribute("type"),elem}function setGlobalEval(elems,refElements){for(var elem,i=0;null!=(elem=elems[i]);i++)jQuery._data(elem,"globalEval",!refElements||jQuery._data(refElements[i],"globalEval"))}function cloneCopyEvent(src,dest){if(1===dest.nodeType&&jQuery.hasData(src)){var type,i,l,oldData=jQuery._data(src),curData=jQuery._data(dest,oldData),events=oldData.events;if(events){delete curData.handle,curData.events={};for(type in events)for(i=0,l=events[type].length;l>i;i++)jQuery.event.add(dest,type,events[type][i])}curData.data&&(curData.data=jQuery.extend({},curData.data))}}function fixCloneNodeIssues(src,dest){var nodeName,e,data;if(1===dest.nodeType){if(nodeName=dest.nodeName.toLowerCase(),!jQuery.support.noCloneEvent&&dest[jQuery.expando]){data=jQuery._data(dest);for(e in data.events)jQuery.removeEvent(dest,e,data.handle);dest.removeAttribute(jQuery.expando)}"script"===nodeName&&dest.text!==src.text?(disableScript(dest).text=src.text,restoreScript(dest)):"object"===nodeName?(dest.parentNode&&(dest.outerHTML=src.outerHTML),jQuery.support.html5Clone&&src.innerHTML&&!jQuery.trim(dest.innerHTML)&&(dest.innerHTML=src.innerHTML)):"input"===nodeName&&manipulation_rcheckableType.test(src.type)?(dest.defaultChecked=dest.checked=src.checked,dest.value!==src.value&&(dest.value=src.value)):"option"===nodeName?dest.defaultSelected=dest.selected=src.defaultSelected:"input"!==nodeName&&"textarea"!==nodeName||(dest.defaultValue=src.defaultValue)}}function getAll(context,tag){var elems,elem,i=0,found=typeof context.getElementsByTagName!==core_strundefined?context.getElementsByTagName(tag||"*"):typeof context.querySelectorAll!==core_strundefined?context.querySelectorAll(tag||"*"):undefined;if(!found)for(found=[],elems=context.childNodes||context;null!=(elem=elems[i]);i++)!tag||jQuery.nodeName(elem,tag)?found.push(elem):jQuery.merge(found,getAll(elem,tag));return tag===undefined||tag&&jQuery.nodeName(context,tag)?jQuery.merge([context],found):found}function fixDefaultChecked(elem){manipulation_rcheckableType.test(elem.type)&&(elem.defaultChecked=elem.checked)}function vendorPropName(style,name){if(name in style)return name;for(var capName=name.charAt(0).toUpperCase()+name.slice(1),origName=name,i=cssPrefixes.length;i--;)if(name=cssPrefixes[i]+capName,name in style)return name;return origName}function isHidden(elem,el){return elem=el||elem,"none"===jQuery.css(elem,"display")||!jQuery.contains(elem.ownerDocument,elem)}function showHide(elements,show){for(var display,elem,hidden,values=[],index=0,length=elements.length;length>index;index++)elem=elements[index],elem.style&&(values[index]=jQuery._data(elem,"olddisplay"),display=elem.style.display,show?(values[index]||"none"!==display||(elem.style.display=""),""===elem.style.display&&isHidden(elem)&&(values[index]=jQuery._data(elem,"olddisplay",css_defaultDisplay(elem.nodeName)))):values[index]||(hidden=isHidden(elem),(display&&"none"!==display||!hidden)&&jQuery._data(elem,"olddisplay",hidden?display:jQuery.css(elem,"display"))));for(index=0;length>index;index++)elem=elements[index],elem.style&&(show&&"none"!==elem.style.display&&""!==elem.style.display||(elem.style.display=show?values[index]||"":"none"));return elements}function setPositiveNumber(elem,value,subtract){var matches=rnumsplit.exec(value);return matches?Math.max(0,matches[1]-(subtract||0))+(matches[2]||"px"):value}function augmentWidthOrHeight(elem,name,extra,isBorderBox,styles){for(var i=extra===(isBorderBox?"border":"content")?4:"width"===name?1:0,val=0;4>i;i+=2)"margin"===extra&&(val+=jQuery.css(elem,extra+cssExpand[i],!0,styles)),isBorderBox?("content"===extra&&(val-=jQuery.css(elem,"padding"+cssExpand[i],!0,styles)),"margin"!==extra&&(val-=jQuery.css(elem,"border"+cssExpand[i]+"Width",!0,styles))):(val+=jQuery.css(elem,"padding"+cssExpand[i],!0,styles),"padding"!==extra&&(val+=jQuery.css(elem,"border"+cssExpand[i]+"Width",!0,styles)));return val}function getWidthOrHeight(elem,name,extra){var valueIsBorderBox=!0,val="width"===name?elem.offsetWidth:elem.offsetHeight,styles=getStyles(elem),isBorderBox=jQuery.support.boxSizing&&"border-box"===jQuery.css(elem,"boxSizing",!1,styles);if(0>=val||null==val){if(val=curCSS(elem,name,styles),(0>val||null==val)&&(val=elem.style[name]),rnumnonpx.test(val))return val;valueIsBorderBox=isBorderBox&&(jQuery.support.boxSizingReliable||val===elem.style[name]),val=parseFloat(val)||0}return val+augmentWidthOrHeight(elem,name,extra||(isBorderBox?"border":"content"),valueIsBorderBox,styles)+"px"}function css_defaultDisplay(nodeName){var doc=document,display=elemdisplay[nodeName];return display||(display=actualDisplay(nodeName,doc),"none"!==display&&display||(iframe=(iframe||jQuery("',"function"==typeof $f?(player=$f(container.childNodes[0]),playerState=-1,player.addEvent("ready",function(){function createEvent(player,pluginMediaElement,eventName,e){var event={type:eventName,target:pluginMediaElement};"timeupdate"==eventName&&(pluginMediaElement.currentTime=event.currentTime=e.seconds,pluginMediaElement.duration=event.duration=e.duration),pluginMediaElement.dispatchEvent(event)}player.playVideo=function(){player.api("play")},player.stopVideo=function(){player.api("unload")},player.pauseVideo=function(){player.api("pause")},player.seekTo=function(seconds){player.api("seekTo",seconds)},player.setVolume=function(volume){player.api("setVolume",volume)},player.setMuted=function(muted){muted?(player.lastVolume=player.api("getVolume"),player.api("setVolume",0)):(player.api("setVolume",player.lastVolume),delete player.lastVolume)},player.getPlayerState=function(){return playerState},player.addEvent("play",function(){playerState=1,createEvent(player,pluginMediaElement,"play"),createEvent(player,pluginMediaElement,"playing")}),player.addEvent("pause",function(){playerState=2,createEvent(player,pluginMediaElement,"pause")}),player.addEvent("finish",function(){playerState=0,createEvent(player,pluginMediaElement,"ended")}),player.addEvent("playProgress",function(e){createEvent(player,pluginMediaElement,"timeupdate",e)}),player.addEvent("seek",function(e){playerState=3,createEvent(player,pluginMediaElement,"seeked",e)}),player.addEvent("loadProgress",function(e){playerState=3,createEvent(player,pluginMediaElement,"progress",e)}),pluginMediaElement.pluginElement=container,pluginMediaElement.pluginApi=player,pluginMediaElement.success(pluginMediaElement,pluginMediaElement.pluginElement)})):console.warn("You need to include froogaloop for vimeo to work")}return htmlMediaElement.style.display="none",htmlMediaElement.removeAttribute("autoplay"),pluginMediaElement},updateNative:function(playback,options,autoplay,preload){var m,htmlMediaElement=playback.htmlMediaElement;for(m in mejs.HtmlMediaElement)htmlMediaElement[m]=mejs.HtmlMediaElement[m];return options.success(htmlMediaElement,htmlMediaElement),htmlMediaElement}},mejs.YouTubeApi={isIframeStarted:!1,isIframeLoaded:!1,loadIframeApi:function(yt){var tag,firstScriptTag;this.isIframeStarted||(tag=document.createElement("script"),tag.src=yt.scheme+"www.youtube.com/player_api",firstScriptTag=document.getElementsByTagName("script")[0],firstScriptTag.parentNode.insertBefore(tag,firstScriptTag),this.isIframeStarted=!0)},iframeQueue:[],enqueueIframe:function(yt){this.isLoaded?this.createIframe(yt):(this.loadIframeApi(yt),this.iframeQueue.push(yt))},createIframe:function(settings){var pluginMediaElement=settings.pluginMediaElement,defaultVars={controls:0,wmode:"transparent"},player=new YT.Player(settings.containerId,{height:settings.height,width:settings.width,videoId:settings.videoId,playerVars:mejs.$.extend({},defaultVars,settings.variables),events:{onReady:function(e){player.setVideoSize=function(width,height){player.setSize(width,height); },settings.pluginMediaElement.pluginApi=player,settings.pluginMediaElement.pluginElement=document.getElementById(settings.containerId),pluginMediaElement.success(pluginMediaElement,pluginMediaElement.pluginElement),mejs.YouTubeApi.createEvent(player,pluginMediaElement,"canplay"),setInterval(function(){mejs.YouTubeApi.createEvent(player,pluginMediaElement,"timeupdate")},250),"undefined"!=typeof pluginMediaElement.attributes.autoplay&&player.playVideo()},onStateChange:function(e){mejs.YouTubeApi.handleStateChange(e.data,player,pluginMediaElement)}}})},createEvent:function(player,pluginMediaElement,eventName){var bufferedTime,event={type:eventName,target:pluginMediaElement};player&&player.getDuration&&(pluginMediaElement.currentTime=event.currentTime=player.getCurrentTime(),pluginMediaElement.duration=event.duration=player.getDuration(),event.paused=pluginMediaElement.paused,event.ended=pluginMediaElement.ended,event.muted=player.isMuted(),event.volume=player.getVolume()/100,event.bytesTotal=player.getVideoBytesTotal(),event.bufferedBytes=player.getVideoBytesLoaded(),bufferedTime=event.bufferedBytes/event.bytesTotal*event.duration,event.target.buffered=event.buffered={start:function(index){return 0},end:function(index){return bufferedTime},length:1}),pluginMediaElement.dispatchEvent(event)},iFrameReady:function(){for(this.isLoaded=!0,this.isIframeLoaded=!0;this.iframeQueue.length>0;){var settings=this.iframeQueue.pop();this.createIframe(settings)}},flashPlayers:{},createFlash:function(settings){this.flashPlayers[settings.pluginId]=settings;var specialIEContainer,youtubeUrl=settings.scheme+"www.youtube.com/apiplayer?enablejsapi=1&playerapiid="+settings.pluginId+"&version=3&autoplay=0&controls=0&modestbranding=1&loop=0";mejs.MediaFeatures.isIE?(specialIEContainer=document.createElement("div"),settings.container.appendChild(specialIEContainer),specialIEContainer.outerHTML=''):settings.container.innerHTML=''},flashReady:function(id){var callbackName,settings=this.flashPlayers[id],player=document.getElementById(id),pluginMediaElement=settings.pluginMediaElement;pluginMediaElement.pluginApi=pluginMediaElement.pluginElement=player,settings.success(pluginMediaElement,pluginMediaElement.pluginElement),player.cueVideoById(settings.videoId),callbackName=settings.containerId+"_callback",window[callbackName]=function(e){mejs.YouTubeApi.handleStateChange(e,player,pluginMediaElement)},player.addEventListener("onStateChange",callbackName),setInterval(function(){mejs.YouTubeApi.createEvent(player,pluginMediaElement,"timeupdate")},250),mejs.YouTubeApi.createEvent(player,pluginMediaElement,"canplay")},handleStateChange:function(youTubeState,player,pluginMediaElement){switch(youTubeState){case-1:pluginMediaElement.paused=!0,pluginMediaElement.ended=!0,mejs.YouTubeApi.createEvent(player,pluginMediaElement,"loadedmetadata");break;case 0:pluginMediaElement.paused=!1,pluginMediaElement.ended=!0,mejs.YouTubeApi.createEvent(player,pluginMediaElement,"ended");break;case 1:pluginMediaElement.paused=!1,pluginMediaElement.ended=!1,mejs.YouTubeApi.createEvent(player,pluginMediaElement,"play"),mejs.YouTubeApi.createEvent(player,pluginMediaElement,"playing");break;case 2:pluginMediaElement.paused=!0,pluginMediaElement.ended=!1,mejs.YouTubeApi.createEvent(player,pluginMediaElement,"pause");break;case 3:mejs.YouTubeApi.createEvent(player,pluginMediaElement,"progress");break;case 5:}}},window.onYouTubePlayerAPIReady=function(){mejs.YouTubeApi.iFrameReady()},window.onYouTubePlayerReady=function(id){mejs.YouTubeApi.flashReady(id)},window.mejs=mejs,window.MediaElement=mejs.MediaElement,function(doc,win,mejs,undefined){var i18n={"default":"en",locale:{language:mejs.i18n&&mejs.i18n.locale.language||"",strings:mejs.i18n&&mejs.i18n.locale.strings||{}},pluralForms:[function(){return arguments[1]},function(){var args=arguments;return 1===args[0]?args[1]:args[2]},function(){var args=arguments;return[0,1].indexOf(args[0])>-1?args[1]:args[2]},function(){var args=arguments;return args[0]%10===1&&args[0]%100!==11?args[1]:0!==args[0]?args[2]:args[3]},function(){var args=arguments;return 1===args[0]||11===args[0]?args[1]:2===args[0]||12===args[0]?args[2]:args[0]>2&&args[0]<20?args[3]:args[4]},function(){return 1===args[0]?args[1]:0===args[0]||args[0]%100>0&&args[0]%100<20?args[2]:args[3]},function(){var args=arguments;return args[0]%10===1&&args[0]%100!==11?args[1]:args[0]%10>=2&&(args[0]%100<10||args[0]%100>=20)?args[2]:[3]},function(){var args=arguments;return args[0]%10===1&&args[0]%100!==11?args[1]:args[0]%10>=2&&args[0]%10<=4&&(args[0]%100<10||args[0]%100>=20)?args[2]:args[3]},function(){var args=arguments;return 1===args[0]?args[1]:args[0]>=2&&args[0]<=4?args[2]:args[3]},function(){var args=arguments;return 1===args[0]?args[1]:args[0]%10>=2&&args[0]%10<=4&&(args[0]%100<10||args[0]%100>=20)?args[2]:args[3]},function(){var args=arguments;return args[0]%100===1?args[2]:args[0]%100===2?args[3]:args[0]%100===3||args[0]%100===4?args[4]:args[1]},function(){var args=arguments;return 1===args[0]?args[1]:2===args[0]?args[2]:args[0]>2&&args[0]<7?args[3]:args[0]>6&&args[0]<11?args[4]:args[5]},function(){var args=arguments;return 0===args[0]?args[1]:1===args[0]?args[2]:2===args[0]?args[3]:args[0]%100>=3&&args[0]%100<=10?args[4]:args[0]%100>=11?args[5]:args[6]},function(){var args=arguments;return 1===args[0]?args[1]:0===args[0]||args[0]%100>1&&args[0]%100<11?args[2]:args[0]%100>10&&args[0]%100<20?args[3]:args[4]},function(){var args=arguments;return args[0]%10===1?args[1]:args[0]%10===2?args[2]:args[3]},function(){var args=arguments;return 11!==args[0]&&args[0]%10===1?args[1]:args[2]},function(){var args=arguments;return 1===args[0]?args[1]:args[0]%10>=2&&args[0]%10<=4&&(args[0]%100<10||args[0]%100>=20)?args[2]:args[3]},function(){var args=arguments;return 1===args[0]?args[1]:2===args[0]?args[2]:8!==args[0]&&11!==args[0]?args[3]:args[4]},function(){var args=arguments;return 0===args[0]?args[1]:args[2]},function(){var args=arguments;return 1===args[0]?args[1]:2===args[0]?args[2]:3===args[0]?args[3]:args[4]},function(){var args=arguments;return 0===args[0]?args[1]:1===args[0]?args[2]:args[3]}],getLanguage:function(){var language=i18n.locale.language||i18n["default"];return/^(x\-)?[a-z]{2,}(\-\w{2,})?(\-\w{2,})?$/.exec(language)?language:i18n["default"]},t:function(message,pluralParam){if("string"==typeof message&&message.length){var str,pluralForm,language=i18n.getLanguage(),plural=function(input,number,form){return"object"!=typeof input||"number"!=typeof number||"number"!=typeof form?input:"string"==typeof input?input:i18n.pluralForms[form].apply(null,[number].concat(input))},escapeHTML=function(input){var map={"&":"&","<":"<",">":">",'"':"""};return input.replace(/[&<>"]/g,function(c){return map[c]})};return i18n.locale.strings&&i18n.locale.strings[language]&&(str=i18n.locale.strings[language][message],"number"==typeof pluralParam&&(pluralForm=i18n.locale.strings[language]["mejs.plural-form"],str=plural.apply(null,[str,pluralParam,pluralForm]))),!str&&i18n.locale.strings&&i18n.locale.strings[i18n["default"]]&&(str=i18n.locale.strings[i18n["default"]][message],"number"==typeof pluralParam&&(pluralForm=i18n.locale.strings[i18n["default"]]["mejs.plural-form"],str=plural.apply(null,[str,pluralParam,pluralForm]))),str=str||message,"number"==typeof pluralParam&&(str=str.replace("%1",pluralParam)),escapeHTML(str)}return message}};"undefined"!=typeof mejsL10n&&(i18n.locale.language=mejsL10n.language),mejs.i18n=i18n}(document,window,mejs),function(mejs,undefined){"use strict";"undefined"!=typeof mejsL10n&&(mejs[mejsL10n.lang]=mejsL10n.strings)}(mejs.i18n.locale.strings),function(exports){"use strict";void 0===exports.en&&(exports.en={"mejs.plural-form":1,"mejs.download-file":"Download File","mejs.fullscreen-off":"Turn off Fullscreen","mejs.fullscreen-on":"Go Fullscreen","mejs.download-video":"Download Video","mejs.fullscreen":"Fullscreen","mejs.time-jump-forward":["Jump forward 1 second","Jump forward %1 seconds"],"mejs.play":"Play","mejs.pause":"Pause","mejs.close":"Close","mejs.time-slider":"Time Slider","mejs.time-help-text":"Use Left/Right Arrow keys to advance one second, Up/Down arrows to advance ten seconds.","mejs.time-skip-back":["Skip back 1 second","Skip back %1 seconds"],"mejs.captions-subtitles":"Captions/Subtitles","mejs.none":"None","mejs.mute-toggle":"Mute Toggle","mejs.volume-help-text":"Use Up/Down Arrow keys to increase or decrease volume.","mejs.unmute":"Unmute","mejs.mute":"Mute","mejs.volume-slider":"Volume Slider","mejs.video-player":"Video Player","mejs.audio-player":"Audio Player","mejs.ad-skip":"Skip ad","mejs.ad-skip-info":["Skip in 1 second","Skip in %1 seconds"],"mejs.source-chooser":"Source Chooser"})}(mejs.i18n.locale.strings),"undefined"!=typeof jQuery?mejs.$=jQuery:"undefined"!=typeof Zepto?(mejs.$=Zepto,Zepto.fn.outerWidth=function(includeMargin){var width=$(this).width();return includeMargin&&(width+=parseInt($(this).css("margin-right"),10),width+=parseInt($(this).css("margin-left"),10)),width}):"undefined"!=typeof ender&&(mejs.$=ender),function($){mejs.MepDefaults={poster:"",showPosterWhenEnded:!1,defaultVideoWidth:480,defaultVideoHeight:270,videoWidth:-1,videoHeight:-1,defaultAudioWidth:400,defaultAudioHeight:30,defaultSeekBackwardInterval:function(media){return.05*media.duration},defaultSeekForwardInterval:function(media){return.05*media.duration},setDimensions:!0,audioWidth:-1,audioHeight:-1,startVolume:.8,loop:!1,autoRewind:!0,enableAutosize:!0,timeFormat:"",alwaysShowHours:!1,showTimecodeFrameCount:!1,framesPerSecond:25,autosizeProgress:!0,alwaysShowControls:!1,hideVideoControlsOnLoad:!1,clickToPlayPause:!0,controlsTimeoutDefault:1500,controlsTimeoutMouseEnter:2500,controlsTimeoutMouseLeave:1e3,iPadUseNativeControls:!1,iPhoneUseNativeControls:!1,AndroidUseNativeControls:!1,features:["playpause","current","progress","duration","tracks","volume","fullscreen"],isVideo:!0,stretching:"auto",enableKeyboard:!0,pauseOtherPlayers:!0,keyActions:[{keys:[32,179],action:function(player,media,key,event){mejs.MediaFeatures.isFirefox||(media.paused||media.ended?media.play():media.pause())}},{keys:[38],action:function(player,media,key,event){player.container.find(".mejs-volume-slider").css("display","block"),player.isVideo&&(player.showControls(),player.startControlsTimer());var newVolume=Math.min(media.volume+.1,1);media.setVolume(newVolume)}},{keys:[40],action:function(player,media,key,event){player.container.find(".mejs-volume-slider").css("display","block"),player.isVideo&&(player.showControls(),player.startControlsTimer());var newVolume=Math.max(media.volume-.1,0);media.setVolume(newVolume)}},{keys:[37,227],action:function(player,media,key,event){if(!isNaN(media.duration)&&media.duration>0){player.isVideo&&(player.showControls(),player.startControlsTimer());var newTime=Math.max(media.currentTime-player.options.defaultSeekBackwardInterval(media),0);media.setCurrentTime(newTime)}}},{keys:[39,228],action:function(player,media,key,event){if(!isNaN(media.duration)&&media.duration>0){player.isVideo&&(player.showControls(),player.startControlsTimer());var newTime=Math.min(media.currentTime+player.options.defaultSeekForwardInterval(media),media.duration);media.setCurrentTime(newTime)}}},{keys:[70],action:function(player,media,key,event){"undefined"!=typeof player.enterFullScreen&&(player.isFullScreen?player.exitFullScreen():player.enterFullScreen())}},{keys:[77],action:function(player,media,key,event){player.container.find(".mejs-volume-slider").css("display","block"),player.isVideo&&(player.showControls(),player.startControlsTimer()),player.media.muted?player.setMuted(!1):player.setMuted(!0)}}]},mejs.mepIndex=0,mejs.players={},mejs.MediaElementPlayer=function(node,o){if(!(this instanceof mejs.MediaElementPlayer))return new mejs.MediaElementPlayer(node,o);var t=this;return t.$media=t.$node=$(node),t.node=t.media=t.$media[0],t.node?"undefined"!=typeof t.node.player?t.node.player:("undefined"==typeof o&&(o=t.$node.data("mejsoptions")),t.options=$.extend({},mejs.MepDefaults,o),t.options.timeFormat||(t.options.timeFormat="mm:ss",t.options.alwaysShowHours&&(t.options.timeFormat="hh:mm:ss"),t.options.showTimecodeFrameCount&&(t.options.timeFormat+=":ff")),mejs.Utility.calculateTimeFormat(0,t.options,t.options.framesPerSecond||25),t.id="mep_"+mejs.mepIndex++,mejs.players[t.id]=t,t.init(),t):void 0},mejs.MediaElementPlayer.prototype={hasFocus:!1,controlsAreVisible:!0,init:function(){var videoPlayerTitle,tagType,capsTagName,t=this,mf=mejs.MediaFeatures,meOptions=$.extend(!0,{},t.options,{success:function(media,domNode){t.meReady(media,domNode)},error:function(e){t.handleError(e)}}),tagName=t.media.tagName.toLowerCase();t.isDynamic="audio"!==tagName&&"video"!==tagName,t.isDynamic?t.isVideo=t.options.isVideo:t.isVideo="audio"!==tagName&&t.options.isVideo,mf.isiPad&&t.options.iPadUseNativeControls||mf.isiPhone&&t.options.iPhoneUseNativeControls?(t.$media.attr("controls","controls"),mf.isiPad&&null!==t.media.getAttribute("autoplay")&&t.play()):mf.isAndroid&&t.options.AndroidUseNativeControls||(t.isVideo||!t.isVideo&&t.options.features.length?(t.$media.removeAttr("controls"),videoPlayerTitle=t.isVideo?mejs.i18n.t("mejs.video-player"):mejs.i18n.t("mejs.audio-player"),$(''+videoPlayerTitle+"").insertBefore(t.$media),t.container=$('
').addClass(t.$media[0].className).insertBefore(t.$media).focus(function(e){var btnSelector,button;t.controlsAreVisible||t.hasFocus||!t.controlsEnabled||(t.showControls(!0),t.hasMsNativeFullScreen||(btnSelector=".mejs-playpause-button > button",mejs.Utility.isNodeAfter(e.relatedTarget,t.container[0])&&(btnSelector=".mejs-controls .mejs-button:last-child > button"),button=t.container.find(btnSelector),button.focus()))}),t.options.features.length||t.container.css("background","transparent").find(".mejs-controls").hide(),t.isVideo&&"fill"===t.options.stretching&&!t.container.parent("mejs-fill-container").length&&(t.outerContainer=t.$media.parent(),t.container.wrap('
')),t.container.addClass((mf.isAndroid?"mejs-android ":"")+(mf.isiOS?"mejs-ios ":"")+(mf.isiPad?"mejs-ipad ":"")+(mf.isiPhone?"mejs-iphone ":"")+(t.isVideo?"mejs-video ":"mejs-audio ")),t.container.find(".mejs-mediaelement").append(t.$media),t.node.player=t,t.controls=t.container.find(".mejs-controls"),t.layers=t.container.find(".mejs-layers"),tagType=t.isVideo?"video":"audio",capsTagName=tagType.substring(0,1).toUpperCase()+tagType.substring(1),t.options[tagType+"Width"]>0||t.options[tagType+"Width"].toString().indexOf("%")>-1?t.width=t.options[tagType+"Width"]:""!==t.media.style.width&&null!==t.media.style.width?t.width=t.media.style.width:null!==t.media.getAttribute("width")?t.width=t.$media.attr("width"):t.width=t.options["default"+capsTagName+"Width"],t.options[tagType+"Height"]>0||t.options[tagType+"Height"].toString().indexOf("%")>-1?t.height=t.options[tagType+"Height"]:""!==t.media.style.height&&null!==t.media.style.height?t.height=t.media.style.height:null!==t.$media[0].getAttribute("height")?t.height=t.$media.attr("height"):t.height=t.options["default"+capsTagName+"Height"],t.setPlayerSize(t.width,t.height),meOptions.pluginWidth=t.width,meOptions.pluginHeight=t.height):t.isVideo||t.options.features.length||t.$media.hide()),mejs.MediaElement(t.$media[0],meOptions),"undefined"!=typeof t.container&&t.options.features.length&&t.controlsAreVisible&&t.container.trigger("controlsshown")},showControls:function(doAnimation){var t=this;doAnimation="undefined"==typeof doAnimation||doAnimation,t.controlsAreVisible||(doAnimation?(t.controls.removeClass("mejs-offscreen").stop(!0,!0).fadeIn(200,function(){t.controlsAreVisible=!0,t.container.trigger("controlsshown")}),t.container.find(".mejs-control").removeClass("mejs-offscreen").stop(!0,!0).fadeIn(200,function(){t.controlsAreVisible=!0})):(t.controls.removeClass("mejs-offscreen").css("display","block"),t.container.find(".mejs-control").removeClass("mejs-offscreen").css("display","block"),t.controlsAreVisible=!0,t.container.trigger("controlsshown")),t.setControlsSize())},hideControls:function(doAnimation){var t=this;doAnimation="undefined"==typeof doAnimation||doAnimation,!t.controlsAreVisible||t.options.alwaysShowControls||t.keyboardAction||t.media.paused||t.media.ended||(doAnimation?(t.controls.stop(!0,!0).fadeOut(200,function(){$(this).addClass("mejs-offscreen").css("display","block"),t.controlsAreVisible=!1,t.container.trigger("controlshidden")}),t.container.find(".mejs-control").stop(!0,!0).fadeOut(200,function(){$(this).addClass("mejs-offscreen").css("display","block")})):(t.controls.addClass("mejs-offscreen").css("display","block"),t.container.find(".mejs-control").addClass("mejs-offscreen").css("display","block"),t.controlsAreVisible=!1,t.container.trigger("controlshidden")))},controlsTimer:null,startControlsTimer:function(timeout){var t=this;timeout="undefined"!=typeof timeout?timeout:t.options.controlsTimeoutDefault,t.killControlsTimer("start"),t.controlsTimer=setTimeout(function(){t.hideControls(),t.killControlsTimer("hide")},timeout)},killControlsTimer:function(src){var t=this;null!==t.controlsTimer&&(clearTimeout(t.controlsTimer),delete t.controlsTimer,t.controlsTimer=null)},controlsEnabled:!0,disableControls:function(){var t=this;t.killControlsTimer(),t.hideControls(!1),this.controlsEnabled=!1},enableControls:function(){var t=this;t.showControls(!1),t.controlsEnabled=!0},meReady:function(media,domNode){var featureIndex,feature,duration,t=this,mf=mejs.MediaFeatures,autoplayAttr=domNode.getAttribute("autoplay"),autoplay=!("undefined"==typeof autoplayAttr||null===autoplayAttr||"false"===autoplayAttr);if(!t.created){if(t.created=!0,t.media=media,t.domNode=domNode,!(mf.isAndroid&&t.options.AndroidUseNativeControls||mf.isiPad&&t.options.iPadUseNativeControls||mf.isiPhone&&t.options.iPhoneUseNativeControls)){if(!t.isVideo&&!t.options.features.length)return autoplay&&"native"==media.pluginType&&t.play(),void(t.options.success&&("string"==typeof t.options.success?window[t.options.success](t.media,t.domNode,t):t.options.success(t.media,t.domNode,t)));t.buildposter(t,t.controls,t.layers,t.media),t.buildkeyboard(t,t.controls,t.layers,t.media),t.buildoverlays(t,t.controls,t.layers,t.media),t.findTracks();for(featureIndex in t.options.features)if(feature=t.options.features[featureIndex],t["build"+feature])try{t["build"+feature](t,t.controls,t.layers,t.media)}catch(e){}t.container.trigger("controlsready"),t.setPlayerSize(t.width,t.height),t.setControlsSize(),t.isVideo&&(mejs.MediaFeatures.hasTouch&&!t.options.alwaysShowControls?t.$media.bind("touchstart",function(){t.controlsAreVisible?t.hideControls(!1):t.controlsEnabled&&t.showControls(!1)}):(t.clickToPlayPauseCallback=function(){if(t.options.clickToPlayPause){t.media.paused?t.play():t.pause();var button=t.$media.closest(".mejs-container").find(".mejs-overlay-button"),pressed=button.attr("aria-pressed");button.attr("aria-pressed",!pressed)}},t.media.addEventListener("click",t.clickToPlayPauseCallback,!1),t.container.bind("mouseenter",function(){t.controlsEnabled&&(t.options.alwaysShowControls||(t.killControlsTimer("enter"),t.showControls(),t.startControlsTimer(t.options.controlsTimeoutMouseEnter)))}).bind("mousemove",function(){t.controlsEnabled&&(t.controlsAreVisible||t.showControls(),t.options.alwaysShowControls||t.startControlsTimer(t.options.controlsTimeoutMouseEnter))}).bind("mouseleave",function(){t.controlsEnabled&&(t.media.paused||t.options.alwaysShowControls||t.startControlsTimer(t.options.controlsTimeoutMouseLeave))})),t.options.hideVideoControlsOnLoad&&t.hideControls(!1),autoplay&&!t.options.alwaysShowControls&&t.hideControls(),t.options.enableAutosize&&t.media.addEventListener("loadedmetadata",function(e){t.options.videoHeight<=0&&null===t.domNode.getAttribute("height")&&!isNaN(e.target.videoHeight)&&(t.setPlayerSize(e.target.videoWidth,e.target.videoHeight),t.setControlsSize(),t.media.setVideoSize(e.target.videoWidth,e.target.videoHeight))},!1)),t.media.addEventListener("play",function(){var playerIndex,p;for(playerIndex in mejs.players)p=mejs.players[playerIndex],p.id==t.id||!t.options.pauseOtherPlayers||p.paused||p.ended||p.pause(),p.hasFocus=!1;t.hasFocus=!0},!1),t.media.addEventListener("ended",function(e){if(t.options.autoRewind)try{t.media.setCurrentTime(0),window.setTimeout(function(){$(t.container).find(".mejs-overlay-loading").parent().hide()},20)}catch(exp){}"youtube"===t.media.pluginType?t.media.stop():t.media.pause(),t.setProgressRail&&t.setProgressRail(),t.setCurrentRail&&t.setCurrentRail(),t.options.loop?t.play():!t.options.alwaysShowControls&&t.controlsEnabled&&t.showControls()},!1),t.media.addEventListener("loadedmetadata",function(){mejs.Utility.calculateTimeFormat(t.duration,t.options,t.options.framesPerSecond||25),t.updateDuration&&t.updateDuration(),t.updateCurrent&&t.updateCurrent(),t.isFullScreen||(t.setPlayerSize(t.width,t.height),t.setControlsSize())},!1),duration=null,t.media.addEventListener("timeupdate",function(){duration!==this.duration&&(duration=this.duration,mejs.Utility.calculateTimeFormat(duration,t.options,t.options.framesPerSecond||25),t.updateDuration&&t.updateDuration(),t.updateCurrent&&t.updateCurrent(),t.setControlsSize())},!1),t.container.focusout(function(e){if(e.relatedTarget){var $target=$(e.relatedTarget);t.keyboardAction&&0===$target.parents(".mejs-container").length&&(t.keyboardAction=!1,t.isVideo&&!t.options.alwaysShowControls&&t.hideControls(!0))}}),setTimeout(function(){t.setPlayerSize(t.width,t.height),t.setControlsSize()},50),t.globalBind("resize",function(){t.isFullScreen||mejs.MediaFeatures.hasTrueNativeFullScreen&&document.webkitIsFullScreen||t.setPlayerSize(t.width,t.height),t.setControlsSize()}),"youtube"==t.media.pluginType&&(mf.isiOS||mf.isAndroid)&&(t.container.find(".mejs-overlay-play").hide(),t.container.find(".mejs-poster").hide())}autoplay&&"native"==media.pluginType&&t.play(),t.options.success&&("string"==typeof t.options.success?window[t.options.success](t.media,t.domNode,t):t.options.success(t.media,t.domNode,t))}},handleError:function(e){var t=this;t.controls&&t.controls.hide(),t.options.error&&t.options.error(e)},setPlayerSize:function(width,height){var t=this;if(!t.options.setDimensions)return!1;switch("undefined"!=typeof width&&(t.width=width),"undefined"!=typeof height&&(t.height=height),t.options.stretching){case"fill":t.isVideo?this.setFillMode():this.setDimensions(t.width,t.height);break;case"responsive":this.setResponsiveMode();break;case"none":this.setDimensions(t.width,t.height);break;default:this.hasFluidMode()===!0?this.setResponsiveMode():this.setDimensions(t.width,t.height)}},hasFluidMode:function(){var t=this;return t.height.toString().indexOf("%")>0||"none"!==t.$node.css("max-width")&&"t.width"!==t.$node.css("max-width")||t.$node[0].currentStyle&&"100%"===t.$node[0].currentStyle.maxWidth},setResponsiveMode:function(){var t=this,nativeWidth=function(){return t.isVideo?t.media.videoWidth&&t.media.videoWidth>0?t.media.videoWidth:null!==t.media.getAttribute("width")?t.media.getAttribute("width"):t.options.defaultVideoWidth:t.options.defaultAudioWidth}(),nativeHeight=function(){return t.isVideo?t.media.videoHeight&&t.media.videoHeight>0?t.media.videoHeight:null!==t.media.getAttribute("height")?t.media.getAttribute("height"):t.options.defaultVideoHeight:t.options.defaultAudioHeight}(),parentWidth=t.container.parent().closest(":visible").width(),parentHeight=t.container.parent().closest(":visible").height(),newHeight=t.isVideo||!t.options.autosizeProgress?parseInt(parentWidth*nativeHeight/nativeWidth,10):nativeHeight;(isNaN(newHeight)||0!==parentHeight&&newHeight>parentHeight&&parentHeight>nativeHeight)&&(newHeight=parentHeight),t.container.parent().length>0&&"body"===t.container.parent()[0].tagName.toLowerCase()&&(parentWidth=$(window).width(),newHeight=$(window).height()),newHeight&&parentWidth&&(t.container.width(parentWidth).height(newHeight),t.$media.add(t.container.find(".mejs-shim")).width("100%").height("100%"),t.isVideo&&t.media.setVideoSize&&t.media.setVideoSize(parentWidth,newHeight),t.layers.children(".mejs-layer").width("100%").height("100%"))},setFillMode:function(){var parentWidth,parentHeight,initHeight,initWidth,scaleX1,scaleY1,scaleX2,scaleY2,bScaleOnWidth,finalWidth,finalHeight,t=this,parent=t.outerContainer;parent.width()||parent.height(t.$media.width()),parent.height()||parent.height(t.$media.height()),parentWidth=parent.width(),parentHeight=parent.height(),t.setDimensions("100%","100%"),t.container.find(".mejs-poster img").css("display","block"),targetElement=t.container.find("object, embed, iframe, video"),initHeight=t.height,initWidth=t.width,scaleX1=parentWidth,scaleY1=initHeight*parentWidth/initWidth,scaleX2=initWidth*parentHeight/initHeight,scaleY2=parentHeight,bScaleOnWidth=!(scaleX2>parentWidth),finalWidth=bScaleOnWidth?Math.floor(scaleX1):Math.floor(scaleX2),finalHeight=bScaleOnWidth?Math.floor(scaleY1):Math.floor(scaleY2),bScaleOnWidth?(targetElement.height(finalHeight).width(parentWidth),t.media.setVideoSize&&t.media.setVideoSize(parentWidth,finalHeight)):(targetElement.height(parentHeight).width(finalWidth),t.media.setVideoSize&&t.media.setVideoSize(finalWidth,parentHeight)),targetElement.css({"margin-left":Math.floor((parentWidth-finalWidth)/2),"margin-top":0})},setDimensions:function(width,height){var t=this;t.container.width(width).height(height),t.layers.children(".mejs-layer").width(width).height(height)},setControlsSize:function(){var t=this,usedWidth=0,railWidth=0,rail=t.controls.find(".mejs-time-rail"),total=t.controls.find(".mejs-time-total"),others=rail.siblings(),lastControl=others.last(),lastControlPosition=null,avoidAutosizeProgress=t.options&&!t.options.autosizeProgress;if(t.container.is(":visible")&&rail.length&&rail.is(":visible")){avoidAutosizeProgress&&(railWidth=parseInt(rail.css("width"),10)),0!==railWidth&&railWidth||(others.each(function(){var $this=$(this);"absolute"!=$this.css("position")&&$this.is(":visible")&&(usedWidth+=$(this).outerWidth(!0))}),railWidth=t.controls.width()-usedWidth-(rail.outerWidth(!0)-rail.width()));do avoidAutosizeProgress||rail.width(railWidth),total.width(railWidth-(total.outerWidth(!0)-total.width())),"absolute"!=lastControl.css("position")&&(lastControlPosition=lastControl.length?lastControl.position():null,railWidth--);while(null!==lastControlPosition&&lastControlPosition.top.toFixed(2)>0&&railWidth>0);t.container.trigger("controlsresize")}},buildposter:function(player,controls,layers,media){var t=this,poster=$('
').appendTo(layers),posterUrl=player.$media.attr("poster");""!==player.options.poster&&(posterUrl=player.options.poster),posterUrl?t.setPoster(posterUrl):poster.hide(),media.addEventListener("play",function(){poster.hide()},!1),player.options.showPosterWhenEnded&&player.options.autoRewind&&media.addEventListener("ended",function(){poster.show()},!1)},setPoster:function(url){var t=this,posterDiv=t.container.find(".mejs-poster"),posterImg=posterDiv.find("img");0===posterImg.length&&(posterImg=$('').appendTo(posterDiv)),posterImg.attr("src",url),posterDiv.css({"background-image":"url("+url+")"})},buildoverlays:function(player,controls,layers,media){var loading,error,bigPlay,t=this;player.isVideo&&(loading=$('
').hide().appendTo(layers),error=$('
').hide().appendTo(layers),bigPlay=$('
').appendTo(layers).bind("click",function(){if(t.options.clickToPlayPause){media.paused&&media.play();var button=$(this).find(".mejs-overlay-button"),pressed=button.attr("aria-pressed");button.attr("aria-pressed",!!pressed)}}),media.addEventListener("play",function(){bigPlay.hide(),loading.hide(),controls.find(".mejs-time-buffering").hide(),error.hide()},!1),media.addEventListener("playing",function(){bigPlay.hide(),loading.hide(),controls.find(".mejs-time-buffering").hide(),error.hide()},!1),media.addEventListener("seeking",function(){loading.show(),controls.find(".mejs-time-buffering").show()},!1),media.addEventListener("seeked",function(){loading.hide(),controls.find(".mejs-time-buffering").hide()},!1),media.addEventListener("pause",function(){mejs.MediaFeatures.isiPhone||bigPlay.show()},!1),media.addEventListener("waiting",function(){loading.show(),controls.find(".mejs-time-buffering").show()},!1),media.addEventListener("loadeddata",function(){loading.show(),controls.find(".mejs-time-buffering").show(),mejs.MediaFeatures.isAndroid&&(media.canplayTimeout=window.setTimeout(function(){if(document.createEvent){var evt=document.createEvent("HTMLEvents");return evt.initEvent("canplay",!0,!0),media.dispatchEvent(evt)}},300))},!1),media.addEventListener("canplay",function(){loading.hide(),controls.find(".mejs-time-buffering").hide(),clearTimeout(media.canplayTimeout)},!1),media.addEventListener("error",function(e){t.handleError(e),loading.hide(),bigPlay.hide(),error.show(),error.find(".mejs-overlay-error").html("Error loading this resource")},!1),media.addEventListener("keydown",function(e){t.onkeydown(player,media,e)},!1))},buildkeyboard:function(player,controls,layers,media){var t=this;t.container.keydown(function(){t.keyboardAction=!0}),t.globalBind("keydown",function(event){return player.hasFocus=0!==$(event.target).closest(".mejs-container").length&&$(event.target).closest(".mejs-container").attr("id")===player.$media.closest(".mejs-container").attr("id"),t.onkeydown(player,media,event)}),t.globalBind("click",function(event){player.hasFocus=0!==$(event.target).closest(".mejs-container").length})},onkeydown:function(player,media,e){var i,il,keyAction,j,jl;if(player.hasFocus&&player.options.enableKeyboard)for(i=0,il=player.options.keyActions.length;il>i;i++)for(keyAction=player.options.keyActions[i],j=0,jl=keyAction.keys.length;jl>j;j++)if(e.keyCode==keyAction.keys[j])return"function"==typeof e.preventDefault&&e.preventDefault(),keyAction.action(player,media,e.keyCode,e),!1;return!0},findTracks:function(){var t=this,tracktags=t.$media.find("track");t.tracks=[],tracktags.each(function(index,track){track=$(track),t.tracks.push({srclang:track.attr("srclang")?track.attr("srclang").toLowerCase():"",src:track.attr("src"),kind:track.attr("kind"),label:track.attr("label")||"",entries:[],isLoaded:!1})})},changeSkin:function(className){this.container[0].className="mejs-container "+className,this.setPlayerSize(this.width,this.height),this.setControlsSize()},play:function(){this.load(),this.media.play()},pause:function(){ try{this.media.pause()}catch(e){}},load:function(){this.isLoaded||this.media.load(),this.isLoaded=!0},setMuted:function(muted){this.media.setMuted(muted)},setCurrentTime:function(time){this.media.setCurrentTime(time)},getCurrentTime:function(){return this.media.currentTime},setVolume:function(volume){this.media.setVolume(volume)},getVolume:function(){return this.media.volume},setSrc:function(src){var videoId,i,media,videoIdMatch,t=this;if("youtube"===t.media.pluginType){if("string"!=typeof src)for(i=0;i
').appendTo(controls).click(function(e){return e.preventDefault(),media.paused?media.play():media.pause(),!1}),play_btn=play.find("button");togglePlayPause("pse"),media.addEventListener("play",function(){togglePlayPause("play")},!1),media.addEventListener("playing",function(){togglePlayPause("play")},!1),media.addEventListener("pause",function(){togglePlayPause("pse")},!1),media.addEventListener("paused",function(){togglePlayPause("pse")},!1)}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{stopText:"Stop"}),$.extend(MediaElementPlayer.prototype,{buildstop:function(player,controls,layers,media){var t=this;$('
').appendTo(controls).click(function(){media.paused||media.pause(),media.currentTime>0&&(media.setCurrentTime(0),media.pause(),controls.find(".mejs-time-current").width("0px"),controls.find(".mejs-time-handle").css("left","0px"),controls.find(".mejs-time-float-current").html(mejs.Utility.secondsToTimeCode(0,player.options)),controls.find(".mejs-currenttime").html(mejs.Utility.secondsToTimeCode(0,player.options)),layers.find(".mejs-poster").show())})}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{enableProgressTooltip:!0,progressHelpText:""}),$.extend(MediaElementPlayer.prototype,{buildprogress:function(player,controls,layers,media){var handleMouseMove,updateSlider,restartPlayer,t=this,mouseIsDown=!1,mouseIsOver=!1,lastKeyPressTime=0,startedPaused=!1,autoRewindInitial=player.options.autoRewind,tooltip=(t.options.progressHelpText?t.options.progressHelpText:mejs.i18n.t("mejs.time-help-text"),player.options.enableProgressTooltip?'00:00':"");$('
'+tooltip+"
").appendTo(controls),controls.find(".mejs-time-buffering").hide(),t.total=controls.find(".mejs-time-total"),t.loaded=controls.find(".mejs-time-loaded"),t.current=controls.find(".mejs-time-current"),t.handle=controls.find(".mejs-time-handle"),t.timefloat=controls.find(".mejs-time-float"),t.timefloatcurrent=controls.find(".mejs-time-float-current"),t.slider=controls.find(".mejs-time-slider"),handleMouseMove=function(e){var x,offset=t.total.offset(),width=t.total.width(),percentage=0,newTime=0,pos=0;x=e.originalEvent&&e.originalEvent.changedTouches?e.originalEvent.changedTouches[0].pageX:e.changedTouches?e.changedTouches[0].pageX:e.pageX,media.duration&&(xwidth+offset.left&&(x=width+offset.left),pos=x-offset.left,percentage=pos/width,newTime=.02>=percentage?0:percentage*media.duration,mouseIsDown&&newTime!==media.currentTime&&media.setCurrentTime(newTime),mejs.MediaFeatures.hasTouch||(t.timefloat.css("left",pos),t.timefloatcurrent.html(mejs.Utility.secondsToTimeCode(newTime,player.options)),t.timefloat.show()))},updateSlider=function(e){var seconds=media.currentTime,timeSliderText=mejs.i18n.t("mejs.time-slider"),time=mejs.Utility.secondsToTimeCode(seconds,player.options),duration=media.duration;t.slider.attr({"aria-label":timeSliderText,"aria-valuemin":0,"aria-valuemax":duration,"aria-valuenow":seconds,"aria-valuetext":time,role:"slider",tabindex:0})},restartPlayer=function(){var now=new Date;now-lastKeyPressTime>=1e3&&media.play()},t.slider.bind("focus",function(e){player.options.autoRewind=!1}),t.slider.bind("blur",function(e){player.options.autoRewind=autoRewindInitial}),t.slider.bind("keydown",function(e){new Date-lastKeyPressTime>=1e3&&(startedPaused=media.paused);var keyCode=e.keyCode,duration=media.duration,seekTime=media.currentTime,seekForward=player.options.defaultSeekForwardInterval(media),seekBackward=player.options.defaultSeekBackwardInterval(media);switch(keyCode){case 37:case 40:seekTime-=seekBackward;break;case 39:case 38:seekTime+=seekForward;break;case 36:seekTime=0;break;case 35:seekTime=duration;break;case 32:case 13:return void(media.paused?media.play():media.pause());default:return}return seekTime=0>seekTime?0:seekTime>=duration?duration:Math.floor(seekTime),lastKeyPressTime=new Date,startedPaused||media.pause(),seekTime0&&target.buffered.end&&target.duration?percent=target.buffered.end(target.buffered.length-1)/target.duration:target&&void 0!==target.bytesTotal&&target.bytesTotal>0&&void 0!==target.bufferedBytes?percent=target.bufferedBytes/target.bytesTotal:e&&e.lengthComputable&&0!==e.total&&(percent=e.loaded/e.total),null!==percent&&(percent=Math.min(1,Math.max(0,percent)),t.loaded&&t.total&&t.loaded.width(t.total.width()*percent))},setCurrentRail:function(){var newWidth,handlePos,t=this;void 0!==t.media.currentTime&&t.media.duration&&t.total&&t.handle&&(newWidth=Math.round(t.total.width()*t.media.currentTime/t.media.duration),handlePos=newWidth-Math.round(t.handle.outerWidth(!0)/2),t.current.width(newWidth),t.handle.css("left",handlePos))}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{duration:-1,timeAndDurationSeparator:" | "}),$.extend(MediaElementPlayer.prototype,{buildcurrent:function(player,controls,layers,media){var t=this;$('
'+mejs.Utility.secondsToTimeCode(0,player.options)+"
").appendTo(controls),t.currenttime=t.controls.find(".mejs-currenttime"),media.addEventListener("timeupdate",function(){t.controlsAreVisible&&player.updateCurrent()},!1)},buildduration:function(player,controls,layers,media){var t=this;controls.children().last().find(".mejs-currenttime").length>0?$(t.options.timeAndDurationSeparator+''+mejs.Utility.secondsToTimeCode(t.options.duration,t.options)+"").appendTo(controls.find(".mejs-time")):(controls.find(".mejs-currenttime").parent().addClass("mejs-currenttime-container"),$('
'+mejs.Utility.secondsToTimeCode(t.options.duration,t.options)+"
").appendTo(controls)),t.durationD=t.controls.find(".mejs-duration"),media.addEventListener("timeupdate",function(){t.controlsAreVisible&&player.updateDuration()},!1)},updateCurrent:function(){var t=this,currentTime=t.media.currentTime;isNaN(currentTime)&&(currentTime=0),t.currenttime&&t.currenttime.html(mejs.Utility.secondsToTimeCode(currentTime,t.options))},updateDuration:function(){var t=this,duration=t.media.duration;t.options.duration>0&&(duration=t.options.duration),isNaN(duration)&&(duration=0),t.container.toggleClass("mejs-long-video",duration>3600),t.durationD&&duration>0&&t.durationD.html(mejs.Utility.secondsToTimeCode(duration,t.options))}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{muteText:mejs.i18n.t("mejs.mute-toggle"),allyVolumeControlText:mejs.i18n.t("mejs.volume-help-text"),hideVolumeOnTouchDevices:!0,audioVolume:"horizontal",videoVolume:"vertical"}),$.extend(MediaElementPlayer.prototype,{buildvolume:function(player,controls,layers,media){var t,mode,mute,volumeSlider,volumeTotal,volumeCurrent,volumeHandle,positionVolumeHandle,handleVolumeMove,mouseIsDown,mouseIsOver,updateVolumeSlider;(mejs.MediaFeatures.isAndroid||mejs.MediaFeatures.isiOS)&&this.options.hideVolumeOnTouchDevices||(t=this,mode=t.isVideo?t.options.videoVolume:t.options.audioVolume,mute="horizontal"==mode?$('
'+t.options.allyVolumeControlText+'
').appendTo(controls):$('').appendTo(controls),volumeSlider=t.container.find(".mejs-volume-slider, .mejs-horizontal-volume-slider"),volumeTotal=t.container.find(".mejs-volume-total, .mejs-horizontal-volume-total"),volumeCurrent=t.container.find(".mejs-volume-current, .mejs-horizontal-volume-current"),volumeHandle=t.container.find(".mejs-volume-handle, .mejs-horizontal-volume-handle"),positionVolumeHandle=function(volume,secondTry){var totalPosition,totalHeight,newTop,totalWidth,newLeft;return volumeSlider.is(":visible")||"undefined"!=typeof secondTry?(volume=Math.max(0,volume),volume=Math.min(volume,1),0===volume?(mute.removeClass("mejs-mute").addClass("mejs-unmute"),mute.children("button").attr("title",mejs.i18n.t("mejs.unmute")).attr("aria-label",mejs.i18n.t("mejs.unmute"))):(mute.removeClass("mejs-unmute").addClass("mejs-mute"),mute.children("button").attr("title",mejs.i18n.t("mejs.mute")).attr("aria-label",mejs.i18n.t("mejs.mute"))),totalPosition=volumeTotal.position(),void("vertical"==mode?(totalHeight=volumeTotal.height(),newTop=totalHeight-totalHeight*volume,volumeHandle.css("top",Math.round(totalPosition.top+newTop-volumeHandle.height()/2)),volumeCurrent.height(totalHeight-newTop),volumeCurrent.css("top",totalPosition.top+newTop)):(totalWidth=volumeTotal.width(),newLeft=totalWidth*volume,volumeHandle.css("left",Math.round(totalPosition.left+newLeft-volumeHandle.width()/2)),volumeCurrent.width(Math.round(newLeft))))):(volumeSlider.show(),positionVolumeHandle(volume,!0),void volumeSlider.hide())},handleVolumeMove=function(e){var railHeight,newY,railWidth,newX,volume=null,totalOffset=volumeTotal.offset();if("vertical"===mode){if(railHeight=volumeTotal.height(),newY=e.pageY-totalOffset.top,volume=(railHeight-newY)/railHeight,0===totalOffset.top||0===totalOffset.left)return}else railWidth=volumeTotal.width(),newX=e.pageX-totalOffset.left,volume=newX/railWidth;volume=Math.max(0,volume),volume=Math.min(volume,1),positionVolumeHandle(volume),0===volume?media.setMuted(!0):media.setMuted(!1),media.setVolume(volume)},mouseIsDown=!1,mouseIsOver=!1,mute.hover(function(){volumeSlider.show(),mouseIsOver=!0},function(){mouseIsOver=!1,mouseIsDown||"vertical"!=mode||volumeSlider.hide()}),updateVolumeSlider=function(e){var volume=Math.floor(100*media.volume);volumeSlider.attr({"aria-label":mejs.i18n.t("mejs.volume-slider"),"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":volume,"aria-valuetext":volume+"%",role:"slider",tabindex:0})},volumeSlider.bind("mouseover",function(){mouseIsOver=!0}).bind("mousedown",function(e){return handleVolumeMove(e),t.globalBind("mousemove.vol",function(e){handleVolumeMove(e)}),t.globalBind("mouseup.vol",function(){mouseIsDown=!1,t.globalUnbind(".vol"),mouseIsOver||"vertical"!=mode||volumeSlider.hide()}),mouseIsDown=!0,!1}).bind("keydown",function(e){var keyCode=e.keyCode,volume=media.volume;switch(keyCode){case 38:volume=Math.min(volume+.1,1);break;case 40:volume=Math.max(0,volume-.1);break;default:return!0}return mouseIsDown=!1,positionVolumeHandle(volume),media.setVolume(volume),!1}),mute.find("button").click(function(){media.setMuted(!media.muted)}),mute.find("button").bind("focus",function(){volumeSlider.show()}),media.addEventListener("volumechange",function(e){mouseIsDown||(media.muted?(positionVolumeHandle(0),mute.removeClass("mejs-mute").addClass("mejs-unmute")):(positionVolumeHandle(media.volume),mute.removeClass("mejs-unmute").addClass("mejs-mute"))),updateVolumeSlider(e)},!1),0===player.options.startVolume&&media.setMuted(!0),"native"===media.pluginType&&media.setVolume(player.options.startVolume),t.container.on("controlsresize",function(){media.muted?(positionVolumeHandle(0),mute.removeClass("mejs-mute").addClass("mejs-unmute")):(positionVolumeHandle(media.volume),mute.removeClass("mejs-unmute").addClass("mejs-mute"))}))}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{usePluginFullScreen:!0,newWindowCallback:function(){return""},fullscreenText:""}),$.extend(MediaElementPlayer.prototype,{isFullScreen:!1,isNativeFullScreen:!1,isInIframe:!1,fullscreenMode:"",buildfullscreen:function(player,controls,layers,media){var t,hideTimeout,fullscreenTitle,fullscreenBtn,fullscreenChanged;player.isVideo&&(player.isInIframe=window.location!=window.parent.location,media.addEventListener("loadstart",function(){player.detectFullscreenMode()}),t=this,hideTimeout=null,fullscreenTitle=t.options.fullscreenText?t.options.fullscreenText:mejs.i18n.t("mejs.fullscreen"),fullscreenBtn=$('
').appendTo(controls).on("click",function(){var isFullScreen=mejs.MediaFeatures.hasTrueNativeFullScreen&&mejs.MediaFeatures.isFullScreen()||player.isFullScreen;isFullScreen?player.exitFullScreen():player.enterFullScreen()}).on("mouseover",function(){if("plugin-hover"==t.fullscreenMode){null!==hideTimeout&&(clearTimeout(hideTimeout),delete hideTimeout);var buttonPos=fullscreenBtn.offset(),containerPos=player.container.offset();media.positionFullscreenButton(buttonPos.left-containerPos.left,buttonPos.top-containerPos.top,!0)}}).on("mouseout",function(){"plugin-hover"==t.fullscreenMode&&(null!==hideTimeout&&(clearTimeout(hideTimeout),delete hideTimeout),hideTimeout=setTimeout(function(){media.hideFullscreenButton()},1500))}),player.fullscreenBtn=fullscreenBtn,t.globalBind("keydown",function(e){27==e.keyCode&&(mejs.MediaFeatures.hasTrueNativeFullScreen&&mejs.MediaFeatures.isFullScreen()||t.isFullScreen)&&player.exitFullScreen()}),t.normalHeight=0,t.normalWidth=0,mejs.MediaFeatures.hasTrueNativeFullScreen&&(fullscreenChanged=function(e){player.isFullScreen&&(mejs.MediaFeatures.isFullScreen()?(player.isNativeFullScreen=!0,player.setControlsSize()):(player.isNativeFullScreen=!1,player.exitFullScreen()))},player.globalBind(mejs.MediaFeatures.fullScreenEventName,fullscreenChanged)))},detectFullscreenMode:function(){var t=this,mode="",features=mejs.MediaFeatures;return features.hasTrueNativeFullScreen&&"native"===t.media.pluginType?mode="native-native":features.hasTrueNativeFullScreen&&"native"!==t.media.pluginType&&!features.hasFirefoxPluginMovingProblem?mode="plugin-native":t.usePluginFullScreen?mejs.MediaFeatures.supportsPointerEvents?(mode="plugin-click",t.createPluginClickThrough()):mode="plugin-hover":mode="fullwindow",t.fullscreenMode=mode,mode},isPluginClickThroughCreated:!1,createPluginClickThrough:function(){var fullscreenIsDisabled,restoreControls,hoverDivs,hoverDivNames,i,len,positionHoverDivs,t=this;if(!t.isPluginClickThroughCreated){for(fullscreenIsDisabled=!1,restoreControls=function(){if(fullscreenIsDisabled){for(var i in hoverDivs)hoverDivs[i].hide();t.fullscreenBtn.css("pointer-events",""),t.controls.css("pointer-events",""),t.media.removeEventListener("click",t.clickToPlayPauseCallback),fullscreenIsDisabled=!1}},hoverDivs={},hoverDivNames=["top","left","right","bottom"],positionHoverDivs=function(){var fullScreenBtnOffsetLeft=fullscreenBtn.offset().left-t.container.offset().left,fullScreenBtnOffsetTop=fullscreenBtn.offset().top-t.container.offset().top,fullScreenBtnWidth=fullscreenBtn.outerWidth(!0),fullScreenBtnHeight=fullscreenBtn.outerHeight(!0),containerWidth=t.container.width(),containerHeight=t.container.height();for(i in hoverDivs)hoverDivs[i].css({position:"absolute",top:0,left:0});hoverDivs.top.width(containerWidth).height(fullScreenBtnOffsetTop),hoverDivs.left.width(fullScreenBtnOffsetLeft).height(fullScreenBtnHeight).css({top:fullScreenBtnOffsetTop}),hoverDivs.right.width(containerWidth-fullScreenBtnOffsetLeft-fullScreenBtnWidth).height(fullScreenBtnHeight).css({top:fullScreenBtnOffsetTop,left:fullScreenBtnOffsetLeft+fullScreenBtnWidth}),hoverDivs.bottom.width(containerWidth).height(containerHeight-fullScreenBtnHeight-fullScreenBtnOffsetTop).css({top:fullScreenBtnOffsetTop+fullScreenBtnHeight})},t.globalBind("resize",function(){positionHoverDivs()}),i=0,len=hoverDivNames.length;len>i;i++)hoverDivs[hoverDivNames[i]]=$('
').appendTo(t.container).mouseover(restoreControls).hide();fullscreenBtn.on("mouseover",function(){if(!t.isFullScreen){var buttonPos=fullscreenBtn.offset(),containerPos=player.container.offset();media.positionFullscreenButton(buttonPos.left-containerPos.left,buttonPos.top-containerPos.top,!1),t.fullscreenBtn.css("pointer-events","none"),t.controls.css("pointer-events","none"),t.media.addEventListener("click",t.clickToPlayPauseCallback);for(i in hoverDivs)hoverDivs[i].show();positionHoverDivs(),fullscreenIsDisabled=!0}}),media.addEventListener("fullscreenchange",function(e){t.isFullScreen=!t.isFullScreen,t.isFullScreen?t.media.removeEventListener("click",t.clickToPlayPauseCallback):t.media.addEventListener("click",t.clickToPlayPauseCallback),restoreControls()}),t.globalBind("mousemove",function(e){if(fullscreenIsDisabled){var fullscreenBtnPos=fullscreenBtn.offset();(e.pageYfullscreenBtnPos.top+fullscreenBtn.outerHeight(!0)||e.pageXfullscreenBtnPos.left+fullscreenBtn.outerWidth(!0))&&(fullscreenBtn.css("pointer-events",""),t.controls.css("pointer-events",""),fullscreenIsDisabled=!1)}}),t.isPluginClickThroughCreated=!0}},cleanfullscreen:function(player){player.exitFullScreen()},containerSizeTimeout:null,enterFullScreen:function(){var zoomFactor,t=this;return mejs.MediaFeatures.isiOS&&mejs.MediaFeatures.hasiOSFullScreen&&"function"==typeof t.media.webkitEnterFullscreen?void t.media.webkitEnterFullscreen():($(document.documentElement).addClass("mejs-fullscreen"),t.normalHeight=t.container.height(),t.normalWidth=t.container.width(),"native-native"===t.fullscreenMode||"plugin-native"===t.fullscreenMode?(mejs.MediaFeatures.requestFullScreen(t.container[0]),t.isInIframe&&setTimeout(function checkFullscreen(){if(t.isNativeFullScreen){var percentErrorMargin=.002,windowWidth=$(window).width(),screenWidth=screen.width,absDiff=Math.abs(screenWidth-windowWidth),marginError=screenWidth*percentErrorMargin;absDiff>marginError?t.exitFullScreen():setTimeout(checkFullscreen,500)}},1e3)):"fullwindow"==t.fullscreeMode,t.container.addClass("mejs-container-fullscreen").width("100%").height("100%"),t.containerSizeTimeout=setTimeout(function(){t.container.css({width:"100%",height:"100%"}),t.setControlsSize()},500),"native"===t.media.pluginType?t.$media.width("100%").height("100%"):(t.container.find(".mejs-shim").width("100%").height("100%"),setTimeout(function(){var win=$(window),winW=win.width(),winH=win.height();t.media.setVideoSize(winW,winH)},500)),t.layers.children("div").width("100%").height("100%"),t.fullscreenBtn&&t.fullscreenBtn.removeClass("mejs-fullscreen").addClass("mejs-unfullscreen"),t.setControlsSize(),t.isFullScreen=!0,zoomFactor=Math.min(screen.width/t.width,screen.height/t.height),t.container.find(".mejs-captions-text").css("font-size",100*zoomFactor+"%"),t.container.find(".mejs-captions-text").css("line-height","normal"),t.container.find(".mejs-captions-position").css("bottom","45px"),void t.container.trigger("enteredfullscreen"))},exitFullScreen:function(){var t=this;clearTimeout(t.containerSizeTimeout),mejs.MediaFeatures.hasTrueNativeFullScreen&&(mejs.MediaFeatures.isFullScreen()||t.isFullScreen)&&mejs.MediaFeatures.cancelFullScreen(),$(document.documentElement).removeClass("mejs-fullscreen"),t.container.removeClass("mejs-container-fullscreen").width(t.normalWidth).height(t.normalHeight),"native"===t.media.pluginType?t.$media.width(t.normalWidth).height(t.normalHeight):(t.container.find(".mejs-shim").width(t.normalWidth).height(t.normalHeight),t.media.setVideoSize(t.normalWidth,t.normalHeight)),t.layers.children("div").width(t.normalWidth).height(t.normalHeight),t.fullscreenBtn.removeClass("mejs-unfullscreen").addClass("mejs-fullscreen"),t.setControlsSize(),t.isFullScreen=!1,t.container.find(".mejs-captions-text").css("font-size",""),t.container.find(".mejs-captions-text").css("line-height",""),t.container.find(".mejs-captions-position").css("bottom",""),t.container.trigger("exitedfullscreen")}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{speeds:["2.00","1.50","1.25","1.00","0.75"],defaultSpeed:"1.00",speedChar:"x"}),$.extend(MediaElementPlayer.prototype,{buildspeed:function(player,controls,layers,media){var speedButton,speedSelector,playbackSpeed,inputId,speeds,defaultInArray,i,len,s,getSpeedNameFromValue,html,t=this;if("native"==t.media.pluginType){for(speedButton=null,speedSelector=null,playbackSpeed=null,inputId=null,speeds=[],defaultInArray=!1,i=0,len=t.options.speeds.length;len>i;i++)s=t.options.speeds[i],"string"==typeof s?(speeds.push({name:s+t.options.speedChar,value:s}),s===t.options.defaultSpeed&&(defaultInArray=!0)):(speeds.push(s),s.value===t.options.defaultSpeed&&(defaultInArray=!0));for(defaultInArray||speeds.push({name:t.options.defaultSpeed+t.options.speedChar,value:t.options.defaultSpeed}),speeds.sort(function(a,b){return parseFloat(b.value)-parseFloat(a.value)}),getSpeedNameFromValue=function(value){for(i=0,len=speeds.length;len>i;i++)if(speeds[i].value===value)return speeds[i].name},html='
    ',i=0,il=speeds.length;i";html+="
",speedButton=$(html).appendTo(controls),speedSelector=speedButton.find(".mejs-speed-selector"),playbackSpeed=t.options.defaultSpeed,media.addEventListener("loadedmetadata",function(e){playbackSpeed&&(media.playbackRate=parseFloat(playbackSpeed))},!0),speedSelector.on("click",'input[type="radio"]',function(){var newSpeed=$(this).attr("value");playbackSpeed=newSpeed,media.playbackRate=parseFloat(newSpeed),speedButton.find("button").html(getSpeedNameFromValue(newSpeed)),speedButton.find(".mejs-speed-selected").removeClass("mejs-speed-selected"),speedButton.find('input[type="radio"]:checked').next().addClass("mejs-speed-selected")}),speedButton.one("mouseenter focusin",function(){speedSelector.height(speedButton.find(".mejs-speed-selector ul").outerHeight(!0)+speedButton.find(".mejs-speed-translations").outerHeight(!0)).css("top",-1*speedSelector.height()+"px")})}}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{startLanguage:"",tracksText:"",tracksAriaLive:!1,hideCaptionsButtonWhenEmpty:!0,toggleCaptionsButtonWhenOnlyOne:!1,slidesSelector:""}),$.extend(MediaElementPlayer.prototype,{hasChapters:!1,cleartracks:function(player,controls,layers,media){player&&(player.captions&&player.captions.remove(),player.chapters&&player.chapters.remove(),player.captionsText&&player.captionsText.remove(),player.captionsButton&&player.captionsButton.remove())},buildtracks:function(player,controls,layers,media){var t,attr,tracksTitle,i,kind,subtitleCount;if(0!==player.tracks.length){if(t=this,attr=t.options.tracksAriaLive?'role="log" aria-live="assertive" aria-atomic="false"':"",tracksTitle=t.options.tracksText?t.options.tracksText:mejs.i18n.t("mejs.captions-subtitles"),t.domNode.textTracks)for(i=t.domNode.textTracks.length-1;i>=0;i--)t.domNode.textTracks[i].mode="hidden";for(t.cleartracks(player,controls,layers,media),player.chapters=$('
').prependTo(layers).hide(),player.captions=$('
').prependTo(layers).hide(),player.captionsText=player.captions.find(".mejs-captions-text"),player.captionsButton=$('
").appendTo(controls),subtitleCount=0,i=0;i0&&t.displayChapters(track)},!1),"slides"==track.kind&&t.setupSlides(track)},error:function(){t.removeTrackButton(track.srclang),t.loadNextTrack()}})},enableTrackButton:function(lang,label){var t=this;""===label&&(label=mejs.language.codes[lang]||lang),t.captionsButton.find("input[value="+lang+"]").prop("disabled",!1).siblings("label").html(label),t.options.startLanguage==lang&&$("#"+t.id+"_captions_"+lang).prop("checked",!0).trigger("click"),t.adjustLanguageBox()},removeTrackButton:function(lang){var t=this;t.captionsButton.find("input[value="+lang+"]").closest("li").remove(),t.adjustLanguageBox()},addTrackButton:function(lang,label){var t=this;""===label&&(label=mejs.language.codes[lang]||lang),t.captionsButton.find("ul").append($('
  • ")),t.adjustLanguageBox(),t.container.find(".mejs-captions-translations option[value="+lang+"]").remove()},adjustLanguageBox:function(){var t=this;t.captionsButton.find(".mejs-captions-selector").height(t.captionsButton.find(".mejs-captions-selector ul").outerHeight(!0)+t.captionsButton.find(".mejs-captions-translations").outerHeight(!0))},checkForTracks:function(){var i,kind,t=this,hasSubtitles=!1;if(t.options.hideCaptionsButtonWhenEmpty){for(i=0;i=track.entries.times[i].start&&t.media.currentTime<=track.entries.times[i].stop)return t.captionsText.html(track.entries.text[i]).attr("class","mejs-captions-text "+(track.entries.times[i].identifier||"")),void t.captions.show().height(0);t.captions.hide()}else t.captions.hide()}},setupSlides:function(track){var t=this;t.slides=track,t.slides.entries.imgs=[t.slides.entries.text.length],t.showSlide(0)},showSlide:function(index){if("undefined"!=typeof this.tracks&&"undefined"!=typeof this.slidesContainer){var t=this,url=t.slides.entries.text[index],img=t.slides.entries.imgs[index];"undefined"==typeof img||"undefined"==typeof img.fadeIn?t.slides.entries.imgs[index]=img=$('').on("load",function(){img.appendTo(t.slidesContainer).hide().fadeIn().siblings(":visible").fadeOut()}):img.is(":visible")||img.is(":animated")||img.fadeIn().siblings(":visible").fadeOut()}},displaySlides:function(){if("undefined"!=typeof this.slides){var i,t=this,slides=t.slides;for(i=0;i=slides.entries.times[i].start&&t.media.currentTime<=slides.entries.times[i].stop)return void t.showSlide(i)}},displayChapters:function(){var i,t=this;for(i=0;i100||i==chapters.entries.times.length-1&&100>percent+usedPercent)&&(percent=100-usedPercent),t.chapters.append($('
    '+chapters.entries.text[i]+''+mejs.Utility.secondsToTimeCode(chapters.entries.times[i].start,t.options)+"–"+mejs.Utility.secondsToTimeCode(chapters.entries.times[i].stop,t.options)+"
    ")),usedPercent+=percent;t.chapters.find("div.mejs-chapter").click(function(){t.media.setCurrentTime(parseFloat($(this).attr("rel"))),t.media.paused&&t.media.play()}),t.chapters.show()}}),mejs.language={codes:{af:"Afrikaans",sq:"Albanian",ar:"Arabic",be:"Belarusian",bg:"Bulgarian",ca:"Catalan",zh:"Chinese","zh-cn":"Chinese Simplified","zh-tw":"Chinese Traditional",hr:"Croatian",cs:"Czech",da:"Danish",nl:"Dutch",en:"English",et:"Estonian",fl:"Filipino",fi:"Finnish",fr:"French",gl:"Galician",de:"German",el:"Greek",ht:"Haitian Creole",iw:"Hebrew",hi:"Hindi",hu:"Hungarian",is:"Icelandic",id:"Indonesian",ga:"Irish",it:"Italian",ja:"Japanese",ko:"Korean",lv:"Latvian",lt:"Lithuanian",mk:"Macedonian",ms:"Malay",mt:"Maltese",no:"Norwegian",fa:"Persian",pl:"Polish",pt:"Portuguese",ro:"Romanian",ru:"Russian",sr:"Serbian",sk:"Slovak",sl:"Slovenian",es:"Spanish",sw:"Swahili",sv:"Swedish",tl:"Tagalog",th:"Thai",tr:"Turkish",uk:"Ukrainian",vi:"Vietnamese",cy:"Welsh",yi:"Yiddish"}},mejs.TrackFormatParser={webvtt:{pattern_timecode:/^((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{1,3})?) --\> ((?:[0-9]{1,2}:)?[0-9]{2}:[0-9]{2}([,.][0-9]{3})?)(.*)$/,parse:function(trackText){for(var timecode,text,identifier,i=0,lines=mejs.TrackFormatParser.split2(trackText,/\r?\n/),entries={text:[],times:[]};i=0&&""!==lines[i-1]&&(identifier=lines[i-1]),i++,text=lines[i],i++;""!==lines[i]&&i$1"),entries.text.push(text),entries.times.push({identifier:identifier,start:0===mejs.Utility.convertSMPTEtoSeconds(timecode[1])?.2:mejs.Utility.convertSMPTEtoSeconds(timecode[1]),stop:mejs.Utility.convertSMPTEtoSeconds(timecode[3]),settings:timecode[5]})}identifier=""}return entries}},dfxp:{parse:function(trackText){var i,container,lines,styleNode,styles,text,entries,attributes,style,_temp_times,_style;if(trackText=$(trackText).filter("tt"),i=0,container=trackText.children("div").eq(0),lines=container.find("p"),styleNode=trackText.find("#"+container.attr("style")),entries={text:[],times:[]},styleNode.length&&(attributes=styleNode.removeAttr("id").get(0).attributes,attributes.length))for(styles={},i=0;i$1"),entries.text.push(text)}return entries}},split2:function(text,regex){return text.split(regex)}},3!="x\n\ny".split(/\n/gi).length&&(mejs.TrackFormatParser.split2=function(text,regex){var i,parts=[],chunk="";for(i=0;i
    ').appendTo(controls).hover(function(){clearTimeout(hoverTimeout),player.showSourcechooserSelector()},function(){$(this);hoverTimeout=setTimeout(function(){player.hideSourcechooserSelector()},500)}).on("keydown",function(e){var keyCode=e.keyCode;switch(keyCode){case 32:mejs.MediaFeatures.isFirefox||player.showSourcechooserSelector(),$(this).find(".mejs-sourcechooser-selector").find("input[type=radio]:checked").first().focus();break;case 13:player.showSourcechooserSelector(),$(this).find(".mejs-sourcechooser-selector").find("input[type=radio]:checked").first().focus();break;case 27:player.hideSourcechooserSelector(),$(this).find("button").focus();break;default:return!0}}).on("focusout",mejs.Utility.debounce(function(e){setTimeout(function(){var parent=$(document.activeElement).closest(".mejs-sourcechooser-selector");parent.length||player.hideSourcechooserSelector()},0)},100)).delegate("input[type=radio]","click",function(){var src,currentTime,paused,canPlayAfterSourceSwitchHandler;$(this).attr("aria-selected",!0).attr("checked","checked"),$(this).closest(".mejs-sourcechooser-selector").find("input[type=radio]").not(this).attr("aria-selected","false").removeAttr("checked"),src=this.value,media.currentSrc!=src&&(currentTime=media.currentTime,paused=media.paused,media.pause(),media.setSrc(src),media.addEventListener("loadedmetadata",function(e){media.currentTime=currentTime},!0),canPlayAfterSourceSwitchHandler=function(e){paused||media.play(),media.removeEventListener("canplay",canPlayAfterSourceSwitchHandler,!0)},media.addEventListener("canplay",canPlayAfterSourceSwitchHandler,!0),media.load())}).delegate("button","click",function(e){$(this).siblings(".mejs-sourcechooser-selector").hasClass("mejs-offscreen")?(player.showSourcechooserSelector(),$(this).siblings(".mejs-sourcechooser-selector").find("input[type=radio]:checked").first().focus()):player.hideSourcechooserSelector()});for(i in this.node.children)src=this.node.children[i],"SOURCE"!==src.nodeName||"probably"!=media.canPlayType(src.type)&&"maybe"!=media.canPlayType(src.type)||player.addSourceButton(src.src,src.title,src.type,media.src==src.src)},addSourceButton:function(src,label,type,isCurrent){var t=this;""!==label&&void 0!=label||(label=src),type=type.split("/")[1],t.sourcechooserButton.find("ul").append($('
  • ")),t.adjustSourcechooserBox()},adjustSourcechooserBox:function(){var t=this;t.sourcechooserButton.find(".mejs-sourcechooser-selector").height(t.sourcechooserButton.find(".mejs-sourcechooser-selector ul").outerHeight(!0))},hideSourcechooserSelector:function(){this.sourcechooserButton.find(".mejs-sourcechooser-selector").addClass("mejs-offscreen").attr("aria-expanded","false").attr("aria-hidden","true").find("input[type=radio]").attr("tabindex","-1")},showSourcechooserSelector:function(){this.sourcechooserButton.find(".mejs-sourcechooser-selector").removeClass("mejs-offscreen").attr("aria-expanded","true").attr("aria-hidden","false").find("input[type=radio]").attr("tabindex","0")}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{contextMenuItems:[{render:function(player){return"undefined"==typeof player.enterFullScreen?null:player.isFullScreen?mejs.i18n.t("mejs.fullscreen-off"):mejs.i18n.t("mejs.fullscreen-on")},click:function(player){player.isFullScreen?player.exitFullScreen():player.enterFullScreen()}},{render:function(player){return player.media.muted?mejs.i18n.t("mejs.unmute"):mejs.i18n.t("mejs.mute")},click:function(player){player.media.muted?player.setMuted(!1):player.setMuted(!0)}},{isSeparator:!0},{render:function(player){return mejs.i18n.t("mejs.download-video")},click:function(player){window.location.href=player.media.currentSrc}}]}),$.extend(MediaElementPlayer.prototype,{buildcontextmenu:function(player,controls,layers,media){player.contextMenu=$('
    ').appendTo($("body")).hide(),player.container.bind("contextmenu",function(e){return player.isContextMenuEnabled?(e.preventDefault(),player.renderContextMenu(e.clientX-1,e.clientY-1),!1):void 0}),player.container.bind("click",function(){player.contextMenu.hide()}),player.contextMenu.bind("mouseleave",function(){player.startContextMenuTimer()})},cleancontextmenu:function(player){player.contextMenu.remove()},isContextMenuEnabled:!0,enableContextMenu:function(){this.isContextMenuEnabled=!0},disableContextMenu:function(){this.isContextMenuEnabled=!1},contextMenuTimeout:null,startContextMenuTimer:function(){var t=this;t.killContextMenuTimer(),t.contextMenuTimer=setTimeout(function(){t.hideContextMenu(),t.killContextMenuTimer()},750)},killContextMenuTimer:function(){var timer=this.contextMenuTimer;null!=timer&&(clearTimeout(timer),delete timer,timer=null)},hideContextMenu:function(){this.contextMenu.hide()},renderContextMenu:function(x,y){var i,il,rendered,t=this,html="",items=t.options.contextMenuItems;for(i=0,il=items.length;il>i;i++)items[i].isSeparator?html+='
    ':(rendered=items[i].render(t),null!=rendered&&(html+='
    '+rendered+"
    "));t.contextMenu.empty().append($(html)).css({top:y,left:x}).show(),t.contextMenu.find(".mejs-contextmenu-item").each(function(){var $dom=$(this),itemIndex=parseInt($dom.data("itemindex"),10),item=t.options.contextMenuItems[itemIndex];"undefined"!=typeof item.show&&item.show($dom,t),$dom.click(function(){"undefined"!=typeof item.click&&item.click(t),t.contextMenu.hide()})}),setTimeout(function(){t.killControlsTimer("rev3")},100)}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{skipBackInterval:30,skipBackText:""}),$.extend(MediaElementPlayer.prototype,{buildskipback:function(player,controls,layers,media){var t=this,defaultTitle=mejs.i18n.t("mejs.time-skip-back",t.options.skipBackInterval),skipTitle=t.options.skipBackText?t.options.skipBackText:defaultTitle;$('
    ").appendTo(controls).click(function(){media.setCurrentTime(Math.max(media.currentTime-t.options.skipBackInterval,0)),$(this).find("button").blur()})}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{postrollCloseText:""}),$.extend(MediaElementPlayer.prototype,{buildpostroll:function(player,controls,layers,media){var t=this,postrollTitle=t.options.postrollCloseText?t.options.postrollCloseText:mejs.i18n.t("mejs.close"),postrollLink=t.container.find('link[rel="postroll"]').attr("href");"undefined"!=typeof postrollLink&&(player.postroll=$('').prependTo(layers).hide(),t.media.addEventListener("ended",function(e){$.ajax({dataType:"html",url:postrollLink,success:function(data,textStatus){layers.find(".mejs-postroll-layer-content").html(data)}}),player.postroll.show()},!1))}})}(mejs.$),function($){$.extend(mejs.MepDefaults,{markerColor:"#E9BC3D",markers:[],markerCallback:function(){}}),$.extend(MediaElementPlayer.prototype,{buildmarkers:function(player,controls,layers,media){var i=0,currentPos=-1,currentMarker=-1,lastPlayPos=-1,lastMarkerCallBack=-1;for(i=0;i');media.addEventListener("durationchange",function(e){player.setmarkers(controls)}),media.addEventListener("timeupdate",function(e){for(currentPos=Math.floor(media.currentTime),lastPlayPos>currentPos?lastMarkerCallBack>currentPos&&(lastMarkerCallBack=-1):lastPlayPos=currentPos,i=0;i=0&&(left=100*Math.floor(t.options.markers[i])/t.media.duration,$(controls.find(".mejs-time-marker")[i]).css({width:"1px",left:left+"%",background:t.options.markerColor}))}})}(mejs.$),Cog=function(document,$){"use strict";var defaults,Type,ICore,IEventManager,IModuleManager,ITaskQueues,LogLevel,Logger,LoggerFactoryConfig,ILoggerFactory,LoggerFactory,Collection,Counter,ElementsUtil,ObjectSplitter,WrapperFactory,DependencyGraphNode,DependencyGraphItemAdapter,DependencyGraph,EventHandler,EventHandlerMetadataFactory,EventDispatcher,ITaskQueue,CompositeTaskQueue,Task,TaskQueue,TaskRunner,ObjectIterator,AsyncObjectIteratorContext,AsyncObjectIterator,SelectElementsStrategy,SelectElementsDefaultStrategy,SelectElementsPrefetchStrategy,DynamicModuleTaskQueue,FinalizeModulesTask,FinalizeModulesTaskQueue,InitModulesTask,InitModulesTaskQueue,ComponentManager,StaticModule,DynamicModule,ComponentModule,DependencyGraphModuleAdapter,InitStaticModuleTask,InitStaticModuleTaskQueue,ModuleRegistry,StaticModuleRegistry,DynamicModuleRegistry,EventManager,ModuleManager,TaskQueues,Core,logger,api={};return api.component={},defaults={noOperation:$.noop,emptyArray:[],initializedClass:"initialized",initializedSelector:".initialized",globalScopeSelector:"body",modulesGroupSize:50},Type=function(){function extend(BaseType,overrides){var Type,baseTypePrototype,T,typePrototype,properties=overrides||{};return BaseType=BaseType||Object,Type=properties.constructor!=objectConstructor?properties.constructor:function(){BaseType.apply(this,arguments)},baseTypePrototype=BaseType.prototype,T=function(){},T.prototype=baseTypePrototype,typePrototype=$.extend(new T,properties),typePrototype.constructor=Type,Type.prototype=typePrototype,Type.superclass=baseTypePrototype,Type}function define(properties){return extend(null,properties)}function singleton(Type,instance){var api={};return api.instance=function(){return instance},api.superclass=Type.superclass,api}function singletonWrapper(Type){var Wrapper=extend(Type,{constructor:function(parameters){Wrapper.superclass.constructor.apply(this,parameters)}});return Wrapper}function asSingleton(Type){var api={};return api.create=function(){var Wrapper=singletonWrapper(Type);return singleton(Type,new Wrapper(arguments))},api}var objectConstructor=Object.prototype.constructor;return{define:define,extend:extend,asSingleton:asSingleton}}(),ICore=Type.define({eventManager:null,addModule:function(module){},queueInitTask:function($scope,moduleIds){},queueFinalizeTask:function($scope){},isValidModuleConfig:function(config){},isReady:function(){},whenReady:function(delegate){}}),IEventManager=Type.define({dispatcherFor:function(moduleName,eventName){}}),IModuleManager=Type.define({dependencyGraph:null,modules:null,staticModuleRegistry:null,dynamicModuleRegistry:null,add:function(module){}}),ITaskQueues=Type.define({initStaticModule:null,initDynamicModules:null,finalizeDynamicModules:null}),LogLevel={off:1,error:2,info:3,debug:4,trace:5},Logger=Type.define({level:LogLevel.off,source:null,constructor:function(source,logLevel){this.source=source,this.level=logLevel||LogLevel.off},error:function(tag){},info:function(tag){},debug:function(tag){},trace:function(tag){},isEnabled:function(logLevel){return logLevel<=this.level}}),LoggerFactoryConfig={level:LogLevel.off},ILoggerFactory=Type.define({constructor:function(config){},create:function(source,maxDepth){}}),LoggerFactory=Type.asSingleton(Type.extend(ILoggerFactory,{logger:new Logger,create:function(source,maxDepth){return this.logger}})).create().instance(),Collection=Type.define({items:null,ids:null,map:null,constructor:function(){this.items=[],this.ids=[],this.map={}},add:function(id,item){this.map[id]||(this.map[id]=item,this.ids.push(id),this.items.push(item))},count:function(){return this.items.length},get:function(id){return this.map[id]||null},has:function(id){return this.map.hasOwnProperty(id)},select:function(searchedIds){var id,i,result=new Collection,map=this.map,ids=this.filterIds(searchedIds);for(i=0;iindex&&i0?$result.add($filtered):$result},isInScope:function($scope,$element){return null!=$scope&&null!=$element&&$element.parents().is($scope)}})).create().instance(),ObjectSplitter=Type.asSingleton(Type.define({defaults:{itemsPerGroup:1},initializeGroupSize:function(itemsPerGroup){return itemsPerGroup>0?itemsPerGroup:this.defaults.itemsPerGroup},groupItems:function(items,itemsPerGroup){var key,groupSize=this.initializeGroupSize(itemsPerGroup),context=this.createContext(groupSize),group=context.group;for(key in items)items.hasOwnProperty(key)&&(group[key]=items[key],group=this.update(context));return this.flush(context),context.groups},createContext:function(groupSize){return{group:{},groups:[],counter:groupSize,groupSize:groupSize}},update:function(context){return context.counter--,context.counter<1&&(context.counter=context.groupSize,context.groups.push(context.group),context.group={}),context.group},flush:function(context){context.counter!==context.groupSize&&context.groups.push(context.group)}})).create().instance(),WrapperFactory=Type.asSingleton(Type.define({create:function(subject,exposedApi){var name,i,api={};for(i=0;i0;)node=nodes.shift(),node.resolve(),node.resolved&&(nodes.push.apply(nodes,node.unresolvedPredecessor()),result.push(node.id))}}),DependencyGraphItemAdapter=Type.define({id:function(item){},dependencies:function(item){},dependencyId:function(dependency){}}),DependencyGraph=Type.define({adapter:null,nodes:null,constructor:function(adapter){this.adapter=adapter,this.nodes={}},resolve:function(item){var result=null,node=this.getNode(this.adapter.id(item));return node.isProcessed||this.processDependencies(node,this.adapter.dependencies(item)),node.resolveIfRequired(),node.isResolved()&&(result=node.resolveAllPredecessors(),result.unshift(node.id)),result},hasNode:function(item){var node=this.nodes[this.adapter.id(item)];return node&&node.isProcessed},getNode:function(id){return null==this.nodes[id]&&(this.nodes[id]=new DependencyGraphNode(id)),this.nodes[id]},processDependencies:function(node,dependencies){var item,i;for(i=0;i-1;return index>-1&&(delete this.ids[id],this.handlers.splice(index,1)),found},dispatch:function(eventData){var handler,params,i,handlers=this.handlers.slice(0);for(i=0;ii;i++)setTimeout($.proxy(this.executeAsync,this,delegates,i))},createDelegates:function(eventData){var handler,params,i,handlers=this.handlers.slice(0),delegates=[];for(i=0;ii;i++)item=delegates[i],handler=item.handler,handler.delegate.call(handler.scope,item.params)},disposableHandler:function(handler){var delegate=handler.delegate,context=this;return function(params){delegate.call(handler.scope,params),context.removeHandler(handler.id)}},indexOfHandler:function(id){var i,handlers=this.handlers,index=-1;for(i=0;0>index&&iid&&(lowestId=id,queue=queues[i]);return queue},lastQueue:function(){var id,i,queues=this.queues,queue=null,highestId=Number.MIN_VALUE;for(i=0;ihighestId&&(highestId=id,queue=queues[i]);return queue}}),Task=Type.define({logger:LoggerFactory.create("Task"),counter:new Counter,id:null,deferred:null,promise:null,constructor:function(){this.id=this.counter.next(),this.deferred=$.Deferred(),this.promise=this.deferred.promise(),this.logger.isEnabled(LogLevel.info)&&(this.promise.done($.proxy(this.onExecuted,this)).fail($.proxy(this.onAborted,this)),this.logger.debug("created",this.id))},execute:function(){},onExecuted:function(){this.logger.debug("executed",this.id)},onAborted:function(){this.logger.debug("aborted",this.id)}}),TaskQueue=Type.extend(ITaskQueue,{logger:LoggerFactory.create("TaskQueue"),tasks:null,constructor:function(){this.tasks=[]},hasNext:function(){return this.tasks.length>0},next:function(){return this.hasNext()?this.tasks.shift():null},nextId:function(){return this.hasNext()?this.tasks[0].id:null},last:function(){return this.hasNext()?this.tasks.pop():null},lastId:function(){var tasks,id=null;return this.hasNext()&&(tasks=this.tasks,id=tasks[tasks.length-1]),id},add:function(task){var logger=this.logger;logger.debug("adding task",task.id),this.accepts(task)?(logger.debug("task accepted",task.id),this.process(task)):(logger.debug("task rejected",task.id),task.deferred.reject())},accepts:function(task){return!0},process:function(task){this.tasks.push(task)}}),TaskRunner=Type.define({logger:LoggerFactory.create("TaskRunner"), delay:0,queues:null,locked:!1,constructor:function(delay){this.queues=[],delay>0&&(this.delay=delay)},executeNext:function(){var logger=this.logger,task=this.locked?null:this.findNext();null!=task&&(this.locked=!0,logger.trace("locked"),task.promise.always($.proxy(this.unlock,this)),logger.debug("execute",task.id),this.executeAsync(task))},findNext:function(){var queue,i,queues=this.queues,task=null;for(i=0;null==task&&i=0},eachItemsGroup:function(context,groups){var group,scope;!context.isAborted()&&groups.length>0?(this.logger.trace("iterating over group"),group=groups.shift(),scope=this,setTimeout(function(){scope.items=group,AsyncObjectIterator.superclass.eachItem.call(scope,context.processItem,context).fail($.proxy(context.reject,context)),scope.eachItemsGroup(context,groups)},this.timeout)):context.resolve()}}),SelectElementsStrategy=Type.define({initializedSelector:defaults.initializedSelector,notInitializedSelector:":not("+defaults.initializedSelector+")",execute:function($scope,targetModules){return null}}),SelectElementsDefaultStrategy=Type.extend(SelectElementsStrategy,{logger:LoggerFactory.create("SelectElementsDefaultStrategy"),execute:function($scope,targetModules){this.logger.trace("executing");var selector=this.createSelector(targetModules),$elements=selector?ElementsUtil.find($scope,selector):null;return this.logger.trace("executed"),$elements&&$elements.length>0?$elements:null},createSelector:function(targetModules){var module,i,selectors=[],modules=targetModules.items;for(i=0;i0?$elements:null},createSelectors:function(targetModules){var module,i,result=this.initializeSelectors(),modules=targetModules.items;for(i=0;i0&&(id=this.relatedQueue.lastId(),index=null!==id?this.nextJoinIndex(id):0),index},nextJoinIndex:function(minimalId){var i,index=null,tasks=this.tasks;for(i=0;null!==index&&iminimalId&&(index=i);return index}}),FinalizeModulesTask=Type.extend(Task,{logger:LoggerFactory.create("FinalizeModulesTask"),maxGroupSize:defaults.modulesGroupSize,$scope:null,$elements:null,modules:null,constructor:function($scope,modules){FinalizeModulesTask.superclass.constructor.call(this),this.modules=modules,this.$scope=$scope},execute:function(){var iterator,logger=this.logger,$elements=ElementsUtil.find(this.$scope,defaults.initializedSelector),deferred=this.deferred;$elements.length>0?(logger.info("executing",this.id),this.$elements=$elements,iterator=new AsyncObjectIterator(this.modules.map,this.maxGroupSize),iterator.eachItem(this.itemProcessor,this).always($.proxy(deferred.resolve,deferred))):(logger.info("nothing to do",this.id),deferred.resolve())},itemProcessor:function(module){var $intersection=this.$elements.filter(module.$elements);return $intersection.length>0&&(this.logger.trace("elements found",module.name,$intersection.length),this.$elements=this.$elements.not($intersection),module.$elements=module.$elements.not($intersection),this.finalizeElements(module,$intersection)),this.$elements.length>0},finalizeElements:function(module,$elements){var i;for(i=0;i<$elements.length;i++)module.finalize($elements.eq(i))}}),FinalizeModulesTaskQueue=Type.extend(DynamicModuleTaskQueue,{logger:LoggerFactory.create("FinalizeModulesTaskQueue"),accepts:function(task){return task.$scope&&task.$scope.length},join:function(task,index){var deferred,targetTask=this.tasks[index];targetTask.$scope=targetTask.$scope.add(task.$scope),this.logger.trace("join task",{source:task.id,target:targetTask.id,targetIndex:index}),deferred=task.deferred,targetTask.promise.always($.proxy(deferred.resolve,deferred))}}),InitModulesTask=Type.extend(Task,{notInitializedSelector:":not("+defaults.initializedSelector+")",logger:LoggerFactory.create("InitModulesTask"),maxGroupSize:defaults.modulesGroupSize,elementsStrategy:null,modules:null,moduleIds:null,targetModules:null,$scope:null,$elements:null,rejectDelegate:null,isPrefetchRequired:!1,constructor:function($scope,moduleIds,modules){InitModulesTask.superclass.constructor.call(this),this.isPrefetchRequired=!$.isFunction(document.getElementsByClassName),this.isPrefetchRequired&&(this.maxGroupSize=1),this.elementsStrategy=this.selectElementsStrategy(),this.$scope=$scope,this.moduleIds=moduleIds?modules.filterIds(moduleIds):null,this.modules=modules},selectElementsStrategy:function(){return this.isPrefetchRequired?new SelectElementsPrefetchStrategy:new SelectElementsDefaultStrategy},processAllModules:function(){return null==this.moduleIds},execute:function(){var logger=this.logger;this.targetModules=this.processAllModules()?this.modules:this.modules.select(this.moduleIds),this.targetModules.count()>0?(logger.info("executing",this.id,{modulesCount:this.targetModules.count()}),this.$elements=this.elementsStrategy.execute(this.$scope,this.targetModules),this.rejectDelegate=$.proxy(this.deferred.reject,this.deferred),this.executeBeforeInit()):(logger.info("nothing to do",this.id),this.deferred.resolve())},executeBeforeInit:function(){this.logger.trace("executing beforeInit()",this.id);var iterator=new AsyncObjectIterator(this.targetModules.map,this.maxGroupSize);iterator.eachItem(this.beforeInitProcessor,this).done($.proxy(this.executeInit,this)).fail(this.rejectDelegate)},executeInit:function(){var deferred,iterator;this.logger.trace("executing init()",this.id),deferred=this.deferred,iterator=new AsyncObjectIterator(this.targetModules.map,this.maxGroupSize),iterator.eachItem(this.initProcessor,this).done($.proxy(deferred.resolve,deferred)).fail(this.rejectDelegate)},beforeInitProcessor:function(module){module.beforeInit()},initProcessor:function(module){var $elements=null;this.$elements&&module.selector&&($elements=this.$elements.filter(module.selector).addClass(defaults.initializedClass)),module.init($elements||$())}}),InitModulesTaskQueue=Type.extend(DynamicModuleTaskQueue,{logger:LoggerFactory.create("InitModulesTaskQueue"),accepts:function(task){var isValidScope=task.$scope&&task.$scope.length;return isValidScope&&(task.moduleIds?task.moduleIds.length>0:!0)},join:function(task,index){var targetTask=this.tasks[index];this.logger.trace("join task",{source:task.id,target:targetTask.id,targetIndex:index}),this.joinTasks(targetTask,task)},joinTasks:function(targetTask,task){this.joinScopes(targetTask,task),this.joinModules(targetTask,task);var deferred=task.deferred;targetTask.promise.always($.proxy(deferred.resolve,deferred))},joinScopes:function(targetTask,task){ElementsUtil.isInScope(task.$scope,targetTask.$scope)?targetTask.$scope=task.$scope:targetTask.$scope.is(task.$scope)||ElementsUtil.isInScope(targetTask.$scope,task.$scope)||(targetTask.$scope=targetTask.$scope.add(task.$scope))},joinModules:function(targetTask,task){!targetTask.processAllModules()&&task.processAllModules()?targetTask.moduleIds=null:targetTask.processAllModules()||task.processAllModules()||(targetTask.moduleIds=this.joinModuleIds(targetTask.moduleIds,task.moduleIds))},joinModuleIds:function(firstSet,secondSet){var delta=firstSet.length-secondSet.length,target=delta>=0?firstSet:secondSet,source=0>=delta?secondSet:firstSet;return this.addModuleIds(source,target),target},addModuleIds:function(source,target){var i;for(i=0;i=0;return result}}),ComponentManager=Type.define({defaults:{propertyName:"$scope",onUnregister:defaults.noOperation,onRegister:function($element){return{$scope:$element}},scope:null},components:null,config:null,constructor:function(settings){settings=settings||{},this.components=[],this.config=$.extend(!0,{},this.defaults,settings),$.isFunction(this.config.onRegister)||(this.config.onRegister=this.defaults.onRegister)},register:function($elements){var component,i,onRegister=this.config.onRegister,scope=this.config.scope;for(i=0;i<$elements.length;i++)component=onRegister.call(scope,$elements.eq(i)),this.components.push(component)},unregister:function($element){var component,index=this.indexOfComponent($element);index>=0&&(component=this.components[index],this.components.splice(index,1),this.config.onUnregister.call(this.config.scope,component))},indexOfComponent:function($element){var items=this.components,propertyName=this.config.propertyName;return null!=items&&null!=propertyName&&(items=this.selectProperty(propertyName)),ElementsUtil.indexOfElement(items,$element)},selectProperty:function(propertyName){var item,i,items=this.components,result=[],empty={};for(i=0;i0&&this.componentManager.register($elements),ComponentModule.superclass.init.call(this,$elements)},onRegister:function($element){var component={$scope:$element};return this.api.onRegister(component),component},finalize:function($element){ComponentModule.superclass.finalize.call(this,$element),this.componentManager.unregister($element)},isFinalizable:function(){return!0},processApi:function(){ComponentModule.superclass.processApi.call(this),this.api.onRegister=this.processDelegate(this.api.onRegister),this.api.onUnregister=this.processDelegate(this.api.onUnregister)}}),DependencyGraphModuleAdapter=Type.extend(DependencyGraphItemAdapter,{id:function(item){return item.name},dependencies:function(item){return item.requires},dependencyId:function(dependency){return dependency.name}}),InitStaticModuleTask=Type.extend(Task,{logger:LoggerFactory.create("InitStaticModuleTask"),maxGroupSize:defaults.modulesGroupSize,moduleIds:null,modules:null,constructor:function(id,modules){InitStaticModuleTask.superclass.constructor.call(this),this.modules=modules,this.moduleIds=[],id&&this.moduleIds.push(id)},execute:function(){var deferred,modules=this.modules.selectValues(this.moduleIds),iterator=new AsyncObjectIterator(modules,this.maxGroupSize);this.logger.trace("executing",this.id,this.moduleIds),deferred=this.deferred,iterator.eachItem(this.itemProcessor,this).always($.proxy(deferred.resolve,deferred))},itemProcessor:function(module){module.init()}}),InitStaticModuleTaskQueue=Type.extend(TaskQueue,{logger:LoggerFactory.create("InitStaticModuleTaskQueue"),accepts:function(task){return task.moduleIds.length},process:function(task){this.tasks.length>0?this.join(task):InitStaticModuleTaskQueue.superclass.process.call(this,task)},join:function(task){var moduleIds,deferred,firstTask=this.tasks[0];this.logger.trace("join task",{source:task.id,target:firstTask.id}),moduleIds=firstTask.moduleIds,moduleIds.push.apply(moduleIds,task.moduleIds),deferred=task.deferred,firstTask.promise.always($.proxy(deferred.resolve,deferred))}}),ModuleRegistry=Type.define({modules:null,constructor:function(){this.modules=new Collection},add:function(module){this.modules.add(module.name,module)}}),StaticModuleRegistry=Type.extend(ModuleRegistry,{taskRunner:null,taskQueue:null,constructor:function(taskRunner,taskQueue){StaticModuleRegistry.superclass.constructor.call(this),this.taskRunner=taskRunner,this.taskQueue=taskQueue},add:function(module){StaticModuleRegistry.superclass.add.call(this,module),this.taskQueue.add(new InitStaticModuleTask(module.name,this.modules)),this.taskRunner.executeNext()}}),DynamicModuleRegistry=Type.extend(ModuleRegistry,{finalizableModules:null,constructor:function(){DynamicModuleRegistry.superclass.constructor.call(this),this.finalizableModules=new Collection},add:function(module){DynamicModuleRegistry.superclass.add.call(this,module),module.isFinalizable()&&this.finalizableModules.add(module.name,module)}}),EventManager=Type.extend(IEventManager,{events:null,constructor:function(){this.events={}},dispatcherFor:function(moduleName,eventName){var namespace,dispatcher=null,events=this.events;return moduleName&&eventName&&(namespace=events[moduleName],namespace&&namespace[eventName]||this.addEvent(moduleName,eventName),dispatcher=events[moduleName][eventName]),dispatcher},addEvent:function(moduleName,eventName){var namespace,events=this.events;events[moduleName]||(events[moduleName]={}),namespace=events[moduleName],namespace[eventName]||(namespace[eventName]=new EventDispatcher(moduleName,eventName))}}),ModuleManager=Type.extend(IModuleManager,{logger:LoggerFactory.create("ModuleManager"),dependencyGraph:null,modules:null,staticModuleRegistry:null,dynamicModuleRegistry:null,constructor:function(staticModuleManager,dynamicModuleManager){this.dependencyGraph=new DependencyGraph(new DependencyGraphModuleAdapter),this.staticModuleRegistry=staticModuleManager,this.dynamicModuleRegistry=dynamicModuleManager,this.modules={}},add:function(module){var ids,logger=this.logger;logger.trace("trying add module",module.name),this.dependencyGraph.hasNode(module)||(this.modules[module.name]=module,logger.trace("module added",module.name),ids=this.dependencyGraph.resolve(module),logger.debug("resolved module id's",ids),null!=ids&&this.initializeModules(ids))},initializeModules:function(ids){var module,i,modules=this.modules;for(i=0;iindex&&(value=Number(data[index].match(numberPattern)),result=isNaN(value)?0:value),result}function getShadowData($element){var value=getFirstCssValue($element,["box-shadow","-moz-box-shadow","-webkit-box-shadow","-ms-box-shadow"]),sizePattern=/-?[0-9]+px/gi,dimensions=null!=value?value.match(sizePattern):[];return{hShadow:getNumberFromString(0,dimensions),vShadow:getNumberFromString(1,dimensions),blur:getNumberFromString(2,dimensions),spread:getNumberFromString(3,dimensions)}}function getShadowHeight($element){var shadow=getShadowData($element);return Math.abs(Math.max(-shadow.vShadow,0))+shadow.blur+shadow.spread}var mediaContainer,$share,shadowHeight,showShare,hideShare;player.isVideo&&(mediaContainer=player.container,$share=mediaContainer.siblings(".share"),layers.append($share),$share.removeClass("share").addClass("mejs-layer mejs-share"),$share.size()<1||(shadowHeight=getShadowHeight($share.find(".share-container")),$('
    ').appendTo(controls).hover(function(){$share.stop(!0,!0),showShare()}).mouseleave(function(){hideShare()}),$share.hover(function(){$share.stop(!0,!0),showShare()}).mouseleave(function(){hideShare()}),$share.css("bottom",0-mediaContainer.height()-shadowHeight),showShare=function(){$share.stop(!0,!0).animate({bottom:0-$share.height()+$share.find(".share-container").outerHeight()-controls.height()},"slow","swing")},hideShare=function(){$share.stop(!0,!0).delay(1e3).animate({bottom:0-$share.height()-controls.height()-shadowHeight},"swing")}))}}(jQuery),function($){MediaElementPlayer.prototype.buildrelated=function(player,controls,layers,media){var mediaContainer,$related;player.isVideo&&(mediaContainer=player.container,$related=mediaContainer.siblings(".related"),layers.append($related),$related.removeClass("related").addClass("mejs-layer mejs-related"),$related.size()<1||(media.addEventListener("ended",function(){$related.fadeIn()},!1),media.addEventListener("play",function(){$related.fadeOut()},!1)))}}(jQuery),function(w){"use strict";function callMedia(){applyMedia(!0)}var requestQueue,xmlHttp,ajax,isUnsupportedMediaQuery,doc,docElem,mediastyles,rules,appendedEls,parsedSheets,resizeThrottle,head,base,links,lastCall,resizeDefer,eminpx,getEmValue,applyMedia,translate,makeRequests,ripCSS,respond={};w.respond=respond,respond.update=function(){},requestQueue=[],xmlHttp=function(){var xmlhttpmethod=!1;try{xmlhttpmethod=new w.XMLHttpRequest}catch(e){xmlhttpmethod=new w.ActiveXObject("Microsoft.XMLHTTP")}return function(){return xmlhttpmethod}}(),ajax=function(url,callback){var req=xmlHttp();req&&(req.open("GET",url,!0),req.onreadystatechange=function(){4!==req.readyState||200!==req.status&&304!==req.status||callback(req.responseText)},4!==req.readyState&&req.send(null))},isUnsupportedMediaQuery=function(query){return query.replace(respond.regex.minmaxwh,"").match(respond.regex.other)},respond.ajax=ajax,respond.queue=requestQueue,respond.unsupportedmq=isUnsupportedMediaQuery,respond.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,comments:/\/\*[^*]*\*+([^/][^*]*\*+)*\//gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,maxw:/\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,minmaxwh:/\(\s*m(in|ax)\-(height|width)\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/gi,other:/\([^\)]*\)/g},respond.mediaQueriesSupported=w.matchMedia&&null!==w.matchMedia("only all")&&w.matchMedia("only all").matches,respond.mediaQueriesSupported||(doc=w.document,docElem=doc.documentElement,mediastyles=[],rules=[],appendedEls=[],parsedSheets={},resizeThrottle=30,head=doc.getElementsByTagName("head")[0]||docElem,base=doc.getElementsByTagName("base")[0],links=head.getElementsByTagName("link"),getEmValue=function(){var ret,div=doc.createElement("div"),body=doc.body,originalHTMLFontSize=docElem.style.fontSize,originalBodyFontSize=body&&body.style.fontSize,fakeUsed=!1;return div.style.cssText="position:absolute;font-size:1em;width:1em",body||(body=fakeUsed=doc.createElement("body"),body.style.background="none"),docElem.style.fontSize="100%",body.style.fontSize="100%",body.appendChild(div),fakeUsed&&docElem.insertBefore(body,docElem.firstChild),ret=div.offsetWidth,fakeUsed?docElem.removeChild(body):body.removeChild(div),docElem.style.fontSize=originalHTMLFontSize,originalBodyFontSize&&(body.style.fontSize=originalBodyFontSize),ret=eminpx=parseFloat(ret)},applyMedia=function(fromResize){var i,thisstyle,min,max,minnull,maxnull,em,j,k,ss,css,name="clientWidth",docElemProp=docElem[name],currWidth="CSS1Compat"===doc.compatMode&&docElemProp||doc.body[name]||docElemProp,styleBlocks={},lastLink=links[links.length-1],now=(new Date).getTime();if(fromResize&&lastCall&&resizeThrottle>now-lastCall)return w.clearTimeout(resizeDefer),void(resizeDefer=w.setTimeout(applyMedia,resizeThrottle));lastCall=now;for(i in mediastyles)mediastyles.hasOwnProperty(i)&&(thisstyle=mediastyles[i],min=thisstyle.minw,max=thisstyle.maxw,minnull=null===min,maxnull=null===max,em="em",min&&(min=parseFloat(min)*(min.indexOf(em)>-1?eminpx||getEmValue():1)),max&&(max=parseFloat(max)*(max.indexOf(em)>-1?eminpx||getEmValue():1)), thisstyle.hasquery&&(minnull&&maxnull||!(minnull||currWidth>=min)||!(maxnull||max>=currWidth))||(styleBlocks[thisstyle.media]||(styleBlocks[thisstyle.media]=[]),styleBlocks[thisstyle.media].push(rules[thisstyle.rules])));for(j in appendedEls)appendedEls.hasOwnProperty(j)&&appendedEls[j]&&appendedEls[j].parentNode===head&&head.removeChild(appendedEls[j]);appendedEls.length=0;for(k in styleBlocks)styleBlocks.hasOwnProperty(k)&&(ss=doc.createElement("style"),css=styleBlocks[k].join("\n"),ss.type="text/css",ss.media=k,head.insertBefore(ss,lastLink.nextSibling),ss.styleSheet?ss.styleSheet.cssText=css:ss.appendChild(doc.createTextNode(css)),appendedEls.push(ss))},translate=function(styles,href,media){var repUrls,useMedia,i,fullq,thisq,eachq,eql,j,qs=styles.replace(respond.regex.comments,"").replace(respond.regex.keyframes,"").match(respond.regex.media),ql=qs&&qs.length||0;for(href=href.substring(0,href.lastIndexOf("/")),repUrls=function(css){return css.replace(respond.regex.urls,"$1"+href+"$2$3")},useMedia=!ql&&media,href.length&&(href+="/"),useMedia&&(ql=1),i=0;ql>i;i++)for(useMedia?(fullq=media,rules.push(repUrls(styles))):(fullq=qs[i].match(respond.regex.findStyles)&&RegExp.$1,rules.push(RegExp.$2&&repUrls(RegExp.$2))),eachq=fullq.split(","),eql=eachq.length,j=0;eql>j;j++)thisq=eachq[j],isUnsupportedMediaQuery(thisq)||mediastyles.push({media:thisq.split("(")[0].match(respond.regex.only)&&RegExp.$2||"all",rules:rules.length-1,hasquery:thisq.indexOf("(")>-1,minw:thisq.match(respond.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:thisq.match(respond.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")});applyMedia()},makeRequests=function(){if(requestQueue.length){var thisRequest=requestQueue.shift();ajax(thisRequest.href,function(styles){translate(styles,thisRequest.href,thisRequest.media),parsedSheets[thisRequest.href]=!0,w.setTimeout(function(){makeRequests()},0)})}},ripCSS=function(){var i,sheet,href,media,isCSS;for(i=0;ia;a++)d=e(d,b[a]);return d}function C(a,b){return parseInt(a,b||10)}function xa(a){return"string"==typeof a}function Y(a){return a&&"object"==typeof a}function Ja(a){return"[object Array]"===Object.prototype.toString.call(a)}function ma(a){return"number"==typeof a}function Da(a){return W.log(a)/W.LN10}function na(a){return W.pow(10,a)}function oa(a,b){for(var c=a.length;c--;)if(a[c]===b){a.splice(c,1);break}}function q(a){return a!==A&&null!==a}function K(a,b,c){var d,e;if(xa(b))q(c)?a.setAttribute(b,c):a&&a.getAttribute&&(e=a.getAttribute(b));else if(q(b)&&Y(b))for(d in b)a.setAttribute(d,b[d]);return e}function ta(a){return Ja(a)?a:[a]}function Pa(a,b,c){return b?setTimeout(a,b,c):void a.call(0,c)}function L(a,b){ya&&!ca&&b&&b.opacity!==A&&(b.filter="alpha(opacity="+100*b.opacity+")"),u(a.style,b)}function Z(a,b,c,d,e){return a=y.createElement(a),b&&u(a,b),e&&L(a,{padding:0,border:"none",margin:0}),c&&L(a,c),d&&d.appendChild(a),a}function pa(a,b){var c=function(){};return c.prototype=new a,u(c.prototype,b),c}function Ka(a,b){return Array((b||2)+1-String(a).length).join(0)+a}function Ya(a){return 6e4*(Za&&Za(a)||qb||0)}function La(a,b){for(var e,f,g,h,i,c="{",d=!1,k=[];-1!==(c=a.indexOf(c));){if(e=a.slice(0,c),d){for(f=e.split(":"),g=f.shift().split("."),i=g.length,e=b,h=0;i>h;h++)e=e[g[h]];f.length&&(f=f.join(":"),g=/\.([0-9])/,h=N.lang,i=void 0,/f$/.test(f)?(i=(i=f.match(g))?i[1]:-1,null!==e&&(e=z.numberFormat(e,i,h.decimalPoint,f.indexOf(",")>-1?h.thousandsSep:""))):e=Qa(f,e))}k.push(e),a=a.slice(c+1),c=(d=!d)?"}":"{"}return k.push(a),k.join("")}function rb(a){return W.pow(10,S(W.log(a)/W.LN10))}function sb(a,b,c,d,e){var f,g=a,c=p(c,1);for(f=a/c,b||(b=[1,2,2.5,5,10],d===!1&&(1===c?b=[1,2,5,10]:.1>=c&&(b=[1/c]))),d=0;d=a||!e&&f<=(b[d]+(b[d+1]||b[d]))/2));d++);return g*=c}function ib(a,b){var d,e,c=a.length;for(e=0;c>e;e++)a[e].safeI=e;for(a.sort(function(a,c){return d=b(a,c),0===d?a.safeI-c.safeI:d}),e=0;c>e;e++)delete a[e].safeI}function Ra(a){for(var b=a.length,c=a[0];b--;)a[b]c&&(c=a[b]);return c}function Sa(a,b){for(var c in a)a[c]&&a[c]!==b&&a[c].destroy&&a[c].destroy(),delete a[c]}function Ta(a){jb||(jb=Z(Ma)),a&&jb.appendChild(a),jb.innerHTML=""}function ea(a,b){return parseFloat(a.toPrecision(b||14))}function Ua(a,b){b.renderer.globalAnimation=p(a,b.animation)}function Fb(){var a=N.global,b=a.useUTC,c=b?"getUTC":"get",d=b?"setUTC":"set";qa=a.Date||E.Date,qb=b&&a.timezoneOffset,Za=b&&a.getTimezoneOffset,kb=function(a,c,d,h,i,k){var j;return b?(j=qa.UTC.apply(0,arguments),j+=Ya(j)):j=new qa(a,c,p(d,1),p(h,0),p(i,0),p(k,0)).getTime(),j},tb=c+"Minutes",ub=c+"Hours",vb=c+"Day",$a=c+"Date",ab=c+"Month",bb=c+"FullYear",Gb=d+"Milliseconds",Hb=d+"Seconds",Ib=d+"Minutes",Jb=d+"Hours",wb=d+"Date",xb=d+"Month",yb=d+"FullYear"}function ia(a){return this instanceof ia?void this.init(a):new ia(a)}function O(){}function Va(a,b,c,d){this.axis=a,this.pos=b,this.type=c||"",this.isNew=!0,!c&&!d&&this.addLabel()}function Kb(a,b,c,d,e){var f=a.chart.inverted;this.axis=a,this.isNegative=c,this.options=b,this.x=d,this.total=null,this.points={},this.stack=e,this.rightCliff=this.leftCliff=0,this.alignOptions={align:b.align||(f?c?"left":"right":"center"),verticalAlign:b.verticalAlign||(f?"middle":c?"bottom":"top"),y:p(b.y,f?4:c?14:-6),x:p(b.x,f?c?-6:6:0)},this.textAlign=b.textAlign||(f?c?"right":"left":"center")}var A,cb,db,jb,N,Qa,G,qa,kb,qb,Za,tb,ub,vb,$a,ab,bb,Gb,Hb,Ib,Jb,wb,xb,yb,Ga,ja,sa,o,Ha,Ab,Ba,M,V,H,Wa,Oa,u,p,fb,aa,da,Ca,J,Cb,Ob,ka,Pb,ha,Xa,va,Db,Sb,Eb,ob,hb,Ia,Q,wa,la,y=E.document,W=Math,B=W.round,S=W.floor,ua=W.ceil,t=W.max,F=W.min,P=W.abs,U=W.cos,$=W.sin,ra=W.PI,fa=2*ra/360,za=E.navigator&&E.navigator.userAgent||"",Lb=E.opera,ya=/(msie|trident|edge)/i.test(za)&&!Lb,lb=y&&8===y.documentMode,mb=!ya&&/AppleWebKit/.test(za),Na=/Firefox/.test(za),Mb=/(Mobile|Android|Windows Phone)/.test(za),Fa="http://www.w3.org/2000/svg",ca=y&&y.createElementNS&&!!y.createElementNS(Fa,"svg").createSVGRect,Qb=Na&&parseInt(za.split("Firefox/")[1],10)<4,ga=y&&!ca&&!ya&&!!y.createElement("canvas").getContext,Nb={},zb=0,Aa=function(){},T=[],eb=0,Ma="div",Rb=/^[0-9]+$/,nb=["plotTop","marginRight","marginBottom","plotLeft"],I={},z=E.Highcharts?X(16,!0):{win:E};return z.seriesTypes=I,Ga=[],pb.prototype={dSetter:function(){var f,a=this.paths[0],b=this.paths[1],c=[],d=this.now,e=a.length;if(1===d)c=this.toD;else if(e===b.length&&1>d)for(;e--;)f=parseFloat(a[e]),c[e]=isNaN(f)?a[e]:d*parseFloat(b[e]-f)+f;else c=b;this.elem.attr("d",c)},update:function(){var a=this.elem,b=this.prop,c=this.now,d=this.options.step;this[b+"Setter"]?this[b+"Setter"]():a.attr?a.element&&a.attr(b,c):a.style[b]=c+this.unit,d&&d.call(a,c,this)},run:function(a,b,c){var f,d=this,e=function(a){return e.stopped?!1:d.step(a)};this.startTime=+new qa,this.start=a,this.end=b,this.unit=c,this.now=this.start,this.pos=0,e.elem=this.elem,e()&&1===Ga.push(e)&&(e.timerId=setInterval(function(){for(f=0;f=f+this.startTime){this.now=this.end,this.pos=1,this.update(),a=g[this.prop]=!0;for(h in g)g[h]!==!0&&(a=!1);a&&e&&e.call(c),c=!1}else this.pos=d.easing((b-this.startTime)/f),this.now=this.start+(this.end-this.start)*this.pos,this.update(),c=!0;return c},initPath:function(a,b,c){var g,b=b||"",d=a.shift,e=b.indexOf("C")>-1,f=e?7:3,b=b.split(" "),c=[].concat(c),h=a.isArea,i=h?2:1,k=function(a){for(g=a.length;g--;)("M"===a[g]||"L"===a[g])&&a.splice(g+1,0,a[g+1],a[g+2],a[g+1],a[g+2])};if(e&&(k(b),k(c)),d<=c.length/f&&b.length===c.length)for(;d--;)c=c.slice(0,f).concat(c),h&&(c=c.concat(c.slice(c.length-f)));if(a.shift=0,b.length)for(a=c.length;b.lengthb;b++)if(c=a[b],c!==A&&null!==c)return c},fb=z.wrap=function(a,b,c){var d=a[b];a[b]=function(){var a=Array.prototype.slice.call(arguments);return a.unshift(d),c.apply(this,a)}},Qa=function(a,b,c){if(!q(b)||isNaN(b))return N.lang.invalidDate||"";var e,a=p(a,"%Y-%m-%d %H:%M:%S"),d=new qa(b-Ya(b)),f=d[ub](),g=d[vb](),h=d[$a](),i=d[ab](),k=d[bb](),j=N.lang,m=j.weekdays,d=u({a:m[g].substr(0,3),A:m[g],d:Ka(h),e:h,w:g,b:j.shortMonths[i],B:j.months[i],m:Ka(i+1),y:k.toString().substr(2,2),Y:k,H:Ka(f),k:f,I:Ka(f%12||12),l:f%12||12,M:Ka(d[tb]()),p:12>f?"AM":"PM",P:12>f?"am":"pm",S:Ka(d.getSeconds()),L:Ka(B(b%1e3),3)},z.dateFormats);for(e in d)for(;-1!==a.indexOf("%"+e);)a=a.replace("%"+e,"function"==typeof d[e]?d[e](b):d[e]);return c?a.substr(0,1).toUpperCase()+a.substr(1):a},G={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,week:6048e5,month:24192e5,year:314496e5},z.numberFormat=function(a,b,c,d){var g,h,a=+a||0,e=N.lang,f=(a.toString().split(".")[1]||"").length,i=Math.abs(a);return-1===b?b=Math.min(f,20):isNaN(b)&&(b=2),g=String(C(i.toFixed(b))),h=g.length>3?g.length%3:0,c=p(c,e.decimalPoint),d=p(d,e.thousandsSep),a=0>a?"-":"",a+=h?g.substr(0,h)+d:"",a+=g.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+d),+b&&(d=Math.abs(i-g+Math.pow(10,-Math.max(b,f)-1)),a+=c+d.toFixed(b).slice(2)),a},Math.easeInOutSine=function(a){return-.5*(Math.cos(Math.PI*a)-1)},ja=function(a,b){var c;return"width"===b?Math.min(a.offsetWidth,a.scrollWidth)-ja(a,"padding-left")-ja(a,"padding-right"):"height"===b?Math.min(a.offsetHeight,a.scrollHeight)-ja(a,"padding-top")-ja(a,"padding-bottom"):(c=E.getComputedStyle(a,void 0))&&C(c.getPropertyValue(b))},sa=function(a,b){return b.indexOf?b.indexOf(a):[].indexOf.call(b,a)},Ha=function(a,b){return[].filter.call(a,b)},Ba=function(a,b){for(var c=[],d=0,e=a.length;e>d;d++)c[d]=b.call(a[d],a[d],d,a);return c},Ab=function(a){var b=y.documentElement,a=a.getBoundingClientRect();return{top:a.top+(E.pageYOffset||b.scrollTop)-(b.clientTop||0),left:a.left+(E.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}},Oa=function(a){for(var b=Ga.length;b--;)Ga[b].elem===a&&(Ga[b].stopped=!0)},o=function(a,b){return Array.prototype.forEach.call(a,b)},M=function(a,b,c){function d(b){b.target=b.srcElement||E,c.call(a,b)}var e=a.hcEvents=a.hcEvents||{};a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&(a.hcEventsIE||(a.hcEventsIE={}),a.hcEventsIE[c.toString()]=d,a.attachEvent("on"+b,d)),e[b]||(e[b]=[]),e[b].push(c)},V=function(a,b,c){function d(b,c){a.removeEventListener?a.removeEventListener(b,c,!1):a.attachEvent&&(c=a.hcEventsIE[c.toString()],a.detachEvent("on"+b,c))}function e(){var c,e,f;if(a.nodeName)for(f in b?(c={},c[b]=!0):c=g,c)if(g[f])for(e=g[f].length;e--;)d(f,g[f][e])}var f,h,g=a.hcEvents;g&&(b?(f=g[b]||[],c?(h=sa(c,f),h>-1&&(f.splice(h,1),g[b]=f),d(b,c)):(e(),g[b]=[])):(e(),a.hcEvents={}))},H=function(a,b,c,d){var f,g,h,i,e=a.hcEvents;if(c=c||{},y.createEvent&&(a.dispatchEvent||a.fireEvent))e=y.createEvent("Events"),e.initEvent(b,!0,!0),e.target=a,u(e,c),a.dispatchEvent?a.dispatchEvent(e):a.fireEvent(b,e);else if(e)for(e=e[b]||[],f=e.length,h=function(){c.defaultPrevented=!0},g=0;f>g;g++){if(i=e[g],c.stopped)return;c.preventDefault=h,c.target=a,c.type||(c.type=b),i.call(a,c)===!1&&c.preventDefault()}d&&!c.defaultPrevented&&d(c)},Wa=function(a,b,c){var d,f,g,h,e="";Y(c)||(d=arguments,c={duration:d[2],easing:d[3],complete:d[4]}),ma(c.duration)||(c.duration=400),c.easing=Math[c.easing]||Math.easeInOutSine,c.curAnim=D(b);for(h in b)g=new pb(a,c,h),f=null,"d"===h?(g.paths=g.initPath(a,a.d,b.d),g.toD=b.d,d=0,f=1):a.attr?d=a.attr(h):(d=parseFloat(ja(a,h))||0,"opacity"!==h&&(e="px")),f||(f=b[h]),f.match&&f.match("px")&&(f=f.replace(/px/g,"")),g.run(d,f,e)},E.jQuery&&(E.jQuery.fn.highcharts=function(){var a=[].slice.call(arguments);return this[0]?a[0]?(new(z[xa(a[0])?a.shift():"Chart"])(this[0],a[0],a[1]),this):T[K(this[0],"data-highcharts-chart")]:void 0}),y&&!y.defaultView&&(ja=function(a,b){var c;return c={width:"clientWidth",height:"clientHeight"}[b],a.style[b]?C(a.style[b]):("opacity"===b&&(b="filter"),c?(a.style.zoom=1,a[c]-2*ja(a,"padding")):(c=a.currentStyle[b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()})],"filter"===b&&(c=c.replace(/alpha\(opacity=([0-9]+)\)/,function(a,b){return b/100})),""===c?1:C(c)))}),Array.prototype.forEach||(o=function(a,b){for(var c=0,d=a.length;d>c;c++)if(b.call(a[c],a[c],c,a)===!1)return c}),Array.prototype.indexOf||(sa=function(a,b){var c,d=0;if(b)for(c=b.length;c>d;d++)if(b[d]===a)return d;return-1}),Array.prototype.filter||(Ha=function(a,b){for(var c=[],d=0,e=a.length;e>d;d++)b(a[d],d)&&c.push(a[d]);return c}),z.Fx=pb,z.inArray=sa,z.each=o,z.grep=Ha,z.offset=Ab,z.map=Ba,z.addEvent=M,z.removeEvent=V,z.fireEvent=H,z.animate=Wa,z.stop=Oa,N={colors:"#7cb5ec,#434348,#90ed7d,#f7a35c,#8085e9,#f15c80,#e4d354,#2b908f,#f45b5b,#91e8e1".split(","),symbols:["circle","diamond","square","triangle","triangle-down"],lang:{loading:"Loading...",months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),decimalPoint:".",numericSymbols:"k,M,G,T,P,E".split(","),resetZoom:"Reset zoom",resetZoomTitle:"Reset zoom level 1:1",thousandsSep:" "},global:{useUTC:!0,canvasToolsURL:"http://code.highcharts.com/modules/canvas-tools.js",VMLRadialGradientURL:"http://code.highcharts.com/4.2.2/gfx/vml-radial-gradient.png"},chart:{borderColor:"#4572A7",borderRadius:0,defaultSeriesType:"line",ignoreHiddenSeries:!0,spacing:[10,10,15,10],backgroundColor:"#FFFFFF",plotBorderColor:"#C0C0C0",resetZoomButton:{theme:{zIndex:20},position:{align:"right",x:-10,y:10}}},title:{text:"Chart title",align:"center",margin:15,style:{color:"#333333",fontSize:"18px"}},subtitle:{text:"",align:"center",style:{color:"#555555"}},plotOptions:{line:{allowPointSelect:!1,showCheckbox:!1,animation:{duration:1e3},events:{},lineWidth:2,marker:{lineWidth:0,radius:4,lineColor:"#FFFFFF",states:{hover:{enabled:!0,lineWidthPlus:1,radiusPlus:2},select:{fillColor:"#FFFFFF",lineColor:"#000000",lineWidth:2}}},point:{events:{}},dataLabels:{align:"center",formatter:function(){return null===this.y?"":z.numberFormat(this.y,-1)},style:{color:"contrast",fontSize:"11px",fontWeight:"bold",textShadow:"0 0 6px contrast, 0 0 3px contrast"},verticalAlign:"bottom",x:0,y:0,padding:5},cropThreshold:300,pointRange:0,softThreshold:!0,states:{hover:{lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{marker:{}}},stickyTracking:!0,turboThreshold:1e3}},labels:{style:{position:"absolute",color:"#3E576F"}},legend:{enabled:!0,align:"center",layout:"horizontal",labelFormatter:function(){return this.name},borderColor:"#909090",borderRadius:0,navigation:{activeColor:"#274b6d",inactiveColor:"#CCC"},shadow:!1,itemStyle:{color:"#333333",fontSize:"12px",fontWeight:"bold"},itemHoverStyle:{color:"#000"},itemHiddenStyle:{color:"#CCC"},itemCheckboxStyle:{position:"absolute",width:"13px",height:"13px"},symbolPadding:5,verticalAlign:"bottom",x:0,y:0,title:{style:{fontWeight:"bold"}}},loading:{labelStyle:{fontWeight:"bold",position:"relative",top:"45%"},style:{position:"absolute",backgroundColor:"white",opacity:.5,textAlign:"center"}},tooltip:{enabled:!0,animation:ca,backgroundColor:"rgba(249, 249, 249, .85)",borderWidth:1,borderRadius:3,dateTimeLabelFormats:{millisecond:"%A, %b %e, %H:%M:%S.%L",second:"%A, %b %e, %H:%M:%S",minute:"%A, %b %e, %H:%M",hour:"%A, %b %e, %H:%M",day:"%A, %b %e, %Y",week:"Week from %A, %b %e, %Y",month:"%B %Y",year:"%Y"},footerFormat:"",headerFormat:'{point.key}
    ',pointFormat:' {series.name}: {point.y}
    ',shadow:!0,snap:Mb?25:10,style:{color:"#333333",cursor:"default",fontSize:"12px",padding:"8px",pointerEvents:"none",whiteSpace:"nowrap"}},credits:{enabled:!0,text:"Highcharts.com",href:"http://www.highcharts.com",position:{align:"right",x:-10,verticalAlign:"bottom",y:-5},style:{cursor:"pointer",color:"#909090",fontSize:"9px"}}},aa=N.plotOptions,da=aa.line,Fb(),ia.prototype={parsers:[{regex:/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]?(?:\.[0-9]+)?)\s*\)/,parse:function(a){return[C(a[1]),C(a[2]),C(a[3]),parseFloat(a[4],10)]}},{regex:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,parse:function(a){return[C(a[1],16),C(a[2],16),C(a[3],16),1]}},{regex:/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/,parse:function(a){return[C(a[1]),C(a[2]),C(a[3]),1]}}],init:function(a){var b,c,d,e;if((this.input=a)&&a.stops)this.stops=Ba(a.stops,function(a){return new ia(a[1])});else for(d=this.parsers.length;d--&&!c;)e=this.parsers[d],(b=e.regex.exec(a))&&(c=e.parse(b));this.rgba=c||[]},get:function(a){var d,b=this.input,c=this.rgba;return this.stops?(d=D(b),d.stops=[].concat(d.stops),o(this.stops,function(b,c){d.stops[c]=[d.stops[c][0],b.get(a)]})):d=c&&!isNaN(c[0])?"rgb"===a||!a&&1===c[3]?"rgb("+c[0]+","+c[1]+","+c[2]+")":"a"===a?c[3]:"rgba("+c.join(",")+")":b,d},brighten:function(a){var b,c=this.rgba;if(this.stops)o(this.stops,function(b){b.brighten(a)});else if(ma(a)&&0!==a)for(b=0;3>b;b++)c[b]+=C(255*a),c[b]<0&&(c[b]=0),c[b]>255&&(c[b]=255);return this},setOpacity:function(a){return this.rgba[3]=a,this}},O.prototype={opacity:1,textProps:"direction,fontSize,fontWeight,fontFamily,fontStyle,color,lineHeight,width,textDecoration,textOverflow,textShadow".split(","),init:function(a,b){this.element="span"===b?Z(b):y.createElementNS(Fa,b),this.renderer=a},animate:function(a,b,c){return b=p(b,this.renderer.globalAnimation,!0),Oa(this),b?(b=D(b,{}),c&&(b.complete=c),Wa(this,a,b)):this.attr(a,null,c),this},colorGradient:function(a,b,c){var e,f,g,h,i,k,j,m,l,n,r,p,d=this.renderer,s=[];if(a.linearGradient?f="linearGradient":a.radialGradient&&(f="radialGradient"),f){g=a[f],i=d.gradients,j=a.stops,n=c.radialReference,Ja(g)&&(a[f]=g={x1:g[0],y1:g[1],x2:g[2],y2:g[3],gradientUnits:"userSpaceOnUse"}),"radialGradient"===f&&n&&!q(g.gradientUnits)&&(h=g,g=D(g,d.getRadialAttr(n,h),{gradientUnits:"userSpaceOnUse"}));for(r in g)"id"!==r&&s.push(r,g[r]);for(r in j)s.push(j[r]);s=s.join(","),i[s]?n=i[s].attr("id"):(g.id=n="highcharts-"+zb++,i[s]=k=d.createElement(f).attr(g).add(d.defs),k.radAttr=h,k.stops=[],o(j,function(a){0===a[1].indexOf("rgba")?(e=ia(a[1]),m=e.get("rgb"),l=e.get("a")):(m=a[1],l=1),a=d.createElement("stop").attr({offset:a[0],"stop-color":m,"stop-opacity":l}).add(k),k.stops.push(a)})),p="url("+d.url+"#"+n+")",c.setAttribute(b,p),c.gradient=s,a.toString=function(){return p}}},applyTextShadow:function(a){var c,b=this.element,d=-1!==a.indexOf("contrast"),e={},f=this.renderer.forExport,g=f||b.style.textShadow!==A&&!ya;d&&(e.textShadow=a=a.replace(/contrast/g,this.renderer.getContrast(b.style.fill))),(mb||f)&&(e.textRendering="geometricPrecision"),g?this.css(e):(this.fakeTS=!0,this.ySetter=this.xSetter,c=[].slice.call(b.getElementsByTagName("tspan")),o(a.split(/\s?,\s?/g),function(a){var e,f,d=b.firstChild,a=a.split(" ");e=a[a.length-1],(f=a[a.length-2])&&o(c,function(a,c){var g;0===c&&(a.setAttribute("x",b.getAttribute("x")),c=b.getAttribute("y"),a.setAttribute("y",c||0),null===c&&b.setAttribute("y",0)),g=a.cloneNode(1),K(g,{"class":"highcharts-text-shadow",fill:e,stroke:e,"stroke-opacity":1/t(C(f),3),"stroke-width":f,"stroke-linejoin":"round"}),b.insertBefore(g,d)})}))},attr:function(a,b,c){var d,f,h,e=this.element,g=this;if("string"==typeof a&&b!==A&&(d=a,a={},a[d]=b),"string"==typeof a)g=(this[a+"Getter"]||this._defaultGetter).call(this,a,e);else{for(d in a)b=a[d],h=!1,this.symbolName&&/^(x|y|width|height|r|start|end|innerR|anchorX|anchorY)/.test(d)&&(f||(this.symbolAttr(a),f=!0),h=!0),!this.rotation||"x"!==d&&"y"!==d||(this.doTransform=!0),h||(h=this[d+"Setter"]||this._defaultSetter,h.call(this,b,d,e),this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(d)&&this.updateShadows(d,b,h));this.doTransform&&(this.updateTransform(),this.doTransform=!1)}return c&&c(),g},updateShadows:function(a,b,c){for(var d=this.shadows,e=d.length;e--;)c.call(null,"height"===a?Math.max(b-(d[e].cutHeight||0),0):"d"===a?this.d:b,a,d[e])},addClass:function(a){var b=this.element,c=K(b,"class")||"";return-1===c.indexOf(a)&&K(b,"class",c+" "+a),this},symbolAttr:function(a){var b=this;o("x,y,r,start,end,width,height,innerR,anchorX,anchorY".split(","),function(c){b[c]=p(a[c],b[c])}),b.attr({d:b.renderer.symbols[b.symbolName](b.x,b.y,b.width,b.height,b)})},clip:function(a){return this.attr("clip-path",a?"url("+this.renderer.url+"#"+a.id+")":"none")},crisp:function(a){var b,d,c={},e=a.strokeWidth||this.strokeWidth||0;d=B(e)%2/2,a.x=S(a.x||this.x||0)+d,a.y=S(a.y||this.y||0)+d,a.width=S((a.width||this.width||0)-2*d),a.height=S((a.height||this.height||0)-2*d),a.strokeWidth=e;for(b in a)this[b]!==a[b]&&(this[b]=c[b]=a[b]);return c},css:function(a){var e,f,b=this.styles,c={},d=this.element,g="";if(e=!b,a&&a.color&&(a.fill=a.color),b)for(f in a)a[f]!==b[f]&&(c[f]=a[f],e=!0);if(e){if(e=this.textWidth=a&&a.width&&"text"===d.nodeName.toLowerCase()&&C(a.width)||this.textWidth,b&&(a=u(b,c)),this.styles=a,e&&(ga||!ca&&this.renderer.forExport)&&delete a.width,ya&&!ca)L(this.element,a);else{b=function(a,b){return"-"+b.toLowerCase()};for(f in a)g+=f.replace(/([A-Z])/g,b)+":"+a[f]+";";K(d,"style",g)}e&&this.added&&this.renderer.buildText(this)}return this},on:function(a,b){var c=this,d=c.element;return db&&"click"===a?(d.ontouchstart=function(a){c.touchEventFired=qa.now(),a.preventDefault(),b.call(d,a)},d.onclick=function(a){(-1===za.indexOf("Android")||qa.now()-(c.touchEventFired||0)>1100)&&b.call(d,a)}):d["on"+a]=b,this},setRadialReference:function(a){var b=this.renderer.gradients[this.element.gradient];return this.element.radialReference=a,b&&b.radAttr&&b.animate(this.renderer.getRadialAttr(a,b.radAttr)),this},translate:function(a,b){return this.attr({translateX:a,translateY:b})},invert:function(){return this.inverted=!0,this.updateTransform(),this},updateTransform:function(){var a=this.translateX||0,b=this.translateY||0,c=this.scaleX,d=this.scaleY,e=this.inverted,f=this.rotation,g=this.element;e&&(a+=this.attr("width"),b+=this.attr("height")),a=["translate("+a+","+b+")"],e?a.push("rotate(90) scale(-1,1)"):f&&a.push("rotate("+f+" "+(g.getAttribute("x")||0)+" "+(g.getAttribute("y")||0)+")"),(q(c)||q(d))&&a.push("scale("+p(c,1)+" "+p(d,1)+")"),a.length&&g.setAttribute("transform",a.join(" "))},toFront:function(){var a=this.element;return a.parentNode.appendChild(a),this},align:function(a,b,c){var d,e,f,g,h={};return e=this.renderer,f=e.alignedObjects,a?(this.alignOptions=a,this.alignByTranslate=b,(!c||xa(c))&&(this.alignTo=d=c||"renderer",oa(f,this),f.push(this),c=null)):(a=this.alignOptions,b=this.alignByTranslate,d=this.alignTo),c=p(c,e[d],e),d=a.align,e=a.verticalAlign,f=(c.x||0)+(a.x||0),g=(c.y||0)+(a.y||0),"right"!==d&&"center"!==d||(f+=(c.width-(a.width||0))/{right:1,center:2}[d]),h[b?"translateX":"x"]=B(f),"bottom"!==e&&"middle"!==e||(g+=(c.height-(a.height||0))/({bottom:1,middle:2}[e]||1)),h[b?"translateY":"y"]=B(g),this[this.placed?"animate":"attr"](h),this.placed=!0,this.alignAttr=h,this},getBBox:function(a,b){var c,k,m,r,d=this.renderer,h=this.element,i=this.styles,e=this.textStr,j=h.style,l=d.cache,n=d.cacheKeys,f=p(b,this.rotation),g=f*fa;if(e!==A&&(r=["",f||0,i&&i.fontSize,h.style.width].join(","),r=""===e||Rb.test(e)?"num:"+e.toString().length+r:e+r),r&&!a&&(c=l[r]),!c){if(h.namespaceURI===Fa||d.forExport){try{m=this.fakeTS&&function(a){o(h.querySelectorAll(".highcharts-text-shadow"),function(b){b.style.display=a})},Na&&j.textShadow?(k=j.textShadow,j.textShadow=""):m&&m("none"),c=h.getBBox?u({},h.getBBox()):{width:h.offsetWidth,height:h.offsetHeight},k?j.textShadow=k:m&&m("")}catch(s){}(!c||c.width<0)&&(c={width:0,height:0})}else c=this.htmlGetBBox();if(d.isSVG&&(d=c.width,e=c.height,ya&&i&&"11px"===i.fontSize&&"16.9"===e.toPrecision(3)&&(c.height=e=14),f&&(c.width=P(e*$(g))+P(d*U(g)),c.height=P(e*U(g))+P(d*$(g)))),r){for(;n.length>250;)delete l[n.shift()];l[r]||n.push(r),l[r]=c}}return c},show:function(a){return this.attr({visibility:a?"inherit":"visible"})},hide:function(){return this.attr({visibility:"hidden"})},fadeOut:function(a){var b=this;b.animate({opacity:0},{duration:a||150,complete:function(){b.attr({y:-9999})}})},add:function(a){var d,b=this.renderer,c=this.element;return a&&(this.parentGroup=a),this.parentInverted=a&&a.inverted,void 0!==this.textStr&&b.buildText(this),this.added=!0,(!a||a.handleZ||this.zIndex)&&(d=this.zIndexSetter()),d||(a?a.element:b.box).appendChild(c),this.onAdd&&this.onAdd(),this},safeRemoveChild:function(a){var b=a.parentNode;b&&b.removeChild(a)},destroy:function(){var e,f,a=this,b=a.element||{},c=a.shadows,d=a.renderer.isSVG&&"SPAN"===b.nodeName&&a.parentGroup;if(b.onclick=b.onmouseout=b.onmouseover=b.onmousemove=b.point=null,Oa(a),a.clipPath&&(a.clipPath=a.clipPath.destroy()),a.stops){for(f=0;f=e;e++)f=g.cloneNode(0),h=2*i+1-2*e,K(f,{isShadow:"true",stroke:a.color||"black","stroke-opacity":k*e,"stroke-width":h,transform:"translate"+j,fill:"none"}),c&&(K(f,"height",t(K(f,"height")-h,0)),f.cutHeight=h),b?b.element.appendChild(f):g.parentNode.insertBefore(f,g),d.push(f);this.shadows=d}return this},xGetter:function(a){return"circle"===this.element.nodeName&&(a={x:"cx",y:"cy"}[a]||a),this._defaultGetter(a)},_defaultGetter:function(a){return a=p(this[a],this.element?this.element.getAttribute(a):null,0),/^[\-0-9\.]+$/.test(a)&&(a=parseFloat(a)),a},dSetter:function(a,b,c){a&&a.join&&(a=a.join(" ")),/(NaN| {2}|^$)/.test(a)&&(a="M 0 0"),c.setAttribute(b,a),this[b]=a},dashstyleSetter:function(a){var b;if(a=a&&a.toLowerCase()){for(a=a.replace("shortdashdotdot","3,1,1,1,1,1,").replace("shortdashdot","3,1,1,1").replace("shortdot","1,1,").replace("shortdash","3,1,").replace("longdash","8,3,").replace(/dot/g,"1,3,").replace("dash","4,3,").replace(/,$/,"").split(","),b=a.length;b--;)a[b]=C(a[b])*this["stroke-width"];a=a.join(",").replace("NaN","none"),this.element.setAttribute("stroke-dasharray",a)}},alignSetter:function(a){this.element.setAttribute("text-anchor",{left:"start",center:"middle",right:"end"}[a])},opacitySetter:function(a,b,c){this[b]=a,c.setAttribute(b,a)},titleSetter:function(a){var b=this.element.getElementsByTagName("title")[0];b||(b=y.createElementNS(Fa,"title"),this.element.appendChild(b)),b.appendChild(y.createTextNode(String(p(a),"").replace(/<[^>]*>/g,"")))},textSetter:function(a){a!==this.textStr&&(delete this.bBox,this.textStr=a,this.added&&this.renderer.buildText(this))},fillSetter:function(a,b,c){"string"==typeof a?c.setAttribute(b,a):a&&this.colorGradient(a,b,c)},visibilitySetter:function(a,b,c){"inherit"===a?c.removeAttribute(b):c.setAttribute(b,a)},zIndexSetter:function(a,b){var e,f,g,h,i,c=this.renderer,d=this.parentGroup;if(c=(d||c).element||c.box,g=this.element,e=this.added,q(a)&&(g.setAttribute(b,a),a=+a,this[b]===a&&(e=!1),this[b]=a),e){for((a=this.zIndex)&&d&&(d.handleZ=!0),d=c.childNodes,i=0;ia||!q(a)&&q(f))&&(c.insertBefore(g,e),h=!0);h||c.appendChild(g)}return h},_defaultSetter:function(a,b,c){c.setAttribute(b,a)}},O.prototype.yGetter=O.prototype.xGetter,O.prototype.translateXSetter=O.prototype.translateYSetter=O.prototype.rotationSetter=O.prototype.verticalAlignSetter=O.prototype.scaleXSetter=O.prototype.scaleYSetter=function(a,b){this[b]=a,this.doTransform=!0},O.prototype["stroke-widthSetter"]=O.prototype.strokeSetter=function(a,b,c){this[b]=a,this.stroke&&this["stroke-width"]?(this.strokeWidth=this["stroke-width"],O.prototype.fillSetter.call(this,this.stroke,"stroke",c),c.setAttribute("stroke-width",this["stroke-width"]),this.hasStroke=!0):"stroke-width"===b&&0===a&&this.hasStroke&&(c.removeAttribute("stroke"),this.hasStroke=!1)},Ca=function(){this.init.apply(this,arguments)},Ca.prototype={Element:O,init:function(a,b,c,d,e,f){var g,h;d=this.createElement("svg").attr({version:"1.1"}).css(this.getStyle(d)),g=d.element,a.appendChild(g),-1===a.innerHTML.indexOf("xmlns")&&K(g,"xmlns",Fa),this.isSVG=!0,this.box=g,this.boxWrapper=d,this.alignedObjects=[],this.url=(Na||mb)&&y.getElementsByTagName("base").length?E.location.href.replace(/#.*?$/,"").replace(/([\('\)])/g,"\\$1").replace(/ /g,"%20"):"",this.createElement("desc").add().element.appendChild(y.createTextNode("Created with Highcharts 4.2.2")),this.defs=this.createElement("defs").add(),this.allowHTML=f,this.forExport=e,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.setSize(b,c,!1),Na&&a.getBoundingClientRect&&(this.subPixelFix=b=function(){L(a,{left:0,top:0}),h=a.getBoundingClientRect(),L(a,{left:ua(h.left)-h.left+"px",top:ua(h.top)-h.top+"px"})},b(),M(E,"resize",b))},getStyle:function(a){return this.style=u({fontFamily:'"Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif',fontSize:"12px"},a)},isHidden:function(){return!this.boxWrapper.getBBox().width},destroy:function(){var a=this.defs;return this.box=null,this.boxWrapper=this.boxWrapper.destroy(),Sa(this.gradients||{}),this.gradients=null,a&&(this.defs=a.destroy()),this.subPixelFix&&V(E,"resize",this.subPixelFix),this.alignedObjects=null},createElement:function(a){var b=new this.Element;return b.init(this,a),b},draw:function(){},getRadialAttr:function(a,b){return{cx:a[0]-a[2]/2+b.cx*a[2],cy:a[1]-a[2]/2+b.cy*a[2],r:b.r*a[2]}},buildText:function(a){for(var h,i,b=a.element,c=this,d=c.forExport,e=p(a.textStr,"").toString(),f=-1!==e.indexOf("<"),g=b.childNodes,k=K(b,"x"),j=a.styles,m=a.textWidth,l=j&&j.lineHeight,n=j&&j.textShadow,r=j&&"ellipsis"===j.textOverflow,s=g.length,R=m&&!a.added&&this.box,v=function(a){return l?C(l):c.fontMetrics(/(px|em)$/.test(a&&a.style.fontSize)?a.style.fontSize:j&&j.fontSize||c.style.fontSize||12,a).h},x=function(a){return a.replace(/</g,"<").replace(/>/g,">")};s--;)b.removeChild(g[s]);f||n||r||-1!==e.indexOf(" ")?(h=/<.*style="([^"]+)".*>/, i=/<.*href="(http[^"]+)".*>/,R&&R.appendChild(b),e=f?e.replace(/<(b|strong)>/g,'').replace(/<(i|em)>/g,'').replace(//g,"").split(//g):[e],""===e[e.length-1]&&e.pop(),o(e,function(e,f){var g,l=0,e=e.replace(//g,"|||");g=e.split("|||"),o(g,function(e){var n,s,p,R,o,w,q,t,u,A,B,z,D;if((""!==e||1===g.length)&&(n={},s=y.createElementNS(Fa,"tspan"),h.test(e)&&(p=e.match(h)[1].replace(/(;| |^)color([ :])/,"$1fill$2"),K(s,"style",p)),i.test(e)&&!d&&(K(s,"onclick",'location.href="'+e.match(i)[1]+'"'),L(s,{cursor:"pointer"})),e=x(e.replace(/<(.|\n)*?>/g,"")||" ")," "!==e)){if(s.appendChild(y.createTextNode(e)),l?n.dx=0:f&&null!==k&&(n.x=k),K(s,n),b.appendChild(s),!l&&f&&(!ca&&d&&L(s,{display:"block"}),K(s,"dy",v(s))),m){for(n=e.replace(/([^\^])-/g,"$1- ").split(" "),R=g.length>1||f||n.length>1&&"nowrap"!==j.whiteSpace,t=[],u=v(s),A=1,B=a.rotation,z=e,D=z.length;(R||r)&&(n.length||t.length);)a.rotation=0,o=a.getBBox(!0),q=o.width,!ca&&c.forExport&&(q=c.measureSpanWidth(s.firstChild.data,a.styles)),o=q>m,void 0===w&&(w=o),r&&w?(D/=2,""===z||!o&&.5>D?n=[]:(o&&(w=!0),z=e.substring(0,z.length+(o?-1:1)*ua(D)),n=[z+(m>3?"…":"")],s.removeChild(s.firstChild))):o&&1!==n.length?(s.removeChild(s.firstChild),t.unshift(n.pop())):(n=t,t=[],n.length&&(A++,s=y.createElementNS(Fa,"tspan"),K(s,{dy:u,x:k}),p&&K(s,"style",p),b.appendChild(s)),q>m&&(m=q)),n.length&&s.appendChild(y.createTextNode(n.join(" ").replace(/- /g,"-")));w&&a.attr("title",a.textStr),a.rotation=B}l++}})}),R&&R.removeChild(b),n&&a.applyTextShadow&&a.applyTextShadow(n)):b.appendChild(y.createTextNode(x(e)))},getContrast:function(a){return a=ia(a).rgba,a[0]+a[1]+a[2]>384?"#000000":"#FFFFFF"},button:function(a,b,c,d,e,f,g,h,i){var m,l,n,r,s,p,k=this.label(a,b,c,i,null,null,null,null,"button"),j=0,a={x1:0,y1:0,x2:0,y2:1},e=D({"stroke-width":1,stroke:"#CCCCCC",fill:{linearGradient:a,stops:[[0,"#FEFEFE"],[1,"#F6F6F6"]]},r:2,padding:5,style:{color:"black"}},e);return n=e.style,delete e.style,f=D(e,{stroke:"#68A",fill:{linearGradient:a,stops:[[0,"#FFF"],[1,"#ACF"]]}},f),r=f.style,delete f.style,g=D(e,{stroke:"#68A",fill:{linearGradient:a,stops:[[0,"#9BD"],[1,"#CDF"]]}},g),s=g.style,delete g.style,h=D(e,{style:{color:"#CCC"}},h),p=h.style,delete h.style,M(k.element,ya?"mouseover":"mouseenter",function(){3!==j&&k.attr(f).css(r)}),M(k.element,ya?"mouseout":"mouseleave",function(){3!==j&&(m=[e,f,g][j],l=[n,r,s][j],k.attr(m).css(l))}),k.setState=function(a){(k.state=j=a)?2===a?k.attr(g).css(s):3===a&&k.attr(h).css(p):k.attr(e).css(n)},k.on("click",function(a){3!==j&&d.call(k,a)}).attr(e).css(u({cursor:"default"},n))},crispLine:function(a,b){return a[1]===a[4]&&(a[1]=a[4]=B(a[1])-b%2/2),a[2]===a[5]&&(a[2]=a[5]=B(a[2])+b%2/2),a},path:function(a){var b={fill:"none"};return Ja(a)?b.d=a:Y(a)&&u(b,a),this.createElement("path").attr(b)},circle:function(a,b,c){return a=Y(a)?a:{x:a,y:b,r:c},b=this.createElement("circle"),b.xSetter=b.ySetter=function(a,b,c){c.setAttribute("c"+b,a)},b.attr(a)},arc:function(a,b,c,d,e,f){return Y(a)&&(b=a.y,c=a.r,d=a.innerR,e=a.start,f=a.end,a=a.x),a=this.symbol("arc",a||0,b||0,c||0,c||0,{innerR:d||0,start:e||0,end:f||0}),a.r=c,a},rect:function(a,b,c,d,e,f){var e=Y(a)?a.r:e,g=this.createElement("rect"),a=Y(a)?a:a===A?{}:{x:a,y:b,width:t(c,0),height:t(d,0)};return f!==A&&(a.strokeWidth=f,a=g.crisp(a)),e&&(a.r=e),g.rSetter=function(a){K(this.element,{rx:a,ry:a})},g.attr(a)},setSize:function(a,b,c){var d=this.alignedObjects,e=d.length;for(this.width=a,this.height=b,this.boxWrapper[p(c,!0)?"animate":"attr"]({width:a,height:b});e--;)d[e].align()},g:function(a){var b=this.createElement("g");return q(a)?b.attr({"class":"highcharts-"+a}):b},image:function(a,b,c,d,e){var f={preserveAspectRatio:"none"};return arguments.length>1&&u(f,{x:b,y:c,width:d,height:e}),f=this.createElement("image").attr(f),f.element.setAttributeNS?f.element.setAttributeNS("http://www.w3.org/1999/xlink","href",a):f.element.setAttribute("hc-svg-href",a),f},symbol:function(a,b,c,d,e,f){var h,j,m,g=this,i=this.symbols[a],i=i&&i(B(b),B(c),d,e,f),k=/^url\((.*?)\)$/;return i?(h=this.path(i),u(h,{symbolName:a,x:b,y:c,width:d,height:e}),f&&u(h,f)):k.test(a)&&(m=function(a,b){a.element&&(a.attr({width:b[0],height:b[1]}),a.alignByTranslate||a.translate(B((d-b[0])/2),B((e-b[1])/2)))},j=a.match(k)[1],a=Nb[j]||f&&f.width&&f.height&&[f.width,f.height],h=this.image(j).attr({x:b,y:c}),h.isImg=!0,a?m(h,a):(h.attr({width:0,height:0}),Z("img",{onload:function(){0===this.width&&(L(this,{position:"absolute",top:"-999em"}),y.body.appendChild(this)),m(h,Nb[j]=[this.width,this.height]),this.parentNode&&this.parentNode.removeChild(this),g.imgCount--,g.imgCount||T[g.chartIndex].onload()},src:j})),this.imgCount++),h},symbols:{circle:function(a,b,c,d){var e=.166*c;return["M",a+c/2,b,"C",a+c+e,b,a+c+e,b+d,a+c/2,b+d,"C",a-e,b+d,a-e,b,a+c/2,b,"Z"]},square:function(a,b,c,d){return["M",a,b,"L",a+c,b,a+c,b+d,a,b+d,"Z"]},triangle:function(a,b,c,d){return["M",a+c/2,b,"L",a+c,b+d,a,b+d,"Z"]},"triangle-down":function(a,b,c,d){return["M",a,b,"L",a+c,b,a+c/2,b+d,"Z"]},diamond:function(a,b,c,d){return["M",a+c/2,b,"L",a+c,b+d/2,a+c/2,b+d,a,b+d/2,"Z"]},arc:function(a,b,c,d,e){var f=e.start,c=e.r||c||d,g=e.end-.001,d=e.innerR,h=e.open,i=U(f),k=$(f),j=U(g),g=$(g),e=e.end-fc&&e>b+g&&b+d-g>e?i.splice(13,3,"L",a+c,e-6,a+c+6,e,a+c,e+6,a+c,b+d-f):h&&0>h&&e>b+g&&b+d-g>e?i.splice(33,3,"L",a,e+6,a-6,e,a,e-6,a,b+f):e&&e>d&&h>a+g&&a+c-g>h?i.splice(23,3,"L",h+6,b+d,h,b+d+6,h-6,b+d,a+f,b+d):e&&0>e&&h>a+g&&a+c-g>h&&i.splice(3,3,"L",h-6,b,h,b-6,h+6,b,c-f,b),i}},clipRect:function(a,b,c,d){var e="highcharts-"+zb++,f=this.createElement("clipPath").attr({id:e}).add(this.defs),a=this.rect(a,b,c,d,0).add(f);return a.id=e,a.clipPath=f,a.count=0,a},text:function(a,b,c,d){var e=ga||!ca&&this.forExport,f={};return!d||!this.allowHTML&&this.forExport?(f.x=Math.round(b||0),c&&(f.y=Math.round(c)),(a||0===a)&&(f.text=a),a=this.createElement("text").attr(f),e&&a.css({position:"absolute"}),d||(a.xSetter=function(a,b,c){var e,l,d=c.getElementsByTagName("tspan"),f=c.getAttribute(b);for(l=0;la?a+3:B(1.2*a),d=B(.8*c),{h:c,b:d,f:a}},rotCorr:function(a,b,c){var d=a;return b&&c&&(d=t(d*U(b*fa),4)),{x:-a/3*$(b*fa),y:d}},label:function(a,b,c,d,e,f,g,h,i){var l,n,v,x,w,t,z,y,C,k=this,j=k.g(i),m=k.text("",0,0,g).attr({zIndex:1}),r=0,s=3,p=0,ba=0,gb={},Bb=function(){var a,b;a=m.element.style,n=(void 0===v||void 0===x||j.styles.textAlign)&&q(m.textStr)&&m.getBBox(),j.width=(v||n.width||0)+2*s+p,j.height=(x||n.height||0)+2*s,z=s+k.fontMetrics(a&&a.fontSize,m).b,y&&(l||(a=ba,b=(h?-z:0)+ba,j.box=l=d?k.symbol(d,a,b,j.width,j.height,gb):k.rect(a,b,j.width,j.height,0,gb["stroke-width"]),l.isImg||l.attr("fill","none"),l.add(j)),l.isImg||l.attr(u({width:B(j.width),height:B(j.height)},gb)),gb=null)},F=function(){var c,a=j.styles,a=a&&a.textAlign,b=p+s;c=h?0:z,q(v)&&n&&("center"===a||"right"===a)&&(b+={center:.5,right:1}[a]*(v-n.width)),b===m.x&&c===m.y||(m.attr("x",b),c!==A&&m.attr("y",c)),m.x=b,m.y=c},E=function(a,b){l?l.attr(a,b):gb[a]=b};return j.onAdd=function(){m.add(j),j.attr({text:a||0===a?a:"",x:b,y:c}),l&&q(e)&&j.attr({anchorX:e,anchorY:f})},j.widthSetter=function(a){v=a},j.heightSetter=function(a){x=a},j.paddingSetter=function(a){q(a)&&a!==s&&(s=j.padding=a,F())},j.paddingLeftSetter=function(a){q(a)&&a!==p&&(p=a,F())},j.alignSetter=function(a){a={left:0,center:.5,right:1}[a],a!==r&&(r=a,n&&j.attr({x:b}))},j.textSetter=function(a){a!==A&&m.textSetter(a),Bb(),F()},j["stroke-widthSetter"]=function(a,b){a&&(y=!0),ba=a%2/2,E(b,a)},j.strokeSetter=j.fillSetter=j.rSetter=function(a,b){"fill"===b&&a&&(y=!0),E(b,a)},j.anchorXSetter=function(a,b){e=a,E(b,B(a)-ba-w)},j.anchorYSetter=function(a,b){f=a,E(b,a-t)},j.xSetter=function(a){j.x=a,r&&(a-=r*((v||n.width)+2*s)),w=B(a),j.attr("translateX",w)},j.ySetter=function(a){t=j.y=B(a),j.attr("translateY",t)},C=j.css,u(j,{css:function(a){if(a){var b={},a=D(a);o(j.textProps,function(c){a[c]!==A&&(b[c]=a[c],delete a[c])}),m.css(b)}return C.call(j,a)},getBBox:function(){return{width:n.width+2*s,height:n.height+2*s,x:n.x-s,y:n.y-s}},shadow:function(a){return l&&l.shadow(a),j},destroy:function(){V(j.element,"mouseenter"),V(j.element,"mouseleave"),m&&(m=m.destroy()),l&&(l=l.destroy()),O.prototype.destroy.call(j),j=k=Bb=F=E=null}})}},cb=Ca,u(O.prototype,{htmlCss:function(a){var b=this.element;return(b=a&&"SPAN"===b.tagName&&a.width)&&(delete a.width,this.textWidth=b,this.updateTransform()),a&&"ellipsis"===a.textOverflow&&(a.whiteSpace="nowrap",a.overflow="hidden"),this.styles=u(this.styles,a),L(this.element,a),this},htmlGetBBox:function(){var a=this.element;return"text"===a.nodeName&&(a.style.position="absolute"),{x:a.offsetLeft,y:a.offsetTop,width:a.offsetWidth,height:a.offsetHeight}},htmlUpdateTransform:function(){var a,b,c,d,e,f,g,h,i,k,j,m,l;this.added?(a=this.renderer,b=this.element,c=this.translateX||0,d=this.translateY||0,e=this.x||0,f=this.y||0,g=this.textAlign||"left",h={left:0,center:.5,right:1}[g],i=this.shadows,k=this.styles,L(b,{marginLeft:c,marginTop:d}),i&&o(i,function(a){L(a,{marginLeft:c+1,marginTop:d+1})}),this.inverted&&o(b.childNodes,function(c){a.invertChild(c,b)}),"SPAN"===b.tagName&&(i=this.rotation,j=C(this.textWidth),m=k&&k.whiteSpace,l=[i,g,b.innerHTML,this.textWidth,this.textAlign].join(","),l!==this.cTT&&(k=a.fontMetrics(b.style.fontSize).b,q(i)&&this.setSpanRotation(i,h,k),b.offsetWidth>j&&/[ \-]/.test(b.textContent||b.innerText)?(L(b,{width:j+"px",display:"block",whiteSpace:m||"normal"}),this.hasTextWidth=!0):this.hasTextWidth&&(L(b,{width:"",display:"",whiteSpace:m||"nowrap"}),this.hasTextWidth=!1),this.getSpanCorrection(this.hasTextWidth?j:b.offsetWidth,k,h,i,g)),L(b,{left:e+(this.xCorr||0)+"px",top:f+(this.yCorr||0)+"px"}),mb&&(k=b.offsetHeight),this.cTT=l)):this.alignOnAdd=!0},setSpanRotation:function(a,b,c){var d={},e=ya?"-ms-transform":mb?"-webkit-transform":Na?"MozTransform":Lb?"-o-transform":"";d[e]=d.transform="rotate("+a+"deg)",d[e+(Na?"Origin":"-origin")]=d.transformOrigin=100*b+"% "+c+"px",L(this.element,d)},getSpanCorrection:function(a,b,c){this.xCorr=-a*c,this.yCorr=-b}}),u(Ca.prototype,{html:function(a,b,c){var d=this.createElement("span"),e=d.element,f=d.renderer,g=function(a,b){o(["opacity","visibility"],function(c){fb(a,c+"Setter",function(a,c,d,e){a.call(this,c,d,e),b[d]=c})})};return d.textSetter=function(a){a!==e.innerHTML&&delete this.bBox,e.innerHTML=this.textStr=a,d.htmlUpdateTransform()},g(d,d.element.style),d.xSetter=d.ySetter=d.alignSetter=d.rotationSetter=function(a,b){"align"===b&&(b="textAlign"),d[b]=a,d.htmlUpdateTransform()},d.attr({text:a,x:B(b),y:B(c)}).css({position:"absolute",fontFamily:this.style.fontFamily,fontSize:this.style.fontSize}),e.style.whiteSpace="nowrap",d.css=d.htmlCss,f.isSVG&&(d.add=function(a){var b,c=f.box.parentNode,j=[];if(this.parentGroup=a){if(b=a.div,!b){for(;a;)j.push(a),a=a.parentGroup;o(j.reverse(),function(a){var d,e=K(a.element,"class");e&&(e={className:e}),b=a.div=a.div||Z(Ma,e,{position:"absolute",left:(a.translateX||0)+"px",top:(a.translateY||0)+"px"},b||c),d=b.style,u(a,{translateXSetter:function(b,c){d.left=b+"px",a[c]=b,a.doTransform=!0},translateYSetter:function(b,c){d.top=b+"px",a[c]=b,a.doTransform=!0}}),g(a,d)})}}else b=c;return b.appendChild(e),d.added=!0,d.alignOnAdd&&d.htmlUpdateTransform(),d}),d}}),ca||ga||(J={init:function(a,b){var c=["<",b,' filled="f" stroked="f"'],d=["position: ","absolute",";"],e=b===Ma;("shape"===b||e)&&d.push("left:0;top:0;width:1px;height:1px;"),d.push("visibility: ",e?"hidden":"visible"),c.push(' style="',d.join(""),'"/>'),b&&(c=e||"span"===b||"img"===b?c.join(""):a.prepVML(c),this.element=Z(c)),this.renderer=a},add:function(a){var b=this.renderer,c=this.element,d=b.box,e=a&&a.inverted,d=a?a.element||a:d;return a&&(this.parentGroup=a),e&&b.invertChild(c,d),d.appendChild(c),this.added=!0,this.alignOnAdd&&!this.deferUpdateTransform&&this.updateTransform(),this.onAdd&&this.onAdd(),this},updateTransform:O.prototype.htmlUpdateTransform,setSpanRotation:function(){var a=this.rotation,b=U(a*fa),c=$(a*fa);L(this.element,{filter:a?["progid:DXImageTransform.Microsoft.Matrix(M11=",b,", M12=",-c,", M21=",c,", M22=",b,", sizingMethod='auto expand')"].join(""):"none"})},getSpanCorrection:function(a,b,c,d,e){var i,f=d?U(d*fa):1,g=d?$(d*fa):0,h=p(this.elemHeight,this.element.offsetHeight);this.xCorr=0>f&&-a,this.yCorr=0>g&&-h,i=0>f*g,this.xCorr+=g*b*(i?1-c:c),this.yCorr-=f*b*(d?i?c:1-c:1),e&&"left"!==e&&(this.xCorr-=a*c*(0>f?-1:1),d&&(this.yCorr-=h*c*(0>g?-1:1)),L(this.element,{textAlign:e}))},pathToVML:function(a){for(var b=a.length,c=[];b--;)ma(a[b])?c[b]=B(10*a[b])-5:"Z"===a[b]?c[b]="x":(c[b]=a[b],!a.isArc||"wa"!==a[b]&&"at"!==a[b]||(c[b+5]===c[b+7]&&(c[b+7]+=a[b+7]>a[b+5]?1:-1),c[b+6]===c[b+8]&&(c[b+8]+=a[b+8]>a[b+6]?1:-1)));return c.join(" ")||"x"},clip:function(a){var c,b=this;return a?(c=a.members,oa(c,b),c.push(b),b.destroyClip=function(){oa(c,b)},a=a.getCSS(b)):(b.destroyClip&&b.destroyClip(),a={clip:lb?"inherit":"rect(auto)"}),b.css(a)},css:O.prototype.htmlCss,safeRemoveChild:function(a){a.parentNode&&Ta(a)},destroy:function(){return this.destroyClip&&this.destroyClip(),O.prototype.destroy.apply(this)},on:function(a,b){return this.element["on"+a]=function(){var a=E.event;a.target=a.srcElement,b(a)},this},cutOffPath:function(a,b){var c,a=a.split(/[ ,]/);return c=a.length,9!==c&&11!==c||(a[c-4]=a[c-2]=C(a[c-2])-10*b),a.join(" ")},shadow:function(a,b,c){var e,h,k,m,l,n,r,d=[],f=this.element,g=this.renderer,i=f.style,j=f.path;if(j&&"string"!=typeof j.value&&(j="x"),l=j,a){for(n=p(a.width,3),r=(a.opacity||.15)/n,e=1;3>=e;e++)m=2*n+1-2*e,c&&(l=this.cutOffPath(j.value,m+.5)),k=[''],h=Z(g.prepVML(k),null,{left:C(i.left)+p(a.offsetX,1),top:C(i.top)+p(a.offsetY,1)}),c&&(h.cutOff=m+1),k=[''],Z(g.prepVML(k),null,null,h),b?b.element.appendChild(h):f.parentNode.insertBefore(h,f),d.push(h);this.shadows=d}return this},updateShadows:Aa,setAttr:function(a,b){lb?this.element[a]=b:this.element.setAttribute(a,b)},classSetter:function(a){this.element.className=a},dashstyleSetter:function(a,b,c){(c.getElementsByTagName("stroke")[0]||Z(this.renderer.prepVML([""]),null,null,c))[b]=a||"solid",this[b]=a},dSetter:function(a,b,c){var d=this.shadows,a=a||[];if(this.d=a.join&&a.join(" "),c.path=a=this.pathToVML(a),d)for(c=d.length;c--;)d[c].path=d[c].cutOff?this.cutOffPath(a,d[c].cutOff):a;this.setAttr(b,a)},fillSetter:function(a,b,c){var d=c.nodeName;"SPAN"===d?c.style.color=a:"IMG"!==d&&(c.filled="none"!==a,this.setAttr("fillcolor",this.renderer.color(a,c,b,this)))},"fill-opacitySetter":function(a,b,c){Z(this.renderer.prepVML(["<",b.split("-")[0],' opacity="',a,'"/>']),null,null,c)},opacitySetter:Aa,rotationSetter:function(a,b,c){c=c.style,this[b]=c[b]=a,c.left=-B($(a*fa)+1)+"px",c.top=B(U(a*fa))+"px"},strokeSetter:function(a,b,c){this.setAttr("strokecolor",this.renderer.color(a,c,b,this))},"stroke-widthSetter":function(a,b,c){c.stroked=!!a,this[b]=a,ma(a)&&(a+="px"),this.setAttr("strokeweight",a)},titleSetter:function(a,b){this.setAttr(b,a)},visibilitySetter:function(a,b,c){"inherit"===a&&(a="visible"),this.shadows&&o(this.shadows,function(c){c.style[b]=a}),"DIV"===c.nodeName&&(a="hidden"===a?"-999em":0,lb||(c.style[b]=a?"visible":"hidden"),b="top"),c.style[b]=a},xSetter:function(a,b,c){this[b]=a,"x"===b?b="left":"y"===b&&(b="top"),this.updateClipping?(this[b]=a,this.updateClipping()):c.style[b]=a},zIndexSetter:function(a,b,c){c.style[b]=a}},J["stroke-opacitySetter"]=J["fill-opacitySetter"],z.VMLElement=J=pa(O,J),J.prototype.ySetter=J.prototype.widthSetter=J.prototype.heightSetter=J.prototype.xSetter,Cb={Element:J,isIE8:za.indexOf("MSIE 8.0")>-1,init:function(a,b,c,d){var e;if(this.alignedObjects=[],d=this.createElement(Ma).css(u(this.getStyle(d),{position:"relative"})),e=d.element,a.appendChild(d.element),this.isVML=!0,this.box=e,this.boxWrapper=d,this.gradients={},this.cache={},this.cacheKeys=[],this.imgCount=0,this.setSize(b,c,!1),!y.namespaces.hcv){y.namespaces.add("hcv","urn:schemas-microsoft-com:vml");try{y.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}catch(f){y.styleSheets[0].cssText+="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; } "}}},isHidden:function(){return!this.box.offsetWidth},clipRect:function(a,b,c,d){var e=this.createElement(),f=Y(a);return u(e,{members:[],count:0,left:(f?a.x:a)+1,top:(f?a.y:b)+1,width:(f?a.width:c)-1,height:(f?a.height:d)-1,getCSS:function(a){var b=a.element,c=b.nodeName,a=a.inverted,d=this.top-("shape"===c?b.offsetTop:0),e=this.left,b=e+this.width,f=d+this.height,d={clip:"rect("+B(a?e:d)+"px,"+B(a?f:b)+"px,"+B(a?b:f)+"px,"+B(a?d:e)+"px)"};return!a&&lb&&"DIV"===c&&u(d,{width:b+"px",height:f+"px"}),d},updateClipping:function(){o(e.members,function(a){a.element&&a.css(e.getCSS(a))})}})},color:function(a,b,c,d){var f,h,i,j,m,l,n,r,s,p,v,x,w,q,ba,t,u,A,B,z,y,e=this,g=/^rgba/,k="none";return a&&a.linearGradient?i="gradient":a&&a.radialGradient&&(i="pattern"),i?(l=a.linearGradient||a.radialGradient,x="",a=a.stops,q=[],ba=function(){h=[''],Z(e.prepVML(h),null,null,b)},n=a[0],w=a[a.length-1],n[0]>0&&a.unshift([0,n[1]]),w[0]<1&&a.push([1,w[1]]),o(a,function(a,b){g.test(a[1])?(f=ia(a[1]),j=f.get("rgb"),m=f.get("a")):(j=a[1],m=1),q.push(100*a[0]+"% "+j),b?(s=m,p=j):(r=m,v=j)}),"fill"===c?"gradient"===i?(c=l.x1||l[0]||0,a=l.y1||l[1]||0,n=l.x2||l[2]||0,l=l.y2||l[3]||0,x='angle="'+(90-180*W.atan((l-a)/(n-c))/ra)+'"',ba()):(k=l.r,t=2*k,u=2*k,A=l.cx,B=l.cy,z=b.radialReference,k=function(){z&&(y=d.getBBox(),A+=(z[0]-y.x)/y.width-.5,B+=(z[1]-y.y)/y.height-.5,t*=z[2]/y.width,u*=z[2]/y.height),x='src="'+N.global.VMLRadialGradientURL+'" size="'+t+","+u+'" origin="0.5,0.5" position="'+A+","+B+'" color2="'+v+'" ',ba()},d.added?k():d.onAdd=k,k=p):k=j):g.test(a)&&"IMG"!==b.tagName?(f=ia(a),d[c+"-opacitySetter"](f.get("a"),c,b),k=f.get("rgb")):(k=b.getElementsByTagName(c),k.length&&(k[0].opacity=1,k[0].type="solid"),k=a),k},prepVML:function(a){var b=this.isIE8,a=a.join("");return b?(a=a.replace("/>",' xmlns="urn:schemas-microsoft-com:vml" />'),a=-1===a.indexOf('style="')?a.replace("/>",' style="display:inline-block;behavior:url(#default#VML);" />'):a.replace('style="','style="display:inline-block;behavior:url(#default#VML);')):a=a.replace("<","1&&f.attr({x:b,y:c,width:d,height:e}),f},createElement:function(a){return"rect"===a?this.symbol(a):Ca.prototype.createElement.call(this,a)},invertChild:function(a,b){var c=this,d=b.style,e="IMG"===a.tagName&&a.style;L(a,{flip:"x",left:C(d.width)-(e?C(e.top):1),top:C(d.height)-(e?C(e.left):1),rotation:-90}),o(a.childNodes,function(b){c.invertChild(b,a)})},symbols:{arc:function(a,b,c,d,e){var f=e.start,g=e.end,h=e.r||c||d,c=e.innerR,d=U(f),i=$(f),k=U(g),j=$(g);return g-f===0?["x"]:(f=["wa",a-h,b-h,a+h,b+h,a+h*d,b+h*i,a+h*k,b+h*j],e.open&&!c&&f.push("e","M",a,b),f.push("at",a-c,b-c,a+c,b+c,a+c*k,b+c*j,a+c*d,b+c*i,"x","e"),f.isArc=!0,f)},circle:function(a,b,c,d,e){return e&&(c=d=2*e.r),e&&e.isCircle&&(a-=c/2,b-=d/2),["wa",a,b,a+c,b+d,a+c,b+d/2,a+c,b+d/2,"e"]},rect:function(a,b,c,d,e){return Ca.prototype.symbols[q(e)&&e.r?"callout":"square"].call(0,a,b,c,d,e)}}},z.VMLRenderer=J=function(){this.init.apply(this,arguments)},J.prototype=D(Ca.prototype,Cb),cb=J),Ca.prototype.measureSpanWidth=function(a,b){var d,c=y.createElement("span");return d=y.createTextNode(a),c.appendChild(d),L(c,b),this.box.appendChild(c),d=c.offsetWidth,Ta(c),d},ga&&(z.CanVGRenderer=J=function(){Fa="http://www.w3.org/1999/xhtml"},J.prototype.symbols={},Ob=function(){function a(){var d,a=b.length;for(d=0;a>d;d++)b[d]();b=[]}var b=[];return{push:function(c,d){if(0===b.length){var e=y.getElementsByTagName("head")[0],f=y.createElement("script");f.type="text/javascript",f.src=d,f.onload=a,e.appendChild(f)}b.push(c)}}}(),cb=J),Va.prototype={addLabel:function(){var j,a=this.axis,b=a.options,c=a.chart,d=a.categories,e=a.names,f=this.pos,g=b.labels,h=a.tickPositions,i=f===h[0],k=f===h[h.length-1],e=d?p(d[f],e[f],f):f,d=this.label,h=h.info;a.isDatetimeAxis&&h&&(j=b.dateTimeLabelFormats[h.higherRanks[f]||h.unitName]),this.isFirst=i,this.isLast=k,b=a.labelFormatter.call({axis:a,chart:c,isFirst:i,isLast:k,dateTimeLabelFormat:j,value:a.isLog?ea(na(e)):e}),q(d)?d&&d.attr({text:b}):(this.labelLength=(this.label=d=q(b)&&g.enabled?c.renderer.text(b,0,0,g.useHTML).css(D(g.style)).add(a.labelGroup):null)&&d.getBBox().width,this.rotation=0)},getLabelSize:function(){return this.label?this.label.getBBox()[this.axis.horiz?"height":"width"]:0},handleOverflow:function(a){var l,b=this.axis,c=a.x,d=b.chart.chartWidth,e=b.chart.spacing,f=p(b.labelLeft,F(b.pos,e[3])),e=p(b.labelRight,t(b.pos+b.len,d-e[1])),g=this.label,h=this.rotation,i={left:0,center:.5,right:1}[b.labelAlign],k=g.getBBox().width,j=b.slotWidth,m=1,n={};h?0>h&&f>c-i*k?l=B(c/U(h*fa)-f):h>0&&c+i*k>e&&(l=B((d-c)/U(h*fa))):(d=c+(1-i)*k,f>c-i*k?j=a.x+j*(1-i)-f:d>e&&(j=e-a.x+j*i,m=-1),j=F(b.slotWidth,j),jj||b.autoRotation&&g.styles.width)&&(l=j)),l&&(n.width=l,b.options.labels.style.textOverflow||(n.textOverflow="ellipsis"),g.css(n))},getPosition:function(a,b,c,d){var e=this.axis,f=e.chart,g=d&&f.oldChartHeight||f.chartHeight;return{x:a?e.translate(b+c,null,null,d)+e.transB:e.left+e.offset+(e.opposite?(d&&f.oldChartWidth||f.chartWidth)-e.right-e.left:0),y:a?g-e.bottom+e.offset-(e.opposite?e.height:0):g-e.translate(b+c,null,null,d)-e.transB}},getLabelPosition:function(a,b,c,d,e,f,g,h){var i=this.axis,k=i.transA,j=i.reversed,m=i.staggerLines,l=i.tickRotCorr||{x:0,y:0},n=e.y;return q(n)||(n=2===i.side?l.y+8:n=U(c.rotation*fa)*(l.y-c.getBBox(!1,0).height/2)),a=a+e.x+l.x-(f&&d?f*k*(j?-1:1):0),b=b+n-(f&&!d?f*k*(j?1:-1):0),m&&(c=g/(h||1)%m,i.opposite&&(c=m-c-1),b+=c*(i.labelOffset/m)),{x:a,y:B(b)}},getMarkPath:function(a,b,c,d,e,f){return f.crispLine(["M",a,b,"L",a+(e?0:-c),b+(e?c:0)],d)},render:function(a,b,c){var d=this.axis,e=d.options,f=d.chart.renderer,g=d.horiz,h=this.type,i=this.label,k=this.pos,j=e.labels,m=this.gridLine,l=h?h+"Grid":"grid",n=h?h+"Tick":"tick",r=e[l+"LineWidth"],s=e[l+"LineColor"],o=e[l+"LineDashStyle"],v=e[n+"Length"],l=p(e[n+"Width"],!h&&d.isXAxis?1:0),x=e[n+"Color"],w=e[n+"Position"],n=this.mark,q=j.step,ba=!0,t=d.tickmarkOffset,u=this.getPosition(g,k,t,b),z=u.x,u=u.y,B=g&&z===d.pos+d.len||!g&&u===d.pos?-1:1,c=p(c,1);this.isActive=!0,r&&(k=d.getPlotLinePath(k+t,r*B,b,!0),m===A&&(m={stroke:s,"stroke-width":r},o&&(m.dashstyle=o),h||(m.zIndex=1),b&&(m.opacity=0),this.gridLine=m=r?f.path(k).attr(m).add(d.gridGroup):null),!b&&m&&k&&m[this.isNew?"attr":"animate"]({d:k,opacity:c})),l&&v&&("inside"===w&&(v=-v),d.opposite&&(v=-v),h=this.getMarkPath(z,u,v,l*B,g,f),n?n.animate({d:h,opacity:c}):this.mark=f.path(h).attr({stroke:x,"stroke-width":l,opacity:c}).add(d.axisGroup)),i&&!isNaN(z)&&(i.xy=u=this.getLabelPosition(z,u,i,g,j,t,a,q),this.isFirst&&!this.isLast&&!p(e.showFirstLabel,1)||this.isLast&&!this.isFirst&&!p(e.showLastLabel,1)?ba=!1:g&&!d.isRadial&&!j.step&&!j.rotation&&!b&&0!==c&&this.handleOverflow(u),q&&a%q&&(ba=!1),ba&&!isNaN(u.y)?(u.opacity=c,i[this.isNew?"attr":"animate"](u),this.isNew=!1):i.attr("y",-9999))},destroy:function(){Sa(this,this.axis)}},z.PlotLineOrBand=function(a,b){this.axis=a,b&&(this.options=b,this.id=b.id)},z.PlotLineOrBand.prototype={render:function(){var r,a=this,b=a.axis,c=b.horiz,d=a.options,e=d.label,f=a.label,g=d.width,h=d.to,i=d.from,k=q(i)&&q(h),j=d.value,m=d.dashStyle,l=a.svgElem,n=[],s=d.color,o=p(d.zIndex,0),v=d.events,x={},w=b.chart.renderer;if(b.isLog&&(i=Da(i),h=Da(h),j=Da(j)),g)n=b.getPlotLinePath(j,g),x={stroke:s,"stroke-width":g},m&&(x.dashstyle=m);else{if(!k)return;n=b.getPlotBandPath(i,h,d),s&&(x.fill=s),d.borderWidth&&(x.stroke=d.borderColor,x["stroke-width"]=d.borderWidth)}if(x.zIndex=o,l)n?(l.show(),l.animate({d:n})):(l.hide(),f&&(a.label=f=f.destroy()));else if(n&&n.length&&(a.svgElem=l=w.path(n).attr(x).add(),v))for(r in d=function(b){l.on(b,function(c){v[b].apply(a,[c])})},v)d(r);return e&&q(e.text)&&n&&n.length&&b.width>0&&b.height>0&&!n.flat?(e=D({align:c&&k&&"center",x:c?!k&&4:10,verticalAlign:!c&&k&&"middle",y:c?k?16:10:k?6:-4,rotation:c&&!k&&90},e),this.renderLabel(e,n,k,o)):f&&f.hide(),a},renderLabel:function(a,b,c,d){var e=this.label,f=this.axis.chart.renderer;e||(e={align:a.textAlign||a.align,rotation:a.rotation},e.zIndex=d,this.label=e=f.text(a.text,0,0,a.useHTML).attr(e).css(a.style).add()),d=[b[1],b[4],c?b[6]:b[1]],b=[b[2],b[5],c?b[7]:b[2]],c=Ra(d),f=Ra(b),e.align(a,!1,{x:c,y:f,width:Ea(d)-c,height:Ea(b)-f}),e.show()},destroy:function(){oa(this.axis.plotLinesAndBands,this),delete this.axis,Sa(this)}},ka=z.Axis=function(){this.init.apply(this,arguments)},ka.prototype={defaultOptions:{dateTimeLabelFormats:{millisecond:"%H:%M:%S.%L",second:"%H:%M:%S",minute:"%H:%M",hour:"%H:%M",day:"%e. %b",week:"%e. %b",month:"%b '%y",year:"%Y"},endOnTick:!1,gridLineColor:"#D8D8D8",labels:{enabled:!0,style:{color:"#606060",cursor:"default",fontSize:"11px"},x:0,y:15},lineColor:"#C0D0E0",lineWidth:1,minPadding:.01,maxPadding:.01,minorGridLineColor:"#E0E0E0",minorGridLineWidth:1,minorTickColor:"#A0A0A0",minorTickLength:2,minorTickPosition:"outside",startOfWeek:1,startOnTick:!1,tickColor:"#C0D0E0",tickLength:10,tickmarkPlacement:"between",tickPixelInterval:100,tickPosition:"outside",title:{align:"middle",style:{color:"#707070"}},type:"linear"},defaultYAxisOptions:{endOnTick:!0,gridLineWidth:1,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8,y:3},lineWidth:0,maxPadding:.05,minPadding:.05,startOnTick:!0,title:{rotation:270,text:"Values"},stackLabels:{enabled:!1,formatter:function(){return z.numberFormat(this.total,-1)},style:D(aa.line.dataLabels.style,{color:"#000000"})}},defaultLeftAxisOptions:{labels:{x:-15,y:null},title:{rotation:270}},defaultRightAxisOptions:{labels:{x:15,y:null},title:{rotation:90}},defaultBottomAxisOptions:{labels:{autoRotation:[-45],x:0,y:null},title:{rotation:0}},defaultTopAxisOptions:{labels:{autoRotation:[-45],x:0,y:-15},title:{rotation:0}},init:function(a,b){var d,e,f,c=b.isX;this.chart=a,this.horiz=a.inverted?!c:c,this.coll=(this.isXAxis=c)?"xAxis":"yAxis",this.opposite=b.opposite,this.side=b.side||(this.horiz?this.opposite?0:2:this.opposite?1:3),this.setOptions(b),d=this.options,e=d.type,this.labelFormatter=d.labels.formatter||this.defaultLabelFormatter,this.userOptions=b,this.minPixelPadding=0,this.reversed=d.reversed,this.visible=d.visible!==!1,this.zoomEnabled=d.zoomEnabled!==!1,this.categories=d.categories||"category"===e,this.names=this.names||[],this.isLog="logarithmic"===e,this.isDatetimeAxis="datetime"===e,this.isLinked=q(d.linkedTo),this.ticks={},this.labelEdge=[],this.minorTicks={},this.plotLinesAndBands=[],this.alternateBands={},this.len=0,this.minRange=this.userMinRange=d.minRange||d.maxZoom,this.range=d.range,this.offset=d.offset||0,this.stacks={},this.oldStacks={},this.stacksTouched=0,this.min=this.max=null,this.crosshair=p(d.crosshair,ta(a.options.tooltip.crosshairs)[c?0:1],!1),d=this.options.events,-1===sa(this,a.axes)&&(c&&!this.isColorAxis?a.axes.splice(a.xAxis.length,0,this):a.axes.push(this),a[this.coll].push(this)),this.series=this.series||[],a.inverted&&c&&this.reversed===A&&(this.reversed=!0),this.removePlotLine=this.removePlotBand=this.removePlotBandOrLine;for(f in d)M(this,f,d[f]);this.isLog&&(this.val2lin=Da,this.lin2val=na)},setOptions:function(a){this.options=D(this.defaultOptions,this.isXAxis?{}:this.defaultYAxisOptions,[this.defaultTopAxisOptions,this.defaultRightAxisOptions,this.defaultBottomAxisOptions,this.defaultLeftAxisOptions][this.side],D(N[this.coll],a))},defaultLabelFormatter:function(){var g,a=this.axis,b=this.value,c=a.categories,d=this.dateTimeLabelFormat,e=N.lang.numericSymbols,f=e&&e.length,h=a.options.labels.format,a=a.isLog?b:a.tickInterval;if(h)g=La(h,this);else if(c)g=b;else if(d)g=Qa(d,b);else if(f&&a>=1e3)for(;f--&&g===A;)c=Math.pow(1e3,f+1),a>=c&&10*b%c===0&&null!==e[f]&&(g=z.numberFormat(b/c,-1)+e[f]);return g===A&&(g=P(b)>=1e4?z.numberFormat(b,-1):z.numberFormat(b,-1,A,"")),g},getSeriesExtremes:function(){var a=this,b=a.chart;a.hasVisibleSeries=!1,a.dataMin=a.dataMax=a.threshold=null,a.softThreshold=!a.isXAxis,a.buildStacks&&a.buildStacks(),o(a.series,function(c){if(c.visible||!b.options.chart.ignoreHiddenSeries){var f,d=c.options,e=d.threshold;a.hasVisibleSeries=!0,a.isLog&&0>=e&&(e=null),a.isXAxis?(d=c.xData,d.length&&(a.dataMin=F(p(a.dataMin,d[0]),Ra(d)),a.dataMax=t(p(a.dataMax,d[0]),Ea(d)))):(c.getExtremes(),f=c.dataMax,c=c.dataMin,q(c)&&q(f)&&(a.dataMin=F(p(a.dataMin,c),c),a.dataMax=t(p(a.dataMax,f),f)),q(e)&&(a.threshold=e),d.softThreshold&&!a.isLog||(a.softThreshold=!1))}})},translate:function(a,b,c,d,e,f){var g=this.linkedParent||this,h=1,i=0,k=d?g.oldTransA:g.transA,d=d?g.oldMin:g.min,j=g.minPixelPadding,e=(g.isOrdinal||g.isBroken||g.isLog&&e)&&g.lin2val;return k||(k=g.transA),c&&(h*=-1,i=g.len),g.reversed&&(h*=-1,i-=h*(g.sector||g.len)),b?(a=a*h+i,a-=j,a=a/k+d,e&&(a=g.lin2val(a))):(e&&(a=g.val2lin(a)),"between"===f&&(f=.5),a=h*(a-d)*k+i+h*j+(ma(f)?k*f*g.pointRange:0)),a},toPixels:function(a,b){return this.translate(a,!1,!this.horiz,null,!0)+(b?0:this.pos)},toValue:function(a,b){return this.translate(a-(b?0:this.pos),!0,!this.horiz,null,!0)},getPlotLinePath:function(a,b,c,d,e){var k,l,f=this.chart,g=this.left,h=this.top,j=c&&f.oldChartHeight||f.chartHeight,m=c&&f.oldChartWidth||f.chartWidth,i=this.transB,n=function(a,b,c){return(b>a||a>c)&&(d?a=F(t(b,a),c):l=!0),a};return e=p(e,this.translate(a,null,null,c)),a=c=B(e+i),i=k=B(j-e-i),isNaN(e)?l=!0:this.horiz?(i=h,k=j-this.bottom,a=c=n(a,g,g+this.width)):(a=g,c=m-this.right,i=k=n(i,h,h+this.height)),l&&!d?null:f.renderer.crispLine(["M",a,i,"L",c,k],b||1)},getLinearTickPositions:function(a,b,c){var d,e=ea(S(b/a)*a),f=ea(ua(c/a)*a),g=[];if(b===c&&ma(b))return[b];for(b=e;f>=b&&(g.push(b),b=ea(b+a),b!==d);)d=b;return g},getMinorTickPositions:function(){var g,a=this.options,b=this.tickPositions,c=this.minorTickInterval,d=[],f=this.pointRangePadding||0,e=this.min-f;if(f=this.max+f,g=f-e,g&&g/ce;e++)d=d.concat(this.getLogTickPositions(c,b[e-1],b[e],!0));else if(this.isDatetimeAxis&&"auto"===a.minorTickInterval)d=d.concat(this.getTimeTicks(this.normalizeTimeTickInterval(c),e,f,a.startOfWeek));else for(b=e+(b[0]-e)%c;f>=b;b+=c)d.push(b); return 0!==d.length&&this.trimTicks(d,a.startOnTick,a.endOnTick),d},adjustForMinRange:function(){var d,f,g,h,i,k,j,a=this.options,b=this.min,c=this.max,e=this.dataMax-this.dataMin>=this.minRange;this.isXAxis&&this.minRange===A&&!this.isLog&&(q(a.min)||q(a.max)?this.minRange=null:(o(this.series,function(a){for(i=a.xData,g=k=a.xIncrement?1:i.length-1;g>0;g--)h=i[g]-i[g-1],(f===A||f>h)&&(f=h)}),this.minRange=F(5*f,this.dataMax-this.dataMin))),c-bc-b&&(d[0]=c-j,d[1]=p(a.min,c-j),b=Ea(d))),this.min=b,this.max=c},setAxisTranslation:function(a){var e,b=this,c=b.max-b.min,d=b.axisPointRange||0,f=0,g=0,h=b.linkedParent,i=!!b.categories,k=b.transA,j=b.isXAxis;(j||i||d)&&(h?(f=h.minPointOffset,g=h.pointRangePadding):(o(b.series,function(a){var b=a.closestPointRange;!a.noSharedTooltip&&q(b)&&(e=q(e)?F(e,b):b)}),o(b.series,function(a){var c=i?1:j?p(a.options.pointRange,e,0):b.axisPointRange||0,a=a.options.pointPlacement;d=t(d,c),b.single||(f=t(f,xa(a)?0:c/2),g=t(g,"on"===a?0:c))})),h=b.ordinalSlope&&e?b.ordinalSlope/e:1,b.minPointOffset=f*=h,b.pointRangePadding=g*=h,b.pointRange=F(d,c),j&&(b.closestPointRange=e)),a&&(b.oldTransA=k),b.translationSlope=b.transA=k=b.len/(c+g||1),b.transB=b.horiz?b.left:b.bottom,b.minPixelPadding=k*f},minFromRange:function(){return this.max-this.range},setTickInterval:function(a){var s,R,v,x,b=this,c=b.chart,d=b.options,e=b.isLog,f=b.isDatetimeAxis,g=b.isXAxis,h=b.isLinked,i=d.maxPadding,k=d.minPadding,j=d.tickInterval,m=d.tickPixelInterval,l=b.categories,n=b.threshold,r=b.softThreshold;!f&&!l&&!h&&this.getTickAmount(),v=p(b.userMin,d.min),x=p(b.userMax,d.max),h?(b.linkedParent=c[b.coll][d.linkedTo],c=b.linkedParent.getExtremes(),b.min=p(c.min,c.dataMin),b.max=p(c.max,c.dataMax),d.type!==b.linkedParent.options.type&&X(11,1)):(!r&&q(n)&&(b.dataMin>=n?(s=n,k=0):b.dataMax<=n&&(R=n,i=0)),b.min=p(v,s,b.dataMin),b.max=p(x,R,b.dataMax)),e&&(!a&&F(b.min,p(b.dataMin,b.min))<=0&&X(10,1),b.min=ea(Da(b.min),15),b.max=ea(Da(b.max),15)),b.range&&q(b.max)&&(b.userMin=b.min=v=t(b.min,b.minFromRange()),b.userMax=x=b.max,b.range=null),b.beforePadding&&b.beforePadding(),b.adjustForMinRange(),l||b.axisPointRange||b.usePercentage||h||!q(b.min)||!q(b.max)||!(c=b.max-b.min)||(!q(v)&&k&&(b.min-=c*k),!q(x)&&i&&(b.max+=c*i)),ma(d.floor)&&(b.min=t(b.min,d.floor)),ma(d.ceiling)&&(b.max=F(b.max,d.ceiling)),r&&q(b.dataMin)&&(n=n||0,!q(v)&&b.min=n?b.min=n:!q(x)&&b.max>n&&b.dataMax<=n&&(b.max=n)),b.tickInterval=b.min===b.max||void 0===b.min||void 0===b.max?1:h&&!j&&m===b.linkedParent.options.tickPixelInterval?j=b.linkedParent.tickInterval:p(j,this.tickAmount?(b.max-b.min)/t(this.tickAmount-1,1):void 0,l?1:(b.max-b.min)*m/t(b.len,m)),g&&!a&&o(b.series,function(a){a.processData(b.min!==b.oldMin||b.max!==b.oldMax)}),b.setAxisTranslation(!0),b.beforeSetTickPositions&&b.beforeSetTickPositions(),b.postProcessTickInterval&&(b.tickInterval=b.postProcessTickInterval(b.tickInterval)),b.pointRange&&!j&&(b.tickInterval=t(b.pointRange,b.tickInterval)),a=p(d.minTickInterval,b.isDatetimeAxis&&b.closestPointRange),!j&&b.tickInterval.5&&b.tickInterval<5&&b.max>1e3&&b.max<9999)),!!this.tickAmount)),!this.tickAmount&&this.len&&(b.tickInterval=b.unsquish()),this.setTickPositions()},setTickPositions:function(){var b,g,a=this.options,c=a.tickPositions,d=a.tickPositioner,e=a.startOnTick,f=a.endOnTick;this.tickmarkOffset=this.categories&&"between"===a.tickmarkPlacement&&1===this.tickInterval?.5:0,this.minorTickInterval="auto"===a.minorTickInterval&&this.tickInterval?this.tickInterval/5:a.minorTickInterval,this.tickPositions=b=c&&c.slice(),!b&&(b=this.isDatetimeAxis?this.getTimeTicks(this.normalizeTimeTickInterval(this.tickInterval,a.units),this.min,this.max,a.startOfWeek,this.ordinalPositions,this.closestPointRange,!0):this.isLog?this.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,this.max),b.length>this.len&&(b=[b[0],b.pop()]),this.tickPositions=b,d&&(d=d.apply(this,[this.min,this.max])))&&(this.tickPositions=b=d),this.isLinked||(this.trimTicks(b,e,f),this.min===this.max&&q(this.min)&&!this.tickAmount&&(g=!0,this.min-=.5,this.max+=.5),this.single=g,!c&&!d&&this.adjustTickAmount())},trimTicks:function(a,b,c){var d=a[0],e=a[a.length-1],f=this.minPointOffset||0;if(b)this.min=d;else for(;this.min-f>a[0];)a.shift();if(c)this.max=e;else for(;this.max+fb&&(this.finalTickAmt=b,b=5),this.tickAmount=b},adjustTickAmount:function(){var a=this.tickInterval,b=this.tickPositions,c=this.tickAmount,d=this.finalTickAmt,e=b&&b.length;if(c>e){for(;b.lengthc&&(this.tickInterval*=2,this.setTickPositions());if(q(d)){for(a=c=b.length;a--;)(3===d&&a%2===1||2>=d&&a>0&&c-1>a)&&b.splice(a,1);this.finalTickAmt=A}},setScale:function(){var a,b;this.oldMin=this.min,this.oldMax=this.max,this.oldAxisLength=this.len,this.setAxisSize(),b=this.len!==this.oldAxisLength,o(this.series,function(b){(b.isDirtyData||b.isDirty||b.xAxis.isDirty)&&(a=!0)}),b||a||this.isLinked||this.forceRedraw||this.userMin!==this.oldUserMin||this.userMax!==this.oldUserMax||this.alignToOthers()?(this.resetStacks&&this.resetStacks(),this.forceRedraw=!1,this.getSeriesExtremes(),this.setTickInterval(),this.oldUserMin=this.userMin,this.oldUserMax=this.userMax,this.isDirty||(this.isDirty=b||this.min!==this.oldMin||this.max!==this.oldMax)):this.cleanStacks&&this.cleanStacks()},setExtremes:function(a,b,c,d,e){var f=this,g=f.chart,c=p(c,!0);o(f.series,function(a){delete a.kdTree}),e=u(e,{min:a,max:b}),H(f,"setExtremes",e,function(){f.userMin=a,f.userMax=b,f.eventArgs=e,c&&g.redraw(d)})},zoom:function(a,b){var c=this.dataMin,d=this.dataMax,e=this.options,f=F(c,p(e.min,c)),e=t(d,p(e.max,d));return this.allowZoomOutside||(q(c)&&f>=a&&(a=f),q(d)&&b>=e&&(b=e)),this.displayBtn=a!==A||b!==A,this.setExtremes(a,b,!1,A,{trigger:"zoom"}),!0},setAxisSize:function(){var a=this.chart,b=this.options,c=b.offsetLeft||0,d=this.horiz,e=p(b.width,a.plotWidth-c+(b.offsetRight||0)),f=p(b.height,a.plotHeight),g=p(b.top,a.plotTop),b=p(b.left,a.plotLeft+c),c=/%$/;c.test(f)&&(f=Math.round(parseFloat(f)/100*a.plotHeight)),c.test(g)&&(g=Math.round(parseFloat(g)/100*a.plotHeight+a.plotTop)),this.left=b,this.top=g,this.width=e,this.height=f,this.bottom=a.chartHeight-f-g,this.right=a.chartWidth-e-b,this.len=t(d?e:f,0),this.pos=d?b:g},getExtremes:function(){var a=this.isLog;return{min:a?ea(na(this.min)):this.min,max:a?ea(na(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}},getThreshold:function(a){var b=this.isLog,c=b?na(this.min):this.min,b=b?na(this.max):this.max;return null===a?a=0>b?b:c:c>a?a=c:a>b&&(a=b),this.translate(a,0,1,0,1)},autoLabelAlign:function(a){return a=(p(a,0)-90*this.side+720)%360,a>15&&165>a?"right":a>195&&345>a?"left":"center"},unsquish:function(){var g,k,m,a=this.ticks,b=this.options.labels,c=this.horiz,d=this.tickInterval,e=d,f=this.len/(((this.categories?1:0)+this.max-this.min)/d),h=b.rotation,i=this.chart.renderer.fontMetrics(b.style.fontSize,a[0]&&a[0].label),j=Number.MAX_VALUE,l=function(a){return a/=f||1,a=a>1?ua(a):1,a*d};return c?(m=!b.staggerLines&&!b.step&&(q(h)?[h]:f=-90&&90>=a)&&(k=l(P(i.h/$(fa*a))),b=k+P(a/360),j>b&&(j=b,g=a,e=k))}):b.step||(e=l(i.h)),this.autoRotation=m,this.labelRotation=p(g,h),e},renderUnsquish:function(){var m,n,r,a=this.chart,b=a.renderer,c=this.tickPositions,d=this.ticks,e=this.options.labels,f=this.horiz,g=a.margin,h=this.categories?c.length:c.length-1,g=this.slotWidth=f&&(e.step||0)<2&&!e.rotation&&(this.staggerLines||1)*a.plotWidth/h||!f&&(g[3]&&g[3]-a.spacing[3]||.33*a.chartWidth),i=t(1,B(g-2*(e.padding||5))),k={},h=b.fontMetrics(e.style.fontSize,d[0]&&d[0].label),j=e.style.textOverflow,l=0;if(xa(e.rotation)||(k.rotation=e.rotation||0),this.autoRotation)o(c,function(a){(a=d[a])&&a.labelLength>l&&(l=a.labelLength)}),l>i&&l>h.h?k.rotation=this.labelRotation:this.labelRotation=0;else if(g&&(m={width:i+"px"},!j))for(m.textOverflow="clip",n=c.length;!f&&n--;)r=c[n],(i=d[r].label)&&("ellipsis"===i.styles.textOverflow&&i.css({textOverflow:"clip"}),(i.getBBox().height>this.len/c.length-(h.h-h.f)||d[r].labelLength>g)&&(i.specCss={textOverflow:"ellipsis"}));k.rotation&&(m={width:(l>.5*a.chartHeight?.33*a.chartHeight:a.chartHeight)+"px"},!j)&&(m.textOverflow="ellipsis"),(this.labelAlign=e.align||this.autoLabelAlign(this.labelRotation))&&(k.align=this.labelAlign),o(c,function(a){var b=(a=d[a])&&a.label;b&&(b.attr(k),m&&b.css(D(m,b.specCss)),delete b.specCss,a.rotation=k.rotation)}),this.tickRotCorr=b.rotCorr(h.b,this.labelRotation||0,0!==this.side)},hasData:function(){return this.hasVisibleSeries||q(this.min)&&q(this.max)&&!!this.tickPositions},getOffset:function(){var k,j,l,u,a=this,b=a.chart,c=b.renderer,d=a.options,e=a.tickPositions,f=a.ticks,g=a.horiz,h=a.side,i=b.inverted?[1,0,3,2][h]:h,m=0,n=0,r=d.title,s=d.labels,R=0,v=a.opposite,x=b.axisOffset,b=b.clipOffset,w=[-1,1,1,-1][h],ba=a.axisParent;if(k=a.hasData(),a.showAxis=j=k||p(d.showEmpty,!0),a.staggerLines=a.horiz&&s.staggerLines,a.axisGroup||(a.gridGroup=c.g("grid").attr({zIndex:d.gridZIndex||1}).add(ba),a.axisGroup=c.g("axis").attr({zIndex:d.zIndex||2}).add(ba),a.labelGroup=c.g("axis-labels").attr({zIndex:s.zIndex||7}).addClass("highcharts-"+a.coll.toLowerCase()+"-labels").add(ba)),k||a.isLinked)o(e,function(b){f[b]?f[b].addLabel():f[b]=new Va(a,b)}),a.renderUnsquish(),s.reserveSpace!==!1&&(0===h||2===h||{1:"left",3:"right"}[h]===a.labelAlign||"center"===a.labelAlign)&&o(e,function(a){R=t(f[a].getLabelSize(),R)}),a.staggerLines&&(R*=a.staggerLines,a.labelOffset=R*(a.opposite?-1:1));else for(u in f)f[u].destroy(),delete f[u];r&&r.text&&r.enabled!==!1&&(a.axisTitle||(a.axisTitle=c.text(r.text,0,0,r.useHTML).attr({zIndex:7,rotation:r.rotation||0,align:r.textAlign||{low:v?"right":"left",middle:"center",high:v?"left":"right"}[r.align]}).addClass("highcharts-"+this.coll.toLowerCase()+"-title").css(r.style).add(a.axisGroup),a.axisTitle.isNew=!0),j&&(m=a.axisTitle.getBBox()[g?"height":"width"],l=r.offset,n=q(l)?0:p(r.margin,g?5:10)),a.axisTitle[j?"show":"hide"](!0)),a.offset=w*p(d.offset,x[h]),a.tickRotCorr=a.tickRotCorr||{x:0,y:0},c=2===h?a.tickRotCorr.y:0,g=Math.abs(R)+n+(R&&w*(g?p(s.y,a.tickRotCorr.y+8):s.x)-c),a.axisTitleMargin=p(l,g),x[h]=t(x[h],a.axisTitleMargin+m+w*a.offset,g),d=d.offset?0:2*S(d.lineWidth/2),b[i]=t(b[i],d)},getLinePath:function(a){var b=this.chart,c=this.opposite,d=this.offset,e=this.horiz,f=this.left+(c?this.width:0)+d,d=b.chartHeight-this.bottom-(c?this.height:0)+d;return c&&(a*=-1),b.renderer.crispLine(["M",e?this.left:f,e?d:this.top,"L",e?b.chartWidth-this.right:f,e?d:b.chartHeight-this.bottom],a)},getTitlePosition:function(){var a=this.horiz,b=this.left,c=this.top,d=this.len,e=this.options.title,f=a?b:c,g=this.opposite,h=this.offset,i=e.x||0,k=e.y||0,j=C(e.style.fontSize||12),d={low:f+(a?0:d),middle:f+d/2,high:f+(a?d:0)}[e.align],b=(a?c+this.height:b)+(a?1:-1)*(g?-1:1)*this.axisTitleMargin+(2===this.side?j:0);return{x:a?d+i:b+(g?this.width:0)+h+i,y:a?b+k-(g?this.height:0)+h:d+k}},render:function(){var s,w,t,a=this,b=a.chart,c=b.renderer,d=a.options,e=a.isLog,f=a.isLinked,g=a.tickPositions,h=a.axisTitle,i=a.ticks,k=a.minorTicks,j=a.alternateBands,m=d.stackLabels,l=d.alternateGridColor,n=a.tickmarkOffset,r=d.lineWidth,p=b.hasRendered&&q(a.oldMin)&&!isNaN(a.oldMin),v=a.showAxis,x=c.globalAnimation;a.labelEdge.length=0,a.overlap=!1,o([i,k,j],function(a){for(var b in a)a[b].isActive=!1}),(a.hasData()||f)&&(a.minorTickInterval&&!a.categories&&o(a.getMinorTickPositions(),function(b){k[b]||(k[b]=new Va(a,b,"minor")),p&&k[b].isNew&&k[b].render(null,!0),k[b].render(null,!1,1)}),g.length&&(o(g,function(b,c){(!f||b>=a.min&&b<=a.max)&&(i[b]||(i[b]=new Va(a,b)),p&&i[b].isNew&&i[b].render(c,!0,.1),i[b].render(c))}),n&&(0===a.min||a.single))&&(i[-1]||(i[-1]=new Va(a,-1,null,!0)),i[-1].render(-1)),l&&o(g,function(c,d){t=g[d+1]!==A?g[d+1]+n:a.max-n,d%2===0&&c=G.second?0:j*S(i.getMilliseconds()/j)),k>=G.second&&i[Hb](k>=G.minute?0:j*S(i.getSeconds()/j)),k>=G.minute&&i[Ib](k>=G.hour?0:j*S(i[tb]()/j)),k>=G.hour&&i[Jb](k>=G.day?0:j*S(i[ub]()/j)),k>=G.day&&i[wb](k>=G.month?1:j*S(i[$a]()/j)),k>=G.month&&(i[xb](k>=G.year?0:j*S(i[ab]()/j)),h=i[bb]()),k>=G.year&&(h-=h%j,i[yb](h)),k===G.week&&i[wb](i[$a]()-i[vb]()+p(d,1)),b=1,(qb||Za)&&(i=i.getTime(),i=new qa(i+Ya(i))),h=i[bb](),d=i.getTime(),m=i[ab](),l=i[$a](),n=!g||!!Za,r=(G.day+(g?Ya(i):6e4*i.getTimezoneOffset()))%G.day;c>d;)e.push(d),k===G.year?d=kb(h+b*j,0):k===G.month?d=kb(h,m+b*j):!n||k!==G.day&&k!==G.week?d+=k*j:d=kb(h,m,l+b*j*(k===G.day?1:7)),b++;e.push(d),o(Ha(e,function(a){return k<=G.hour&&a%G.day===r}),function(a){f[a]="day"})}return e.info=u(a,{higherRanks:f,totalRange:k*j}),e},ka.prototype.normalizeTimeTickInterval=function(a,b){var g,c=b||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],d=c[c.length-1],e=G[d[0]],f=d[1];for(g=0;ga&&(f=[1,2,5]),c=sb(a/e,f,"year"===d[0]?t(rb(a/e),1):1),{unitRange:e,count:c,unitName:d[0]}},ka.prototype.getLogTickPositions=function(a,b,c,d){var h,i,k,j,m,e=this.options,f=this.len,g=[];if(d||(this._minorAutoInterval=null),a>=.5)a=B(a),g=this.getLinearTickPositions(a,b,c);else if(a>=.08)for(f=S(b),e=a>.3?[1,2,4]:a>.15?[1,2,4,6,8]:[1,2,3,4,5,6,7,8,9];c+1>f&&!m;f++)for(i=e.length,h=0;i>h&&!m;h++)k=Da(na(f)*e[h]),k>b&&(!d||c>=j)&&j!==A&&g.push(j),j>c&&(m=!0),j=k;else b=na(b),c=na(c),a=e[d?"minorTickInterval":"tickInterval"],a=p("auto"===a?null:a,this._minorAutoInterval,(c-b)*(e.tickPixelInterval/(d?5:1))/((d?f/this.tickPositions.length:f)||1)),a=sb(a,null,rb(a)),g=Ba(this.getLinearTickPositions(a,b,c),Da),d||(this._minorAutoInterval=a/5);return d||(this.tickInterval=a),g},Pb=z.Tooltip=function(){this.init.apply(this,arguments)},Pb.prototype={init:function(a,b){var c=b.borderWidth,d=b.style,e=C(d.padding);this.chart=a,this.options=b,this.crosshairs=[],this.now={x:0,y:0},this.isHidden=!0,this.label=a.renderer.label("",0,0,b.shape||"callout",null,null,b.useHTML,null,"tooltip").attr({padding:e,fill:b.backgroundColor,"stroke-width":c,r:b.borderRadius,zIndex:8}).css(d).css({padding:0}).add().attr({y:-9999}),ga||this.label.shadow(b.shadow),this.shared=b.shared},destroy:function(){this.label&&(this.label=this.label.destroy()),clearTimeout(this.hideTimer),clearTimeout(this.tooltipTimeout)},move:function(a,b,c,d){var e=this,f=e.now,g=e.options.animation!==!1&&!e.isHidden&&(P(a-f.x)>1||P(b-f.y)>1),h=e.followPointer||e.len>1;u(f,{x:g?(2*f.x+a)/3:a,y:g?(f.y+b)/2:b,anchorX:h?A:g?(2*f.anchorX+c)/3:c,anchorY:h?A:g?(f.anchorY+d)/2:d}),e.label.attr(f),g&&(clearTimeout(this.tooltipTimeout),this.tooltipTimeout=setTimeout(function(){e&&e.move(a,b,c,d)},32))},hide:function(a){var b=this;clearTimeout(this.hideTimer),a=p(a,this.options.hideDelay,500),this.isHidden||(this.hideTimer=Pa(function(){b.label[a?"fadeOut":"hide"](),b.isHidden=!0},a))},getAnchor:function(a,b){var c,k,j,d=this.chart,e=d.inverted,f=d.plotTop,g=d.plotLeft,h=0,i=0,a=ta(a);return c=a[0].tooltipPos,this.followPointer&&b&&(b.chartX===A&&(b=d.pointer.normalize(b)),c=[b.chartX-d.plotLeft,b.chartY-f]),c||(o(a,function(a){k=a.series.yAxis,j=a.series.xAxis,h+=a.plotX+(!e&&j?j.left-g:0),i+=(a.plotLow?(a.plotLow+a.plotHigh)/2:a.plotY)+(!e&&k?k.top-f:0)}),h/=a.length,i/=a.length,c=[e?d.plotWidth-i:h,this.shared&&!e&&a.length>1&&b?b.chartY-f:e?d.plotHeight-h:i]),Ba(c,B)},getPosition:function(a,b,c){var h,d=this.chart,e=this.distance,f={},g=c.h||0,i=["y",d.chartHeight,b,c.plotY+d.plotTop,d.plotTop,d.plotTop+d.plotHeight],k=["x",d.chartWidth,a,c.plotX+d.plotLeft,d.plotLeft,d.plotLeft+d.plotWidth],j=p(c.ttBelow,d.inverted&&!c.negative||!d.inverted&&c.negative),m=function(a,b,c,d,h,i){var k=d-e>c,l=b>d+e+c,m=d-e-c;if(d+=e,j&&l)f[a]=d;else if(!j&&k)f[a]=m;else if(k)f[a]=F(i-c,0>m-g?m:m-g);else{if(!l)return!1;f[a]=t(h,d+g+c>b?d:d+g)}},l=function(a,b,c,d){var g;return e>d||d>b-e?g=!1:f[a]=c/2>d?1:d>b-c/2?b-c-2:d-c/2,g},n=function(a){var b=i;i=k,k=b,h=a},r=function(){m.apply(0,i)!==!1?l.apply(0,k)===!1&&!h&&(n(!0),r()):h?f.x=f.y=0:(n(!0),r())};return(d.inverted||this.len>1)&&n(),r(),f},defaultFormatter:function(a){var c,b=this.points||ta(this);return c=[a.tooltipFooterHeaderFormatter(b[0])],c=c.concat(a.bodyFormatter(b)),c.push(a.tooltipFooterHeaderFormatter(b[0],!0)),c.join("")},refresh:function(a,b){var f,g,h,m,l,c=this.chart,d=this.label,e=this.options,i={},j=[],k=e.formatter||this.defaultFormatter;i=c.hoverPoints,l=this.shared,clearTimeout(this.hideTimer),this.followPointer=ta(a)[0].series.tooltipOptions.followPointer,h=this.getAnchor(a,b),f=h[0],g=h[1],!l||a.series&&a.series.noSharedTooltip?i=a.getLabelConfig():(c.hoverPoints=a,i&&o(i,function(a){a.setState()}),o(a,function(a){a.setState("hover"),j.push(a.getLabelConfig())}),i={x:a[0].category,y:a[0].y},i.points=j,this.len=j.length,a=a[0]),k=k.call(i,this),i=a.series,this.distance=p(i.tooltipOptions.distance,16),k===!1?this.hide():(this.isHidden&&(Oa(d),d.attr("opacity",1).show()),d.attr({text:k}),m=e.borderColor||a.color||i.color||"#606060",d.attr({stroke:m}),this.updatePosition({plotX:f,plotY:g,negative:a.negative,ttBelow:a.ttBelow,h:h[2]||0}),this.isHidden=!1),H(c,"tooltipRefresh",{text:k,x:f+c.plotLeft,y:g+c.plotTop,borderColor:m})},updatePosition:function(a){var b=this.chart,c=this.label,c=(this.options.positioner||this.getPosition).call(this,c.width,c.height,a);this.move(B(c.x),B(c.y||0),a.plotX+b.plotLeft,a.plotY+b.plotTop)},getXDateFormat:function(a,b,c){var d,f,h,b=b.dateTimeLabelFormats,e=c&&c.closestPointRange,g={millisecond:15,second:12,minute:9,hour:6,day:3},i="millisecond";if(e){h=Qa("%m-%d %H:%M:%S.%L",a.x);for(f in G){if(e===G.week&&+Qa("%w",a.x)===c.options.startOfWeek&&"00:00:00.000"===h.substr(6)){f="week";break}if(G[f]>e){f=i;break}if(g[f]&&h.substr(g[f])!=="01-01 00:00:00.000".substr(g[f]))break;"week"!==f&&(i=f)}f&&(d=b[f])}else d=b.day;return d||b.year},tooltipFooterHeaderFormatter:function(a,b){var c=b?"footer":"header",d=a.series,e=d.tooltipOptions,f=e.xDateFormat,g=d.xAxis,h=g&&"datetime"===g.options.type&&ma(a.key),c=e[c+"Format"];return h&&!f&&(f=this.getXDateFormat(a,e,g)),h&&f&&(c=c.replace("{point.key}","{point.key:"+f+"}")),La(c,{point:a,series:d})},bodyFormatter:function(a){return Ba(a,function(a){var c=a.series.tooltipOptions;return(c.pointFormatter||a.point.tooltipFormatter).call(a.point,c.pointFormat)})}},db=y&&y.documentElement.ontouchstart!==A,Xa=z.Pointer=function(a,b){this.init(a,b)},Xa.prototype={init:function(a,b){var f,c=b.chart,d=c.events,e=ga?"":c.zoomType,c=a.inverted;this.options=b,this.chart=a,this.zoomX=f=/x/.test(e),this.zoomY=e=/y/.test(e),this.zoomHor=f&&!c||e&&c,this.zoomVert=e&&!c||f&&c,this.hasZoom=f||e,this.runChartClick=d&&!!d.click,this.pinchDown=[],this.lastValidTouch={},z.Tooltip&&b.tooltip.enabled&&(a.tooltip=new Pb(a,b.tooltip),this.followTouchMove=p(b.tooltip.followTouchMove,!0)),this.setDOMEvents()},normalize:function(a,b){var c,d,a=a||E.event;return a.target||(a.target=a.srcElement),d=a.touches?a.touches.length?a.touches.item(0):a.changedTouches[0]:a,b||(this.chartPosition=b=Ab(this.chart.container)),d.pageX===A?(c=t(a.x,a.clientX-b.left),d=a.y):(c=d.pageX-b.left,d=d.pageY-b.top),u(a,{chartX:B(c),chartY:B(d)})},getCoordinates:function(a){var b={xAxis:[],yAxis:[]};return o(this.chart.axes,function(c){b[c.isXAxis?"xAxis":"yAxis"].push({axis:c,value:c.toValue(a[c.horiz?"chartX":"chartY"])})}),b},runPointActions:function(a){var i,k,l,b=this.chart,c=b.series,d=b.tooltip,e=d?d.shared:!1,f=b.hoverPoint,g=b.hoverSeries,h=[Number.MAX_VALUE,Number.MAX_VALUE],j=[],m=[];if(!e&&!g)for(b=0;bd?d=h:d>h+k&&(d=h+k),i>e?e=i:e>i+j&&(e=i+j),this.hasDragged=Math.sqrt(Math.pow(n-d,2)+Math.pow(r-e,2)),this.hasDragged>10&&(m=b.isInsidePlot(n-h,r-i),b.hasCartesianSeries&&(this.zoomX||this.zoomY)&&m&&!s&&!l&&(this.selectionMarker=l=b.renderer.rect(h,i,f?1:k,g?1:j,0).attr({fill:c.selectionMarkerFill||"rgba(69,114,167,0.25)",zIndex:7}).add()),l&&f&&(d-=n,l.attr({width:P(d),x:(d>0?0:d)+n})),l&&g&&(d=e-r,l.attr({height:P(d),y:(d>0?0:d)+r})),m&&!l&&c.panning&&b.pan(a,c.panning)))},drop:function(a){var e,f,g,h,i,k,j,b=this,c=this.chart,d=this.hasPinched;this.selectionMarker&&(e={originalEvent:a,xAxis:[],yAxis:[]},f=this.selectionMarker,g=f.attr?f.attr("x"):f.x,h=f.attr?f.attr("y"):f.y,i=f.attr?f.attr("width"):f.width,k=f.attr?f.attr("height"):f.height,(this.hasDragged||d)&&(o(c.axes,function(c){if(c.zoomEnabled&&q(c.min)&&(d||b[{xAxis:"zoomX",yAxis:"zoomY"}[c.coll]])){var f=c.horiz,n="touchend"===a.type?c.minPixelPadding:0,r=c.toValue((f?g:h)+n),f=c.toValue((f?g+i:h+k)-n);e[c.coll].push({axis:c,min:F(r,f),max:t(r,f)}),j=!0}}),j&&H(c,"selection",e,function(a){c.zoom(u(a,d?{animation:!1}:null))})),this.selectionMarker=this.selectionMarker.destroy(),d&&this.scaleGroups()),c&&(L(c.container,{cursor:c._cursor}),c.cancelClick=this.hasDragged>10,c.mouseIsDown=this.hasDragged=this.hasPinched=!1,this.pinchDown=[])},onContainerMouseDown:function(a){a=this.normalize(a),a.preventDefault&&a.preventDefault(),this.dragStart(a)},onDocumentMouseUp:function(a){T[ha]&&T[ha].pointer.drop(a)},onDocumentMouseMove:function(a){var b=this.chart,c=this.chartPosition,a=this.normalize(a,c);c&&!this.inClass(a.target,"highcharts-tracker")&&!b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop)&&this.reset()},onContainerMouseLeave:function(a){var b=T[ha];b&&(a.relatedTarget||a.toElement)&&(b.pointer.reset(),b.pointer.chartPosition=null)},onContainerMouseMove:function(a){var b=this.chart;q(ha)&&T[ha].mouseIsDown||(ha=b.index),a=this.normalize(a),a.returnValue=!1,"mousedown"===b.mouseIsDown&&this.drag(a),(this.inClass(a.target,"highcharts-tracker")||b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop))&&!b.openMenu&&this.runPointActions(a)},inClass:function(a,b){for(var c;a;){if(c=K(a,"class")){if(-1!==c.indexOf(b))return!0;if(-1!==c.indexOf("highcharts-container"))return!1}a=a.parentNode}},onTrackerMouseOut:function(a){var b=this.chart.hoverSeries,a=a.relatedTarget||a.toElement;!b||!a||b.options.stickyTracking||this.inClass(a,"highcharts-tooltip")||this.inClass(a,"highcharts-series-"+b.index)||b.onMouseOut()},onContainerClick:function(a){var b=this.chart,c=b.hoverPoint,d=b.plotLeft,e=b.plotTop,a=this.normalize(a);b.cancelClick||(c&&this.inClass(a.target,"highcharts-tracker")?(H(c.series,"click",u(a,{point:c})),b.hoverPoint&&c.firePointEvent("click",a)):(u(a,this.getCoordinates(a)),b.isInsidePlot(a.chartX-d,a.chartY-e)&&H(b,"click",a)))},setDOMEvents:function(){var a=this,b=a.chart.container;b.onmousedown=function(b){a.onContainerMouseDown(b)},b.onmousemove=function(b){a.onContainerMouseMove(b)},b.onclick=function(b){a.onContainerClick(b)},M(b,"mouseleave",a.onContainerMouseLeave),1===eb&&M(y,"mouseup",a.onDocumentMouseUp),db&&(b.ontouchstart=function(b){a.onContainerTouchStart(b)},b.ontouchmove=function(b){a.onContainerTouchMove(b)},1===eb&&M(y,"touchend",a.onDocumentTouchEnd))},destroy:function(){var a;V(this.chart.container,"mouseleave",this.onContainerMouseLeave),eb||(V(y,"mouseup",this.onDocumentMouseUp),V(y,"touchend",this.onDocumentTouchEnd)),clearInterval(this.tooltipTimeout);for(a in this)this[a]=null}},u(z.Pointer.prototype,{pinchTranslate:function(a,b,c,d,e,f){(this.zoomHor||this.pinchHor)&&this.pinchTranslateDirection(!0,a,b,c,d,e,f),(this.zoomVert||this.pinchVert)&&this.pinchTranslateDirection(!1,a,b,c,d,e,f)},pinchTranslateDirection:function(a,b,c,d,e,f,g,h){var r,s,B,i=this.chart,k=a?"x":"y",j=a?"X":"Y",m="chart"+j,l=a?"width":"height",n=i["plot"+(a?"Left":"Top")],p=h||1,o=i.inverted,x=i.bounds[a?"h":"v"],w=1===b.length,q=b[0][m],t=c[0][m],u=!w&&b[1][m],z=!w&&c[1][m],c=function(){!w&&P(q-u)>20&&(p=h||P(t-z)/P(q-u)),s=(n-t)/p+q,r=i["plot"+(a?"Width":"Height")]/p};c(),b=s,bx.max&&(b=x.max-r,B=!0),B?(t-=.8*(t-g[k][0]),w||(z-=.8*(z-g[k][1])),c()):g[k]=[t,z],o||(f[k]=s-n,f[l]=r),f=o?1/p:p,e[l]=r,e[k]=b,d[o?a?"scaleY":"scaleX":"scale"+j]=p,d["translate"+j]=f*n+(t-f*q)},pinch:function(a){var b=this,c=b.chart,d=b.pinchDown,e=a.touches,f=e.length,g=b.lastValidTouch,h=b.hasZoom,i=b.selectionMarker,k={},j=1===f&&(b.inClass(a.target,"highcharts-tracker")&&c.runTrackerClick||b.runChartClick),m={};f>1&&(b.initiated=!0),h&&b.initiated&&!j&&a.preventDefault(),Ba(e,function(a){return b.normalize(a)}),"touchstart"===a.type?(o(e,function(a,b){d[b]={chartX:a.chartX,chartY:a.chartY}}),g.x=[d[0].chartX,d[1]&&d[1].chartX],g.y=[d[0].chartY,d[1]&&d[1].chartY],o(c.axes,function(a){if(a.zoomEnabled){var b=c.bounds[a.horiz?"h":"v"],d=a.minPixelPadding,e=a.toPixels(p(a.options.min,a.dataMin)),f=a.toPixels(p(a.options.max,a.dataMax)),g=F(e,f),e=t(e,f);b.min=F(a.pos,g-d),b.max=t(a.pos+a.len,e+d)}}),b.res=!0):d.length&&(i||(b.selectionMarker=i=u({destroy:Aa,touch:!0},c.plotBox)),b.pinchTranslate(d,e,k,i,m,g),b.hasPinched=h,b.scaleGroups(k,m),!h&&b.followTouchMove&&1===f?this.runPointActions(b.normalize(a)):b.res&&(b.res=!1,this.reset(!1,0)))},touch:function(a,b){var c=this.chart;ha=c.index,1===a.touches.length?(a=this.normalize(a),c.isInsidePlot(a.chartX-c.plotLeft,a.chartY-c.plotTop)&&!c.openMenu?(b&&this.runPointActions(a),this.pinch(a)):b&&this.reset()):2===a.touches.length&&this.pinch(a)},onContainerTouchStart:function(a){this.touch(a,!0)},onContainerTouchMove:function(a){this.touch(a); },onDocumentTouchEnd:function(a){T[ha]&&T[ha].pointer.drop(a)}}),(E.PointerEvent||E.MSPointerEvent)&&(va={},Db=!!E.PointerEvent,Sb=function(){var a,b=[];b.item=function(a){return this[a]};for(a in va)va.hasOwnProperty(a)&&b.push({pageX:va[a].pageX,pageY:va[a].pageY,target:va[a].target});return b},Eb=function(a,b,c,d){"touch"!==a.pointerType&&a.pointerType!==a.MSPOINTER_TYPE_TOUCH||!T[ha]||(d(a),d=T[ha].pointer,d[b]({type:c,target:a.currentTarget,preventDefault:Aa,touches:Sb()}))},u(Xa.prototype,{onContainerPointerDown:function(a){Eb(a,"onContainerTouchStart","touchstart",function(a){va[a.pointerId]={pageX:a.pageX,pageY:a.pageY,target:a.currentTarget}})},onContainerPointerMove:function(a){Eb(a,"onContainerTouchMove","touchmove",function(a){va[a.pointerId]={pageX:a.pageX,pageY:a.pageY},va[a.pointerId].target||(va[a.pointerId].target=a.currentTarget)})},onDocumentPointerUp:function(a){Eb(a,"onDocumentTouchEnd","touchend",function(a){delete va[a.pointerId]})},batchMSEvents:function(a){a(this.chart.container,Db?"pointerdown":"MSPointerDown",this.onContainerPointerDown),a(this.chart.container,Db?"pointermove":"MSPointerMove",this.onContainerPointerMove),a(y,Db?"pointerup":"MSPointerUp",this.onDocumentPointerUp)}}),fb(Xa.prototype,"init",function(a,b,c){a.call(this,b,c),this.hasZoom&&L(b.container,{"-ms-touch-action":"none","touch-action":"none"})}),fb(Xa.prototype,"setDOMEvents",function(a){a.apply(this),(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(M)}),fb(Xa.prototype,"destroy",function(a){this.batchMSEvents(V),a.call(this)})),ob=z.Legend=function(a,b){this.init(a,b)},ob.prototype={init:function(a,b){var c=this,d=b.itemStyle,e=b.itemMarginTop||0;this.options=b,b.enabled&&(c.itemStyle=d,c.itemHiddenStyle=D(d,b.itemHiddenStyle),c.itemMarginTop=e,c.padding=d=p(b.padding,8),c.initialItemX=d,c.initialItemY=d-5,c.maxItemWidth=0,c.chart=a,c.itemHeight=0,c.symbolWidth=p(b.symbolWidth,16),c.pages=[],c.render(),M(c.chart,"endResize",function(){c.positionCheckboxes()}))},colorizeItem:function(a,b){var k,c=this.options,d=a.legendItem,e=a.legendLine,f=a.legendSymbol,g=this.itemHiddenStyle.color,c=b?c.itemStyle.color:g,h=b?a.legendColor||a.color||"#CCC":g,g=a.options&&a.options.marker,i={fill:h};if(d&&d.css({fill:c,color:c}),e&&e.attr({stroke:h}),f){if(g&&f.isMarker)for(k in i.stroke=h,g=a.convertAttribs(g))d=g[k],d!==A&&(i[k]=d);f.attr(i)}},positionItem:function(a){var b=this.options,c=b.symbolPadding,b=!b.rtl,d=a._legendItemPos,e=d[0],d=d[1],f=a.checkbox;(a=a.legendGroup)&&a.element&&a.translate(b?e:this.legendWidth-e-2*c-4,d),f&&(f.x=e,f.y=d)},destroyItem:function(a){var b=a.checkbox;o(["legendItem","legendLine","legendSymbol","legendGroup"],function(b){a[b]&&(a[b]=a[b].destroy())}),b&&Ta(a.checkbox)},destroy:function(){var a=this.group,b=this.box;b&&(this.box=b.destroy()),a&&(this.group=a.destroy())},positionCheckboxes:function(a){var c,b=this.group.alignAttr,d=this.clipHeight||this.legendHeight,e=this.titleHeight;b&&(c=b.translateY,o(this.allItems,function(f){var h,g=f.checkbox;g&&(h=c+e+g.y+(a||0)+3,L(g,{left:b.translateX+f.checkboxOffset+g.x-20+"px",top:h+"px",display:h>c-6&&c+d-6>h?"":"none"}))}))},renderTitle:function(){var a=this.padding,b=this.options.title,c=0;b.text&&(this.title||(this.title=this.chart.renderer.label(b.text,a-3,a-4,null,null,null,null,null,"legend-title").attr({zIndex:1}).css(b.style).add(this.group)),a=this.title.getBBox(),c=a.height,this.offsetWidth=a.width,this.contentGroup.attr({translateY:c})),this.titleHeight=c},setText:function(a){var b=this.options;a.legendItem.attr({text:b.labelFormat?La(b.labelFormat,a):b.labelFormatter.call(a)})},renderItem:function(a){var b=this.chart,c=b.renderer,d=this.options,e="horizontal"===d.layout,f=this.symbolWidth,g=d.symbolPadding,h=this.itemStyle,i=this.itemHiddenStyle,k=this.padding,j=e?p(d.itemDistance,20):0,m=!d.rtl,l=d.width,n=d.itemMarginBottom||0,r=this.itemMarginTop,s=this.initialItemX,o=a.legendItem,v=a.series&&a.series.drawLegendSymbol?a.series:a,x=v.options,x=this.createCheckboxForItem&&x&&x.showCheckbox,w=d.useHTML;o||(a.legendGroup=c.g("legend-item").attr({zIndex:1}).add(this.scrollGroup),a.legendItem=o=c.text("",m?f+g:-g,this.baseline||0,w).css(D(a.visible?h:i)).attr({align:m?"left":"right",zIndex:2}).add(a.legendGroup),this.baseline||(this.fontMetrics=c.fontMetrics(h.fontSize,o),this.baseline=this.fontMetrics.f+3+r,o.attr("y",this.baseline)),v.drawLegendSymbol(this,a),this.setItemEvents&&this.setItemEvents(a,o,w,h,i),x&&this.createCheckboxForItem(a)),this.colorizeItem(a,a.visible),this.setText(a),c=o.getBBox(),f=a.checkboxOffset=d.itemWidth||a.legendItemWidth||f+g+c.width+j+(x?20:0),this.itemHeight=g=B(a.legendItemHeight||c.height),e&&this.itemX-s+f>(l||b.chartWidth-2*k-s-d.x)&&(this.itemX=s,this.itemY+=r+this.lastLineHeight+n,this.lastLineHeight=0),this.maxItemWidth=t(this.maxItemWidth,f),this.lastItemY=r+this.itemY+n,this.lastLineHeight=t(g,this.lastLineHeight),a._legendItemPos=[this.itemX,this.itemY],e?this.itemX+=f:(this.itemY+=r+g+n,this.lastLineHeight=g),this.offsetWidth=l||t((e?this.itemX-s-j:f)+k,this.offsetWidth)},getAllItems:function(){var a=[];return o(this.chart.series,function(b){var c=b.options;p(c.showInLegend,q(c.linkedTo)?!1:A,!0)&&(a=a.concat(b.legendItems||("point"===c.legendType?b.data:b)))}),a},adjustMargins:function(a,b){var c=this.chart,d=this.options,e=d.align.charAt(0)+d.verticalAlign.charAt(0)+d.layout.charAt(0);this.display&&!d.floating&&o([/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/],function(f,g){f.test(e)&&!q(a[g])&&(c[nb[g]]=t(c[nb[g]],c.legend[(g+1)%2?"legendHeight":"legendWidth"]+[1,-1,-1,1][g]*d[g%2?"x":"y"]+p(d.margin,12)+b[g]))})},render:function(){var e,f,g,h,a=this,b=a.chart,c=b.renderer,d=a.group,i=a.box,k=a.options,j=a.padding,m=k.borderWidth,l=k.backgroundColor;a.itemX=a.initialItemX,a.itemY=a.initialItemY,a.offsetWidth=0,a.lastItemY=0,d||(a.group=d=c.g("legend").attr({zIndex:7}).add(),a.contentGroup=c.g().attr({zIndex:1}).add(d),a.scrollGroup=c.g().add(a.contentGroup)),a.renderTitle(),e=a.getAllItems(),ib(e,function(a,b){return(a.options&&a.options.legendIndex||0)-(b.options&&b.options.legendIndex||0)}),k.reversed&&e.reverse(),a.allItems=e,a.display=f=!!e.length,a.lastLineHeight=0,o(e,function(b){a.renderItem(b)}),g=(k.width||a.offsetWidth)+j,h=a.lastItemY+a.lastLineHeight+a.titleHeight,h=a.handleOverflow(h),h+=j,(m||l)&&(i?g>0&&h>0&&(i[i.isNew?"attr":"animate"](i.crisp({width:g,height:h})),i.isNew=!1):(a.box=i=c.rect(0,0,g,h,k.borderRadius,m||0).attr({stroke:k.borderColor,"stroke-width":m||0,fill:l||"none"}).add(d).shadow(k.shadow),i.isNew=!0),i[f?"show":"hide"]()),a.legendWidth=g,a.legendHeight=h,o(e,function(b){a.positionItem(b)}),f&&d.align(u({width:g,height:h},k),!0,"spacingBox"),b.isResizing||this.positionCheckboxes()},handleOverflow:function(a){var h,s,b=this,c=this.chart,d=c.renderer,e=this.options,f=e.y,f=c.spacingBox.height+("top"===e.verticalAlign?-f:f)-this.padding,g=e.maxHeight,i=this.clipRect,k=e.navigation,j=p(k.animation,!0),m=k.arrowSize||12,l=this.nav,n=this.pages,r=this.padding,R=this.allItems,v=function(a){i.attr({height:a}),b.contentGroup.div&&(b.contentGroup.div.style.clip="rect("+r+"px,9999px,"+(r+a)+"px,0)")};return"horizontal"===e.layout&&(f/=2),g&&(f=F(f,g)),n.length=0,a>f?(this.clipHeight=h=t(f-20-this.titleHeight-r,0),this.currentPage=p(this.currentPage,1),this.fullHeight=a,o(R,function(a,b){var c=a._legendItemPos[1],d=B(a.legendItem.getBBox().height),e=n.length;(!e||c-n[e-1]>h&&(s||c)!==n[e-1])&&(n.push(s||c),e++),b===R.length-1&&c+d-n[e-1]>h&&n.push(c),c!==s&&(s=c)}),i||(i=b.clipRect=d.clipRect(0,r,9999,0),b.contentGroup.clip(i)),v(h),l||(this.nav=l=d.g().attr({zIndex:1}).add(this.group),this.up=d.symbol("triangle",0,0,m,m).on("click",function(){b.scroll(-1,j)}).add(l),this.pager=d.text("",15,10).css(k.style).add(l),this.down=d.symbol("triangle-down",0,0,m,m).on("click",function(){b.scroll(1,j)}).add(l)),b.scroll(0),a=f):l&&(v(c.chartHeight),l.hide(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0),a},scroll:function(a,b){var c=this.pages,d=c.length,e=this.currentPage+a,f=this.clipHeight,g=this.options.navigation,h=g.activeColor,g=g.inactiveColor,i=this.pager,k=this.padding;e>d&&(e=d),e>0&&(b!==A&&Ua(b,this.chart),this.nav.attr({translateX:k,translateY:f+this.padding+7+this.titleHeight,visibility:"visible"}),this.up.attr({fill:1===e?g:h}).css({cursor:1===e?"default":"pointer"}),i.attr({text:e+"/"+d}),this.down.attr({x:18+this.pager.getBBox().width,fill:e===d?g:h}).css({cursor:e===d?"default":"pointer"}),c=-c[e-1]+this.initialItemY,this.scrollGroup.animate({translateY:c}),this.currentPage=e,this.positionCheckboxes(c))}},J=z.LegendSymbolMixin={drawRectangle:function(a,b){var c=a.options.symbolHeight||a.fontMetrics.f;b.legendSymbol=this.chart.renderer.rect(0,a.baseline-c+1,a.symbolWidth,c,a.options.symbolRadius||0).attr({zIndex:3}).add(b.legendGroup)},drawLineMarker:function(a){var g,b=this.options,c=b.marker,d=a.symbolWidth,e=this.chart.renderer,f=this.legendGroup,a=a.baseline-B(.3*a.fontMetrics.b);b.lineWidth&&(g={"stroke-width":b.lineWidth},b.dashStyle&&(g.dashstyle=b.dashStyle),this.legendLine=e.path(["M",0,a,"L",d,a]).attr(g).add(f)),c&&c.enabled!==!1&&(b=c.radius,this.legendSymbol=c=e.symbol(this.symbol,d/2-b,a-b,2*b,2*b,c).add(f),c.isMarker=!0)}},(/Trident\/7\.0/.test(za)||Na)&&fb(ob.prototype,"positionItem",function(a,b){var c=this,d=function(){b._legendItemPos&&a.call(c,b)};d(),setTimeout(d)}),hb=z.Chart=function(){this.getArgs.apply(this,arguments)},z.chart=function(a,b,c){return new hb(a,b,c)},hb.prototype={callbacks:[],getArgs:function(){var a=[].slice.call(arguments);(xa(a[0])||a[0].nodeName)&&(this.renderTo=a.shift()),this.init(a[0],a[1])},init:function(a,b){var c,e,f,g,d=a.series;if(a.series=null,c=D(N,a),c.series=a.series=d,this.userOptions=a,d=c.chart,this.margin=this.splashArray("margin",d),this.spacing=this.splashArray("spacing",d),e=d.events,this.bounds={h:{},v:{}},this.callback=b,this.isResizing=0,this.options=c,this.axes=[],this.series=[],this.hasCartesianSeries=d.showAxes,f=this,f.index=T.length,T.push(f),eb++,d.reflow!==!1&&M(f,"load",function(){f.initReflow()}),e)for(g in e)M(f,g,e[g]);f.xAxis=[],f.yAxis=[],f.animation=ga?!1:p(d.animation,!0),f.pointCount=f.colorCounter=f.symbolCounter=0,f.firstRender()},initSeries:function(a){var b=this.options.chart;return(b=I[a.type||b.type||b.defaultSeriesType])||X(17,!0),b=new b,b.init(this,a),b},isInsidePlot:function(a,b,c){var d=c?b:a,a=c?a:b;return d>=0&&d<=this.plotWidth&&a>=0&&a<=this.plotHeight},redraw:function(a){var g,h,b=this.axes,c=this.series,d=this.pointer,e=this.legend,f=this.isDirtyLegend,i=this.hasCartesianSeries,k=this.isDirtyBox,j=c.length,m=j,l=this.renderer,n=l.isHidden(),r=[];for(Ua(a,this),n&&this.cloneRenderTo(),this.layOutTitles();m--;)if(a=c[m],a.options.stacking&&(g=!0,a.isDirty)){h=!0;break}if(h)for(m=j;m--;)a=c[m],a.options.stacking&&(a.isDirty=!0);o(c,function(a){a.isDirty&&"point"===a.options.legendType&&(a.updateTotals&&a.updateTotals(),f=!0)}),f&&e.options.enabled&&(e.render(),this.isDirtyLegend=!1),g&&this.getStacks(),i&&!this.isResizing&&(this.maxTicks=null,o(b,function(a){a.setScale()})),this.getMargins(),i&&(o(b,function(a){a.isDirty&&(k=!0)}),o(b,function(a){var b=a.min+","+a.max;a.extKey!==b&&(a.extKey=b,r.push(function(){H(a,"afterSetExtremes",u(a.eventArgs,a.getExtremes())),delete a.eventArgs})),(k||g)&&a.redraw()})),k&&this.drawChartBox(),o(c,function(a){a.isDirty&&a.visible&&(!a.isCartesian||a.xAxis)&&a.redraw()}),d&&d.reset(!0),l.draw(),H(this,"redraw"),n&&this.cloneRenderTo(!0),o(r,function(a){a.call()})},get:function(a){var d,e,b=this.axes,c=this.series;for(d=0;d19?this.containerHeight:400))},cloneRenderTo:function(a){var b=this.renderToClone,c=this.container;a?b&&(this.renderTo.appendChild(c),Ta(b),delete this.renderToClone):(c&&c.parentNode===this.renderTo&&this.renderTo.removeChild(c),this.renderToClone=b=this.renderTo.cloneNode(0),L(b,{position:"absolute",top:"-9999px",display:"block"}),b.style.setProperty&&b.style.setProperty("display","block","important"),y.body.appendChild(b),c&&b.appendChild(c))},getContainer:function(){var d,e,b=this.options,c=b.chart,a=this.renderTo,f="highcharts-"+zb++;a||(this.renderTo=a=c.renderTo),xa(a)&&(this.renderTo=a=y.getElementById(a)),a||X(13,!0),d=C(K(a,"data-highcharts-chart")),!isNaN(d)&&T[d]&&T[d].hasRendered&&T[d].destroy(),K(a,"data-highcharts-chart",this.index),a.innerHTML="",!c.skipClone&&!a.offsetWidth&&this.cloneRenderTo(),this.getChartSize(),d=this.chartWidth,e=this.chartHeight,this.container=a=Z(Ma,{className:"highcharts-container"+(c.className?" "+c.className:""),id:f},u({position:"relative",overflow:"hidden",width:d+"px",height:e+"px",textAlign:"left",lineHeight:"normal",zIndex:0,"-webkit-tap-highlight-color":"rgba(0,0,0,0)"},c.style),this.renderToClone||a),this._cursor=a.style.cursor,this.renderer=new(z[c.renderer]||cb)(a,d,e,c.style,c.forExport,b.exporting&&b.exporting.allowHTML),ga&&this.renderer.create(this,a,d,e),this.renderer.chartIndex=this.index},getMargins:function(a){var b=this.spacing,c=this.margin,d=this.titleOffset;this.resetMargins(),d&&!q(c[0])&&(this.plotTop=t(this.plotTop,d+this.options.title.margin+b[0])),this.legend.adjustMargins(c,b),this.extraBottomMargin&&(this.marginBottom+=this.extraBottomMargin),this.extraTopMargin&&(this.plotTop+=this.extraTopMargin),a||this.getAxisMargins()},getAxisMargins:function(){var a=this,b=a.axisOffset=[0,0,0,0],c=a.margin;a.hasCartesianSeries&&o(a.axes,function(a){a.visible&&a.getOffset()}),o(nb,function(d,e){q(c[e])||(a[d]+=b[e])}),a.setChartSize()},reflow:function(a){var b=this,c=b.options.chart,d=b.renderTo,e=c.width||ja(d,"width"),f=c.height||ja(d,"height"),c=a?a.target:E;b.hasUserSize||b.isPrinting||!e||!f||c!==E&&c!==y||(e===b.containerWidth&&f===b.containerHeight||(clearTimeout(b.reflowTimeout),b.reflowTimeout=Pa(function(){b.container&&(b.setSize(e,f,!1),b.hasUserSize=null)},a?100:0)),b.containerWidth=e,b.containerHeight=f)},initReflow:function(){var a=this,b=function(b){a.reflow(b)};M(E,"resize",b),M(a,"destroy",function(){V(E,"resize",b)})},setSize:function(a,b,c){var e,f,d=this,g=d.renderer;d.isResizing+=1,Ua(c,d),d.oldChartHeight=d.chartHeight,d.oldChartWidth=d.chartWidth,q(a)&&(d.chartWidth=e=t(0,B(a)),d.hasUserSize=!!e),q(b)&&(d.chartHeight=f=t(0,B(b))),a=g.globalAnimation,(a?Wa:L)(d.container,{width:e+"px",height:f+"px"},a),d.setChartSize(!0),g.setSize(e,f,c),d.maxTicks=null,o(d.axes,function(a){a.isDirty=!0,a.setScale()}),o(d.series,function(a){a.isDirty=!0}),d.isDirtyLegend=!0,d.isDirtyBox=!0,d.layOutTitles(),d.getMargins(),d.redraw(c),d.oldChartHeight=null,H(d,"resize"),a=g.globalAnimation,Pa(function(){d&&H(d,"endResize",null,function(){d.isResizing-=1})},a===!1?0:a&&a.duration||500)},setChartSize:function(a){var i,k,j,m,b=this.inverted,c=this.renderer,d=this.chartWidth,e=this.chartHeight,f=this.options.chart,g=this.spacing,h=this.clipOffset;this.plotLeft=i=B(this.plotLeft),this.plotTop=k=B(this.plotTop),this.plotWidth=j=t(0,B(d-i-this.marginRight)),this.plotHeight=m=t(0,B(e-k-this.marginBottom)),this.plotSizeX=b?m:j,this.plotSizeY=b?j:m,this.plotBorderWidth=f.plotBorderWidth||0,this.spacingBox=c.spacingBox={x:g[3],y:g[0],width:d-g[3]-g[1],height:e-g[0]-g[2]},this.plotBox=c.plotBox={x:i,y:k,width:j,height:m},d=2*S(this.plotBorderWidth/2),b=ua(t(d,h[3])/2),c=ua(t(d,h[0])/2),this.clipBox={x:b,y:c,width:S(this.plotSizeX-t(d,h[1])/2-b),height:t(0,S(this.plotSizeY-t(d,h[2])/2-c))},a||o(this.axes,function(a){a.setAxisSize(),a.setAxisTranslation()})},resetMargins:function(){var a=this;o(nb,function(b,c){a[b]=p(a.margin[c],a.spacing[c])}),a.axisOffset=[0,0,0,0],a.clipOffset=[0,0,0,0]},drawChartBox:function(){var n,a=this.options.chart,b=this.renderer,c=this.chartWidth,d=this.chartHeight,e=this.chartBackground,f=this.plotBackground,g=this.plotBorder,h=this.plotBGImage,i=a.borderWidth||0,k=a.backgroundColor,j=a.plotBackgroundColor,m=a.plotBackgroundImage,l=a.plotBorderWidth||0,r=this.plotLeft,p=this.plotTop,o=this.plotWidth,v=this.plotHeight,x=this.plotBox,w=this.clipRect,t=this.clipBox;n=i+(a.shadow?8:0),(i||k)&&(e?e.animate(e.crisp({width:c-n,height:d-n})):(e={fill:k||"none"},i&&(e.stroke=a.borderColor,e["stroke-width"]=i),this.chartBackground=b.rect(n/2,n/2,c-n,d-n,a.borderRadius,i).attr(e).addClass("highcharts-background").add().shadow(a.shadow))),j&&(f?f.animate(x):this.plotBackground=b.rect(r,p,o,v,0).attr({fill:j}).add().shadow(a.plotShadow)),m&&(h?h.animate(x):this.plotBGImage=b.image(m,r,p,o,v).add()),w?w.animate({width:t.width,height:t.height}):this.clipRect=b.clipRect(t),l&&(g?g.animate(g.crisp({x:r,y:p,width:o,height:v,strokeWidth:-l})):this.plotBorder=b.rect(r,p,o,v,0,-l).attr({stroke:a.plotBorderColor,"stroke-width":l,fill:"none",zIndex:1}).add()),this.isDirtyBox=!1},propFromSeries:function(){var c,e,f,a=this,b=a.options.chart,d=a.options.series;o(["inverted","angular","polar"],function(g){for(c=I[b.type||b.defaultSeriesType],f=a[g]||b[g]||c&&c.prototype[g],e=d&&d.length;!f&&e--;)(c=I[d[e].type])&&c.prototype[g]&&(f=!0);a[g]=f})},linkSeries:function(){var a=this,b=a.series;o(b,function(a){a.linkedSeries.length=0}),o(b,function(b){var d=b.options.linkedTo;xa(d)&&(d=":previous"===d?a.series[b.index-1]:a.get(d))&&(d.linkedSeries.push(b),b.linkedParent=d,b.visible=p(b.options.visible,d.options.visible,b.visible))})},renderSeries:function(){o(this.series,function(a){a.translate(),a.render()})},renderLabels:function(){var a=this,b=a.options.labels;b.items&&o(b.items,function(c){var d=u(b.style,c.style),e=C(d.left)+a.plotLeft,f=C(d.top)+a.plotTop+12;delete d.left,delete d.top,a.renderer.text(c.html,e,f).attr({zIndex:2}).css(d).add()})},render:function(){var d,e,f,g,a=this.axes,b=this.renderer,c=this.options;this.setTitle(),this.legend=new ob(this,c.legend),this.getStacks&&this.getStacks(),this.getMargins(!0),this.setChartSize(),d=this.plotWidth,e=this.plotHeight-=21,o(a,function(a){a.setScale()}),this.getAxisMargins(),f=d/this.plotWidth>1.1,g=e/this.plotHeight>1.05,(f||g)&&(this.maxTicks=null,o(a,function(a){(a.horiz&&f||!a.horiz&&g)&&a.setTickInterval(!0)}),this.getMargins()),this.drawChartBox(),this.hasCartesianSeries&&o(a,function(a){a.visible&&a.render()}),this.seriesGroup||(this.seriesGroup=b.g("series-group").attr({zIndex:3}).add()),this.renderSeries(),this.renderLabels(),this.showCredits(c.credits),this.hasRendered=!0},showCredits:function(a){a.enabled&&!this.credits&&(this.credits=this.renderer.text(a.text,0,0).on("click",function(){a.href&&(E.location.href=a.href)}).attr({align:a.position.align,zIndex:8}).css(a.style).add().align(a.position))},destroy:function(){var e,a=this,b=a.axes,c=a.series,d=a.container,f=d&&d.parentNode;for(H(a,"destroy"),T[a.index]=A,eb--,a.renderTo.removeAttribute("data-highcharts-chart"),V(a),e=b.length;e--;)b[e]=b[e].destroy();for(e=c.length;e--;)c[e]=c[e].destroy();o("title,subtitle,chartBackground,plotBackground,plotBGImage,plotBorder,seriesGroup,clipRect,credits,pointer,scroller,rangeSelector,legend,resetZoomButton,tooltip,renderer".split(","),function(b){var c=a[b];c&&c.destroy&&(a[b]=c.destroy())}),d&&(d.innerHTML="",V(d),f&&Ta(d));for(e in a)delete a[e]},isReadyToRender:function(){var a=this;return!ca&&E==E.top&&"complete"!==y.readyState||ga&&!E.canvg?(ga?Ob.push(function(){a.firstRender()},a.options.global.canvasToolsURL):y.attachEvent("onreadystatechange",function(){y.detachEvent("onreadystatechange",a.firstRender),"complete"===y.readyState&&a.firstRender()}),!1):!0},firstRender:function(){var a=this,b=a.options;a.isReadyToRender()&&(a.getContainer(),H(a,"init"),a.resetMargins(),a.setChartSize(),a.propFromSeries(),a.getAxes(),o(b.series||[],function(b){a.initSeries(b)}),a.linkSeries(),H(a,"beforeRender"),z.Pointer&&(a.pointer=new Xa(a,b)),a.render(),a.renderer.draw(),a.renderer.imgCount||a.onload(),a.cloneRenderTo(!0))},onload:function(){var a=this;o([this.callback].concat(this.callbacks),function(b){b&&void 0!==a.index&&b.apply(a,[a])}),a.renderer.imgCount||H(a,"load")},splashArray:function(a,b){var c=b[a],c=Y(c)?c:[c,c,c,c];return[p(b[a+"Top"],c[0]),p(b[a+"Right"],c[1]),p(b[a+"Bottom"],c[2]),p(b[a+"Left"],c[3])]}},Cb=z.CenteredSeriesMixin={getCenter:function(){var g,h,a=this.options,b=this.chart,c=2*(a.slicedOffset||0),d=b.plotWidth-2*c,b=b.plotHeight-2*c,e=a.center,e=[p(e[0],"50%"),p(e[1],"50%"),a.size||"100%",a.innerSize||0],f=F(d,b);for(g=0;4>g;++g)h=e[g],a=2>g||2===g&&/%$/.test(h),e[g]=(/%$/.test(h)?[d,b,f,e[2]][g]*parseFloat(h)/100:parseFloat(h))+(a?c:0);return e[3]>e[2]&&(e[3]=e[2]),e}},Ia=function(){},Ia.prototype={init:function(a,b,c){return this.series=a,this.color=a.color,this.applyOptions(b,c),this.pointAttr={},a.options.colorByPoint&&(b=a.options.colors||a.chart.options.colors,this.color=this.color||b[a.colorCounter++],a.colorCounter===b.length)&&(a.colorCounter=0),a.chart.pointCount++,this},applyOptions:function(a,b){var c=this.series,d=c.options.pointValKey||c.pointValKey,a=Ia.prototype.optionsToObject.call(this,a);return u(this,a),this.options=this.options?u(this.options,a):a,d&&(this.y=this[d]),this.isNull=null===this.y,this.x===A&&c&&(this.x=b===A?c.autoIncrement():b),this},optionsToObject:function(a){var b={},c=this.series,d=c.options.keys,e=d||c.pointArrayMap||["y"],f=e.length,g=0,h=0;if("number"==typeof a||null===a)b[e[0]]=a;else if(Ja(a))for(!d&&a.length>f&&(c=typeof a[0],"string"===c?b.name=a[0]:"number"===c&&(b.x=a[0]),g++);f>h;)d&&void 0===a[g]||(b[e[h]]=a[g]),g++,h++;else"object"==typeof a&&(b=a,a.dataLabels&&(c._hasPointLabels=!0),a.marker&&(c._hasPointMarkers=!0));return b},destroy:function(){var c,a=this.series.chart,b=a.hoverPoints;a.pointCount--,b&&(this.setState(),oa(b,this),!b.length)&&(a.hoverPoints=null),this===a.hoverPoint&&this.onMouseOut(),(this.graphic||this.dataLabel)&&(V(this),this.destroyElements()),this.legendItem&&a.legend.destroyItem(this);for(c in this)this[c]=null},destroyElements:function(){for(var b,a=["graphic","dataLabel","dataLabelUpper","connector","shadowGroup"],c=6;c--;)b=a[c],this[b]&&(this[b]=this[b].destroy())},getLabelConfig:function(){return{x:this.category,y:this.y,color:this.color,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}},tooltipFormatter:function(a){var b=this.series,c=b.tooltipOptions,d=p(c.valueDecimals,""),e=c.valuePrefix||"",f=c.valueSuffix||"";return o(b.pointArrayMap||["y"],function(b){b="{point."+b,(e||f)&&(a=a.replace(b+"}",e+b+"}"+f)),a=a.replace(b+"}",b+":,."+d+"f}")}),La(a,{point:this,series:this.series})},firePointEvent:function(a,b,c){var d=this,e=this.series.options;(e.point.events[a]||d.options&&d.options.events&&d.options.events[a])&&this.importEvents(),"click"===a&&e.allowPointSelect&&(c=function(a){d.select&&d.select(null,a.ctrlKey||a.metaKey||a.shiftKey)}),H(this,a,b,c)},visible:!0},Q=z.Series=function(){},Q.prototype={isCartesian:!0,type:"line",pointClass:Ia,sorted:!0,requireSorting:!0,pointAttrToOptions:{stroke:"lineColor","stroke-width":"lineWidth",fill:"fillColor",r:"radius"},directTouch:!1,axisTypes:["xAxis","yAxis"],colorCounter:0,parallelArrays:["x","y"],init:function(a,b){var d,e,c=this,f=a.series,g=function(a,b){return p(a.options.index,a._i)-p(b.options.index,b._i)};c.chart=a,c.options=b=c.setOptions(b),c.linkedSeries=[],c.bindAxes(),u(c,{name:b.name,state:"",pointAttr:{},visible:b.visible!==!1,selected:b.selected===!0}),ga&&(b.animation=!1),e=b.events;for(d in e)M(c,d,e[d]);(e&&e.click||b.point&&b.point.events&&b.point.events.click||b.allowPointSelect)&&(a.runTrackerClick=!0),c.getColor(),c.getSymbol(),o(c.parallelArrays,function(a){c[a+"Data"]=[]}),c.setData(b.data,!1),c.isCartesian&&(a.hasCartesianSeries=!0),f.push(c),c._i=f.length-1,ib(f,g),this.yAxis&&ib(this.yAxis.series,g),o(f,function(a,b){a.index=b,a.name=a.name||"Series "+(b+1)})},bindAxes:function(){var d,a=this,b=a.options,c=a.chart;o(a.axisTypes||[],function(e){o(c[e],function(c){d=c.options,(b[e]===d.index||b[e]!==A&&b[e]===d.id||b[e]===A&&0===d.index)&&(c.series.push(a),a[e]=c,c.isDirty=!0)}),!a[e]&&a.optionalAxis!==e&&X(18,!0)})},updateParallelArrays:function(a,b){var c=a.series,d=arguments;o(c.parallelArrays,"number"==typeof b?function(d){var f="y"===d&&c.toYData?c.toYData(a):a[d];c[d+"Data"][b]=f}:function(a){Array.prototype[b].apply(c[a+"Data"],Array.prototype.slice.call(d,2))})},autoIncrement:function(){var c,a=this.options,b=this.xIncrement,d=a.pointIntervalUnit,b=p(b,a.pointStart,0);return this.pointInterval=c=p(this.pointInterval,a.pointInterval,1),"month"!==d&&"year"!==d||(a=new qa(b),a="month"===d?+a[xb](a[ab]()+c):+a[yb](a[bb]()+c),c=a-b),this.xIncrement=b+c,b},setOptions:function(a){var b=this.chart,c=b.options.plotOptions,b=b.userOptions||{},d=b.plotOptions||{},e=c[this.type];return this.userOptions=a,c=D(e,c.series,a),this.tooltipOptions=D(N.tooltip,N.plotOptions[this.type].tooltip,b.tooltip,d.series&&d.series.tooltip,d[this.type]&&d[this.type].tooltip,a.tooltip),null===e.marker&&delete c.marker,this.zoneAxis=c.zoneAxis,a=this.zones=(c.zones||[]).slice(),!c.negativeColor&&!c.negativeFillColor||c.zones||a.push({value:c[this.zoneAxis+"Threshold"]||c.threshold||0,color:c.negativeColor,fillColor:c.negativeFillColor}),a.length&&q(a[a.length-1].value)&&a.push({color:this.color,fillColor:this.fillColor}),c},getCyclic:function(a,b,c){var d=this.userOptions,e="_"+a+"Index",f=a+"Counter";b||(q(d[e])?b=d[e]:(d[e]=b=this.chart[f]%c.length,this.chart[f]+=1),b=c[b]),this[a]=b},getColor:function(){this.options.colorByPoint?this.options.color=null:this.getCyclic("color",this.options.color||aa[this.type].color,this.chart.options.colors)},getSymbol:function(){var a=this.options.marker;this.getCyclic("symbol",a.symbol,this.chart.options.symbols),/^url/.test(this.symbol)&&(a.radius=0)},drawLegendSymbol:J.drawLineMarker,setData:function(a,b,c,d){var h,e=this,f=e.points,g=f&&f.length||0,i=e.options,k=e.chart,j=null,m=e.xAxis,l=m&&!!m.categories,n=i.turboThreshold,r=this.xData,s=this.yData,t=(h=e.pointArrayMap)&&h.length,a=a||[];if(h=a.length,b=p(b,!0),d!==!1&&h&&g===h&&!e.cropped&&!e.hasGroupedData&&e.visible)o(a,function(a,b){f[b].update&&a!==i.data[b]&&f[b].update(a,!1,null,!1)});else{if(e.xIncrement=null,e.colorCounter=0,o(this.parallelArrays,function(a){e[a+"Data"].length=0}),n&&h>n){for(c=0;null===j&&h>c;)j=a[c],c++;if(ma(j)){for(l=p(i.pointStart,0),j=p(i.pointInterval,1),c=0;h>c;c++)r[c]=l,s[c]=a[c],l+=j;e.xIncrement=l}else if(Ja(j))if(t)for(c=0;h>c;c++)j=a[c],r[c]=j[0],s[c]=j.slice(1,t+1);else for(c=0;h>c;c++)j=a[c],r[c]=j[0],s[c]=j[1];else X(12)}else for(c=0;h>c;c++)a[c]!==A&&(j={series:e},e.pointClass.prototype.applyOptions.apply(j,[a[c]]),e.updateParallelArrays(j,c),l&&q(j.name))&&(m.names[j.x]=j.name);for(xa(s[0])&&X(14,!0),e.data=[],e.options.data=e.userOptions.data=a,c=g;c--;)f[c]&&f[c].destroy&&f[c].destroy();m&&(m.minRange=m.userMinRange),e.isDirty=e.isDirtyData=k.isDirtyBox=!0,c=!1}"point"===i.legendType&&(this.processData(),this.generatePoints()),b&&k.redraw(c)},processData:function(a){var f,g,l,n,p,b=this.xData,c=this.yData,d=b.length,e=0,h=this.xAxis,k=this.options,i=k.cropThreshold,j=this.getExtremesFromAll||k.getExtremesFromAll,m=this.isCartesian;if(k=h&&h.val2lin,l=h&&h.isLog,m&&!this.isDirty&&!h.isDirty&&!this.yAxis.isDirty&&!a)return!1;for(h&&(a=h.getExtremes(),n=a.min,p=a.max),m&&this.sorted&&!j&&(!i||d>i||this.forceCrop)&&(b[d-1]p?(b=[],c=[]):(b[0]p)&&(e=this.cropData(this.xData,this.yData,n,p),b=e.xData,c=e.yData,e=e.start,f=!0)),i=b.length||1;--i;)d=l?k(b[i])-k(b[i-1]):b[i]-b[i-1],d>0&&(g===A||g>d)?g=d:0>d&&this.requireSorting&&X(15);this.cropped=f,this.cropStart=e,this.processedXData=b,this.processedYData=c,this.closestPointRange=g},cropData:function(a,b,c,d){var i,e=a.length,f=0,g=e,h=p(this.cropShoulder,1);for(i=0;e>i;i++)if(a[i]>=c){f=t(0,i-h);break}for(c=i;e>c;c++)if(a[c]>d){g=c+h;break}return{xData:a.slice(f,g),yData:b.slice(f,g),start:f,end:g}},generatePoints:function(){var c,i,j,l,a=this.options.data,b=this.data,d=this.processedXData,e=this.processedYData,f=this.pointClass,g=d.length,h=this.cropStart||0,k=this.hasGroupedData,m=[];for(b||k||(b=[],b.length=a.length,b=this.data=b),l=0;g>l;l++)i=h+l,k?m[l]=(new f).init(this,[d[l]].concat(ta(e[l]))):(b[i]?j=b[i]:a[i]!==A&&(b[i]=j=(new f).init(this,a[i],d[l])),m[l]=j),m[l].index=i;if(b&&(g!==(c=b.length)||k))for(l=0;c>l;l++)l===h&&!k&&(l+=g),b[l]&&(b[l].destroyElements(),b[l].plotX=A);this.data=b,this.points=m},getExtremes:function(a){var i,k,j,m,b=this.yAxis,c=this.processedXData,e=[],f=0,d=this.xAxis.getExtremes(),g=d.min,h=d.max;for(a=a||this.stackedYData||this.processedYData,d=a.length,m=0;d>m;m++)if(k=c[m],j=a[m],i=null!==j&&j!==A&&(!b.isLog||j.length||j>0),k=this.getExtremesFromAll||this.options.getExtremesFromAll||this.cropped||(c[m+1]||k)>=g&&(c[m-1]||k)<=h,i&&k)if(i=j.length)for(;i--;)null!==j[i]&&(e[f++]=j[i]);else e[f++]=j;this.dataMin=Ra(e),this.dataMax=Ea(e)},translate:function(){var a,b,c,d,e,f,g,h,i,k,j,m,l,n,r,o,R,v,x,w,u;for(this.processedXData||this.processData(),this.generatePoints(),a=this.options,b=a.stacking,c=this.xAxis,d=c.categories,e=this.yAxis,f=this.points,g=f.length,h=!!this.modifyValue,i=a.pointPlacement,k="between"===i||ma(i),j=a.threshold,m=a.startFromThreshold?j:0,R=Number.MAX_VALUE,a=0;g>a;a++)v=f[a],x=v.x,w=v.y,n=v.low,u=b&&e.stacks[(this.negStacks&&(m?0:j)>w?"-":"")+this.stackKey],e.isLog&&null!==w&&0>=w&&(v.y=w=null,X(10)),v.plotX=l=F(t(-1e5,c.translate(x,0,0,0,1,i,"flags"===this.type)),1e5),b&&this.visible&&!v.isNull&&u&&u[x]&&(o=this.getStackIndicator(o,x,this.index),u=u[x],w=u.points[o.key],n=w[0],w=w[1],n===m&&(n=p(j,e.min)),e.isLog&&0>=n&&(n=null),v.total=v.stackTotal=u.total,v.percentage=u.total&&v.y/u.total*100,v.stackY=w,u.setOffset(this.pointXOffset||0,this.barW||0)),v.yBottom=q(n)?e.translate(n,0,1,0,1):null,h&&(w=this.modifyValue(w,v)),v.plotY=n="number"==typeof w&&w!==1/0?F(t(-1e5,e.translate(w,0,1,0,1)),1e5):A,v.isInside=n!==A&&n>=0&&n<=e.len&&l>=0&&l<=c.len,v.clientX=k?c.translate(x,0,0,0,1):l,v.negative=v.y<(j||0),v.category=d&&d[v.x]!==A?d[v.x]:v.x,a&&(R=F(R,P(l-r))),r=l;this.closestPointRangePx=R; },getValidPoints:function(){return Ha(this.points,function(a){return!a.isNull})},setClip:function(a){var b=this.chart,c=this.options,d=b.renderer,e=b.inverted,f=this.clipBox,g=f||b.clipBox,h=this.sharedClipKey||["_sharedClip",a&&a.duration,a&&a.easing,g.height,c.xAxis,c.yAxis].join(","),i=b[h],k=b[h+"m"];i||(a&&(g.width=0,b[h+"m"]=k=d.clipRect(-99,e?-b.plotLeft:-b.plotTop,99,e?b.chartWidth:b.chartHeight)),b[h]=i=d.clipRect(g)),a&&(i.count+=1),c.clip!==!1&&(this.group.clip(a||f?i:b.clipRect),this.markerGroup.clip(k),this.sharedClipKey=h),a||(i.count-=1,i.count<=0&&h&&b[h]&&(f||(b[h]=b[h].destroy()),b[h+"m"]&&(b[h+"m"]=b[h+"m"].destroy())))},animate:function(a){var d,b=this.chart,c=this.options.animation;c&&!Y(c)&&(c=aa[this.type].animation),a?this.setClip(c):(d=this.sharedClipKey,(a=b[d])&&a.animate({width:b.plotSizeX},c),b[d+"m"]&&b[d+"m"].animate({width:b.plotSizeX+99},c),this.animate=null)},afterAnimate:function(){this.setClip(),H(this,"afterAnimate")},drawPoints:function(){var a,d,e,f,g,h,i,k,j,n,r,o,b=this.points,c=this.chart,m=this.options.marker,l=this.pointAttr[""],t=this.markerGroup,v=p(m.enabled,this.xAxis.isRadial,this.closestPointRangePx>2*m.radius);if(m.enabled!==!1||this._hasPointMarkers)for(f=b.length;f--;)g=b[f],d=S(g.plotX),e=g.plotY,j=g.graphic,n=g.marker||{},r=!!g.marker,a=v&&n.enabled===A||n.enabled,o=g.isInside,a&&e!==A&&!isNaN(e)&&null!==g.y?(a=g.pointAttr[g.selected?"select":""]||l,h=a.r,i=p(n.symbol,this.symbol),k=0===i.indexOf("url"),j?j[o?"show":"hide"](!0).attr(a).animate(u({x:d-h,y:e-h},j.symbolName?{width:2*h,height:2*h}:{})):o&&(h>0||k)&&(g.graphic=c.renderer.symbol(i,d-h,e-h,2*h,2*h,r?n:m).attr(a).add(t))):j&&(g.graphic=j.destroy())},convertAttribs:function(a,b,c,d){var f,g,e=this.pointAttrToOptions,h={},a=a||{},b=b||{},c=c||{},d=d||{};for(f in e)g=e[f],h[f]=p(a[g],b[f],c[f],d[f]);return h},getAttribs:function(){var v,a=this,b=a.options,c=aa[a.type].marker?b.marker:b,d=c.states,e=d.hover,g=a.color,h=a.options.negativeColor,f={stroke:g,fill:g},i=a.points||[],m=[],l=a.pointAttrToOptions,k=a.hasPointSpecificOptions,n=c.lineColor,r=c.fillColor,j=b.turboThreshold,s=a.zones,t=a.zoneAxis||"y";if(b.marker?(e.radius=e.radius||c.radius+e.radiusPlus,e.lineWidth=e.lineWidth||c.lineWidth+e.lineWidthPlus):(e.color=e.color||ia(e.color||g).brighten(e.brightness).get(),e.negativeColor=e.negativeColor||ia(e.negativeColor||h).brighten(e.brightness).get()),m[""]=a.convertAttribs(c,f),o(["hover","select"],function(b){m[b]=a.convertAttribs(d[b],m[""])}),a.pointAttr=m,g=i.length,!j||j>g||k)for(;g--;){if(j=i[g],(c=j.options&&j.options.marker||j.options)&&c.enabled===!1&&(c.radius=0),s.length){for(k=0,f=s[k];j[t]>=f.value;)f=s[++k];j.color=j.fillColor=p(f.color,a.color)}if(k=b.colorByPoint||j.color,j.options)for(v in l)q(c[l[v]])&&(k=!0);k?(c=c||{},k=[],d=c.states||{},f=d.hover=d.hover||{},b.marker&&(!j.negative||f.fillColor||e.fillColor)||(f[a.pointAttrToOptions.fill]=f.color||!j.options.color&&e[j.negative&&h?"negativeColor":"color"]||ia(j.color).brighten(f.brightness||e.brightness).get()),f={color:j.color},r||(f.fillColor=j.color),n||(f.lineColor=j.color),c.hasOwnProperty("color")&&!c.color&&delete c.color,k[""]=a.convertAttribs(u(f,c),m[""]),k.hover=a.convertAttribs(d.hover,m.hover,k[""]),k.select=a.convertAttribs(d.select,m.select,k[""])):k=m,j.pointAttr=k}},destroy:function(){var d,f,g,h,a=this,b=a.chart,c=/AppleWebKit\/533/.test(za),e=a.data||[];for(H(a,"destroy"),V(a),o(a.axisTypes||[],function(b){(h=a[b])&&(oa(h.series,a),h.isDirty=h.forceRedraw=!0)}),a.legendItem&&a.chart.legend.destroyItem(a),d=e.length;d--;)(f=e[d])&&f.destroy&&f.destroy();a.points=null,clearTimeout(a.animationTimeout);for(g in a)a[g]instanceof O&&!a[g].survive&&(d=c&&"group"===g?"hide":"destroy",a[g][d]());b.hoverSeries===a&&(b.hoverSeries=null),oa(b.series,a);for(g in a)delete a[g]},getGraphPath:function(a,b,c){var h,d=this,e=d.options,f=e.step,g=[],a=a||d.points;return o(a,function(i,k){var j=i.plotX,m=i.plotY,l=a[k-1];(i.leftCliff||l&&l.rightCliff)&&!c&&(h=!0),i.isNull&&!q(b)&&k>0?h=!e.connectNulls:i.isNull&&!b?h=!0:(0===k||h?l=["M",i.plotX,i.plotY]:d.getPointSpline?l=d.getPointSpline(a,i,k):f?(l="right"===f?["L",l.plotX,m]:"center"===f?["L",(l.plotX+j)/2,l.plotY,"L",(l.plotX+j)/2,m]:["L",j,l.plotY],l.push("L",j,m)):l=["L",j,m],g.push.apply(g,l),h=!1)}),d.graphPath=g},drawGraph:function(){var a=this,b=this.options,c=[["graph",b.lineColor||this.color,b.dashStyle]],d=b.lineWidth,e="square"!==b.linecap,f=(this.gappedPath||this.getGraphPath).call(this),g=this.fillGraph&&this.color||"none";o(this.zones,function(d,e){c.push(["zoneGraph"+e,d.color||a.color,d.dashStyle||b.dashStyle])}),o(c,function(c,i){var k=c[0],j=a[k];j?j.animate({d:f}):(d||g)&&f.length&&(j={stroke:c[1],"stroke-width":d,fill:g,zIndex:1},c[2]?j.dashstyle=c[2]:e&&(j["stroke-linecap"]=j["stroke-linejoin"]="round"),a[k]=a.chart.renderer.path(f).attr(j).add(a.group).shadow(2>i&&b.shadow))})},applyZones:function(){var e,f,h,l,q,v,x,a=this,b=this.chart,c=b.renderer,d=this.zones,g=this.clips||[],i=this.graph,k=this.area,j=t(b.chartWidth,b.chartHeight),m=this[(this.zoneAxis||"y")+"Axis"],n=m.reversed,r=b.inverted,s=m.horiz,w=!1;d.length&&(i||k)&&m.min!==A&&(i&&i.hide(),k&&k.hide(),l=m.getExtremes(),o(d,function(d,o){e=n?s?b.plotWidth:0:s?0:m.toPixels(l.min),e=F(t(p(f,e),0),j),f=F(t(B(m.toPixels(p(d.value,l.max),!0)),0),j),w&&(e=f=m.toPixels(l.max)),q=Math.abs(e-f),v=F(e,f),x=t(e,f),m.isXAxis?(h={x:r?x:v,y:0,width:q,height:j},s||(h.x=b.plotHeight-h.x)):(h={x:0,y:r?x:v,width:j,height:q},s&&(h.y=b.plotWidth-h.y)),b.inverted&&c.isVML&&(h=m.isXAxis?{x:0,y:n?v:x,height:h.width,width:b.chartWidth}:{x:h.y-b.plotLeft-b.spacingBox.x,y:0,width:h.height,height:b.chartHeight}),g[o]?g[o].animate(h):(g[o]=c.clipRect(h),i&&a["zoneGraph"+o].clip(g[o]),k&&a["zoneArea"+o].clip(g[o])),w=d.value>l.max}),this.clips=g)},invertGroups:function(){function a(){var a={width:b.yAxis.len,height:b.xAxis.len};o(["group","markerGroup"],function(c){b[c]&&b[c].attr(a).invert()})}var b=this,c=b.chart;b.xAxis&&(M(c,"resize",a),M(b,"destroy",function(){V(c,"resize",a)}),a(),b.invertGroups=a)},plotGroup:function(a,b,c,d,e){var f=this[a],g=!f;return g&&(this[a]=f=this.chart.renderer.g(b).attr({zIndex:d||.1}).add(e),f.addClass("highcharts-series-"+this.index)),f.attr({visibility:c})[g?"attr":"animate"](this.getPlotBox()),f},getPlotBox:function(){var a=this.chart,b=this.xAxis,c=this.yAxis;return a.inverted&&(b=c,c=this.xAxis),{translateX:b?b.left:a.plotLeft,translateY:c?c.top:a.plotTop,scaleX:1,scaleY:1}},render:function(){var c,a=this,b=a.chart,d=a.options,e=(c=d.animation)&&!!a.animate&&b.renderer.isSVG&&p(c.duration,500)||0,f=a.visible?"inherit":"hidden",g=d.zIndex,h=a.hasRendered,i=b.seriesGroup;c=a.plotGroup("group","series",f,g,i),a.markerGroup=a.plotGroup("markerGroup","markers",f,g,i),e&&a.animate(!0),a.getAttribs(),c.inverted=a.isCartesian?b.inverted:!1,a.drawGraph&&(a.drawGraph(),a.applyZones()),o(a.points,function(a){a.redraw&&a.redraw()}),a.drawDataLabels&&a.drawDataLabels(),a.visible&&a.drawPoints(),a.drawTracker&&a.options.enableMouseTracking!==!1&&a.drawTracker(),b.inverted&&a.invertGroups(),d.clip!==!1&&!a.sharedClipKey&&!h&&c.clip(b.clipRect),e&&a.animate(),h||(a.animationTimeout=Pa(function(){a.afterAnimate()},e)),a.isDirty=a.isDirtyData=!1,a.hasRendered=!0},redraw:function(){var a=this.chart,b=this.isDirtyData,c=this.isDirty,d=this.group,e=this.xAxis,f=this.yAxis;d&&(a.inverted&&d.attr({width:a.plotWidth,height:a.plotHeight}),d.animate({translateX:p(e&&e.left,a.plotLeft),translateY:p(f&&f.top,a.plotTop)})),this.translate(),this.render(),b&&H(this,"updatedData"),(c||b)&&delete this.kdTree},kdDimensions:1,kdAxisArray:["clientX","plotY"],searchPoint:function(a,b){var c=this.xAxis,d=this.yAxis,e=this.chart.inverted;return this.searchKDTree({clientX:e?c.len-a.chartY+c.pos:a.chartX-c.pos,plotY:e?d.len-a.chartX+d.pos:a.chartY-d.pos},b)},buildKDTree:function(){function a(c,e,f){var g,h;return(h=c&&c.length)?(g=b.kdAxisArray[e%f],c.sort(function(a,b){return a[g]-b[g]}),h=Math.floor(h/2),{point:c[h],left:a(c.slice(0,h),e+1,f),right:a(c.slice(h+1),e+1,f)}):void 0}var b=this,c=b.kdDimensions;delete b.kdTree,Pa(function(){var d=Ha(b.points||[],function(a){return null!==a.y});b.kdTree=a(d,c,c)},b.options.kdNow?0:1)},searchKDTree:function(a,b){function c(a,b,k,j){var n,p,m=b.point,l=d.kdAxisArray[k%j],o=m;return p=q(a[e])&&q(m[e])?Math.pow(a[e]-m[e],2):null,n=q(a[f])&&q(m[f])?Math.pow(a[f]-m[f],2):null,n=(p||0)+(n||0),m.dist=q(n)?Math.sqrt(n):Number.MAX_VALUE,m.distX=q(p)?Math.sqrt(p):Number.MAX_VALUE,l=a[l]-m[l],n=0>l?"left":"right",p=0>l?"right":"left",b[n]&&(n=c(a,b[n],k+1,j),o=n[g]e;e++)a[e].setPercentStacks()}},ka.prototype.renderStackTotals=function(){var d,e,a=this.chart,b=a.renderer,c=this.stacks,f=this.stackTotalGroup;f||(this.stackTotalGroup=f=b.g("stack-labels").attr({visibility:"visible",zIndex:6}).add()),f.translate(a.plotLeft,a.plotTop);for(d in c)for(e in a=c[d])a[e].render(f)},ka.prototype.resetStacks=function(){var b,c,a=this.stacks;if(!this.isXAxis)for(b in a)for(c in a[b])a[b][c].touchedx;x++)w=a[x],u=b[x],o=this.getStackIndicator(o,w,this.index),v=o.key,q=(s=j&&(g?0:f)>u)?k:i,l[q]||(l[q]={}),l[q][w]||(n[q]&&n[q][w]?(l[q][w]=n[q][w],l[q][w].total=null):l[q][w]=new Kb(m,m.options.stackLabels,s,w,h)),q=l[q][w],null!==u&&(q.points[v]=q.points[this.index]=[p(q.cum,g)],q.touched=m.stacksTouched,o.index>0&&this.singleStacks===!1&&(q.points[v][0]=q.points[this.index+","+w+",0"][0])),"percent"===e?(s=s?i:k,j&&l[s]&&l[s][w]?(s=l[s][w],q.total=s.total=t(s.total,q.total)+P(u)||0):q.total=ea(q.total+(P(u)||0))):q.total=ea(q.total+(u||0)),q.cum=p(q.cum,g)+(u||0),null!==u&&q.points[v].push(q.cum),c[x]=q.cum;"percent"===e&&(m.usePercentage=!0),this.stackedYData=c,m.oldStacks={}}},Q.prototype.setPercentStacks=function(){var e,a=this,b=a.stackKey,c=a.yAxis.stacks,d=a.processedXData;o([b,"-"+b],function(b){var f,g,h,i;for(g=d.length;g--;)h=d[g],e=a.getStackIndicator(e,h,a.index),f=(i=c[b]&&c[b][h])&&i.points[e.key],(h=f)&&(i=i.total?100/i.total:0,h[0]=ea(h[0]*i),h[1]=ea(h[1]*i),a.stackedYData[g]=h[1])})},Q.prototype.getStackIndicator=function(a,b,c){return q(a)&&a.x===b?a.index++:a={x:b,index:0},a.key=[c,b,a.index].join(","),a},u(hb.prototype,{addSeries:function(a,b,c){var d,e=this;return a&&(b=p(b,!0),H(e,"addSeries",{options:a},function(){d=e.initSeries(a),e.isDirtyLegend=!0,e.linkSeries(),b&&e.redraw(c)})),d},addAxis:function(a,b,c,d){var e=b?"xAxis":"yAxis",f=this.options;new ka(this,D(a,{index:this[e].length,isX:b})),f[e]=ta(f[e]||{}),f[e].push(a),p(c,!0)&&this.redraw(d)},showLoading:function(a){var b=this,c=b.options,d=b.loadingDiv,e=c.loading,f=function(){d&&L(d,{left:b.plotLeft+"px",top:b.plotTop+"px",width:b.plotWidth+"px",height:b.plotHeight+"px"})};d||(b.loadingDiv=d=Z(Ma,{className:"highcharts-loading"},u(e.style,{zIndex:10,display:"none"}),b.container),b.loadingSpan=Z("span",null,e.labelStyle,d),M(b,"redraw",f)),b.loadingSpan.innerHTML=a||c.lang.loading,b.loadingShown||(L(d,{opacity:0,display:""}),Wa(d,{opacity:e.style.opacity},{duration:e.showDuration||0}),b.loadingShown=!0),f()},hideLoading:function(){var a=this.options,b=this.loadingDiv;b&&Wa(b,{opacity:0},{duration:a.loading.hideDuration||100,complete:function(){L(b,{display:"none"})}}),this.loadingShown=!1}}),u(Ia.prototype,{update:function(a,b,c,d){function e(){f.applyOptions(a),null===f.y&&h&&(f.graphic=h.destroy()),Y(a)&&!Ja(a)&&(f.redraw=function(){h&&h.element&&a&&a.marker&&a.marker.symbol&&(f.graphic=h.destroy()),a&&a.dataLabels&&f.dataLabel&&(f.dataLabel=f.dataLabel.destroy()),f.redraw=null}),i=f.index,g.updateParallelArrays(f,i),m&&f.name&&(m[f.x]=f.name),j.data[i]=Y(j.data[i])?f.options:a,g.isDirty=g.isDirtyData=!0,!g.fixedBox&&g.hasCartesianSeries&&(k.isDirtyBox=!0),"point"===j.legendType&&(k.isDirtyLegend=!0),b&&k.redraw(c)}var i,f=this,g=f.series,h=f.graphic,k=g.chart,j=g.options,m=g.xAxis&&g.xAxis.names,b=p(b,!0);d===!1?e():f.firePointEvent("update",{options:a},e)},remove:function(a,b){this.series.removePoint(sa(this,this.series.data),a,b)}}),u(Q.prototype,{addPoint:function(a,b,c,d){var n,e=this,f=e.options,g=e.data,h=e.graph,i=e.area,k=e.chart,j=e.xAxis&&e.xAxis.names,m=h&&h.shift||0,l=["graph","area"],h=f.data,r=e.xData;if(Ua(d,k),c){for(d=e.zones.length;d--;)l.push("zoneGraph"+d,"zoneArea"+d);o(l,function(a){e[a]&&(e[a].shift=m+(f.step?2:1))})}if(i&&(i.isArea=!0),b=p(b,!0),i={series:e},e.pointClass.prototype.applyOptions.apply(i,[a]),l=i.x,d=r.length,e.requireSorting&&ll;)d--;e.updateParallelArrays(i,"splice",d,0,0),e.updateParallelArrays(i,d),j&&i.name&&(j[l]=i.name),h.splice(d,0,a),n&&(e.data.splice(d,0,null),e.processData()),"point"===f.legendType&&e.generatePoints(),c&&(g[0]&&g[0].remove?g[0].remove(!1):(g.shift(),e.updateParallelArrays(i,"shift"),h.shift())),e.isDirty=!0,e.isDirtyData=!0,b&&(e.getAttribs(),k.redraw())},removePoint:function(a,b,c){var d=this,e=d.data,f=e[a],g=d.points,h=d.chart,i=function(){g&&g.length===e.length&&g.splice(a,1),e.splice(a,1),d.options.data.splice(a,1),d.updateParallelArrays(f||{series:d},"splice",a,1),f&&f.destroy(),d.isDirty=!0,d.isDirtyData=!0,b&&h.redraw()};Ua(c,h),b=p(b,!0),f?f.firePointEvent("remove",null,i):i()},remove:function(a,b){var c=this,d=c.chart;H(c,"remove",null,function(){c.destroy(),d.isDirtyLegend=d.isDirtyBox=!0,d.linkSeries(),p(a,!0)&&d.redraw(b)})},update:function(a,b){var i,c=this,d=this.chart,e=this.userOptions,f=this.type,g=I[f].prototype,h=["group","markerGroup","dataLabelsGroup"];(a.type&&a.type!==f||void 0!==a.zIndex)&&(h.length=0),o(h,function(a){h[a]=c[a],delete c[a]}),a=D(e,{animation:!1,index:this.index,pointStart:this.xData[0]},{data:this.options.data},a),this.remove(!1);for(i in g)this[i]=A;u(this,I[a.type||f].prototype),o(h,function(a){c[a]=h[a]}),this.init(d,a),d.linkSeries(),p(b,!0)&&d.redraw(!1)}}),u(ka.prototype,{update:function(a,b){var c=this.chart,a=c.options[this.coll][this.options.index]=D(this.userOptions,a);this.destroy(!0),this._addedPlotLB=this.chart._labelPanes=A,this.init(c,u(a,{events:A})),c.isDirtyBox=!0,p(b,!0)&&c.redraw()},remove:function(a){for(var b=this.chart,c=this.coll,d=this.series,e=d.length;e--;)d[e]&&d[e].remove(!1);oa(b.axes,this),oa(b[c],this),b.options[c].splice(this.options.index,1),o(b[c],function(a,b){a.options.index=b}),this.destroy(),b.isDirtyBox=!0,p(a,!0)&&b.redraw()},setTitle:function(a,b){this.update({title:a},b)},setCategories:function(a,b){this.update({categories:a},b)}}),wa=pa(Q),I.line=wa,aa.area=D(da,{softThreshold:!1,threshold:0}),la=pa(Q,{type:"area",singleStacks:!1,getStackPoints:function(){var j,l,n,a=[],b=[],c=this.xAxis,d=this.yAxis,e=d.stacks[this.stackKey],f={},g=this.points,h=this.index,i=d.series,k=i.length,m=p(d.options.reversedStacks,!0)?1:-1;if(this.options.stacking){for(l=0;l=0&&k>l;)p=n.points[l],p||(l===h?f[g][c]=!0:j[l]&&(q=e[g].points[l])&&(d-=q[1]-q[0])),l+=m;f[g][1===a?"rightCliff":"leftCliff"]=d});else{for(l=h;l>=0&&k>l;){if(p=e[g].points[l]){n=p[1];break}l+=m}n=d.toPixels(n,!0),a.push({isNull:!0,plotX:c.toPixels(g,!0),plotY:n,yBottom:n})}})}return a},getGraphPath:function(a){var f,g,j,o,b=Q.prototype.getGraphPath,c=this.options,d=c.stacking,e=this.yAxis,h=[],i=[],k=this.index,m=e.stacks[this.stackKey],l=c.threshold,n=e.getThreshold(c.threshold),c=c.connectNulls||"percent"===d,s=function(b,c,f){var o,r,g=a[b],b=d&&m[g.x].points[k],p=g[f+"Null"]||0,f=g[f+"Cliff"]||0,g=!0;f||p?(o=(p?b[0]:b[1])+f,r=b[0]+f,g=!!p):!d&&a[c]&&a[c].isNull&&(o=r=l),void 0!==o&&(i.push({plotX:j,plotY:null===o?n:e.toPixels(o,!0),isNull:g}),h.push({plotX:j,plotY:null===r?n:e.toPixels(r,!0)}))},a=a||this.points;for(d&&(a=this.getStackPoints()),f=0;fa&&h>e?(h=t(a,e),k=2*e-h):a>h&&e>h&&(h=F(a,e),k=2*e-h),k>c&&k>e?(k=t(c,e),h=2*e-k):c>k&&e>k&&(k=F(c,e),h=2*e-k),b.rightContX=i,b.rightContY=k),b=["C",p(f.rightContX,f.plotX),p(f.rightContY,f.plotY),p(g,d),p(h,e),d,e],f.rightContX=f.rightContY=null,b}}),I.spline=wa,aa.areaspline=D(aa.area),la=la.prototype,wa=pa(wa,{type:"areaspline",getStackPoints:la.getStackPoints,getGraphPath:la.getGraphPath,setStackCliffs:la.setStackCliffs,drawGraph:la.drawGraph,drawLegendSymbol:J.drawRectangle}),I.areaspline=wa,aa.column=D(da,{borderColor:"#FFFFFF",borderRadius:0,groupPadding:.2,marker:null,pointPadding:.1,minPointLength:0,cropThreshold:50,pointRange:null,states:{hover:{brightness:.1,shadow:!1,halo:!1},select:{color:"#C0C0C0",borderColor:"#000000",shadow:!1}},dataLabels:{align:null,verticalAlign:null,y:null},softThreshold:!1,startFromThreshold:!0,stickyTracking:!1,tooltip:{distance:6},threshold:0}),wa=pa(Q,{type:"column",pointAttrToOptions:{stroke:"borderColor",fill:"color",r:"borderRadius"},cropShoulder:0,directTouch:!0,trackerGroups:["group","dataLabelsGroup"],negStacks:!0,init:function(){Q.prototype.init.apply(this,arguments);var a=this,b=a.chart;b.hasRendered&&o(b.series,function(b){b.type===a.type&&(b.isDirty=!0)})},getColumnMetrics:function(){var f,i,k,j,a=this,b=a.options,c=a.xAxis,d=a.yAxis,e=c.reversed,g={},h=0;return b.grouping===!1?h=1:o(a.chart.series,function(b){var i,c=b.options,e=b.yAxis;b.type===a.type&&b.visible&&d.len===e.len&&d.pos===e.pos&&(c.stacking?(f=b.stackKey,g[f]===A&&(g[f]=h++),i=g[f]):c.grouping!==!1&&(i=h++),b.columnIndex=i)}),i=F(P(c.transA)*(c.ordinalSlope||b.pointRange||c.closestPointRange||c.tickInterval||1),c.len),k=i*b.groupPadding,j=(i-2*k)/h,b=F(b.maxPointWidth||c.len,p(b.pointWidth,j*(1-2*b.pointPadding))),a.columnMetrics={width:b,offset:(j-b)/2+(k+((a.columnIndex||0)+(e?1:0))*j-i/2)*(e?-1:1)},a.columnMetrics},crispCol:function(a,b,c,d){var e=this.chart,f=this.borderWidth,g=-(f%2?.5:0),f=f%2?.5:1;return e.inverted&&e.renderer.isVML&&(f+=1),c=Math.round(a+c)+g,a=Math.round(a)+g,c-=a,d=Math.round(b+d)+f,g=P(b)<=.5&&d>.5,b=Math.round(b)+f,d-=b,g&&(b-=1,d+=1),{x:a,y:b,width:c,height:d}},translate:function(){var a=this,b=a.chart,c=a.options,d=a.borderWidth=p(c.borderWidth,a.closestPointRange*a.xAxis.transA<2?0:1),e=a.yAxis,f=a.translatedThreshold=e.getThreshold(c.threshold),g=p(c.minPointLength,5),h=a.getColumnMetrics(),i=h.width,k=a.barW=t(i,1+2*d),j=a.pointXOffset=h.offset;b.inverted&&(f-=.5),c.pointPadding&&(k=ua(k)),Q.prototype.translate.apply(a),o(a.points,function(c){var v,d=F(p(c.yBottom,f),9e4),h=999+P(d),h=F(t(-h,c.plotY),e.len+h),o=c.plotX+j,s=k,q=F(h,d),u=t(h,d)-q;P(u)g?d-g:f-(v?g:0)),c.barX=o,c.pointWidth=i,c.tooltipPos=b.inverted?[e.len+e.pos-b.plotLeft-h,a.xAxis.len-o-s/2,u]:[o+s/2,h+e.pos-b.plotTop,u],c.shapeType="rect",c.shapeArgs=a.crispCol(o,q,s,u)})},getSymbol:Aa,drawLegendSymbol:J.drawRectangle,drawGraph:Aa,drawPoints:function(){var f,g,a=this,b=this.chart,c=a.options,d=b.renderer,e=c.animationLimit||250;o(a.points,function(h){var i=h.plotY,k=h.graphic;i===A||isNaN(i)||null===h.y?k&&(h.graphic=k.destroy()):(f=h.shapeArgs,i=q(a.borderWidth)?{"stroke-width":a.borderWidth}:{},g=h.pointAttr[h.selected?"select":""]||a.pointAttr[""],k?(Oa(k),k.attr(i).attr(g)[b.pointCount {series.name}
    ',pointFormat:"x: {point.x}
    y: {point.y}
    "}}),la=pa(Q,{type:"scatter",sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:["group","markerGroup","dataLabelsGroup"],takeOrdinalPosition:!1,kdDimensions:2,drawGraph:function(){this.options.lineWidth&&Q.prototype.drawGraph.call(this)}}),I.scatter=la,aa.pie=D(da,{borderColor:"#FFFFFF",borderWidth:1,center:[null,null],clip:!1,colorByPoint:!0,dataLabels:{distance:30,enabled:!0,formatter:function(){return null===this.y?void 0:this.point.name},x:0},ignoreHiddenPoint:!0,legendType:"point",marker:null,size:null,showInLegend:!1,slicedOffset:10,states:{hover:{brightness:.1,shadow:!1}},stickyTracking:!1,tooltip:{followPointer:!0}}),da={type:"pie",isCartesian:!1,pointClass:pa(Ia,{init:function(){Ia.prototype.init.apply(this,arguments);var b,a=this;return a.name=p(a.name,"Slice"),b=function(b){a.slice("select"===b.type)},M(a,"select",b),M(a,"unselect",b),a},setVisible:function(a,b){var c=this,d=c.series,e=d.chart,f=d.options.ignoreHiddenPoint,b=p(b,f);a!==c.visible&&(c.visible=c.options.visible=a=a===A?!c.visible:a,d.options.data[sa(c,d.data)]=c.options,o(["graphic","dataLabel","connector","shadowGroup"],function(b){c[b]&&c[b][a?"show":"hide"](!0)}),c.legendItem&&e.legend.colorizeItem(c,a),!a&&"hover"===c.state&&c.setState(""),f&&(d.isDirty=!0),b&&e.redraw())},slice:function(a,b,c){var d=this.series;Ua(c,d.chart),p(b,!0),this.sliced=this.options.sliced=a=q(a)?a:!this.sliced,d.options.data[sa(this,d.data)]=this.options,a=a?this.slicedTranslation:{translateX:0,translateY:0},this.graphic.animate(a),this.shadowGroup&&this.shadowGroup.animate(a)},haloPath:function(a){var b=this.shapeArgs,c=this.series.chart;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(c.plotLeft+b.x,c.plotTop+b.y,b.r+a,b.r+a,{innerR:this.shapeArgs.r,start:b.start,end:b.end})}}),requireSorting:!1,directTouch:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],axisTypes:[],pointAttrToOptions:{stroke:"borderColor","stroke-width":"borderWidth",fill:"color"},animate:function(a){var b=this,c=b.points,d=b.startAngleRad;a||(o(c,function(a){var c=a.graphic,g=a.shapeArgs;c&&(c.attr({r:a.startR||b.center[3]/2,start:d,end:d}),c.animate({r:g.r,start:g.start,end:g.end},b.options.animation))}),b.animate=null)},updateTotals:function(){var a,e,b=0,c=this.points,d=c.length,f=this.options.ignoreHiddenPoint;for(a=0;d>a;a++)e=c[a],b+=f&&!e.visible?0:e.y;for(this.total=b,a=0;d>a;a++)e=c[a],e.percentage=b>0&&(e.visible||!f)?e.y/b*100:0,e.total=b},generatePoints:function(){Q.prototype.generatePoints.call(this),this.updateTotals()},translate:function(a){this.generatePoints();var f,g,h,l,o,b=0,c=this.options,d=c.slicedOffset,e=d+c.borderWidth,i=c.startAngle||0,k=this.startAngleRad=ra/180*(i-90),i=(this.endAngleRad=ra/180*(p(c.endAngle,i+360)-90))-k,j=this.points,m=c.dataLabels.distance,c=c.ignoreHiddenPoint,n=j.length;for(a||(this.center=a=this.getCenter()),this.getX=function(b,c){return h=W.asin(F((b-a[1])/(a[2]/2+m),1)),a[0]+(c?-1:1)*U(h)*(a[2]/2+m)},l=0;n>l;l++)o=j[l],f=k+b*i,c&&!o.visible||(b+=o.percentage/100),g=k+b*i,o.shapeType="arc",o.shapeArgs={x:a[0],y:a[1],r:a[2]/2,innerR:a[3]/2,start:B(1e3*f)/1e3,end:B(1e3*g)/1e3},h=(g+f)/2,h>1.5*ra?h-=2*ra:-ra/2>h&&(h+=2*ra),o.slicedTranslation={translateX:B(U(h)*d),translateY:B($(h)*d)},f=U(h)*a[2]/2,g=$(h)*a[2]/2,o.tooltipPos=[a[0]+.7*f,a[1]+.7*g],o.half=-ra/2>h||h>ra/2?1:0,o.angle=h,e=F(e,m/2),o.labelPos=[a[0]+f+U(h)*m,a[1]+g+$(h)*m,a[0]+f+U(h)*e,a[1]+g+$(h)*e,a[0]+f,a[1]+g,0>m?"center":o.half?"right":"left",h]},drawGraph:null,drawPoints:function(){var c,d,f,g,h,i,a=this,b=a.chart.renderer,e=a.options.shadow;e&&!a.shadowGroup&&(a.shadowGroup=b.g("shadow").add(a.group)),o(a.points,function(k){null!==k.y&&(d=k.graphic,h=k.shapeArgs,f=k.shadowGroup,g=k.pointAttr[k.selected?"select":""],g.stroke||(g.stroke=g.fill),e&&!f&&(f=k.shadowGroup=b.g("shadow").add(a.shadowGroup)),c=k.sliced?k.slicedTranslation:{translateX:0,translateY:0},f&&f.attr(c),d?d.setRadialReference(a.center).attr(g).animate(u(h,c)):(i={"stroke-linejoin":"round"},k.visible||(i.visibility="hidden"),k.graphic=d=b[k.shapeType](h).setRadialReference(a.center).attr(g).attr(i).attr(c).add(a.group).shadow(e,f)))})},searchPoint:Aa,sortByAngle:function(a,b){a.sort(function(a,d){return void 0!==a.angle&&(d.angle-a.angle)*b})},drawLegendSymbol:J.drawRectangle,getCenter:Cb.getCenter,getSymbol:Aa},da=pa(Q,da),I.pie=da,Q.prototype.drawDataLabels=function(){var f,g,i,k,a=this,b=a.options,c=b.cursor,d=b.dataLabels,e=a.points,h=a.hasRendered||0,j=a.chart.renderer;(d.enabled||a._hasPointLabels)&&(a.dlProcessOptions&&a.dlProcessOptions(d),k=a.plotGroup("dataLabelsGroup","data-labels",d.defer?"hidden":"visible",d.zIndex||6),p(d.defer,!0)&&(k.attr({opacity:+h}),h||M(a,"afterAnimate",function(){a.visible&&k.show(),k[b.animation?"animate":"attr"]({opacity:1},{duration:200})})),g=d,o(e,function(e){var h,o,s,x,n=e.dataLabel,t=e.connector,v=!0,w={};if(f=e.dlOptions||e.options&&e.options.dataLabels,h=p(f&&f.enabled,g.enabled)&&null!==e.y,n&&!h)e.dataLabel=n.destroy();else if(h){if(d=D(g,f),x=d.style,h=d.rotation,o=e.getLabelConfig(),i=d.format?La(d.format,o):d.formatter.call(o,d),x.color=p(d.color,x.color,a.color,"black"),n)q(i)?(n.attr({text:i}),v=!1):(e.dataLabel=n=n.destroy(),t&&(e.connector=t.destroy()));else if(q(i)){n={fill:d.backgroundColor,stroke:d.borderColor,"stroke-width":d.borderWidth,r:d.borderRadius||0,rotation:h,padding:d.padding,zIndex:1},"contrast"===x.color&&(w.color=d.inside||d.distance<0||b.stacking?j.getContrast(e.color||a.color):"#000000"),c&&(w.cursor=c);for(s in n)n[s]===A&&delete n[s];n=e.dataLabel=j[h?"text":"label"](i,0,-9999,d.shape,null,null,d.useHTML).attr(n).css(u(x,w)).add(k).shadow(d.shadow)}n&&a.alignDataLabel(e,n,d,null,v)}}))},Q.prototype.alignDataLabel=function(a,b,c,d,e){var f=this.chart,g=f.inverted,h=p(a.plotX,-9999),i=p(a.plotY,-9999),k=b.getBBox(),j=f.renderer.fontMetrics(c.style.fontSize).b,m=c.rotation,l=c.align,n=this.visible&&(a.series.forceDL||f.isInsidePlot(h,B(i),g)||d&&f.isInsidePlot(h,g?d.x+1:d.y+d.height-1,g)),o="justify"===p(c.overflow,"justify");n&&(d=u({x:g?f.plotWidth-i:h,y:B(g?f.plotHeight-h:i),width:0,height:0},d),u(c,{width:k.width,height:k.height}),m?(o=!1,g=f.renderer.rotCorr(j,m),g={x:d.x+c.x+d.width/2+g.x,y:d.y+c.y+d.height/2},b[e?"attr":"animate"](g).attr({align:c.align}),h=(m+720)%360,h=h>180&&360>h,"left"===l?g.y-=h?k.height:0:"center"===l?(g.x-=k.width/2,g.y-=k.height/2):"right"===l&&(g.x-=k.width,g.y-=h?0:k.height)):(b.align(c,null,d),g=b.alignAttr),o?this.justifyDataLabel(b,c,g,k,d,e):p(c.crop,!0)&&(n=f.isInsidePlot(g.x,g.y)&&f.isInsidePlot(g.x+k.width,g.y+k.height)),c.shape&&!m&&b.attr({anchorX:a.plotX,anchorY:a.plotY})),n||(Oa(b),b.attr({y:-9999}),b.placed=!1)},Q.prototype.justifyDataLabel=function(a,b,c,d,e,f){var k,j,g=this.chart,h=b.align,i=b.verticalAlign,m=a.box?0:a.padding||0;k=c.x+m,0>k&&("right"===h?b.align="left":b.x=-k,j=!0),k=c.x+d.width-m,k>g.plotWidth&&("left"===h?b.align="right":b.x=g.plotWidth-k,j=!0),k=c.y+m,0>k&&("bottom"===i?b.verticalAlign="top":b.y=-k,j=!0),k=c.y+d.height-m,k>g.plotHeight&&("top"===i?b.verticalAlign="bottom":b.y=g.plotHeight-k,j=!0),j&&(a.placed=!f,a.align(b,null,e))},I.pie&&(I.pie.prototype.drawDataLabels=function(){var c,k,j,v,x,w,A,y,E,D,C,H,M,I,K,J,O,N,a=this,b=a.data,d=a.chart,e=a.options.dataLabels,f=p(e.connectorPadding,10),g=p(e.connectorWidth,1),h=d.plotWidth,i=d.plotHeight,m=p(e.softConnector,!0),l=e.distance,n=a.center,r=n[2]/2,q=n[1],u=l>0,z=[[],[]],G=[0,0,0,0],L=function(a,b){return b.y-a.y};if(a.visible&&(e.enabled||a._hasPointLabels)){for(Q.prototype.drawDataLabels.apply(a),o(b,function(a){a.dataLabel&&a.visible&&(z[a.half].push(a),a.dataLabel._pos=null)}),D=2;D--;)if(H=[],M=[],I=z[D],K=I.length,K){for(a.sortByAngle(I,D-.5),C=b=0;!b&&I[C];)b=I[C]&&I[C].dataLabel&&(I[C].dataLabel.getBBox().height||21),C++;if(l>0){for(x=F(q+r+l,d.plotHeight),C=t(0,q-r-l);x>=C;C+=b)H.push(C);if(x=H.length,K>x){for(c=[].concat(I),c.sort(L),C=K;C--;)c[C].rank=C;for(C=K;C--;)I[C].rank>=x&&I.splice(C,1);K=I.length}for(C=0;K>C;C++){for(c=I[C],w=c.labelPos,c=9999,N=0;x>N;N++)O=P(H[N]-w[1]),c>O&&(c=O,J=N);if(C>J&&null!==H[C])J=C;else for(K-C+J>x&&null!==H[C]&&(J=x-K+C);null===H[J];)J++;M.push({i:J,y:H[J]}),H[J]=null}M.sort(L)}for(C=0;K>C;C++)c=I[C],w=c.labelPos,v=c.dataLabel,E=c.visible===!1?"hidden":"inherit",c=w[1],l>0?(x=M.pop(),J=x.i,y=x.y,(c>y&&null!==H[J+1]||y>c&&null!==H[J-1])&&(y=F(t(0,c),d.plotHeight))):y=c, A=e.justify?n[0]+(D?-1:1)*(r+l):a.getX(y===q-r-l||y===q+r+l?c:y,D),v._attr={visibility:E,align:w[6]},v._pos={x:A+e.x+({left:f,right:-f}[w[6]]||0),y:y+e.y-10},v.connX=A,v.connY=y,null===this.options.size&&(x=v.width,f>A-x?G[3]=t(B(x-A+f),G[3]):A+x>h-f&&(G[1]=t(B(A+x-h+f),G[1])),0>y-b/2?G[0]=t(B(-y+b/2),G[0]):y+b/2>i&&(G[2]=t(B(y+b/2-i),G[2])))}(0===Ea(G)||this.verifyDataLabelOverflow(G))&&(this.placeDataLabels(),u&&g&&o(this.points,function(b){k=b.connector,w=b.labelPos,(v=b.dataLabel)&&v._pos&&b.visible?(E=v._attr.visibility,A=v.connX,y=v.connY,j=m?["M",A+("left"===w[6]?5:-5),y,"C",A,y,2*w[2]-w[4],2*w[3]-w[5],w[2],w[3],"L",w[4],w[5]]:["M",A+("left"===w[6]?5:-5),y,"L",w[2],w[3],"L",w[4],w[5]],k?(k.animate({d:j}),k.attr("visibility",E)):b.connector=k=a.chart.renderer.path(j).attr({"stroke-width":g,stroke:e.connectorColor||b.color||"#606060",visibility:E}).add(a.dataLabelsGroup)):k&&(b.connector=k.destroy())}))}},I.pie.prototype.placeDataLabels=function(){o(this.points,function(a){var b=a.dataLabel;b&&a.visible&&((a=b._pos)?(b.attr(b._attr),b[b.moved?"animate":"attr"](a),b.moved=!0):b&&b.attr({y:-9999}))})},I.pie.prototype.alignDataLabel=Aa,I.pie.prototype.verifyDataLabelOverflow=function(a){var g,b=this.center,c=this.options,d=c.center,e=c.minSize||80,f=e;return null!==d[0]?f=t(b[2]-t(a[1],a[3]),e):(f=t(b[2]-a[1]-a[3],e),b[0]+=(a[3]-a[1])/2),null!==d[1]?f=t(F(f,b[2]-t(a[0],a[2])),e):(f=t(F(f,b[2]-a[0]-a[2]),e),b[1]+=(a[0]-a[2])/2),fp(this.translatedThreshold,g.yAxis.len)),k=p(c.inside,!!this.options.stacking);h&&(d=D(h),d.y<0&&(d.height+=d.y,d.y=0),h=d.y+d.height-g.yAxis.len,h>0&&(d.height-=h),f&&(d={x:g.yAxis.len-d.y-d.height,y:g.xAxis.len-d.x-d.width,width:d.height,height:d.width}),k||(f?(d.x+=i?0:d.width,d.width=0):(d.y+=i?d.height:0,d.height=0))),c.align=p(c.align,!f||k?"center":i?"right":"left"),c.verticalAlign=p(c.verticalAlign,f||k?"middle":i?"top":"bottom"),Q.prototype.alignDataLabel.call(this,a,b,c,d,e)}),function(a){var b=a.Chart,c=a.each,d=a.pick,e=a.addEvent;b.prototype.callbacks.push(function(a){function b(){var e=[];c(a.series,function(a){var b=a.options.dataLabels,f=a.dataLabelCollections||["dataLabel"];(b.enabled||a._hasPointLabels)&&!b.allowOverlap&&a.visible&&c(f,function(b){c(a.points,function(a){a[b]&&(a[b].labelrank=d(a.labelrank,a.shapeArgs&&a.shapeArgs.height),e.push(a[b]))})})}),a.hideOverlappingLabels(e)}b(),e(a,"redraw",b)}),b.prototype.hideOverlappingLabels=function(a){var d,e,k,j,m,l,n,o,p,b=a.length;for(e=0;b>e;e++)(d=a[e])&&(d.oldOpacity=d.opacity,d.newOpacity=1);for(a.sort(function(a,b){return(b.labelrank||0)-(a.labelrank||0)}),e=0;b>e;e++)for(k=a[e],d=e+1;b>d;++d)j=a[d],k&&j&&k.placed&&j.placed&&0!==k.newOpacity&&0!==j.newOpacity&&(m=k.alignAttr,l=j.alignAttr,n=k.parentGroup,o=j.parentGroup,p=2*(k.box?0:k.padding),m=!(l.x+o.translateX>m.x+n.translateX+(k.width-p)||l.x+o.translateX+(j.width-p)m.y+n.translateY+(k.height-p)||l.y+o.translateY+(j.height-p)h;b.series.length&&(i||m>F(j.dataMin,j.min))&&(!i||kn?min:n>max?max:n}function toBarPerc(n){return 100*(-1+n)}function barPositionCSS(n,speed,ease){var barCSS;return barCSS="translate3d"===Settings.positionUsing?{transform:"translate3d("+toBarPerc(n)+"%,0,0)"}:"translate"===Settings.positionUsing?{transform:"translate("+toBarPerc(n)+"%,0)"}:{"margin-left":toBarPerc(n)+"%"},barCSS.transition="all "+speed+"ms "+ease,barCSS}function hasClass(element,name){var list="string"==typeof element?element:classList(element);return list.indexOf(" "+name+" ")>=0}function addClass(element,name){var oldList=classList(element),newList=oldList+name;hasClass(oldList,name)||(element.className=newList.substring(1))}function removeClass(element,name){var newList,oldList=classList(element);hasClass(element,name)&&(newList=oldList.replace(" "+name+" "," "),element.className=newList.substring(1,newList.length-1))}function classList(element){return(" "+(element.className||"")+" ").replace(/\s+/gi," ")}function removeElement(element){element&&element.parentNode&&element.parentNode.removeChild(element)}var Settings,queue,css,NProgress={};return NProgress.version="0.2.0",Settings=NProgress.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
    '},NProgress.configure=function(options){var key,value;for(key in options)value=options[key],void 0!==value&&options.hasOwnProperty(key)&&(Settings[key]=value);return this},NProgress.status=null,NProgress.set=function(n){var progress,bar,speed,ease,started=NProgress.isStarted();return n=clamp(n,Settings.minimum,1),NProgress.status=1===n?null:n,progress=NProgress.render(!started),bar=progress.querySelector(Settings.barSelector),speed=Settings.speed,ease=Settings.easing,progress.offsetWidth,queue(function(next){""===Settings.positionUsing&&(Settings.positionUsing=NProgress.getPositioningCSS()),css(bar,barPositionCSS(n,speed,ease)),1===n?(css(progress,{transition:"none",opacity:1}),progress.offsetWidth,setTimeout(function(){css(progress,{transition:"all "+speed+"ms linear",opacity:0}),setTimeout(function(){NProgress.remove(),next()},speed)},speed)):setTimeout(next,speed)}),this},NProgress.isStarted=function(){return"number"==typeof NProgress.status},NProgress.start=function(){NProgress.status||NProgress.set(0);var work=function(){setTimeout(function(){NProgress.status&&(NProgress.trickle(),work())},Settings.trickleSpeed)};return Settings.trickle&&work(),this},NProgress.done=function(force){return force||NProgress.status?NProgress.inc(.3+.5*Math.random()).set(1):this},NProgress.inc=function(amount){var n=NProgress.status;return n?("number"!=typeof amount&&(amount=(1-n)*clamp(Math.random()*n,.1,.95)),n=clamp(n+amount,0,.994),NProgress.set(n)):NProgress.start()},NProgress.trickle=function(){return NProgress.inc(Math.random()*Settings.trickleRate)},function(){var initial=0,current=0;NProgress.promise=function($promise){return $promise&&"resolved"!==$promise.state()?(0===current&&NProgress.start(),initial++,current++,$promise.always(function(){current--,0===current?(initial=0,NProgress.done()):NProgress.set((initial-current)/initial)}),this):this}}(),NProgress.render=function(fromStart){var progress,bar,perc,parent,spinner;return NProgress.isRendered()?document.getElementById("nprogress"):(addClass(document.documentElement,"nprogress-busy"),progress=document.createElement("div"),progress.id="nprogress",progress.innerHTML=Settings.template,bar=progress.querySelector(Settings.barSelector),perc=fromStart?"-100":toBarPerc(NProgress.status||0),parent=document.querySelector(Settings.parent),css(bar,{transition:"all 0 linear",transform:"translate3d("+perc+"%,0,0)"}),Settings.showSpinner||(spinner=progress.querySelector(Settings.spinnerSelector),spinner&&removeElement(spinner)),parent!=document.body&&addClass(parent,"nprogress-custom-parent"),parent.appendChild(progress),progress)},NProgress.remove=function(){removeClass(document.documentElement,"nprogress-busy"),removeClass(document.querySelector(Settings.parent),"nprogress-custom-parent");var progress=document.getElementById("nprogress");progress&&removeElement(progress)},NProgress.isRendered=function(){return!!document.getElementById("nprogress")},NProgress.getPositioningCSS=function(){var bodyStyle=document.body.style,vendorPrefix="WebkitTransform"in bodyStyle?"Webkit":"MozTransform"in bodyStyle?"Moz":"msTransform"in bodyStyle?"ms":"OTransform"in bodyStyle?"O":"";return vendorPrefix+"Perspective"in bodyStyle?"translate3d":vendorPrefix+"Transform"in bodyStyle?"translate":"margin"},queue=function(){function next(){var fn=pending.shift();fn&&fn(next)}var pending=[];return function(fn){pending.push(fn),1==pending.length&&next()}}(),css=function(){function camelCase(string){return string.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(match,letter){return letter.toUpperCase()})}function getVendorProp(name){var i,capName,vendorName,style=document.body.style;if(name in style)return name;for(i=cssPrefixes.length,capName=name.charAt(0).toUpperCase()+name.slice(1);i--;)if(vendorName=cssPrefixes[i]+capName,vendorName in style)return vendorName;return name}function getStyleProp(name){return name=camelCase(name),cssProps[name]||(cssProps[name]=getVendorProp(name))}function applyCss(element,prop,value){prop=getStyleProp(prop),element.style[prop]=value}var cssPrefixes=["Webkit","O","Moz","ms"],cssProps={};return function(element,properties){var prop,value,args=arguments;if(2==args.length)for(prop in properties)value=properties[prop],void 0!==value&&properties.hasOwnProperty(prop)&&applyCss(element,prop,value);else applyCss(element,args[1],args[2])}}(),NProgress}),function($,window,undefined){var oldXHR,hasOnProgress="onprogress"in $.ajaxSettings.xhr();hasOnProgress&&(oldXHR=$.ajaxSettings.xhr,$.ajaxSettings.xhr=function(){var xhr=oldXHR();return xhr instanceof window.XMLHttpRequest&&xhr.addEventListener("progress",this.progress,!1),xhr.upload&&xhr.upload.addEventListener("progress",this.progress,!1),xhr})}(Cog.jQuery(),window),function(root,factory){"function"==typeof define&&define.amd?define(["exports"],factory):factory("undefined"!=typeof exports?exports:root.dragscroll={})}(this,function(exports){var _window=window,_document=document,mousemove="mousemove",mouseup="mouseup",mousedown="mousedown",EventListener="EventListener",addEventListener="add"+EventListener,removeEventListener="remove"+EventListener,dragged=[],reset=function(i,el){for(i=0;iw)throw Error("numRounds must a integer >= 1");if(r=function(c,a){return D(c,a,p)},t=function(c,a,d,e){var f,b;if("SHA-384"!==p&&"SHA-512"!==p)throw Error("Unexpected error in SHA-2 implementation");for(f=(a+129>>>10<<5)+31,b=32;c.length<=f;)c.push(0);for(c[a>>>5]|=128<<24-a%32,c[f]=a+d,d=c.length,a=0;d>a;a+=b)e=D(c.slice(a,a+b),e,p);if("SHA-384"===p)c=[e[0].a,e[0].b,e[1].a,e[1].b,e[2].a,e[2].b,e[3].a,e[3].b,e[4].a,e[4].b,e[5].a,e[5].b];else{if("SHA-512"!==p)throw Error("Unexpected error in SHA-2 implementation");c=[e[0].a,e[0].b,e[1].a,e[1].b,e[2].a,e[2].b,e[3].a,e[3].b,e[4].a,e[4].b,e[5].a,e[5].b,e[6].a,e[6].b,e[7].a,e[7].b]}return c},"SHA-384"===p)l=1024,k=384;else{if("SHA-512"!==p)throw Error("Chosen SHA variant is not supported");l=1024,k=512}h=y(p),this.setHMACKey=function(c,a,d){var e;if(!0===u)throw Error("HMAC key already set");if(!0===n)throw Error("Cannot set HMAC key after finalizing hash");if(!0===B)throw Error("Cannot set HMAC key after calling update");if(g=(d||{}).encoding||"UTF8",a=C(a,g)(c),c=a.binLen,a=a.value,e=l>>>3,d=e/4-1,c/8>e){for(a=t(a,c,0,y(p));a.length<=d;)a.push(0);a[d]&=4294967040}else if(e>c/8){for(;a.length<=d;)a.push(0);a[d]&=4294967040}for(c=0;d>=c;c+=1)v[c]=909522486^a[c],A[c]=1549556828^a[c];h=r(v,h),b=l,u=!0},this.update=function(c){var a,p,d,g=0,k=l>>>5;for(a=m(c,f,e),c=a.binLen,p=a.value,a=c>>>5,d=0;a>d;d+=k)c>=g+l&&(h=r(p.slice(d,d+k),h),g+=l);b+=g,f=p.slice(g>>>5),e=c%l,B=!0},this.getHash=function(c,a){var d,g,l;if(!0===u)throw Error("Cannot call getHash after setting HMAC key");switch(l=E(a),c){case"HEX":d=function(c){return F(c,l)};break;case"B64":d=function(c){return G(c,l)};break;case"BYTES":d=H;break;default:throw Error("format must be HEX, B64, or BYTES")}if(!1===n)for(h=t(f,e,b,h),g=1;w>g;g+=1)h=t(h,k,0,y(p));return n=!0,d(h)},this.getHMAC=function(c,a){var d,g,m;if(!1===u)throw Error("Cannot call getHMAC without first setting HMAC key");switch(m=E(a),c){case"HEX":d=function(c){return F(c,m)};break;case"B64":d=function(c){return G(c,m)};break;case"BYTES":d=H;break;default:throw Error("outputFormat must be HEX, B64, or BYTES")}return!1===n&&(g=t(f,e,b,h),h=r(A,y(p)),h=t(g,k,l,h)),n=!0,d(h)}}function a(a,c){this.a=a,this.b=c}function L(a,c,d){var f,e,g,h,m,b=a.length;if(c=c||[0],d=d||0,m=d>>>3,0!==b%2)throw Error("String of HEX type must be in byte increments");for(f=0;b>f;f+=2){if(e=parseInt(a.substr(f,2),16),isNaN(e))throw Error("String of HEX type contains invalid characters");for(h=(f>>>1)+m,g=h>>>2;c.length<=g;)c.push(0);c[g]|=e<<8*(3-h%4)}return{value:c,binLen:4*b+d}}function M(a,c,d){var f,e,g,h,b=[],b=c||[0];for(d=d||0,e=d>>>3,f=0;f>>2,b.length<=g&&b.push(0),b[g]|=c<<8*(3-h%4);return{value:b,binLen:8*a.length+d}}function N(a,c,d){var e,g,h,m,k,l,b=[],f=0,b=c||[0];if(d=d||0,c=d>>>3,-1===a.search(/^[a-zA-Z0-9=+\/]+$/))throw Error("Invalid character in base-64 string");if(g=a.indexOf("="),a=a.replace(/\=/g,""),-1!==g&&g":".","?":"/","|":"\\"},z={option:"alt",command:"meta","return":"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"};for(g=1;20>g;++g)l[111+g]="f"+g;for(g=0;9>=g;++g)l[g+96]=g;c.prototype.bind=function(a,b,c){return a=a instanceof Array?a:[a],this._bindMultiple.call(this,a,b,c),this},c.prototype.unbind=function(a,b){return this.bind.call(this,a,function(){},b)},c.prototype.trigger=function(a,b){return this._directMap[a+":"+b]&&this._directMap[a+":"+b]({},a),this},c.prototype.reset=function(){return this._callbacks={},this._directMap={},this},c.prototype.stopCallback=function(a,b){return-1<(" "+b.className+" ").indexOf(" mousetrap ")||B(b,this.target)?!1:"INPUT"==b.tagName||"SELECT"==b.tagName||"TEXTAREA"==b.tagName||b.isContentEditable},c.prototype.handleKey=function(){return this._handleKey.apply(this,arguments)},c.init=function(){var b,a=c(r);for(b in a)"_"!==b.charAt(0)&&(c[b]=function(b){return function(){return a[b].apply(a,arguments)}}(b))},c.init(),C.Mousetrap=c,"undefined"!=typeof module&&module.exports&&(module.exports=c),"function"==typeof define&&define.amd&&define(function(){return c})}(window,document),function(window,document,Math){function IScroll(el,options){this.wrapper="string"==typeof el?document.querySelector(el):el,this.scroller=this.wrapper.children[0],this.scrollerStyle=this.scroller.style,this.options={resizeScrollbars:!0,mouseWheelSpeed:20,snapThreshold:.334,startX:0,startY:0,scrollY:!0,directionLockThreshold:5,momentum:!0,bounce:!0,bounceTime:600,bounceEasing:"",preventDefault:!0,preventDefaultException:{tagName:/^(INPUT|TEXTAREA|BUTTON|SELECT)$/},HWCompositing:!0,useTransition:!0,useTransform:!0};for(var i in options)this.options[i]=options[i];this.translateZ=this.options.HWCompositing&&utils.hasPerspective?" translateZ(0)":"",this.options.useTransition=utils.hasTransition&&this.options.useTransition,this.options.useTransform=utils.hasTransform&&this.options.useTransform,this.options.eventPassthrough=this.options.eventPassthrough===!0?"vertical":this.options.eventPassthrough,this.options.preventDefault=!this.options.eventPassthrough&&this.options.preventDefault,this.options.scrollY="vertical"==this.options.eventPassthrough?!1:this.options.scrollY,this.options.scrollX="horizontal"==this.options.eventPassthrough?!1:this.options.scrollX,this.options.freeScroll=this.options.freeScroll&&!this.options.eventPassthrough,this.options.directionLockThreshold=this.options.eventPassthrough?0:this.options.directionLockThreshold,this.options.bounceEasing="string"==typeof this.options.bounceEasing?utils.ease[this.options.bounceEasing]||utils.ease.circular:this.options.bounceEasing,this.options.resizePolling=void 0===this.options.resizePolling?60:this.options.resizePolling,this.options.tap===!0&&(this.options.tap="tap"),"scale"==this.options.shrinkScrollbars&&(this.options.useTransition=!1),this.options.invertWheelDirection=this.options.invertWheelDirection?-1:1,this.x=0,this.y=0,this.directionX=0,this.directionY=0,this._events={},this._init(),this.refresh(),this.scrollTo(this.options.startX,this.options.startY),this.enable()}function createDefaultScrollbar(direction,interactive,type){var scrollbar=document.createElement("div"),indicator=document.createElement("div");return type===!0&&(scrollbar.style.cssText="position:absolute;z-index:9999",indicator.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);border-radius:3px"),indicator.className="iScrollIndicator","h"==direction?(type===!0&&(scrollbar.style.cssText+=";height:7px;left:2px;right:2px;bottom:0",indicator.style.height="100%"),scrollbar.className="iScrollHorizontalScrollbar"):(type===!0&&(scrollbar.style.cssText+=";width:7px;bottom:2px;top:2px;right:1px",indicator.style.width="100%"),scrollbar.className="iScrollVerticalScrollbar"),scrollbar.style.cssText+=";overflow:hidden",interactive||(scrollbar.style.pointerEvents="none"),scrollbar.appendChild(indicator),scrollbar}function Indicator(scroller,options){this.wrapper="string"==typeof options.el?document.querySelector(options.el):options.el,this.wrapperStyle=this.wrapper.style,this.indicator=this.wrapper.children[0],this.indicatorStyle=this.indicator.style,this.scroller=scroller,this.options={listenX:!0,listenY:!0,interactive:!1,resize:!0,defaultScrollbars:!1,shrink:!1,fade:!1,speedRatioX:0,speedRatioY:0};for(var i in options)this.options[i]=options[i];this.sizeRatioX=1,this.sizeRatioY=1,this.maxPosX=0,this.maxPosY=0,this.options.interactive&&(this.options.disableTouch||(utils.addEvent(this.indicator,"touchstart",this),utils.addEvent(window,"touchend",this)),this.options.disablePointer||(utils.addEvent(this.indicator,utils.prefixPointerEvent("pointerdown"),this),utils.addEvent(window,utils.prefixPointerEvent("pointerup"),this)),this.options.disableMouse||(utils.addEvent(this.indicator,"mousedown",this),utils.addEvent(window,"mouseup",this))),this.options.fade&&(this.wrapperStyle[utils.style.transform]=this.scroller.translateZ,this.wrapperStyle[utils.style.transitionDuration]=utils.isBadAndroid?"0.001s":"0ms",this.wrapperStyle.opacity="0")}var rAF=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(callback){window.setTimeout(callback,1e3/60)},utils=function(){function _prefixStyle(style){return _vendor===!1?!1:""===_vendor?style:_vendor+style.charAt(0).toUpperCase()+style.substr(1)}var _transform,me={},_elementStyle=document.createElement("div").style,_vendor=function(){for(var transform,vendors=["t","webkitT","MozT","msT","OT"],i=0,l=vendors.length;l>i;i++)if(transform=vendors[i]+"ransform",transform in _elementStyle)return vendors[i].substr(0,vendors[i].length-1);return!1}();return me.getTime=Date.now||function(){return(new Date).getTime()},me.extend=function(target,obj){for(var i in obj)target[i]=obj[i]},me.addEvent=function(el,type,fn,capture){el.addEventListener(type,fn,!!capture)},me.removeEvent=function(el,type,fn,capture){el.removeEventListener(type,fn,!!capture)},me.prefixPointerEvent=function(pointerEvent){return window.MSPointerEvent?"MSPointer"+pointerEvent.charAt(9).toUpperCase()+pointerEvent.substr(10):pointerEvent},me.momentum=function(current,start,time,lowerMargin,wrapperSize,deceleration){var destination,duration,distance=current-start,speed=Math.abs(distance)/time;return deceleration=void 0===deceleration?6e-4:deceleration,destination=current+speed*speed/(2*deceleration)*(0>distance?-1:1),duration=speed/deceleration,lowerMargin>destination?(destination=wrapperSize?lowerMargin-wrapperSize/2.5*(speed/8):lowerMargin,distance=Math.abs(destination-current),duration=distance/speed):destination>0&&(destination=wrapperSize?wrapperSize/2.5*(speed/8):0,distance=Math.abs(current)+destination,duration=distance/speed),{destination:Math.round(destination),duration:duration}},_transform=_prefixStyle("transform"),me.extend(me,{hasTransform:_transform!==!1,hasPerspective:_prefixStyle("perspective")in _elementStyle,hasTouch:"ontouchstart"in window,hasPointer:window.PointerEvent||window.MSPointerEvent,hasTransition:_prefixStyle("transition")in _elementStyle}),me.isBadAndroid=/Android /.test(window.navigator.appVersion)&&!/Chrome\/\d/.test(window.navigator.appVersion),me.extend(me.style={},{transform:_transform,transitionTimingFunction:_prefixStyle("transitionTimingFunction"),transitionDuration:_prefixStyle("transitionDuration"),transitionDelay:_prefixStyle("transitionDelay"),transformOrigin:_prefixStyle("transformOrigin")}),me.hasClass=function(e,c){var re=new RegExp("(^|\\s)"+c+"(\\s|$)");return re.test(e.className)},me.addClass=function(e,c){if(!me.hasClass(e,c)){var newclass=e.className.split(" ");newclass.push(c),e.className=newclass.join(" ")}},me.removeClass=function(e,c){if(me.hasClass(e,c)){var re=new RegExp("(^|\\s)"+c+"(\\s|$)","g");e.className=e.className.replace(re," ")}},me.offset=function(el){for(var left=-el.offsetLeft,top=-el.offsetTop;el=el.offsetParent;)left-=el.offsetLeft,top-=el.offsetTop;return{left:left,top:top}},me.preventDefaultException=function(el,exceptions){for(var i in exceptions)if(exceptions[i].test(el[i]))return!0;return!1},me.extend(me.eventType={},{touchstart:1,touchmove:1,touchend:1,mousedown:2,mousemove:2,mouseup:2,pointerdown:3,pointermove:3,pointerup:3,MSPointerDown:3,MSPointerMove:3,MSPointerUp:3}),me.extend(me.ease={},{quadratic:{style:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",fn:function(k){return k*(2-k)}},circular:{style:"cubic-bezier(0.1, 0.57, 0.1, 1)",fn:function(k){return Math.sqrt(1- --k*k)}},back:{style:"cubic-bezier(0.175, 0.885, 0.32, 1.275)",fn:function(k){var b=4;return(k-=1)*k*((b+1)*k+b)+1}},bounce:{style:"",fn:function(k){return(k/=1)<1/2.75?7.5625*k*k:2/2.75>k?7.5625*(k-=1.5/2.75)*k+.75:2.5/2.75>k?7.5625*(k-=2.25/2.75)*k+.9375:7.5625*(k-=2.625/2.75)*k+.984375}},elastic:{style:"",fn:function(k){var f=.22,e=.4;return 0===k?0:1==k?1:e*Math.pow(2,-10*k)*Math.sin((k-f/4)*(2*Math.PI)/f)+1}}}),me.tap=function(e,eventName){var ev=document.createEvent("Event");ev.initEvent(eventName,!0,!0),ev.pageX=e.pageX,ev.pageY=e.pageY,e.target.dispatchEvent(ev)},me.click=function(e){var ev,target=e.target;/(SELECT|INPUT|TEXTAREA)/i.test(target.tagName)||(ev=document.createEvent("MouseEvents"),ev.initMouseEvent("click",!0,!0,e.view,1,target.screenX,target.screenY,target.clientX,target.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,0,null),ev._constructed=!0,target.dispatchEvent(ev))},me}();IScroll.prototype={version:"5.1.3",_init:function(){this._initEvents(),(this.options.scrollbars||this.options.indicators)&&this._initIndicators(),this.options.mouseWheel&&this._initWheel(),this.options.snap&&this._initSnap(),this.options.keyBindings&&this._initKeys()},destroy:function(){this._initEvents(!0),this._execEvent("destroy")},_transitionEnd:function(e){e.target==this.scroller&&this.isInTransition&&(this._transitionTime(),this.resetPosition(this.options.bounceTime)||(this.isInTransition=!1,this._execEvent("scrollEnd")))},_start:function(e){if((1==utils.eventType[e.type]||0===e.button)&&this.enabled&&(!this.initiated||utils.eventType[e.type]===this.initiated)){!this.options.preventDefault||utils.isBadAndroid||utils.preventDefaultException(e.target,this.options.preventDefaultException)||e.preventDefault();var pos,point=e.touches?e.touches[0]:e;this.initiated=utils.eventType[e.type],this.moved=!1,this.distX=0,this.distY=0,this.directionX=0,this.directionY=0,this.directionLocked=0,this._transitionTime(),this.startTime=utils.getTime(),this.options.useTransition&&this.isInTransition?(this.isInTransition=!1,pos=this.getComputedPosition(),this._translate(Math.round(pos.x),Math.round(pos.y)),this._execEvent("scrollEnd")):!this.options.useTransition&&this.isAnimating&&(this.isAnimating=!1,this._execEvent("scrollEnd")),this.startX=this.x,this.startY=this.y,this.absStartX=this.x,this.absStartY=this.y,this.pointX=point.pageX,this.pointY=point.pageY,this._execEvent("beforeScrollStart")}},_move:function(e){if(this.enabled&&utils.eventType[e.type]===this.initiated){this.options.preventDefault&&e.preventDefault();var newX,newY,absDistX,absDistY,point=e.touches?e.touches[0]:e,deltaX=point.pageX-this.pointX,deltaY=point.pageY-this.pointY,timestamp=utils.getTime();if(this.pointX=point.pageX,this.pointY=point.pageY,this.distX+=deltaX,this.distY+=deltaY,absDistX=Math.abs(this.distX),absDistY=Math.abs(this.distY),!(timestamp-this.endTime>300&&10>absDistX&&10>absDistY)){if(this.directionLocked||this.options.freeScroll||(absDistX>absDistY+this.options.directionLockThreshold?this.directionLocked="h":absDistY>=absDistX+this.options.directionLockThreshold?this.directionLocked="v":this.directionLocked="n"),"h"==this.directionLocked){if("vertical"==this.options.eventPassthrough)e.preventDefault();else if("horizontal"==this.options.eventPassthrough)return void(this.initiated=!1);deltaY=0}else if("v"==this.directionLocked){if("horizontal"==this.options.eventPassthrough)e.preventDefault();else if("vertical"==this.options.eventPassthrough)return void(this.initiated=!1);deltaX=0}deltaX=this.hasHorizontalScroll?deltaX:0,deltaY=this.hasVerticalScroll?deltaY:0,newX=this.x+deltaX,newY=this.y+deltaY,(newX>0||newX0?0:this.maxScrollX),(newY>0||newY0?0:this.maxScrollY),this.directionX=deltaX>0?-1:0>deltaX?1:0,this.directionY=deltaY>0?-1:0>deltaY?1:0,this.moved||this._execEvent("scrollStart"),this.moved=!0,this._translate(newX,newY),timestamp-this.startTime>300&&(this.startTime=timestamp,this.startX=this.x,this.startY=this.y)}}},_end:function(e){var point,momentumX,momentumY,duration,newX,newY,distanceX,distanceY,time,easing,snap;if(this.enabled&&utils.eventType[e.type]===this.initiated&&(this.options.preventDefault&&!utils.preventDefaultException(e.target,this.options.preventDefaultException)&&e.preventDefault(),point=e.changedTouches?e.changedTouches[0]:e,duration=utils.getTime()-this.startTime,newX=Math.round(this.x),newY=Math.round(this.y),distanceX=Math.abs(newX-this.startX),distanceY=Math.abs(newY-this.startY),time=0,easing="",this.isInTransition=0,this.initiated=0,this.endTime=utils.getTime(),!this.resetPosition(this.options.bounceTime)))return this.scrollTo(newX,newY),this.moved?this._events.flick&&200>duration&&100>distanceX&&100>distanceY?void this._execEvent("flick"):(this.options.momentum&&300>duration&&(momentumX=this.hasHorizontalScroll?utils.momentum(this.x,this.startX,duration,this.maxScrollX,this.options.bounce?this.wrapperWidth:0,this.options.deceleration):{destination:newX,duration:0},momentumY=this.hasVerticalScroll?utils.momentum(this.y,this.startY,duration,this.maxScrollY,this.options.bounce?this.wrapperHeight:0,this.options.deceleration):{destination:newY,duration:0},newX=momentumX.destination,newY=momentumY.destination,time=Math.max(momentumX.duration,momentumY.duration),this.isInTransition=1),this.options.snap&&(snap=this._nearestSnap(newX,newY),this.currentPage=snap,time=this.options.snapSpeed||Math.max(Math.max(Math.min(Math.abs(newX-snap.x),1e3),Math.min(Math.abs(newY-snap.y),1e3)),300),newX=snap.x,newY=snap.y,this.directionX=0,this.directionY=0,easing=this.options.bounceEasing),newX!=this.x||newY!=this.y?((newX>0||newX0||newY0?x=0:this.x0?y=0:this.y-1&&this._events[type].splice(index,1)}},_execEvent:function(type){if(this._events[type]){var i=0,l=this._events[type].length;if(l)for(;l>i;i++)this._events[type][i].apply(this,[].slice.call(arguments,1))}},scrollBy:function(x,y,time,easing){x=this.x+x,y=this.y+y,time=time||0,this.scrollTo(x,y,time,easing)},scrollTo:function(x,y,time,easing){easing=easing||utils.ease.circular,this.isInTransition=this.options.useTransition&&time>0,!time||this.options.useTransition&&easing.style?(this._transitionTimingFunction(easing.style),this._transitionTime(time),this._translate(x,y)):this._animate(x,y,time,easing.fn)},scrollToElement:function(el,time,offsetX,offsetY,easing){if(el=el.nodeType?el:this.scroller.querySelector(el)){var pos=utils.offset(el);pos.left-=this.wrapperOffset.left,pos.top-=this.wrapperOffset.top,offsetX===!0&&(offsetX=Math.round(el.offsetWidth/2-this.wrapper.offsetWidth/2)),offsetY===!0&&(offsetY=Math.round(el.offsetHeight/2-this.wrapper.offsetHeight/2)),pos.left-=offsetX||0,pos.top-=offsetY||0,pos.left=pos.left>0?0:pos.left0?0:pos.top0?newX--:0>wheelDeltaX&&newX++,wheelDeltaY>0?newY--:0>wheelDeltaY&&newY++,void this.goToPage(newX,newY);newX=this.x+Math.round(this.hasHorizontalScroll?wheelDeltaX:0),newY=this.y+Math.round(this.hasVerticalScroll?wheelDeltaY:0),newX>0?newX=0:newX0?newY=0:newY-this.scrollerWidth;){for(this.pages[i]=[],l=0,y=0;y>-this.scrollerHeight;)this.pages[i][l]={x:Math.max(x,this.maxScrollX),y:Math.max(y,this.maxScrollY),width:stepX,height:stepY,cx:x-cx,cy:y-cy},y-=stepY,l++;x-=stepX,i++}else for(el=this.options.snap,l=el.length,n=-1;l>i;i++)(0===i||el[i].offsetLeft<=el[i-1].offsetLeft)&&(m=0,n++),this.pages[m]||(this.pages[m]=[]),x=Math.max(-el[i].offsetLeft,this.maxScrollX),y=Math.max(-el[i].offsetTop,this.maxScrollY),cx=x-Math.round(el[i].offsetWidth/2),cy=y-Math.round(el[i].offsetHeight/2),this.pages[m][n]={x:x,y:y,width:el[i].offsetWidth,height:el[i].offsetHeight,cx:cx,cy:cy},x>this.maxScrollX&&m++;this.goToPage(this.currentPage.pageX||0,this.currentPage.pageY||0,0),this.options.snapThreshold%1===0?(this.snapThresholdX=this.options.snapThreshold,this.snapThresholdY=this.options.snapThreshold):(this.snapThresholdX=Math.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].width*this.options.snapThreshold),this.snapThresholdY=Math.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].height*this.options.snapThreshold))}}),this.on("flick",function(){var time=this.options.snapSpeed||Math.max(Math.max(Math.min(Math.abs(this.x-this.startX),1e3),Math.min(Math.abs(this.y-this.startY),1e3)),300);this.goToPage(this.currentPage.pageX+this.directionX,this.currentPage.pageY+this.directionY,time)})},_nearestSnap:function(x,y){if(!this.pages.length)return{x:0,y:0,pageX:0,pageY:0};var i=0,l=this.pages.length,m=0;if(Math.abs(x-this.absStartX)0?x=0:x0?y=0:yi;i++)if(x>=this.pages[i][0].cx){x=this.pages[i][0].x;break}for(l=this.pages[i].length;l>m;m++)if(y>=this.pages[0][m].cy){y=this.pages[0][m].y;break}return i==this.currentPage.pageX&&(i+=this.directionX,0>i?i=0:i>=this.pages.length&&(i=this.pages.length-1),x=this.pages[i][0].x),m==this.currentPage.pageY&&(m+=this.directionY,0>m?m=0:m>=this.pages[0].length&&(m=this.pages[0].length-1),y=this.pages[0][m].y),{x:x,y:y,pageX:i,pageY:m}},goToPage:function(x,y,time,easing){easing=easing||this.options.bounceEasing,x>=this.pages.length?x=this.pages.length-1:0>x&&(x=0),y>=this.pages[x].length?y=this.pages[x].length-1:0>y&&(y=0);var posX=this.pages[x][y].x,posY=this.pages[x][y].y;time=void 0===time?this.options.snapSpeed||Math.max(Math.max(Math.min(Math.abs(posX-this.x),1e3),Math.min(Math.abs(posY-this.y),1e3)),300):time,this.currentPage={x:posX,y:posY,pageX:x,pageY:y},this.scrollTo(posX,posY,time,easing)},next:function(time,easing){var x=this.currentPage.pageX,y=this.currentPage.pageY;x++,x>=this.pages.length&&this.hasVerticalScroll&&(x=0,y++),this.goToPage(x,y,time,easing)},prev:function(time,easing){var x=this.currentPage.pageX,y=this.currentPage.pageY;x--,0>x&&this.hasVerticalScroll&&(x=0,y--),this.goToPage(x,y,time,easing)},_initKeys:function(e){var i,keys={pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40};if("object"==typeof this.options.keyBindings)for(i in this.options.keyBindings)"string"==typeof this.options.keyBindings[i]&&(this.options.keyBindings[i]=this.options.keyBindings[i].toUpperCase().charCodeAt(0));else this.options.keyBindings={};for(i in keys)this.options.keyBindings[i]=this.options.keyBindings[i]||keys[i];utils.addEvent(window,"keydown",this),this.on("destroy",function(){utils.removeEvent(window,"keydown",this)})},_key:function(e){if(this.enabled){var pos,snap=this.options.snap,newX=snap?this.currentPage.pageX:this.x,newY=snap?this.currentPage.pageY:this.y,now=utils.getTime(),prevTime=this.keyTime||0,acceleration=.25;switch(this.options.useTransition&&this.isInTransition&&(pos=this.getComputedPosition(),this._translate(Math.round(pos.x),Math.round(pos.y)),this.isInTransition=!1),this.keyAcceleration=200>now-prevTime?Math.min(this.keyAcceleration+acceleration,50):0,e.keyCode){case this.options.keyBindings.pageUp:this.hasHorizontalScroll&&!this.hasVerticalScroll?newX+=snap?1:this.wrapperWidth:newY+=snap?1:this.wrapperHeight;break;case this.options.keyBindings.pageDown:this.hasHorizontalScroll&&!this.hasVerticalScroll?newX-=snap?1:this.wrapperWidth:newY-=snap?1:this.wrapperHeight;break;case this.options.keyBindings.end:newX=snap?this.pages.length-1:this.maxScrollX,newY=snap?this.pages[0].length-1:this.maxScrollY;break;case this.options.keyBindings.home:newX=0,newY=0;break;case this.options.keyBindings.left:newX+=snap?-1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.up:newY+=snap?1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.right:newX-=snap?-1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.down:newY-=snap?1:5+this.keyAcceleration>>0;break;default:return}if(snap)return void this.goToPage(newX,newY);newX>0?(newX=0,this.keyAcceleration=0):newX0?(newY=0,this.keyAcceleration=0):newY=destTime?(that.isAnimating=!1,that._translate(destX,destY),void(that.resetPosition(that.options.bounceTime)||that._execEvent("scrollEnd"))):(now=(now-startTime)/duration,easing=easingFn(now),newX=(destX-startX)*easing+startX,newY=(destY-startY)*easing+startY,that._translate(newX,newY),void(that.isAnimating&&rAF(step)))}var that=this,startX=this.x,startY=this.y,startTime=utils.getTime(),destTime=startTime+duration;this.isAnimating=!0,step()},handleEvent:function(e){switch(e.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(e);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(e);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(e);break;case"orientationchange":case"resize":this._resize(); break;case"transitionend":case"webkitTransitionEnd":case"oTransitionEnd":case"MSTransitionEnd":this._transitionEnd(e);break;case"wheel":case"DOMMouseScroll":case"mousewheel":this._wheel(e);break;case"keydown":this._key(e);break;case"click":e._constructed||(e.preventDefault(),e.stopPropagation())}}},Indicator.prototype={handleEvent:function(e){switch(e.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(e);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(e);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(e)}},destroy:function(){this.options.interactive&&(utils.removeEvent(this.indicator,"touchstart",this),utils.removeEvent(this.indicator,utils.prefixPointerEvent("pointerdown"),this),utils.removeEvent(this.indicator,"mousedown",this),utils.removeEvent(window,"touchmove",this),utils.removeEvent(window,utils.prefixPointerEvent("pointermove"),this),utils.removeEvent(window,"mousemove",this),utils.removeEvent(window,"touchend",this),utils.removeEvent(window,utils.prefixPointerEvent("pointerup"),this),utils.removeEvent(window,"mouseup",this)),this.options.defaultScrollbars&&this.wrapper.parentNode.removeChild(this.wrapper)},_start:function(e){var point=e.touches?e.touches[0]:e;e.preventDefault(),e.stopPropagation(),this.transitionTime(),this.initiated=!0,this.moved=!1,this.lastPointX=point.pageX,this.lastPointY=point.pageY,this.startTime=utils.getTime(),this.options.disableTouch||utils.addEvent(window,"touchmove",this),this.options.disablePointer||utils.addEvent(window,utils.prefixPointerEvent("pointermove"),this),this.options.disableMouse||utils.addEvent(window,"mousemove",this),this.scroller._execEvent("beforeScrollStart")},_move:function(e){var deltaX,deltaY,newX,newY,point=e.touches?e.touches[0]:e;utils.getTime();this.moved||this.scroller._execEvent("scrollStart"),this.moved=!0,deltaX=point.pageX-this.lastPointX,this.lastPointX=point.pageX,deltaY=point.pageY-this.lastPointY,this.lastPointY=point.pageY,newX=this.x+deltaX,newY=this.y+deltaY,this._pos(newX,newY),e.preventDefault(),e.stopPropagation()},_end:function(e){var snap,time;this.initiated&&(this.initiated=!1,e.preventDefault(),e.stopPropagation(),utils.removeEvent(window,"touchmove",this),utils.removeEvent(window,utils.prefixPointerEvent("pointermove"),this),utils.removeEvent(window,"mousemove",this),this.scroller.options.snap&&(snap=this.scroller._nearestSnap(this.scroller.x,this.scroller.y),time=this.options.snapSpeed||Math.max(Math.max(Math.min(Math.abs(this.scroller.x-snap.x),1e3),Math.min(Math.abs(this.scroller.y-snap.y),1e3)),300),this.scroller.x==snap.x&&this.scroller.y==snap.y||(this.scroller.directionX=0,this.scroller.directionY=0,this.scroller.currentPage=snap,this.scroller.scrollTo(snap.x,snap.y,time,this.scroller.options.bounceEasing))),this.moved&&this.scroller._execEvent("scrollEnd"))},transitionTime:function(time){time=time||0,this.indicatorStyle[utils.style.transitionDuration]=time+"ms",!time&&utils.isBadAndroid&&(this.indicatorStyle[utils.style.transitionDuration]="0.001s")},transitionTimingFunction:function(easing){this.indicatorStyle[utils.style.transitionTimingFunction]=easing},refresh:function(){this.transitionTime(),this.options.listenX&&!this.options.listenY?this.indicatorStyle.display=this.scroller.hasHorizontalScroll?"block":"none":this.options.listenY&&!this.options.listenX?this.indicatorStyle.display=this.scroller.hasVerticalScroll?"block":"none":this.indicatorStyle.display=this.scroller.hasHorizontalScroll||this.scroller.hasVerticalScroll?"block":"none",this.scroller.hasHorizontalScroll&&this.scroller.hasVerticalScroll?(utils.addClass(this.wrapper,"iScrollBothScrollbars"),utils.removeClass(this.wrapper,"iScrollLoneScrollbar"),this.options.defaultScrollbars&&this.options.customStyle&&(this.options.listenX?this.wrapper.style.right="8px":this.wrapper.style.bottom="8px")):(utils.removeClass(this.wrapper,"iScrollBothScrollbars"),utils.addClass(this.wrapper,"iScrollLoneScrollbar"),this.options.defaultScrollbars&&this.options.customStyle&&(this.options.listenX?this.wrapper.style.right="2px":this.wrapper.style.bottom="2px"));this.wrapper.offsetHeight;this.options.listenX&&(this.wrapperWidth=this.wrapper.clientWidth,this.options.resize?(this.indicatorWidth=Math.max(Math.round(this.wrapperWidth*this.wrapperWidth/(this.scroller.scrollerWidth||this.wrapperWidth||1)),8),this.indicatorStyle.width=this.indicatorWidth+"px"):this.indicatorWidth=this.indicator.clientWidth,this.maxPosX=this.wrapperWidth-this.indicatorWidth,"clip"==this.options.shrink?(this.minBoundaryX=-this.indicatorWidth+8,this.maxBoundaryX=this.wrapperWidth-8):(this.minBoundaryX=0,this.maxBoundaryX=this.maxPosX),this.sizeRatioX=this.options.speedRatioX||this.scroller.maxScrollX&&this.maxPosX/this.scroller.maxScrollX),this.options.listenY&&(this.wrapperHeight=this.wrapper.clientHeight,this.options.resize?(this.indicatorHeight=Math.max(Math.round(this.wrapperHeight*this.wrapperHeight/(this.scroller.scrollerHeight||this.wrapperHeight||1)),8),this.indicatorStyle.height=this.indicatorHeight+"px"):this.indicatorHeight=this.indicator.clientHeight,this.maxPosY=this.wrapperHeight-this.indicatorHeight,"clip"==this.options.shrink?(this.minBoundaryY=-this.indicatorHeight+8,this.maxBoundaryY=this.wrapperHeight-8):(this.minBoundaryY=0,this.maxBoundaryY=this.maxPosY),this.maxPosY=this.wrapperHeight-this.indicatorHeight,this.sizeRatioY=this.options.speedRatioY||this.scroller.maxScrollY&&this.maxPosY/this.scroller.maxScrollY),this.updatePosition()},updatePosition:function(){var x=this.options.listenX&&Math.round(this.sizeRatioX*this.scroller.x)||0,y=this.options.listenY&&Math.round(this.sizeRatioY*this.scroller.y)||0;this.options.ignoreBoundaries||(xthis.maxBoundaryX?"scale"==this.options.shrink?(this.width=Math.max(this.indicatorWidth-(x-this.maxPosX),8),this.indicatorStyle.width=this.width+"px",x=this.maxPosX+this.indicatorWidth-this.width):x=this.maxBoundaryX:"scale"==this.options.shrink&&this.width!=this.indicatorWidth&&(this.width=this.indicatorWidth,this.indicatorStyle.width=this.width+"px"),ythis.maxBoundaryY?"scale"==this.options.shrink?(this.height=Math.max(this.indicatorHeight-3*(y-this.maxPosY),8),this.indicatorStyle.height=this.height+"px",y=this.maxPosY+this.indicatorHeight-this.height):y=this.maxBoundaryY:"scale"==this.options.shrink&&this.height!=this.indicatorHeight&&(this.height=this.indicatorHeight,this.indicatorStyle.height=this.height+"px")),this.x=x,this.y=y,this.scroller.options.useTransform?this.indicatorStyle[utils.style.transform]="translate("+x+"px,"+y+"px)"+this.scroller.translateZ:(this.indicatorStyle.left=x+"px",this.indicatorStyle.top=y+"px")},_pos:function(x,y){0>x?x=0:x>this.maxPosX&&(x=this.maxPosX),0>y?y=0:y>this.maxPosY&&(y=this.maxPosY),x=this.options.listenX?Math.round(x/this.sizeRatioX):this.scroller.x,y=this.options.listenY?Math.round(y/this.sizeRatioY):this.scroller.y,this.scroller.scrollTo(x,y)},fade:function(val,hold){if(!hold||this.visible){clearTimeout(this.fadeTimeout),this.fadeTimeout=null;var time=val?250:500,delay=val?0:300;val=val?"1":"0",this.wrapperStyle[utils.style.transitionDuration]=time+"ms",this.fadeTimeout=setTimeout(function(val){this.wrapperStyle.opacity=val,this.visible=+val}.bind(this,val),delay)}}},IScroll.utils=utils,"undefined"!=typeof module&&module.exports?module.exports=IScroll:window.IScroll=IScroll}(window,document,Math),!function(a){"function"==typeof define&&define.amd?define(["picker","jquery"],a):"object"==typeof exports?module.exports=a(require("./picker.js"),require("jquery")):a(Picker,jQuery)}(function(a,b){function c(a,b){var c=this,d=a.$node[0],e=d.value,f=a.$node.data("value"),g=f||e,h=f?b.formatSubmit:b.format,i=function(){return d.currentStyle?"rtl"==d.currentStyle.direction:"rtl"==getComputedStyle(a.$root[0]).direction};c.settings=b,c.$node=a.$node,c.queue={min:"measure create",max:"measure create",now:"now create",select:"parse create validate",highlight:"parse navigate create validate",view:"parse create validate viewset",disable:"deactivate",enable:"activate"},c.item={},c.item.clear=null,c.item.disable=(b.disable||[]).slice(0),c.item.enable=-function(a){return a[0]===!0?a.shift():-1}(c.item.disable),c.set("min",b.min).set("max",b.max).set("now"),g?c.set("select",g,{format:h,defaultValue:!0}):c.set("select",null).set("highlight",c.item.now),c.key={40:7,38:-7,39:function(){return i()?-1:1},37:function(){return i()?1:-1},go:function(a){var b=c.item.highlight,d=new Date(b.year,b.month,b.date+a);c.set("highlight",d,{interval:a}),this.render()}},a.on("render",function(){a.$root.find("."+b.klass.selectMonth).on("change",function(){var c=this.value;c&&(a.set("highlight",[a.get("view").year,c,a.get("highlight").date]),a.$root.find("."+b.klass.selectMonth).trigger("focus"))}),a.$root.find("."+b.klass.selectYear).on("change",function(){var c=this.value;c&&(a.set("highlight",[c,a.get("view").month,a.get("highlight").date]),a.$root.find("."+b.klass.selectYear).trigger("focus"))})},1).on("open",function(){var d="";c.disabled(c.get("now"))&&(d=":not(."+b.klass.buttonToday+")"),a.$root.find("button"+d+", select").attr("disabled",!1)},1).on("close",function(){a.$root.find("button, select").attr("disabled",!0)},1)}var d=7,e=6,f=a._;c.prototype.set=function(a,b,c){var d=this,e=d.item;return null===b?("clear"==a&&(a="select"),e[a]=b,d):(e["enable"==a?"disable":"flip"==a?"enable":a]=d.queue[a].split(" ").map(function(e){return b=d[e](a,b,c)}).pop(),"select"==a?d.set("highlight",e.select,c):"highlight"==a?d.set("view",e.highlight,c):a.match(/^(flip|min|max|disable|enable)$/)&&(e.select&&d.disabled(e.select)&&d.set("select",e.select,c),e.highlight&&d.disabled(e.highlight)&&d.set("highlight",e.highlight,c)),d)},c.prototype.get=function(a){return this.item[a]},c.prototype.create=function(a,c,d){var e,g=this;return c=void 0===c?a:c,c==-(1/0)||c==1/0?e=c:b.isPlainObject(c)&&f.isInteger(c.pick)?c=c.obj:b.isArray(c)?(c=new Date(c[0],c[1],c[2]),c=f.isDate(c)?c:g.create().obj):c=f.isInteger(c)||f.isDate(c)?g.normalize(new Date(c),d):g.now(a,c,d),{year:e||c.getFullYear(),month:e||c.getMonth(),date:e||c.getDate(),day:e||c.getDay(),obj:e||c,pick:e||c.getTime()}},c.prototype.createRange=function(a,c){var d=this,e=function(a){return a===!0||b.isArray(a)||f.isDate(a)?d.create(a):a};return f.isInteger(a)||(a=e(a)),f.isInteger(c)||(c=e(c)),f.isInteger(a)&&b.isPlainObject(c)?a=[c.year,c.month,c.date+a]:f.isInteger(c)&&b.isPlainObject(a)&&(c=[a.year,a.month,a.date+c]),{from:e(a),to:e(c)}},c.prototype.withinRange=function(a,b){return a=this.createRange(a.from,a.to),b.pick>=a.from.pick&&b.pick<=a.to.pick},c.prototype.overlapRanges=function(a,b){var c=this;return a=c.createRange(a.from,a.to),b=c.createRange(b.from,b.to),c.withinRange(a,b.from)||c.withinRange(a,b.to)||c.withinRange(b,a.from)||c.withinRange(b,a.to)},c.prototype.now=function(a,b,c){return b=new Date,c&&c.rel&&b.setDate(b.getDate()+c.rel),this.normalize(b,c)},c.prototype.navigate=function(a,c,d){var e,f,g,h,i=b.isArray(c),j=b.isPlainObject(c),k=this.item.view;if(i||j){for(j?(f=c.year,g=c.month,h=c.date):(f=+c[0],g=+c[1],h=+c[2]),d&&d.nav&&k&&k.month!==g&&(f=k.year,g=k.month),e=new Date(f,g+(d&&d.nav?d.nav:0),1),f=e.getFullYear(),g=e.getMonth();new Date(f,g,h).getMonth()!==g;)h-=1;c=[f,g,h]}return c},c.prototype.normalize=function(a){return a.setHours(0,0,0,0),a},c.prototype.measure=function(a,b){var c=this;return b?"string"==typeof b?b=c.parse(a,b):f.isInteger(b)&&(b=c.now(a,b,{rel:b})):b="min"==a?-(1/0):1/0,b},c.prototype.viewset=function(a,b){return this.create([b.year,b.month,1])},c.prototype.validate=function(a,c,d){var e,g,h,i,j=this,k=c,l=d&&d.interval?d.interval:1,m=-1===j.item.enable,n=j.item.min,o=j.item.max,p=m&&j.item.disable.filter(function(a){if(b.isArray(a)){var d=j.create(a).pick;dc.pick&&(g=!0)}return f.isInteger(a)}).length;if((!d||!d.nav&&!d.defaultValue)&&(!m&&j.disabled(c)||m&&j.disabled(c)&&(p||e||g)||!m&&(c.pick<=n.pick||c.pick>=o.pick)))for(m&&!p&&(!g&&l>0||!e&&0>l)&&(l*=-1);j.disabled(c)&&(Math.abs(l)>1&&(c.monthk.month)&&(c=k,l=l>0?1:-1),c.pick<=n.pick?(h=!0,l=1,c=j.create([n.year,n.month,n.date+(c.pick===n.pick?0:-1)])):c.pick>=o.pick&&(i=!0,l=-1,c=j.create([o.year,o.month,o.date+(c.pick===o.pick?0:1)])),!h||!i);)c=j.create([c.year,c.month,c.date+l]);return c},c.prototype.disabled=function(a){var c=this,d=c.item.disable.filter(function(d){return f.isInteger(d)?a.day===(c.settings.firstDay?d:d-1)%7:b.isArray(d)||f.isDate(d)?a.pick===c.create(d).pick:b.isPlainObject(d)?c.withinRange(d,a):void 0});return d=d.length&&!d.filter(function(a){return b.isArray(a)&&"inverted"==a[3]||b.isPlainObject(a)&&a.inverted}).length,-1===c.item.enable?!d:d||a.pickc.item.max.pick},c.prototype.parse=function(a,b,c){var d=this,e={};return b&&"string"==typeof b?(c&&c.format||(c=c||{},c.format=d.settings.format),d.formats.toArray(c.format).map(function(a){var c=d.formats[a],g=c?f.trigger(c,d,[b,e]):a.replace(/^!/,"").length;c&&(e[a]=b.substr(0,g)),b=b.substr(g)}),[e.yyyy||e.yy,+(e.mm||e.m)-1,e.dd||e.d]):b},c.prototype.formats=function(){function a(a,b,c){var d=a.match(/[^\x00-\x7F]+|\w+/)[0];return c.mm||c.m||(c.m=b.indexOf(d)+1),d.length}function b(a){return a.match(/\w+/)[0].length}return{d:function(a,b){return a?f.digits(a):b.date},dd:function(a,b){return a?2:f.lead(b.date)},ddd:function(a,c){return a?b(a):this.settings.weekdaysShort[c.day]},dddd:function(a,c){return a?b(a):this.settings.weekdaysFull[c.day]},m:function(a,b){return a?f.digits(a):b.month+1},mm:function(a,b){return a?2:f.lead(b.month+1)},mmm:function(b,c){var d=this.settings.monthsShort;return b?a(b,d,c):d[c.month]},mmmm:function(b,c){var d=this.settings.monthsFull;return b?a(b,d,c):d[c.month]},yy:function(a,b){return a?2:(""+b.year).slice(2)},yyyy:function(a,b){return a?4:b.year},toArray:function(a){return a.split(/(d{1,4}|m{1,4}|y{4}|yy|!.)/g)},toString:function(a,b){var c=this;return c.formats.toArray(a).map(function(a){return f.trigger(c.formats[a],c,[0,b])||a.replace(/^!/,"")}).join("")}}}(),c.prototype.isDateExact=function(a,c){var d=this;return f.isInteger(a)&&f.isInteger(c)||"boolean"==typeof a&&"boolean"==typeof c?a===c:(f.isDate(a)||b.isArray(a))&&(f.isDate(c)||b.isArray(c))?d.create(a).pick===d.create(c).pick:b.isPlainObject(a)&&b.isPlainObject(c)?d.isDateExact(a.from,c.from)&&d.isDateExact(a.to,c.to):!1},c.prototype.isDateOverlap=function(a,c){var d=this,e=d.settings.firstDay?1:0;return f.isInteger(a)&&(f.isDate(c)||b.isArray(c))?(a=a%7+e,a===d.create(c).day+1):f.isInteger(c)&&(f.isDate(a)||b.isArray(a))?(c=c%7+e,c===d.create(a).day+1):b.isPlainObject(a)&&b.isPlainObject(c)?d.overlapRanges(a,c):!1},c.prototype.flipEnable=function(a){var b=this.item;b.enable=a||(-1==b.enable?1:-1)},c.prototype.deactivate=function(a,c){var d=this,e=d.item.disable.slice(0);return"flip"==c?d.flipEnable():c===!1?(d.flipEnable(1),e=[]):c===!0?(d.flipEnable(-1),e=[]):c.map(function(a){for(var c,g=0;gi;i+=1){if(h=e[i],d.isDateExact(h,a)){c=e[i]=null,j=!0;break}if(d.isDateOverlap(h,a)){b.isPlainObject(a)?(a.inverted=!0,c=a):b.isArray(a)?(c=a,c[3]||c.push("inverted")):f.isDate(a)&&(c=[a.getFullYear(),a.getMonth(),a.getDate(),"inverted"]);break}}if(c)for(i=0;g>i;i+=1)if(d.isDateExact(e[i],a)){e[i]=null;break}if(j)for(i=0;g>i;i+=1)if(d.isDateOverlap(e[i],a)){e[i]=null;break}c&&e.push(c)}),e.filter(function(a){return null!=a})},c.prototype.nodes=function(a){var b=this,c=b.settings,g=b.item,h=g.now,i=g.select,j=g.highlight,k=g.view,l=g.disable,m=g.min,n=g.max,o=function(a,b){return c.firstDay&&(a.push(a.shift()),b.push(b.shift())),f.node("thead",f.node("tr",f.group({min:0,max:d-1,i:1,node:"th",item:function(d){return[a[d],c.klass.weekdays,'scope=col title="'+b[d]+'"']}})))}((c.showWeekdaysFull?c.weekdaysFull:c.weekdaysShort).slice(0),c.weekdaysFull.slice(0)),p=function(a){return f.node("div"," ",c.klass["nav"+(a?"Next":"Prev")]+(a&&k.year>=n.year&&k.month>=n.month||!a&&k.year<=m.year&&k.month<=m.month?" "+c.klass.navDisabled:""),"data-nav="+(a||-1)+" "+f.ariaAttr({role:"button",controls:b.$node[0].id+"_table"})+' title="'+(a?c.labelMonthNext:c.labelMonthPrev)+'"')},q=function(){var d=c.showMonthsShort?c.monthsShort:c.monthsFull;return c.selectMonths?f.node("select",f.group({min:0,max:11,i:1,node:"option",item:function(a){return[d[a],0,"value="+a+(k.month==a?" selected":"")+(k.year==m.year&&an.month?" disabled":"")]}}),c.klass.selectMonth,(a?"":"disabled")+" "+f.ariaAttr({controls:b.$node[0].id+"_table"})+' title="'+c.labelMonthSelect+'"'):f.node("div",d[k.month],c.klass.month)},r=function(){var g,h,i,j,l,o,d=k.year,e=c.selectYears===!0?5:~~(c.selectYears/2);return e?(g=m.year,h=n.year,i=d-e,j=d+e,g>i&&(j+=g-i,i=g),j>h&&(l=i-g,o=j-h,i-=l>o?o:l,j=h),f.node("select",f.group({min:i,max:j,i:1,node:"option",item:function(a){return[a,0,"value="+a+(d==a?" selected":"")]}}),c.klass.selectYear,(a?"":"disabled")+" "+f.ariaAttr({controls:b.$node[0].id+"_table"})+' title="'+c.labelYearSelect+'"')):f.node("div",d,c.klass.year)};return f.node("div",(c.selectYears?r()+q():q()+r())+p()+p(1),c.klass.header)+f.node("table",o+f.node("tbody",f.group({min:0,max:e-1,i:1,node:"tr",item:function(a){var e=c.firstDay&&0===b.create([k.year,k.month,1]).day?-7:0;return[f.group({min:d*a-k.day+e+1,max:function(){return this.min+d-1},i:1,node:"td",item:function(a){a=b.create([k.year,k.month,a+(c.firstDay?1:0)]);var d=i&&i.pick==a.pick,e=j&&j.pick==a.pick,g=l&&b.disabled(a)||a.pickn.pick,o=f.trigger(b.formats.toString,b,[c.format,a]);return[f.node("div",a.date,function(b){return b.push(k.month==a.month?c.klass.infocus:c.klass.outfocus),h.pick==a.pick&&b.push(c.klass.now),d&&b.push(c.klass.selected),e&&b.push(c.klass.highlighted),g&&b.push(c.klass.disabled),b.join(" ")}([c.klass.day]),"data-pick="+a.pick+" "+f.ariaAttr({role:"gridcell",label:o,selected:d&&b.$node.val()===o?!0:null,activedescendant:e?!0:null,disabled:g?!0:null})),"",f.ariaAttr({role:"presentation"})]}})]}})),c.klass.table,'id="'+b.$node[0].id+'_table" '+f.ariaAttr({role:"grid",controls:b.$node[0].id,readonly:!0}))+f.node("div",f.node("button",c.today,c.klass.buttonToday,"type=button data-pick="+h.pick+(a&&!b.disabled(h)?"":" disabled")+" "+f.ariaAttr({controls:b.$node[0].id}))+f.node("button",c.clear,c.klass.buttonClear,"type=button data-clear=1"+(a?"":" disabled")+" "+f.ariaAttr({controls:b.$node[0].id}))+f.node("button",c.close,c.klass.buttonClose,"type=button data-close=true "+(a?"":" disabled")+" "+f.ariaAttr({controls:b.$node[0].id})),c.klass.footer)},c.defaults=function(a){return{labelMonthNext:"Next month",labelMonthPrev:"Previous month",labelMonthSelect:"Select a month",labelYearSelect:"Select a year",monthsFull:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdaysFull:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],today:"Today",clear:"Clear",close:"Close",closeOnSelect:!0,closeOnClear:!0,format:"d mmmm, yyyy",klass:{table:a+"table",header:a+"header",navPrev:a+"nav--prev",navNext:a+"nav--next",navDisabled:a+"nav--disabled",month:a+"month",year:a+"year",selectMonth:a+"select--month",selectYear:a+"select--year",weekdays:a+"weekday",day:a+"day",disabled:a+"day--disabled",selected:a+"day--selected",highlighted:a+"day--highlighted",now:a+"day--today",infocus:a+"day--infocus",outfocus:a+"day--outfocus",footer:a+"footer",buttonClear:a+"button--clear",buttonToday:a+"button--today",buttonClose:a+"button--close"}}}(a.klasses().picker+"__"),a.extend("pickadate",c)}),youTubeTracking=function(document,window,config){function init(){var potentialVideos=getTagsAsArr_("iframe").concat(getTagsAsArr_("embed"));digestPotentialVideos(potentialVideos),"addEventListener"in document&&document.addEventListener("load",bindToNewVideos_,!0)}function digestPotentialVideos(potentialVideos){var i,isYouTubeVideo,normalizedYouTubeIframe;for(i=0;i-1||potentialYouTubeVideoSrc.indexOf("youtube.com/v/")>-1||potentialYouTubeVideoSrc.indexOf("youtube-nocookie.com/embed/")>-1||potentialYouTubeVideoSrc.indexOf("youtube-nocookie.com/v/")>-1}function jsApiEnabled(url){return url.indexOf("enablejsapi")>-1}function originEnabled(url){return url.indexOf("origin")>-1}function normalizeYouTubeIframe(youTubeVideo){var tmpPathname,port,origin,newIframe,loc=window.location,a=document.createElement("a");return a.href=youTubeVideo.src,a.hostname="www.youtube.com",a.protocol=loc.protocol,tmpPathname="/"===a.pathname.charAt(0)?a.pathname:"/"+a.pathname,jsApiEnabled(a.search)||(a.search=(a.search.length>0?a.search+"&":"")+"enablejsapi=1"),originEnabled(a.search)||-1!==loc.hostname.indexOf("localhost")||(port=loc.port?":"+loc.port:"",origin=loc.protocol+"%2F%2F"+loc.hostname+port,a.search=a.search+"&origin="+origin),"application/x-shockwave-flash"===youTubeVideo.type&&(newIframe=document.createElement("iframe"),newIframe.height=youTubeVideo.height,newIframe.width=youTubeVideo.width,tmpPathname=tmpPathname.replace("/v/","/embed/"),youTubeVideo.parentNode.parentNode.replaceChild(newIframe,youTubeVideo.parentNode),youTubeVideo=newIframe),a.pathname=tmpPathname,youTubeVideo.src!==a.href+a.hash&&(youTubeVideo.src=a.href+a.hash),youTubeVideo}function addYouTubeEvents(youTubeIframe){var player=YT.get(youTubeIframe.id);player||(player=new YT.Player(youTubeIframe,{})),"undefined"==typeof youTubeIframe.pauseFlag&&(youTubeIframe.pauseFlag=!1,player.addEventListener("onStateChange",function(evt){onStateChangeHandler(evt,youTubeIframe)}))}function getMarks(duration){var points,i,every,num,_point,_mark,_time,marks={};if(_config.events["Watch to End"]&&(marks["Watch to End"]=Math.min(duration-3,Math.floor(.99*duration))),_config.percentageTracking){if(points=[],_config.percentageTracking.each&&(points=points.concat(_config.percentageTracking.each)),_config.percentageTracking.every)for(every=parseInt(_config.percentageTracking.every,10),num=100/every,i=1;num>i;i++)points.push(i*every);for(i=0;ii;i++)currentPart=parts[i],parent[currentPart]=parent[currentPart]||{},parent=parent[currentPart];return parent}Cog.registerStatic({name:"utils.namespace",sharedApi:namespace,api:{}})}(),function($){"use strict";var api={},sharedApi={};_.templateSettings={interpolate:/\{\{(.+?)\}\}/g,evaluate:/\{\%(.+?)\%\}/g},api.init=function(){$.extend(sharedApi,$("body").data())},Cog.registerStatic({name:"utils.settings",api:api,sharedApi:sharedApi})}(Cog.jQuery()),function($){"use strict";var isAuthor,api={};isAuthor=function(){var isEditMode=$("body").hasClass("cq-wcm-edit-touch")||$("body").hasClass("cq-wcm-edit")||$("html").hasClass("aem-AuthorLayer-Edit");return Cog.utils.isAuthor=function(){return isEditMode},isEditMode},api.init=function(){isAuthor()},Cog.register({name:"utils.isAuthor",api:api}),Cog.utils.isAuthor=isAuthor}(Cog.jQuery()),function(){"use strict";function uaMatch(ua){ua=ua.toLowerCase();var match=/(edge)[ \/]([\w.]+)/.exec(ua)||/(android)[ \/]([\w.]+)/.exec(ua)||/(chrome)[ \/]([\w.]+)/.exec(ua)||/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||ua.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)||[];return match[1]=ua.indexOf("trident/7.0")>0?"msie":match[1],{browser:match[1]||"",version:match[2]||"0"}}function isOutdated(browser,version){return _.some(outdated,function(item){return item[0]===browser&&item[1]>=parseInt(version,10)?!0:void 0})}function addClass(){var html=document.querySelector("html"),classes=html?html.getAttribute("class"):null,version=browser.version.substr(0,browser.version.indexOf("."));classes&&html.setAttribute("class",classes+" "+matched.browser+"-"+version)}function printAlert(){var getUrl=function(){var path=$('a[href*="/overlay/"]').attr("href")||"";return path=path.substr(0,path.lastIndexOf("/overlay/")+9)+"browser-update.html"},$header=$("#header");$.ajax({url:getUrl(),success:function(response){var $response=$($.trim(response)).find(".overlayContent .richText");$response.addClass("js-browser-update"),$header.prepend($response),$response.fadeOut(0),$response.fadeIn(1e3)}})}var matched,browser,outdated=[["msie",8],["mozilla",30],["chrome",22],["safari",6],["android",3]],$=Cog.jQuery();matched=uaMatch(navigator.userAgent),browser={},matched.browser&&(browser[matched.browser]=!0,browser.version=matched.version),browser.chrome?browser.webkit=!0:browser.webkit&&(browser.safari=!0),addClass(),$(window).ready(function(){isOutdated(matched.browser,matched.version)&&printAlert()}),Cog.registerStatic({name:"utils.browser",sharedApi:browser,api:{}}),Cog.utils.browser=browser}(),function($){"use strict";function Overlay(elem){this.obj=elem,this.properties={href:$(elem).attr("href"),width:$(elem).data("overlaywidth")}}function checkMobile(){var device=Cog.Cookie.read("device-group");return"mobile"===device}var overlayContainer,overlayContent,overlayContentInner,overlayBackground,overlayLoading,overlayClose,api={},mobileChecked=!1,mobile=!1;Overlay.prototype.attachEvents=function(){var dotIndex,inst=this,url=inst.properties.href;mobile||(dotIndex=url.indexOf("."),url=url.slice(0,dotIndex)+".lightbox.html"),$(inst.obj).on("click",function(event){var redirectUrl,$this=$(this);return event.preventDefault(),event.stopPropagation(),$this.hasClass("login-lightbox")&&(redirectUrl=Cog.Cookie.read("redirectUrl"))?void(window.location=redirectUrl):(mobile||(inst.initOverlayContainer(),inst.showLoadingContainer()),void $.ajax({type:"GET",url:url,dataType:"html",success:function(response){inst.overlayBuilder(response),Cog.init()}}))}),$("body").on("keyup",function(e){27==e.which&&inst.hideOverlay()}),$("body").on("click touchstart",".overlay-content",function(event){event.stopPropagation()}),$("body").on("click touchstart",".overlay-background, .overlay-container, .overlay-close-custom, .overlay-close",function(){inst.hideOverlay()}),$("body").on("keypress",".overlay-close",function(event){13===event.which&&inst.hideOverlay()})},Overlay.prototype.initOverlayContainer=function(){var $content=($("body"),$("#content")),overlayBackgroundHtml='
    ',overlayContainerHtml='
    ';overlayContainer?overlayContentInner.empty():($content.append(overlayBackgroundHtml,overlayContainerHtml),overlayBackground=$(".overlay-background"),overlayContainer=$(".overlay-container"),overlayContent=$(".overlay-content"),overlayContentInner=$(".overlay-content-inner"),overlayLoading=$(".overlay-loading"),overlayClose=$(".overlay-close"))},Overlay.prototype.showLoadingContainer=function(){overlayClose.hide(),overlayBackground.fadeIn(),overlayContainer.fadeIn(),overlayLoading.fadeIn()},Overlay.prototype.overlayBuilder=function(response){var inst=this;mobile?window.open(inst.properties.href,"_blank"):inst.showOverlay(response)},Overlay.prototype.showOverlay=function(response){var inst=this,overlayWidth=inst.properties.width;overlayLoading.hide(),overlayClose.show(),overlayContent.css({"max-width":overlayWidth}),overlayContentInner.append(response)},Overlay.prototype.hideOverlay=function(){overlayContainer.fadeOut(),overlayBackground.fadeOut()},api.init=function($elements){mobileChecked||(mobile=checkMobile(),mobileChecked=!0),$elements.each(function(){var overlay=new Overlay(this);overlay.attachEvents(); })},Cog.register({name:"overlay",api:api,selector:"a.lightbox"})}(Cog.jQuery()),function($,document){"use strict";function acceptCookie(){api.markup.addClass("collapsed"),createCookieWithSecureFlag("cookiePolicy",!0,30)}function createCookieWithSecureFlag(name,value,days){var date,cookieString,expires="";days&&(date=new Date,date.setTime(date.getTime()+24*days*60*60*1e3),expires="; expires="+date.toGMTString()),cookieString=name+"="+value+expires+"; path=/","https:"==window.location.protocol&&(cookieString+=";secure"),document.cookie=cookieString}var api={};api.init=function(scope){var $header=$("#header"),cookie=Cog.Cookie.read("cookiePolicy");api.markup=$(scope),$header.prepend(api.markup),!cookie&&api.markup.size()&&(api.markup.removeClass("collapsed"),api.markup.find(".cookiePolicy-accept").click(acceptCookie))},Cog.register({name:"cookiePolicy",api:api,selector:".cookiePolicy"})}(Cog.jQuery(),document),Cog.storage=function(_,type){var isAvailable=function(){try{return window[type].setItem("___________","1"),window[type].removeItem("___________"),!0}catch(error){return!1}}();return{length:function(){var result=0;return isAvailable&&(result=window[type].length),result},key:function(name){var result=null;return isAvailable&&(result=window[type].key(name)),result},getItem:function(key){var result=null;return isAvailable&&(result=window[type].getItem(key)),result},setItem:function(key,value){var result=null;return isAvailable&&(result=window[type].setItem(key,value)),result},removeItem:function(key){var result=null;return isAvailable&&(result=window[type].removeItem(key)),result},clear:function(){var result=null;return isAvailable&&(result=window[type].clear()),result}}},Cog.sessionStorage=Cog.storage(_,"sessionStorage"),Cog.localStorage=Cog.storage(_,"localStorage"),function($,_){function addClassTemporarily($node,className){$node.addClass(className),_.delay(function(){$node.removeClass(className)},1e3)}function isNavigationChanged($current,$incoming){var trim=function($node){return $.trim($node.find(".navigation-root").first().find("> li > a").text()).replace(/\s/g,"")},countNavigationElements=function($node){return $node.find(".header-navigation-box > .component-content > .content > div").length};return countNavigationElements($current)!==countNavigationElements($incoming)||trim($current)!==trim($incoming)}function compareNavigation(data){var $data=$($.trim(data)),$header=$("#header"),$footer=$("#footer"),$incomingHeader=$data.find("#header"),$incomingFooter=$data.find("#footer");isNavigationChanged($header,$incomingHeader)&&($header.replaceWith($incomingHeader),$footer.replaceWith($incomingFooter),addClassTemporarily($incomingHeader,"replaced"))}var request,deferred,cache={};Cog.loader=function(url){return Cog.utils.parallaxCallbacks=[],Cog.fireEvent("popup","hide"),deferred=$.Deferred(),request&&(request.abort(),NProgress.remove()),NProgress.set(.1),cache[url]?(compareNavigation(cache[url]),NProgress.set(1),deferred.resolve(cache[url]),Cog.fireEvent("loader","load"),Cog.fireEvent("digitalData","clear")):request=$.ajax({method:"GET",url:url+"?wcmmode=disabled",success:function(data){},progress:function(e){if(e.lengthComputable){var pct=e.loaded/e.total*30;_.throttle(function(){NProgress.set(100/pct)},20)}}}).done(function(data){var length,match,newImage,$data=$($.trim(data)),$images=$($.trim(data)).find("img:not(.searchResults-image)"),$renditions=$data.find("span[data-src]"),regex=/\b(?:background-image\s*:\s*URL\s*\(')(?:([^.]+)'|"(?:[^"]+)"|([^)]+)')\s*\)/gi;for(cache[url]=data,compareNavigation($.trim(data));match=regex.exec(data);)newImage=new Image,newImage.src=match[2],$images=$images.add(newImage);$renditions.each(function(i,image){var newImage,$image=$(image),query=$image.data("media");void 0!==query&&Modernizr.mq(query)&&(newImage=new Image,newImage.src=$image.data("src"),$images=$images.add(newImage))}),length=$images.length,$images.imagesLoaded().progress(function(){var newLength=length--;newLength=newLength===1/0?70:newLength,NProgress.set((10+70/newLength)/100)}).always(function(){NProgress.set(1),window.picturefill(),deferred.resolve(data)}),Cog.fireEvent("loader","load"),Cog.fireEvent("digitalData","clear")}),deferred.promise()}}(Cog.jQuery(),_),function($){"use strict";function bindDOM(){$content=$("#content"),$title=$("title"),$body=$("body"),$topNavigation=$(".top-navigation")}function checkAnchors(){var hash=window.location.hash?window.location.hash.replace("#",""):null,$target=hash?$('[name="'+hash+'"], #'+hash):null;hash&&$target.length&&($("html, body").animate({scrollTop:$target.offset().top-60},200,function(){window.hideNav=!0}),$target.animate({opacity:.4},800,"easeInElastic",function(){$target.animate({opacity:1},300)}))}function matchProtocols(href){var windowProt=window.location.protocol,newHref=href;return 0===href.indexOf("http")&&("http:"===windowProt&&-1===href.indexOf(windowProt)?newHref=windowProt+href.substr(6):"https:"===windowProt&&-1===href.indexOf(windowProt)&&(newHref=windowProt+href.substr(5))),newHref}function isPDF(href){return href.length-4===href.toLowerCase().lastIndexOf(".pdf")}function isTargetBlank($el){return"_blank"===$el.attr("target")}function isMoreArticle($el){return $el.closest(".moreArticles-richText").length}function onClick(e){var $this=$(this),$parent=$this.parent(),href=$this.attr("href");return isExternal($this)||isPDF(href)||isTargetBlank($this)||isMoreArticle($this)?!0:(href=matchProtocols(href),e.preventDefault(),closeNav(),Modernizr.mq("screen and (max-width: 768px)")?$parent.is(".has-children")||this.host===location.host&&(loadPage(href,!0).then(function(){unMark(href)}),Cog.fireEvent("mobileNavigation","closeNav")):this.host===location.host&&loadPage(href,!0).then(function(){unMark(href)}),$parent.hasClass("has-children")?$this.parent().toggleClass("is-open"):$body.removeClass("navigation-open"),!1)}function isExternal($link){var url=$link.attr("href")||"",clientUrl=window.location.hostname,isUrlExternal=!1,splitted=url?url.split("//"):[""];return splitted[1]&&(isUrlExternal=splitted[1].indexOf(clientUrl)<0),$link.hasClass("external")&&(isUrlExternal=!0),isUrlExternal}function closeNav(){var $popup=$(".popup");navLoaded&&$popup.removeClass("visible")}function unMark(href){var $element=$topNavigation.find('[href="'+href+'"]').length>0?$topNavigation.find('[href="'+href+'"]'):$topNavigation.find('[href="'+href.split("#")[0]+'"]'),$elements=$topNavigation.find(".navigation-item"),$parents=$element.parents(".navigation-item");return-1===href.indexOf("-card.html")&&($elements.removeClass(""),$parents.addClass("")),!1}function copyTag(selector,$source,$destination){var $sourceElement=$source.filter(selector),$destinationElement=$destination.find(selector);$sourceElement.length&&$destinationElement.length?$destinationElement.replaceWith($sourceElement):$destination.append($sourceElement)}function loadPage(href,populateHistory){return Cog.loader(href).then(function(data){var $html=$(Cog.utils.escapeDomUniqueNodes(data)),$incomingContent=$html.find("#content"),$incomingTitle=$html.filter("title"),$incomingBody=$html.filter("notuniquebody"),$head=$("head");copyTag("title",$html,$head),copyTag("meta[name=latitude]",$html,$head),copyTag("meta[name=longitude]",$html,$head),copyTag("meta[name=googleapikey]",$html,$head),copyTag("meta[name=officename]",$html,$head),copyTag("link[rel=canonical]",$html,$head),$incomingContent.css("opacity",1),$content||bindDOM(),$content.find(".layout-outer").animate({opacity:0},500).promise().done(function(){populateHistory&&Modernizr.history&&history.pushState({href:href},null,href),$window.scrollTop(0),$content.html($incomingContent.html()||""),$title.html($incomingTitle.html()),Cog.utils.replaceAttributes($body,$incomingBody),$body.removeClass("nav-hidden"),$content.find(".layout-outer").animate({opacity:1},500),checkAnchors(),requestAnimationFrame(function(){Cog.init(),$.force_appear()})})})}var $body,$content,$title,$topNavigation,api,$window=$(window),navLoaded=!1;$window.off("popstate.preloader").on("popstate.preloader",function(e){if(e.preventDefault(),e.originalEvent.state){var state=e.originalEvent.state;loadPage(state.href,!1).then(function(){unMark(state.href)})}}),$window.off("ready.preloader").on("ready.preloader",function(){Modernizr.history&&history.replaceState({href:window.location.href},null,window.location.href)}),api={},api.init=function($elements){$elements.length&&!Cog.utils.isAuthor()&&Modernizr.history&&(NProgress.configure({speed:500,showSpinner:!1}),bindDOM(),$elements.not(".preloader-initialized").off("click.preloader").on("click.preloader",onClick).addClass("preloader-initialized"))},$(window).load(checkAnchors),Cog.loadPage=loadPage,Cog.register({name:"preloader",api:api,selector:".top-navigation a, .header-logo-image a, #footer .navigation-item a,.primary-promo-richText a,.hero-secondary-box a,.locations-accordion .richText a,.parallax-image a,.hero-richText .close,.article-tags-snippet .close,.alert-richText a,.icon-richText a,.primary:not(.external),.secondary:not(.external),.tertiary:not(.external)"})}(Cog.jQuery(),document),function($){"use strict";var api={};api.onRegister=function(scope){function appearing(changedHeight,image){$element.addClass("appear-initialized").appear().on("appear",function(event,$item){$item.addClass("appeared")}),$.force_appear()}var $element=scope.$scope;Cog.utils.isAuthor()||appearing(!1)},Cog.registerComponent({name:"appear",api:api,selector:".appear:not(.appear-initialized), .divider:not(.appear-initialized)"})}(Cog.jQuery()),function($){function animateParallax(){var i,len,scrollTop=$window.scrollTop();for(i=0,len=Cog.utils.parallaxCallbacks.length;len>i;i++)Cog.utils.parallaxCallbacks[i].callback(scrollTop)}var $window,isBusy;return Cog.utils.parallaxCallbacks=[],Cog.utils.isAuthor()||navigator.userAgent.match("CriOS")?void(Cog.utils.parallax=function(){}):($window=$(window),isBusy=!1,$window.off("scroll.parallax").on("scroll.parallax",function(){isBusy||(isBusy=!0,requestAnimationFrame(function(){animateParallax(),isBusy=!1}))}),void(Cog.utils.parallax=function($elements,speed,backgroundAnimation){$elements.each(function(){var $element=$(this);$("body").imagesLoaded(function(){var yPos,height,offsetTop,offsetBottom,windowHeight,extra,backgroundPos;speed=speed||1,yPos=0,height=$element.height(),offsetTop=$element.offset().top,offsetBottom=offsetTop+height,windowHeight=$window.height(),extra=offsetTop>windowHeight?windowHeight:offsetTop,backgroundPos=$element.css("backgroundPosition").split(" "),backgroundPos.length>1&&backgroundPos[1].indexOf("px")>0&&(yPos=parseInt(backgroundPos[1]||0)),$("body").off("resize.parallax").on("resize.parallax",function(){height=$element.height(),windowHeight=$window.height(),extra=offsetTop>windowHeight?windowHeight:offsetTop,offsetTop=$element.offset().top,offsetBottom=offsetTop+height}),Cog.utils.parallaxCallbacks.push({$element:$element,callback:function(scrollTop){var move,wrapperHeight,moveSize,parallaxStart,parallaxSize,parallaxEnd,scroll,percent,$wrapper=$element.closest(".image-wrapper");$wrapper.length>0?(height=$element.height(),wrapperHeight=$wrapper.height(),moveSize=height-wrapperHeight,offsetTop=$wrapper.offset().top,offsetBottom=offsetTop+$wrapper.height(),parallaxStart=offsetTop-windowHeight-scrollTop,parallaxSize=windowHeight+wrapperHeight,parallaxEnd=offsetBottom-scrollTop,0>parallaxStart*parallaxEnd&&(move=-moveSize-moveSize/parallaxSize*parallaxStart,Math.abs(move)<3&&(move=0),$element.css({transition:"none",transform:"translate3d(0, "+move+"px, 0)"}))):(scroll=scrollTop+extra,percent=(scroll-offsetTop)/(offsetBottom+extra-offsetTop)*100,percent=0>percent?0:percent,percent>=0&&100>=percent&&(move=speed*percent+yPos,Math.abs(move)<3&&(move=0),backgroundAnimation?$element.css({transition:"none",backgroundPosition:"center "+move+"px",transform:"translate3d(0,0,0)"}):$element.css({transition:"none",transform:"translate3d(0, "+move+"px, 0)"})))}})}),$element.addClass("parallax-initialized"),animateParallax()})}))}(Cog.jQuery()),function($){"use strict";function assignKeys(){key=isMac?"ctrl+alt":Cog.utils.browser.chrome?"alt":Cog.utils.browser.msie?"ctrl+alt":"alt+shift"}function focusOnLink($element){$element.length&&$element[0].focus()}function goHome(){return $home=$home||$(".header-logo-image a"),$home.trigger("click"),!1}function goToAccessibility(){return $accessibility=$accessibility||$('.footer-secondary-navigation a[title="Accessibility"]'),$accessibility.trigger("click"),!1}function goToNavigation(){return $html.animate({scrollTop:0},500),focusOnLink($navigation),$body.addClass("navigation-open"),!1}function goToContent(){return $body.scrollTop()<50&&$html.animate({scrollTop:$header.outerHeight()+5},300,function(){focusOnLink($("#content .layout-inner a"))}),$body.removeClass("navigation-open"),!1}function attachDOM(){$html=$("html, body"),$body=$("body"),$header=$("#header"),$navigation=$(".top-navigation a.navigation-item-title").first()}function attachEvents(){Mousetrap.bind(key+"+h",goHome),Mousetrap.bind(key+"+a",goToAccessibility),Mousetrap.bind(key+"+n",goToNavigation),Mousetrap.bind(key+"+s",goToContent)}var $home,$accessibility,$navigation,$html,$body,$header,key,api={},isMac=navigator.appVersion.indexOf("Mac")>-1;api.init=function(){assignKeys(),attachDOM(),attachEvents()},Cog.register({name:"accessibility",api:api})}(Cog.jQuery(),document),function($){"use strict";var api={};api.init=function(){$("body").off(".titleHandler"),$("body").on("mouseover.titleHandler","a, img",function(){$(this).data("org_title",this.title),this.title=""}),$("body").on("mouseout.titleHandler","a, img",function(){this.title=$(this).data("org_title")})},Cog.register({name:"titleRemover",api:api})}(Cog.jQuery()),Cog.utils=Cog.utils||{},function($,_){"use strict";function replaceAttributes($current,$expected){var incomingAttributes=$.makeArray($expected.prop("attributes")),currentAttributes=$.makeArray($current.prop("attributes"));_.each(currentAttributes,function(attr){$current.removeAttr(attr.name)}),_.each(incomingAttributes,function(attr){$current.attr(attr.name,attr.value)})}Cog.registerStatic({name:"utils.replaceAttributes",sharedApi:replaceAttributes,api:{}}),Cog.utils.replaceAttributes=replaceAttributes}(Cog.jQuery(),_),Cog.utils=Cog.utils||{},function($){"use strict";function escapeDomUniqueNodes(textHtml){var data=$.trim(textHtml);return $.each(elementsToEscape,function(index,value){var pattern=new RegExp("(<\\/?)"+value+"( .+?)?>","gi");data=data.replace(pattern,"$1"+prefixToAdd+value+"$2>")}),data}var elementsToEscape=["body"],prefixToAdd="notunique";Cog.registerStatic({name:"utils.escapeDomUniqueNodes",sharedApi:escapeDomUniqueNodes,api:{}}),Cog.utils.escapeDomUniqueNodes=escapeDomUniqueNodes}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){$elements.on("click",function(){return $("html, body").animate({scrollTop:$("#content").offset().top}),!1})},Cog.register({name:"arrowUpScroll",api:api,selector:"a.arrow-up"})}(Cog.jQuery(),document),function($){"use strict";var api={};api.init=function($elements){$elements.length&&(window.hideNav=!0,$("html, body").animate({scrollTop:$elements.offset().top}).promise().done(function(){window.hideNav=!0}))},Cog.register({name:"googleMapScroll",api:api,selector:".location-google-map"})}(Cog.jQuery(),document),function($){"use strict";var api={};api.onRegister=function(scope){var $element=scope.$scope;$element.addClass("is-active is-open")},Cog.registerComponent({name:"menuSelector",api:api,selector:".top-navigation .has-active-child, .top-navigation .is-active"})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){$elements.hover(function(){$(this).addClass("active")},function(){$(this).removeClass("active")})},Cog.register({name:"simulatedHover",api:api,selector:".button"})}(Cog.jQuery()),function($,document){function hasScrolled(){var scrollTop=$window.scrollTop();Math.abs(lastScrollTop-scrollTop)<=delta||(window.hideNav&&(lastScrollTop=120),window.hideNav?(window.hideNav=!1,$body.addClass("nav-hidden")):scrollTop>lastScrollTop&&scrollTop>120?($body.addClass("nav-hidden"),hideCookie()):(scrollTop+$window.height()<$document.height()&&$body.removeClass("nav-hidden"),window.hideNav=!1),lastScrollTop=scrollTop)}function hideCookie(){$cookie.addClass("collapsed"),Cog.Cookie.create("cookiePolicy",!0,30),hideCookie=$.noop}function getUrlVar(parameter){var i,hash=[],hashes=window.location.href.slice(window.location.href.indexOf("?")+1).split("&");for(i=0;i0&&(window.location.hash=urlVar))}var didScroll,$body,$cookie,lastScrollTop=0,delta=5,$window=$(window),$document=$(document),scrollFromHash=!1,api={};setInterval(function(){!didScroll||scrollFromHash||$body.hasClass("search-active")||(hasScrolled(),didScroll=!1),didScroll&&scrollFromHash&&(scrollFromHash=!1,didScroll=!1)},250),api.hide=function(){$body.addClass("nav-hidden"),scrollFromHash=!0},api.init=function($elements){$body=$("body"),$cookie=$(".cookiePolicy"),Cog.utils.isAuthor()||($window.off("beforeunload.stickyHeader").on("beforeunload.stickyHeader",function(){$window.scrollTop(0)}),$window.ready(_.delay(scrollToAnchor,3e3)),$window.on("hashchange",function(){_.delay(scrollToAnchor,50)}),$("a").on("click",function(e){$(e.target).attr("href")===document.location.hash&&_.delay(scrollToAnchor,50)}),$body.hasClass("cq-wcm-edit")||$("html").hasClass("aem-AuthorLayer-Edit")?$elements.addClass("sticked"):$window.scroll(function(){didScroll=!0}))},api.showHeader=function(){$body.removeClass("nav-hidden")},window.Component=window.Component||{},window.Component.stickyHeader=api,Cog.register({name:"stickyHeader",api:api,selector:"#header"})}(Cog.jQuery(),document),function($){"use strict";function prepareMarkup(){var $content=$('');$("body").append($content),$popupOverlay=$(".external-popup-overlay"),$popupContent=$(".external-popup-content")}function getOverlayContent(){$.ajax({url:url,success:function(response){var $richText=$("
    ").html(response).find(".richText");$popupContent.append($richText)}})}function showPopup(){$popupOverlay.addClass("visible").removeClass("invisible"),$popupContent.addClass("visible").removeClass("invisible")}function hidePopup(){$popupOverlay.removeClass("visible"),$popupContent.removeClass("visible"),window.setTimeout(function(){$popupOverlay.addClass("invisible"),$popupContent.addClass("invisible")},400)}function attachEvents(){$("body").on("click",".external-popup",function(e){var href=$(this).attr("href");e.preventDefault(),$popupContent.find("a").attr("href",href),showPopup()}),$popupContent.find(".close").on("click",function(){hidePopup()})}var $popupOverlay,$popupContent,api={},path=Cog.utils.isAuthor()||window.location.href.indexOf("wcmmode=disabled")>=0?"/content/rbs-Key Capital/crown-dependencies/en_gb/content/overlay/external-link-popup.html":"",url=window.location.origin+path;api.init=function(){$(".external-popup-overlay").length||(prepareMarkup(),getOverlayContent(),attachEvents())},Cog.register({name:"externalPopup",api:api})}(Cog.jQuery()),function($){"use strict";var api={};api.onRegister=function(scope){var $element=scope.$scope;$element.find(".articleList-list").attr("data-columns",!0),$element.find(".articleList-article").each(function(i,element){var $element=$(element),$title=$element.find(".articleList-title, .articleList-date"),$description=$element.find(".articleList-description-content");$description.before($title)}),$element.length&&salvattore.init()},Cog.registerComponent({name:"columnsArticleList",api:api,selector:".columns-articleList"})}(Cog.jQuery()),function($){"use strict";function wrapArticle($element){$element.find(".articleList-article-wrapper").each(function(i,article){var $article=$(article),$linkOld=$article.find(".articleList-title a"),$span=$(''+$linkOld.html()+""),link=$linkOld.attr("href")||$article.find("a").attr("href"),$link=$('').attr("href",link);$linkOld.replaceWith($span),$link.on("touchstart",function(){$(this).addClass("hover")}),$link.on("touchend",function(){$(this).removeClass("hover")}),$article.wrap($link)})}function bindTouchEvents($element){var timeout,touchStart,$articleList=$element.find(".component-content"),selector=toCenter(),direction=0;$articleList.on("touchstart",function(e){clearTimeout(timeout),direction=0,touchStart=e.originalEvent.touches[0].clientX}).on("touchend touchcancel",function(e){clearTimeout(timeout);var touchEnd=e.originalEvent.changedTouches[0].clientX;touchStart>touchEnd+10?direction=1:touchEnd-10>touchStart&&(direction=-1),timeout=setTimeout(function(){var $element=$(this),scrolling=selector($element.find(".articleList-article"),direction),$dots=$element.parent().find(".dot"),$dot=$dots.eq(scrolling.index);$dots.removeClass("active"),$dot.addClass("active"),$element.stop().animate({scrollLeft:scrolling.scroll},500,"easeOutQuad")}.bind(this),10)})}function initResize($element){var $articleList=$element.find(".articleList-list");$(document).off("resize.articleList").on("resize.articleList",function(){resize({$element:$element,$articleList:$articleList})})}function bindEvents($element){var $link=$element.find("a");$link.on("click",function(){var $title=$("title"),$element=$(this),$article=$element.parents(".articleList-article"),$content=$("#content"),href=$element.attr("href"),rectangle=$article[0].getBoundingClientRect(),$animator=$('
    ').css({top:rectangle.top,left:rectangle.left,width:rectangle.width,height:rectangle.height,position:"fixed",background:"white",zIndex:2,opacity:0});return $("body").append($animator),Cog.loader(href).then(function(data){var $html=$($.trim(data)),$incomingContent=$html.find("#content"),incomingTitle=$html.filter("title");$incomingContent.css("opacity",1),$animator.animate({opacity:1,top:0,left:0,width:"100%",height:"100%"},500).promise().done(function(){Modernizr.history&&history.pushState({href:href},null,href),$content.html($incomingContent.html()||""),$title.replaceWith(incomingTitle),Cog.init(),$(window).scrollTop(0),$animator.animate({opacity:0}).promise().then(function(){$(".articleList-article-animator").remove()}),$.force_appear()})}),!1})}function resize(options){var articleWidth,$article,articleCount;options.isScroll&&($window.width()!==width||options.force)&&($article=options.$articleList.find(".articleList-article"),articleCount=$article.length,width=$window.width(),options.$articleList.css("width","auto"),articleWidth=$article.outerWidth(),options.$articleList.css({width:articleCount*articleWidth+14}),verticalEqual(options.$element))}function fixArticleList($element){$element.find(".articleList-article-wrapper").each(function(i,element){var $element=$(element),$title=$element.find(".articleList-title"),$thumb=$element.find('.articleList-thumbnail, [data-class="articleList-thumbnail"]').parent("a");$thumb.addClass("articleList-thumbnail-link"),$title.before($thumb)})}function initSalvattore($element){$element.is(".columns")&&($element.find(".articleList-list").attr("data-columns",!0),salvattore.init())}function generatePagination($element){var $mobilePagination,$article,$articleList,articleCount,$dots,i,$dot;if($element.is(".scroll")){for($mobilePagination=$('
    '),$article=$element.find(".articleList-article"),$articleList=$element.find(".articleList-list"),articleCount=$article.length,i=0;articleCount>i;i++)$dot=$('
    '),$mobilePagination.append($dot),function(i){$dot.on("click",function(){$element.find(".component-content").stop().animate({scrollLeft:calculateOffset(i,$article.outerWidth())}),$dots.removeClass("active").eq(i).addClass("active")})}(i);$element.append($mobilePagination.addClass("active")),$dots=$mobilePagination.find(".dot"),$dots.filter(":first-child").addClass("active")}}function verticalEqual($element){if($element.is(".equal")){var maxHeight=0;$element.find(".articleList-article-wrapper").css("height","auto").each(function(i,element){var $element=$(element);maxHeight=$element.outerHeight()>maxHeight?$element.outerHeight():maxHeight}).css("height",maxHeight)}}function toCenter(){var lastIndex=0;return function($elements,direction){var scroll,$element=$elements.first(),articleWidth=$element.outerWidth(),currentOffset=-$element.offset().left,getSelection=articleWidth>currentOffset?Math.floor:Math.ceil,toSelect=getSelection((currentOffset+articleWidth/2)/articleWidth);return toSelect=toSelect===lastIndex?0>toSelect+direction?0:toSelect+direction>$elements.length-1?$elements.length-1:toSelect+direction:toSelect>$elements.length-1?$elements.length-1:0>toSelect?0:toSelect,scroll=calculateOffset(toSelect,articleWidth),lastIndex=toSelect,{scroll:scroll,index:toSelect}}}function calculateOffset(index,articleWidth){return index*articleWidth-($(window).width()-articleWidth-14)/2}var width,api={},$window=$(window),listeners=[];api.init=function($elements){listeners.length&&(_.forEach(listeners,function(listener){Cog.removeListener(listener)}),listeners=[]),$elements.each(function(index,element){var $element=$(element),$article=$element.find(".articleList-article"),$articleList=$element.find(".articleList-list"),articleCount=$article.length,isScroll=!!$element.hasClass("scroll");$element.addClass(1===articleCount?"single":"multiple"),wrapArticle($element),fixArticleList($element),initSalvattore($element),bindEvents($element),generatePagination($element),initResize($element),bindTouchEvents($element),$element.imagesLoaded(function(){verticalEqual($element)}),listeners.push(Cog.addListener("tabs","tabChanged",function(){resize({$element:$element,$articleList:$articleList,force:!0,isScroll:isScroll})})),resize({$element:$element,$articleList:$articleList,force:!0,isScroll:isScroll})})},Cog.register({name:"insightArticleList",api:api,selector:".insights-articleList"})}(Cog.jQuery(),document),function($){"use strict";var api={};api.init=function($elements){function closeCard($element,$cardContent){return $cardContent.removeClass("active"),$elements.removeClass("active hidden"),$element.addClass("inactive"),setTimeout(function(){$cardContent.html(""),$title.text(cardTitle)},1e3),!1}if(!navigator.userAgent.match("CriOS")&&!Cog.utils.isAuthor()){var $title=$("title"),$cardContent=$('
    '),cardTitle=$title.text(),state=history.state;$elements.last().after($cardContent),$elements.find("a").on("click",function(){var $this=$(this),href=$this.attr("href"),$element=$this.parents(".card-hero-box");return $element.hasClass("active")?(Modernizr.history&&history.replaceState(state,null,state.href),closeCard($element,$cardContent)):(Cog.loader(href).then(function(data){var $html=$($.trim(data)),$incomingContent=$html.find("#content").html(),incomingTitle=$html.filter("title");$cardContent.html($incomingContent).find(".card-hero-box").remove(),$title.replaceWith(incomingTitle),$title=$("title"),Modernizr.history&&history.pushState({href:href},null,href),setTimeout(function(){$element.removeClass("inactive"),$element.addClass("active"),$cardContent.addClass("active"),$elements.not($this.parents(".card-hero-box")).addClass("hidden"),$("html, body").animate({scrollTop:0}),setTimeout(function(){Cog.init()},1e3)},100),$cardContent.find(".close").one("click.close",function(e){return e.stopImmediatePropagation(),Modernizr.history&&history.replaceState(state,null,state.href),closeCard($element,$cardContent)}),window.Component.stickyHeader.showHeader(),$.force_appear()}),!1)})}},Cog.register({name:"cardsHero",api:api,selector:".card-hero-box"})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){if(!Cog.utils.isAuthor()&&!navigator.userAgent.match("CriOS")){var velocity=Modernizr.mq("screen and (max-width: 765px)")?.5:.4;Cog.utils.parallax($elements,velocity,!0)}},Cog.register({name:"heroParallax",api:api,selector:'.hero-box > .component-content:not(".parallax-initialized")'})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){Cog.utils.isAuthor()||navigator.userAgent.match("CriOS")||Cog.utils.parallax($elements,-.4)},Cog.register({name:"heroRichTextParallax",api:api,selector:".hero-richText:not(.parallax-initialized):not(.no-parallax),.hero-secondary-richText:not(.hero-secondary-box .hero-secondary-richText),.hero-box + .border-box, .hero-box + script + .border-box"})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){Cog.utils.isAuthor()||navigator.userAgent.match("CriOS")||Cog.utils.parallax($elements,.4,!0)},Cog.register({name:"secondaryHeroParallax",api:api,selector:'.hero-secondary-box > .component-content:not(".parallax-initialized")'})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){Cog.utils.isAuthor()||navigator.userAgent.match("CriOS")||Cog.utils.parallax($elements,-.25)},Cog.register({name:"primaryPromoParallax",api:api,selector:'.primary-promo-box .richText:not(".parallax-initialized")'})}(Cog.jQuery()),function($,_){"use strict";var countries=[{name:"Afghanistan",dial_code:"00 93",code:"AF"},{name:"Albania",dial_code:"00 355",code:"AL"},{name:"Algeria",dial_code:"00 213",code:"DZ"},{name:"AmericanSamoa",dial_code:"00 1 684",code:"AS"},{name:"Andorra",dial_code:"00 376",code:"AD"},{name:"Angola",dial_code:"00 244",code:"AO"},{name:"Anguilla",dial_code:"00 1 264",code:"AI"},{name:"Antigua and Barbuda",dial_code:"00 1268",code:"AG"},{name:"Argentina",dial_code:"00 54",code:"AR"},{name:"Armenia",dial_code:"00 374",code:"AM"},{name:"Aruba",dial_code:"00 297",code:"AW"},{name:"Australia",dial_code:"00 61",code:"AU"},{name:"Austria",dial_code:"00 43",code:"AT"},{name:"Azerbaijan",dial_code:"00 994",code:"AZ"},{name:"Bahamas",dial_code:"00 1 242",code:"BS"},{name:"Bahrain",dial_code:"00 973",code:"BH"},{name:"Bangladesh",dial_code:"00 880",code:"BD"},{name:"Barbados",dial_code:"00 1 246",code:"BB"},{name:"Belarus",dial_code:"00 375",code:"BY"},{name:"Belgium",dial_code:"00 32",code:"BE"},{name:"Belize",dial_code:"00 501",code:"BZ"},{name:"Benin",dial_code:"00 229",code:"BJ"},{name:"Bermuda",dial_code:"00 1 441",code:"BM"},{name:"Bhutan",dial_code:"00 975",code:"BT"},{name:"Bosnia and Herzegovina",dial_code:"00 387",code:"BA"},{name:"Botswana",dial_code:"00 267",code:"BW"},{name:"Brazil",dial_code:"00 55",code:"BR"},{name:"British Indian Ocean Territory",dial_code:"00 246",code:"IO"},{name:"Bulgaria",dial_code:"00 359",code:"BG"},{name:"Burkina Faso",dial_code:"00 226",code:"BF"},{name:"Burundi",dial_code:"00 257",code:"BI"},{name:"Cambodia",dial_code:"00 855",code:"KH"},{name:"Cameroon",dial_code:"00 237",code:"CM"},{name:"Canada",dial_code:"00 1",code:"CA"},{name:"Cape Verde",dial_code:"00 238",code:"CV"},{name:"Cayman Islands",dial_code:"00 345",code:"KY"},{name:"Central African Republic",dial_code:"00 236",code:"CF"},{name:"Chad",dial_code:"00 235",code:"TD"},{name:"Chile",dial_code:"00 56",code:"CL"},{name:"China",dial_code:"00 86",code:"CN"},{name:"Christmas Island",dial_code:"00 61",code:"CX"},{name:"Colombia",dial_code:"00 57",code:"CO" },{name:"Comoros",dial_code:"00 269",code:"KM"},{name:"Congo",dial_code:"00 242",code:"CG"},{name:"Cook Islands",dial_code:"00 682",code:"CK"},{name:"Costa Rica",dial_code:"00 506",code:"CR"},{name:"Croatia",dial_code:"00 385",code:"HR"},{name:"Cuba",dial_code:"00 53",code:"CU"},{name:"Cyprus",dial_code:"00 537",code:"CY"},{name:"Czech Republic",dial_code:"00 420",code:"CZ"},{name:"Denmark",dial_code:"00 45",code:"DK"},{name:"Djibouti",dial_code:"00 253",code:"DJ"},{name:"Dominica",dial_code:"00 1 767",code:"DM"},{name:"Dominican Republic",dial_code:"00 1 849",code:"DO"},{name:"Ecuador",dial_code:"00 593",code:"EC"},{name:"Egypt",dial_code:"00 20",code:"EG"},{name:"El Salvador",dial_code:"00 503",code:"SV"},{name:"Equatorial Guinea",dial_code:"00 240",code:"GQ"},{name:"Eritrea",dial_code:"00 291",code:"ER"},{name:"Estonia",dial_code:"00 372",code:"EE"},{name:"Ethiopia",dial_code:"00 251",code:"ET"},{name:"Faroe Islands",dial_code:"00 298",code:"FO"},{name:"Fiji",dial_code:"00 679",code:"FJ"},{name:"Finland",dial_code:"00 358",code:"FI"},{name:"France",dial_code:"00 33",code:"FR"},{name:"French Guiana",dial_code:"00 594",code:"GF"},{name:"French Polynesia",dial_code:"00 689",code:"PF"},{name:"Gabon",dial_code:"00 241",code:"GA"},{name:"Gambia",dial_code:"00 220",code:"GM"},{name:"Georgia",dial_code:"00 995",code:"GE"},{name:"Germany",dial_code:"00 49",code:"DE"},{name:"Ghana",dial_code:"00 233",code:"GH"},{name:"Gibraltar",dial_code:"00 350",code:"GI"},{name:"Greece",dial_code:"00 30",code:"GR"},{name:"Greenland",dial_code:"00 299",code:"GL"},{name:"Grenada",dial_code:"00 1 473",code:"GD"},{name:"Guadeloupe",dial_code:"00 590",code:"GP"},{name:"Guam",dial_code:"00 1 671",code:"GU"},{name:"Guatemala",dial_code:"00 502",code:"GT"},{name:"Guinea",dial_code:"00 224",code:"GN"},{name:"Guinea-Bissau",dial_code:"00 245",code:"GW"},{name:"Guyana",dial_code:"00 595",code:"GY"},{name:"Haiti",dial_code:"00 509",code:"HT"},{name:"Honduras",dial_code:"00 504",code:"HN"},{name:"Hungary",dial_code:"00 36",code:"HU"},{name:"Iceland",dial_code:"00 354",code:"IS"},{name:"India",dial_code:"00 91",code:"IN"},{name:"Indonesia",dial_code:"00 62",code:"ID"},{name:"Iraq",dial_code:"00 964",code:"IQ"},{name:"Ireland",dial_code:"00 353",code:"IE"},{name:"Israel",dial_code:"00 972",code:"IL"},{name:"Italy",dial_code:"00 39",code:"IT"},{name:"Jamaica",dial_code:"00 1 876",code:"JM"},{name:"Japan",dial_code:"00 81",code:"JP"},{name:"Jordan",dial_code:"00 962",code:"JO"},{name:"Kazakhstan",dial_code:"00 7 7",code:"KZ"},{name:"Kenya",dial_code:"00 254",code:"KE"},{name:"Kiribati",dial_code:"00 686",code:"KI"},{name:"Kuwait",dial_code:"00 965",code:"KW"},{name:"Kyrgyzstan",dial_code:"00 996",code:"KG"},{name:"Latvia",dial_code:"00 371",code:"LV"},{name:"Lebanon",dial_code:"00 961",code:"LB"},{name:"Lesotho",dial_code:"00 266",code:"LS"},{name:"Liberia",dial_code:"00 231",code:"LR"},{name:"Liechtenstein",dial_code:"00 423",code:"LI"},{name:"Lithuania",dial_code:"00 370",code:"LT"},{name:"Luxembourg",dial_code:"00 352",code:"LU"},{name:"Madagascar",dial_code:"00 261",code:"MG"},{name:"Malawi",dial_code:"00 265",code:"MW"},{name:"Malaysia",dial_code:"00 60",code:"MY"},{name:"Maldives",dial_code:"00 960",code:"MV"},{name:"Mali",dial_code:"00 223",code:"ML"},{name:"Malta",dial_code:"00 356",code:"MT"},{name:"Marshall Islands",dial_code:"00 692",code:"MH"},{name:"Martinique",dial_code:"00 596",code:"MQ"},{name:"Mauritania",dial_code:"00 222",code:"MR"},{name:"Mauritius",dial_code:"00 230",code:"MU"},{name:"Mayotte",dial_code:"00 262",code:"YT"},{name:"Mexico",dial_code:"00 52",code:"MX"},{name:"Monaco",dial_code:"00 377",code:"MC"},{name:"Mongolia",dial_code:"00 976",code:"MN"},{name:"Montenegro",dial_code:"00 382",code:"ME"},{name:"Montserrat",dial_code:"00 1664",code:"MS"},{name:"Morocco",dial_code:"00 212",code:"MA"},{name:"Myanmar",dial_code:"00 95",code:"MM"},{name:"Namibia",dial_code:"00 264",code:"NA"},{name:"Nauru",dial_code:"00 674",code:"NR"},{name:"Nepal",dial_code:"00 977",code:"NP"},{name:"Netherlands",dial_code:"00 31",code:"NL"},{name:"Netherlands Antilles",dial_code:"00 599",code:"AN"},{name:"New Caledonia",dial_code:"00 687",code:"NC"},{name:"New Zealand",dial_code:"00 64",code:"NZ"},{name:"Nicaragua",dial_code:"00 505",code:"NI"},{name:"Niger",dial_code:"00 227",code:"NE"},{name:"Nigeria",dial_code:"00 234",code:"NG"},{name:"Niue",dial_code:"00 683",code:"NU"},{name:"Norfolk Island",dial_code:"00 672",code:"NF"},{name:"Northern Mariana Islands",dial_code:"00 1 670",code:"MP"},{name:"Norway",dial_code:"00 47",code:"NO"},{name:"Oman",dial_code:"00 968",code:"OM"},{name:"Pakistan",dial_code:"00 92",code:"PK"},{name:"Palau",dial_code:"00 680",code:"PW"},{name:"Panama",dial_code:"00 507",code:"PA"},{name:"Papua New Guinea",dial_code:"00 675",code:"PG"},{name:"Paraguay",dial_code:"00 595",code:"PY"},{name:"Peru",dial_code:"00 51",code:"PE"},{name:"Philippines",dial_code:"00 63",code:"PH"},{name:"Poland",dial_code:"00 48",code:"PL"},{name:"Portugal",dial_code:"00 351",code:"PT"},{name:"Puerto Rico",dial_code:"00 1 939",code:"PR"},{name:"Qatar",dial_code:"00 974",code:"QA"},{name:"Romania",dial_code:"00 40",code:"RO"},{name:"Rwanda",dial_code:"00 250",code:"RW"},{name:"Samoa",dial_code:"00 685",code:"WS"},{name:"San Marino",dial_code:"00 378",code:"SM"},{name:"Saudi Arabia",dial_code:"00 966",code:"SA"},{name:"Senegal",dial_code:"00 221",code:"SN"},{name:"Serbia",dial_code:"00 381",code:"RS"},{name:"Seychelles",dial_code:"00 248",code:"SC"},{name:"Sierra Leone",dial_code:"00 232",code:"SL"},{name:"Singapore",dial_code:"00 65",code:"SG"},{name:"Slovakia",dial_code:"00 421",code:"SK"},{name:"Slovenia",dial_code:"00 386",code:"SI"},{name:"Solomon Islands",dial_code:"00 677",code:"SB"},{name:"South Africa",dial_code:"00 27",code:"ZA"},{name:"South Georgia and the South Sandwich Islands",dial_code:"00 500",code:"GS"},{name:"Spain",dial_code:"00 34",code:"ES"},{name:"Sri Lanka",dial_code:"00 94",code:"LK"},{name:"Sudan",dial_code:"00 249",code:"SD"},{name:"Suriname",dial_code:"00 597",code:"SR"},{name:"Swaziland",dial_code:"00 268",code:"SZ"},{name:"Sweden",dial_code:"00 46",code:"SE"},{name:"Switzerland",dial_code:"00 41",code:"CH"},{name:"Tajikistan",dial_code:"00 992",code:"TJ"},{name:"Thailand",dial_code:"00 66",code:"TH"},{name:"Togo",dial_code:"00 228",code:"TG"},{name:"Tokelau",dial_code:"00 690",code:"TK"},{name:"Tonga",dial_code:"00 676",code:"TO"},{name:"Trinidad and Tobago",dial_code:"00 1 868",code:"TT"},{name:"Tunisia",dial_code:"00 216",code:"TN"},{name:"Turkey",dial_code:"00 90",code:"TR"},{name:"Turkmenistan",dial_code:"00 993",code:"TM"},{name:"Turks and Caicos Islands",dial_code:"00 1 649",code:"TC"},{name:"Tuvalu",dial_code:"00 688",code:"TV"},{name:"Uganda",dial_code:"00 256",code:"UG"},{name:"Ukraine",dial_code:"00 380",code:"UA"},{name:"United Arab Emirates",dial_code:"00 971",code:"AE"},{name:"United Kingdom",dial_code:"00 44",code:"GB"},{name:"United States",dial_code:"00 1",code:"US"},{name:"Uruguay",dial_code:"00 598",code:"UY"},{name:"Uzbekistan",dial_code:"00 998",code:"UZ"},{name:"Vanuatu",dial_code:"00 678",code:"VU"},{name:"Wallis and Futuna",dial_code:"00 681",code:"WF"},{name:"Yemen",dial_code:"00 967",code:"YE"},{name:"Zambia",dial_code:"00 260",code:"ZM"},{name:"Zimbabwe",dial_code:"00 263",code:"ZW"},{name:"land Islands",dial_code:"",code:"AX"},{name:"Antarctica",dial_code:null,code:"AQ"},{name:"Bolivia, Plurinational State of",dial_code:"00 591",code:"BO"},{name:"Brunei Darussalam",dial_code:"00 673",code:"BN"},{name:"Cocos (Keeling) Islands",dial_code:"00 61",code:"CC"},{name:"Congo, The Democratic Republic of the",dial_code:"00 243",code:"CD"},{name:"Cote d'Ivoire",dial_code:"00 225",code:"CI"},{name:"Falkland Islands (Malvinas)",dial_code:"00 500",code:"FK"},{name:"Guernsey",dial_code:"00 44",code:"GG"},{name:"Holy See (Vatican City State)",dial_code:"00 379",code:"VA"},{name:"Hong Kong",dial_code:"00 852",code:"HK"},{name:"Iran, Islamic Republic of",dial_code:"00 98",code:"IR"},{name:"Isle of Man",dial_code:"00 44",code:"IM"},{name:"Jersey",dial_code:"00 44",code:"JE"},{name:"Korea, Democratic People's Republic of",dial_code:"00 850",code:"KP"},{name:"Korea, Republic of",dial_code:"00 82",code:"KR"},{name:"Lao People's Democratic Republic",dial_code:"00 856",code:"LA"},{name:"Libyan Arab Jamahiriya",dial_code:"00 218",code:"LY"},{name:"Macao",dial_code:"00 853",code:"MO"},{name:"Macedonia, The Former Yugoslav Republic of",dial_code:"00 389",code:"MK"},{name:"Micronesia, Federated States of",dial_code:"00 691",code:"FM"},{name:"Moldova, Republic of",dial_code:"00 373",code:"MD"},{name:"Mozambique",dial_code:"00 258",code:"MZ"},{name:"Palestinian Territory, Occupied",dial_code:"00 970",code:"PS"},{name:"Pitcairn",dial_code:"00 872",code:"PN"},{name:"Réunion",dial_code:"00 262",code:"RE"},{name:"Russia",dial_code:"00 7",code:"RU"},{name:"Saint Barthélemy",dial_code:"00 590",code:"BL"},{name:"Saint Helena, Ascension and Tristan Da Cunha",dial_code:"00 290",code:"SH"},{name:"Saint Kitts and Nevis",dial_code:"00 1 869",code:"KN"},{name:"Saint Lucia",dial_code:"00 1 758",code:"LC"},{name:"Saint Martin",dial_code:"00 590",code:"MF"},{name:"Saint Pierre and Miquelon",dial_code:"00 508",code:"PM"},{name:"Saint Vincent and the Grenadines",dial_code:"00 1 784",code:"VC"},{name:"Sao Tome and Principe",dial_code:"00 239",code:"ST"},{name:"Somalia",dial_code:"00 252",code:"SO"},{name:"Svalbard and Jan Mayen",dial_code:"00 47",code:"SJ"},{name:"Syrian Arab Republic",dial_code:"00 963",code:"SY"},{name:"Taiwan, Province of China",dial_code:"00 886",code:"TW"},{name:"Tanzania, United Republic of",dial_code:"00 255",code:"TZ"},{name:"Timor-Leste",dial_code:"00 670",code:"TL"},{name:"Venezuela, Bolivarian Republic of",dial_code:"00 58",code:"VE"},{name:"Viet Nam",dial_code:"00 84",code:"VN"},{name:"Virgin Islands, British",dial_code:"00 1 284",code:"VG"},{name:"Virgin Islands, U.S.",dial_code:"00 1 340",code:"VI"}],api={},appendCountrySelector=function($input){var $dropdown,$default,$list,defaultCode,defaultCountry,list='',letter="a";_.forEach(countries,function(country){var code=country.dial_code||" ",selected="";"GB"===country.code&&(defaultCode=country.dial_code,defaultCountry=country.name,selected=' class="selected"'),country.name.substr(0,1).toLowerCase()!==letter&&(letter=country.name.substr(0,1).toLowerCase(),list+='"),list+='
  • "+country.name+"
  • "}),$dropdown=$("
      "),$default=$(""),$list=$("
        "),$dropdown.html("
      • "),$default.addClass("default").html(defaultCountry).data("value",defaultCode).appendTo($dropdown.find("li")),$default.after($list),$list.html(list),$default.on("click",function(){$dropdown.toggleClass("is-open")}),_.forEach($list.find("li a"),function(li){var $country=$(li);$country.on("click",function(e){e.preventDefault(),$input.val($country.attr("data-value")).focus(),$default.html($country.html()),$dropdown.toggleClass("is-open"),$dropdown.find(".selected").removeClass("selected"),$country.addClass("selected")})}),$dropdown.addClass("dropdown"),$input.closest(".textField").css("z-index",2e3),$input.before($dropdown),$input.addClass("dirty").val(defaultCode)};api.onRegister=function(scope){var $input=scope.$scope;appendCountrySelector($input)},Cog.registerComponent({name:"contactNumber",api:api,selector:"#contact-number"})}(Cog.jQuery(),_),function($,document){"use strict";function Check($element){this.$element=$element,this.bindDOM(),this.bindEvents()}var api={};Check.prototype.bindDOM=function(){this.$checkbox=this.$element.find("input"),this.$label=this.$element.find("label"),this.$checkbox.after('
        '),this.$check=this.$checkbox.next(),this.isReadOnly()?(this.$checkbox.attr("readonly",!0),this.$checkbox.attr("checked",!1)):this.isReadOnlyChecked()&&(this.$checkbox.attr("readonly",!0),this.$checkbox.attr("checked",!0))},Check.prototype.bindEvents=function(){this.isReadOnly()||this.isReadOnlyChecked()?(this.$label.on("click",function(e){e.preventDefault()}),this.$checkbox.on("click",function(e){e.preventDefault()})):this.$check.on("click",function(){this.$checkbox.trigger("click")}.bind(this))},Check.prototype.isReadOnly=function(){return this.$element.hasClass("readonly")},Check.prototype.isReadOnlyChecked=function(){return this.$element.hasClass("readonly-checked")},api.init=function($elements){$elements.each(function(){new Check($(this))})},Cog.register({name:"checkboxField",api:api,selector:".checkboxField"})}(Cog.jQuery(),document),function($,document,_){"use strict";function attachDOM($scope){$htmlAndBody=$("html, body"),$labels=$scope.find("label"),$inputs=$scope.find("input"),$loginForm=$scope.find(".login-form"),$loginConsent=$scope.find(".login-consent"),$loginButon=$loginForm.find("button.button"),$loginLink=$scope.find("a.login"),$declineButton=$loginConsent.find("a.overlay-close-custom"),$container=$loginForm.parents(".border-box"),$message=$loginForm.find(".login-error")}function scrollToBox(){var marginTop,offset=$container.offset().top;$htmlAndBody.scrollTop()>offset&&(marginTop=Math.abs(parseInt($container.css("margin-top"),10)),$htmlAndBody.animate({scrollTop:$container.offset().top-marginTop},400))}function focusout(){_.forEach($inputs,function(input){var $input=$(input);$input.blur(),$input.css("display","none")}),_.defer(function(){$inputs.css("display","")})}function onLoginHide(){$loginForm.parents(".content").addClass("login-form-hidden").removeClass("login-form-visible"),scrollToBox(),focusout()}function loginShow(){$loginConsent.css("display","none"),$loginForm.parents(".content").removeClass("login-form-hidden").addClass("login-form-visible"),$loginForm.css("display","block"),scrollToBox()}function isLoginFormHidden(){var style=$loginForm.attr("style");return style&&(style=style.toLowerCase()),style&&style.indexOf("display")>-1&&style.indexOf("none")>-1}function attachEvents(){$loginForm.submit(function(e){var data;accepted||(e.preventDefault(),data=$loginForm.serializeArray(),findAndAdjustPagePath(data),$message.hide(),$.ajax({type:"POST",url:"/bin/Key Capitalcom/login-check",data:data,complete:function(response){200==response.status?($loginForm.hide(),$loginConsent.show()):$message.show()}}))}),$loginLink.on("click",function(e){e.preventDefault(),accepted=!0,$loginForm.submit()}),$labels.on("click",function(){$(this).next("input").focus()}),$inputs.off("focus").on("focus",function(){$(this).parents(".form-group").addClass("active")}),$inputs.off("blur").on("blur",function(){var $input=$(this);""===$input.val()&&$input.parents(".form-group").removeClass("active")}),$loginButon.on("click",function(){$(document).off("ajaxComplete").on("ajaxComplete",function(){isLoginFormHidden()&&onLoginHide()})}),$declineButton.on("click",function(e){e.preventDefault(),loginShow()}),$(window).on("load",setInitialState)}function findAndAdjustPagePath(data){var i,redirectNodes=$(".log-paths").children(),resourceInput=$("[name='resource']"),userNameInput=getUserNameFromForm(data);for(i=0;i .component-content"})}(Cog.jQuery(),document,_),function($,_){"use strict";function bindInput($element){var $input=$element,$controls=$input.parents(".controls"),$inputParent=$input.parent(),placeholderText=$input.attr("placeholder")?$input.attr("placeholder"):$inputParent.prev("label").text().replace("*",""),$placeholder=$('
        ').html(placeholderText);$inputParent.hasClass("radio")||$input.after($placeholder),$input.on("focusin",function(){var val=$(this).val();$controls.addClass("active"),val.length&&_.delay(function(){$(this).val(val)}.bind(this),100)}).on("focusout",function(){$controls.removeClass("active")}),$placeholder.off("click").on("click",function(){$input.focus()}),""!==$input.val()&&$input.addClass("dirty"),$input.on("focusout change",function(){var $input=$(this),value=$input.val();""!==value?$input.addClass("dirty"):$input.removeClass("dirty")})}var api={},formInputs="input, select, textarea";api.onRegister=function(scope){var $element=scope.$scope;bindInput($element.find(formInputs))},Cog.registerComponent({name:"formPlaceholder",api:api,selector:".form-element"})}(Cog.jQuery(),_),function($,_){"use strict";function restartAnimation($element){var originalStyle=$element.css("display");$element.css("display","none"),_.defer(function(){$element.css("display",originalStyle)})}var api={};api.init=function($elements){Cog.utils.isAuthor()||$elements.each(function(){var $element=$(this);$element.on("orientationchange",function(){restartAnimation($(this))})})},Cog.register({name:"cardHeroImage",api:api,selector:".card-hero-image"})}(Cog.jQuery(),_),function($){"use strict";function findHeroRichText($element){var $richText=$element.next(".hero-richText");return 0===$richText.length&&($richText=$element.next("script").next(".hero-richText")),$richText}function addLink($element){var $heroRichText=findHeroRichText($element),$link=$element.find(".component-content > a");$heroRichText.length&&$heroRichText.on({mouseenter:function(){$link.addClass("js-hover")},mouseleave:function(){$link.removeClass("js-hover")},click:function(){Cog.loadPage&&Cog.loadPage($link.attr("href"),!0)}}).addClass("is-link")}var api={};api.init=function($elements){Cog.utils.isAuthor()||$elements.each(function(){var $element=$(this);$element.imagesLoaded(function(){Cog.utils.parallax($element.find("img"),.5)}),$element.find(".component-content > a").length&&addLink($element)})},Cog.register({name:"heroParallaxImage",api:api,selector:".hero-parallax-image"})}(Cog.jQuery()),function($){"use strict";function handleMobileImage($element){function setBackgroundImage(){isMobile()?isMobileImg||($target.css("background-image",mobileImg),isMobileImg=!0):isMobileImg&&($target.css("background-image",originalImg),isMobileImg=!1)}var $target=$element.closest(".component-content"),$img=$element.find("img"),originalImg=$target.css("background-image"),mobileImg='url("'+$img.attr("src")+'")',isMobileImg=!1;originalImg.length>0&&$(window).on("load resize",function(){setBackgroundImage()})}function isMobile(){return Modernizr.mq("screen and (max-width: 768px)")}var api={};api.onRegister=function(scope){var $element=scope.$scope;handleMobileImage($element)},Cog.registerComponent({name:"mobileBackgroundImage",api:api,selector:".mobile-background-image"})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($elements){function isTablet(){return Modernizr.mq("screen and (min-width: "+tabletBreakpoint+"px) and (max-width: "+desktopBreakpoint+"px)")}function isMobile(){return Modernizr.mq("screen and (max-width: "+(tabletBreakpoint-1)+"px)")}function recalculate(){$.each(contents,function(i,$element){var imageHeight,slideImageHeight,elementWidth,imageWidth,$slideImage=$element.closest(".parallax-image").siblings(".side-image-richText"),$image=$element.find("img");isTablet()&&$slideImage.length?(slideImageHeight=$slideImage.find("> .component-content").height(),elementWidth=$element.width(),$element.height(slideImageHeight),$image.addClass("is-absolute"),imageWidth=$image.width(),$image.css("marginLeft",-(imageWidth-elementWidth)/2)):isMobile()?($image.removeClass("is-absolute"),imageHeight=$element.find("img").height(),$element.height(imageHeight-30),$image.css("marginLeft","")):($image.removeClass("is-absolute"),imageHeight=$element.find("img").height(),$element.height(imageHeight-30),$image.css("marginLeft",""))})}var $window=$(window),width=$window.width(),contents=[],tabletBreakpoint=769,desktopBreakpoint=1024;window.picturefill(),$elements.each(function(){var $element=$(this),$div=$('
        '),$image=$element.find("picture");$image.length||($image=$element.find("img")),$image.wrap($div),contents.push($image.parent()),$image.each(function(){var newImage=new Image;newImage.onload=function(){recalculate()},newImage.src="undefined"==typeof newImage.currentSrc?$(this).attr("src"):newImage.currentSrc}),$element.imagesLoaded(function(){recalculate(),Cog.utils.parallax($elements.find("img"),.3)}).addClass("parallax-initialized")}),$window.off("resize.parallaxImage").on("resize.parallaxImage",function(){$window.width()!==width&&(recalculate(),width=$window.width())})},Cog.register({name:"parallaxImage",api:api,selector:".parallax-image"})}(Cog.jQuery()),function($){"use strict";var api={};api.init=function($richText){function reRender(){var windowHeight=window.innerHeight?window.innerHeight:$window.height(),extra=Modernizr.mq("screen and (max-width: 765px)")?-$header.outerHeight():0,boxOffset=$boxRt.offset().top,offset=boxOffset-$window.scrollTop()-windowHeight+$richText.outerHeight();offset>0?$richText.removeClass("hidden").css({bottom:0,top:"auto"}):$richText.addClass("hidden").css({top:boxOffset+extra,bottom:"auto"})}var $boxRt=$(".secondary-promo-box .richText"),$window=$(window),$header=$("#header");$richText.length&&(reRender(),$window.off("scroll.promoRichText resize.promoRichText").on("scroll.promoRichText resize.promoRichText",function(){requestAnimationFrame(function(){reRender()})}))},Cog.register({name:"secondaryPromoRichText",api:api,selector:".secondary-promo-richText"})}(Cog.jQuery()),function($,_){"use strict";var api={};api.onRegister=function(scope){var $element=scope.$scope;$element.find("a").on("click",function(e){e.preventDefault(),$(window).scrollTop($(window).scrollTop()-10),_.delay(function(){window.print()},500)})},Cog.registerComponent({name:"printRichText",api:api,selector:".print-richText"})}(Cog.jQuery(),_),function($,document,_){"use strict";function appendIScroll(element,isOpen){var refresh,$element=$(element),scroll=$element.data("scroll");return Modernizr.touch?(refresh=function(){scroll.refresh&&_.delay(function(){scroll.refresh()},600)},void($element.hasClass("has-iscroll")?isOpen&&refresh():($element.wrapInner('
        '),$element.addClass("has-iscroll"),scroll=new IScroll(element,{mouseWheel:!0,scrollbars:!0,click:!0,tap:!0}),$element.data("scroll",scroll),refresh()))):!1}function clearFormAnswer(){var i,length=Cog.sessionStorage.length(),toRemove=[];for(i=0;length>i;i++)Cog.sessionStorage.key(i)&&0===Cog.sessionStorage.key(i).indexOf("question-")&&toRemove.push(Cog.sessionStorage.key(i));_.forEach(toRemove,function(key){Cog.sessionStorage.removeItem(key)})}function getQuestion($question){var question;return question=$question.find(".disclaimer").length>0?$question.find(".disclaimer").first().text():$question.find("p").first().text().toLowerCase().replace(/[^a-zA-Z0-9]/g,"").substr(0,32),"question-"+question}function onAnswerClick($link,$question,$list,$text,$linkHidden){var question,answer,href=$link.attr("href"),tmpCallbacks=Cog.utils.parallaxCallbacks;return $link.hasClass("disabled")&&$link.find(".button").hasClass("disabled")||(question=getQuestion($question),$list.length?(answer=$.trim($list.find(".active").text()),answer.toLowerCase().indexOf("yes")>-1&&(href=$linkHidden.attr("href"))):answer=$text.length?$text.find("input").val():$link.text(),answer.length>0&&(Cog.sessionStorage.setItem(question,answer),Cog.loader(href).then(callback),Cog.utils.parallaxCallbacks=tmpCallbacks),isLocalhost&&Modernizr.history&&history.pushState({href:href},null,href)),!1}function callback(data){var $html=$(Cog.utils.escapeDomUniqueNodes(data)),$incomingContent=$html.find(".border-box").children(".component-content"),$currentBox=$(".border-box").children(".component-content"),$incomingBody=$html.filter("notuniquebody"),$body=$("body");$incomingContent.css({opacity:0}),$currentBox.animate({opacity:0},500).promise().done(function(){$currentBox.html($incomingContent.html()),Cog.utils.replaceAttributes($body,$incomingBody),Cog.init(),$currentBox.animate({opacity:1},500)}),"undefined"!=typeof $html&&0===$html.find(".snippetReference.contact-snippet").length&&$currentBox.parent().find("~ .contact-snippet").hide(500),_.defer(function(){$("html, body").animate({scrollTop:$(".border-box").offset().top}).promise().done(function(){Cog.hideNav=!0})})}function onListItemClick($listItem,$button){var $wrapper=$listItem.parents("ul"),$first=$wrapper.find(" > li"),$question=$listItem.clone();$question.addClass("active"),$first.replaceWith($question),$first=$question,$button.removeClass("disabled")}function onListClick($list){$list.toggleClass("is-open"),appendIScroll($list.find(".list-container")[0],$list.hasClass("is-open"))}function refreshIfNeeded(){$("#content").find("a.restart").length||clearFormAnswer()}function updateCounter($counter,max,length){10>max-length?$counter.addClass("is-visible"):$counter.removeClass("is-visible"),4>max-length?$counter.addClass("danger"):$counter.removeClass("danger"),$counter.html(length+"/"+max)}function addCounter($input,max){var $counter=$('
        '),$placeholder=$input.next(".input-placeholder");$input.attr("maxlength",max),$placeholder.after($counter),$input.on("blur keyup change",function(){updateCounter($counter,max,$input.val().length)})}function handleTextField($textField){var maxlength=60,$wrapper=$("
        ").addClass("control-group"),$inputWrapper=$("
        ").addClass("controls"),$label=$("