//     Fiber.min.js 1.0.3
//     @author: Kirollos Risk
//
//     Copyright (c) 2012 LinkedIn.
//     All Rights Reserved. Apache Software License 2.0
//     http://www.apache.org/licenses/LICENSE-2.0
!function(a){function d(a,b){var c;for(c in a)a.hasOwnProperty(c)&&(b[c]=a[c])}function e(){}var b=!1,c=Array.prototype;previousFiber=a.Fiber,e.extend=function(a){function h(){b||"function"!=typeof this.init||(this.init.apply(this,arguments),delete this.init)}var g,c=this.prototype,f=a(c);return b=!0,g=h.prototype=new this,b=!1,d(f,g),g.constructor=h,h.__base__=c,h.extend=e.extend,h},e.proxy=function(a,b){var c,e,d={};1===arguments.length&&(b=a,a=b.constructor.__base__),e=function(c){return function(){return a[c].apply(b,arguments)}};for(c in a)a.hasOwnProperty(c)&&"function"==typeof a[c]&&(d[c]=e(c));return d},e.decorate=function(a){var b,e=a.constructor.__base__,f=c.slice.call(arguments,1),g=f.length;for(b=0;g>b;b++)d(f[b].call(a,e),a)},e.mixin=function(a){var b,e=a.__base__,f=c.slice.call(arguments,1),g=f.length;for(b=0;g>b;b++)d(f[b](e),a.prototype)},e.noConflict=function(){return a.Fiber=previousFiber,e},"undefined"!=typeof module?"function"==typeof module.setExports?module.setExports(e):module.exports&&(module.exports=e):a.Fiber=e}(this);/**
 * @license
 * Inject (c) 2011 LinkedIn [https://github.com/linkedin/inject] Apache Software License 2.0
 * lscache (c) 2011 Pamela Fox [https://github.com/pamelafox/lscache] Apache Software License 2.0
 * GoWithTheFlow.js (c) 2011 Jerome Etienne, [https://github.com/jeromeetienne/gowiththeflow.js] MIT License
 */
!function(context,undefined){function proxy(e,t){if(!t)throw Error("proxying requires a scope");if(!e)throw Error("proxying requires a function");return function(){return e.apply(t,arguments)}}function each(e,t){for(var n=0,r=e.length;r>n;n++)t(e[n])}function addListener(e,t,n){window.addEventListener?e.addEventListener(t,n,!1):e.attachEvent("on"+t,n)}function getDomainName(e){return e.match(reURI)[3]}function sendMessage(e,t,n,r){r||(r={}),r=JSON.stringify(r),e.postMessage([n,r].join(":"),t)}var IS_IE=eval("/*@cc_on!@*/false");(function(){var e=navigator.userAgent.toLowerCase();-1!==e.indexOf("gecko")&&(IS_GK=!0)})();var FILE_STORAGE_TOKEN="INJECT",LSCACHE_SCHEMA_VERSION=1,LSCACHE_SCHEMA_VERSION_STRING="!version",LSCACHE_APP_KEY_STRING="!appCacheKey",AMD_DEFERRED="###DEFERRED###",NAMESPACE="Inject",FILE_SUFFIX_REGEX=/.*?\.(js|txt)(\?.*)?$/,BASIC_FILE_SUFFIX=".js",HOST_PREFIX_REGEX=/^https?:\/\//,HOST_SUFFIX_REGEX=/^(.*?)(\/.*|$)/,RESPONSE_SLICER_REGEX=/^(.+?)[\s]+([\w\W]+?)[\s]+([\w\W]+)$/m,FUNCTION_REGEX=/^[\s\(]*function[^\(]*\(([^)]*)\)/,FUNCTION_NEWLINES_REGEX=/\/\/.*?[\r\n]|\/\*(?:.|[\r\n])*?\*\//g,FUNCTION_BODY_REGEX=/[\w\W]*?\{([\w\W]*)\}/m,WHITESPACE_REGEX=/\s+/g,REQUIRE_REGEX=RegExp("(?:^|[\\s;,=\\?:\\}\\)\\(])require[\\s]*\\(['\"]([^'\"]+?)['\"]\\)","gim"),DEFINE_REGEX=RegExp("(?:^|[\\s;,\\?\\}\\)\\(])define[\\s]*\\([\\w\\W]*?\\[([\\w\\W]*?)\\]","gim"),DEFINE_TERM_REGEX=RegExp("['\"]([\\w\\W]*?)['\"]","gim"),IS_AMD_REGEX=/(?:^|[\s]+)define[\s]*\(/g,BUILTINS={require:!0,exports:!0,module:!0},BUILTINS_REPLACE_REGEX=/[\s]|"|'|(require)|(exports)|(module)/g,GREEDY_REQUIRE_REXEX=/require.*/,JS_COMMENTS_REGEX=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,RELATIVE_PATH_REGEX=/^(\.{1,2}\/).+/,ABSOLUTE_PATH_REGEX=/^([A-Za-z]+:)?\/\//,PROTOCOL_REGEX=/:\/\//,PROTOCOL_STRING="://",PROTOCOL_EXPANDED_REGEX=/__INJECT_PROTOCOL_COLON_SLASH_SLASH__/,PROTOCOL_EXPANDED_STRING="__INJECT_PROTOCOL_COLON_SLASH_SLASH__",HAS_OWN_PROPERTY=Object.prototype.hasOwnProperty,HAS_LOCAL_STORAGE=function(){try{return localStorage.setItem("injectLStest","ok"),localStorage.removeItem("injectLStest"),!0}catch(e){return!1}}(),userConfig={moduleRoot:null,fileExpires:0,useSuffix:!0,xd:{relayFile:null},debug:{sourceMap:!1,logging:!1}},context=this,userModules={},isHostMethod=function(e,t){var n=typeof e[t];return"function"===n||!("object"!==n||!e[t])||"unknown"===n},debugLog=function(){};(function(){var e="undefined"!=typeof console&&console.log&&"function"==typeof console.log,t=function(e,t){userConfig.debug&&userConfig.debug.logging&&console.log("## "+e+" ##"+"\n"+t)};e&&(debugLog=t)})();var addListener,removeListener;(function(e){e.addEventListener?(addListener=function(e,t,n,r){e.addEventListener(t,n,r||!1)},removeListener=function(e,t,n,r){e.removeEventListener(t,n,r||!1)}):(addListener=function(e,t,n){e.attachEvent("on"+t,n)},removeListener=function(e,t,n){e.detachEvent("on"+t,n)})})(window);var commonJSHeader=["","__INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.fn = function() {","  with (window) {","    __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.innerFn = function() {","      // id: __MODULE_ID__ uri: __MODULE_URI__","      var module = __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.module,","          require = __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.require,","          define = __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.define,","          exports = module.exports;","      try{module.undefined_function();}catch(e){module.__error_line = e;}"].join("\n"),commonJSFooter=["","      __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.module = module;","    };",'    __INJECT_NS__.INTERNAL.defineExecutingModuleAs("__MODULE_ID__", "__MODULE_URI__");',"    try {","      __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.innerFn.call(__INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.module);","    }","    catch (__EXCEPTION__) {","      __INJECT_NS__.INTERNAL.executor.__FUNCTION_ID__.module.__error = __EXCEPTION__;","    }","    __INJECT_NS__.INTERNAL.undefineExecutingModule();","  }","};",""].join("\n");(function(){(function(e,t){"object"==typeof exports?module.exports=t(this):"function"==typeof define&&define.amd?define(function(){return t(e)}):e.Fiber=t(e)})(this,function(e){function t(e,t){var n;for(n in e)e.hasOwnProperty(n)&&(t[n]=e[n])}function n(){}var r=!1,o=Array.prototype,i=e.Fiber;return n.extend=function(e){function o(){r||(this.init.apply(this,arguments),this.init=void 0)}var i,u=this.prototype,s=e(u);return r=!0,i=o.prototype=new this,r=!1,i.init=function(){"function"==typeof u.init&&u.init.apply(this,arguments)},t(s,i),i.constructor=o,o.__base__=u,o.extend=o.prototype.extend||n.extend,o},n.proxy=function(e,t){var n,r,o={};1===arguments.length&&(t=e,e=t.constructor.__base__),r=function(n){return function(){return e[n].apply(t,arguments)}};for(n in e)e.hasOwnProperty(n)&&"function"==typeof e[n]&&(o[n]=r(n));return o},n.decorate=function(e){var n,r=e.constructor.__base__,i=o.slice.call(arguments,1),u=i.length;for(n=0;u>n;n++)t(i[n].call(e,r),e)},n.mixin=function(e){var n,r=e.__base__,i=o.slice.call(arguments,1),u=i.length;for(n=0;u>n;n++)t(i[n](r),e.prototype)},n.noConflict=function(){return e.Fiber=i,n},n})})();var Fiber=this.Fiber.noConflict(),Flow=function(){var e,t=[],n=setTimeout(function(){n=null,e._next()},0);return e={destroy:function(){n&&clearTimeout(n)},par:function(n,r){return!r&&t[t.length-1]instanceof Array||t.push([]),t[t.length-1].push(n),e},seq:function(t){return e.par(t,!0)},_next:function(n,r){for(var o=[],i=[],u=t.shift()||[],s=u.length,a=1==s,c=0;u.length>c;c++)(function(t,u){t(function(t,n){o[u]=t,i[u]=n,0==--s&&e._next(a?o[0]:o,a?i[0]:i)},n,r)})(u[c],c)}}},lscache=function(){function e(){if(void 0!==o)return o;try{n("__lscachetest__","__lscachetest__"),r("__lscachetest__"),o=!0}catch(e){o=!1}return o}function t(){return void 0===i&&(i=null!=window.JSON),i}function n(e,t){localStorage.removeItem(u+a+e),localStorage.setItem(u+a+e,t)}function r(e){localStorage.removeItem(u+a+e)}var o,i,u="lscache-",s=Math.floor(144e9),a="";return{set:function(o,i,c){if(e()){if("string"!=typeof i){if(!t())return;try{i=JSON.stringify(i)}catch(l){return}}try{n(o,i)}catch(f){if("QUOTA_EXCEEDED_ERR"!==f.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==f.name)return;for(var d,h=[],g=0;localStorage.length>g;g++)if(d=localStorage.key(g),0===d.indexOf(u+a)&&0>d.indexOf("-cacheexpiration")){d=d.substr((u+a).length);var p=localStorage.getItem(u+a+(d+"-cacheexpiration")),p=p?parseInt(p,10):s;h.push({key:d,size:(localStorage.getItem(u+a+d)||"").length,expiration:p})}for(h.sort(function(e,t){return t.expiration-e.expiration}),g=(i||"").length;h.length&&g>0;)d=h.pop(),r(d.key),r(d.key+"-cacheexpiration"),g-=d.size;try{n(o,i)}catch(_){return}}c?n(o+"-cacheexpiration",(Math.floor((new Date).getTime()/6e4)+c).toString(10)):r(o+"-cacheexpiration")}},get:function(n){if(!e())return null;var o=n+"-cacheexpiration",i=localStorage.getItem(u+a+o);if(i&&(i=parseInt(i,10),Math.floor((new Date).getTime()/6e4)>=i))return r(n),r(o),null;if(n=localStorage.getItem(u+a+n),!n||!t())return n;try{return JSON.parse(n)}catch(s){return n}},remove:function(t){return e()?(r(t),r(t+"-cacheexpiration"),undefined):null},supported:function(){return e()},flush:function(){if(e())for(var t=localStorage.length-1;t>=0;--t){var n=localStorage.key(t);0===n.indexOf(u+a)&&localStorage.removeItem(n)}},setBucket:function(e){a=e},resetBucket:function(){a=""}}}();(function(){var e;HAS_LOCAL_STORAGE&&lscache&&(lscache.setBucket(FILE_STORAGE_TOKEN),e=lscache.get(LSCACHE_SCHEMA_VERSION_STRING),e&&e>0&&LSCACHE_SCHEMA_VERSION>e&&(lscache.flush(),lscache.set(LSCACHE_SCHEMA_VERSION_STRING,LSCACHE_SCHEMA_VERSION)))})();var reURI=/^((http.?:)\/\/([^:\/\s]+)(:\d+)*)/,getXHR=function(){for(var e=[function(){return new XMLHttpRequest},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Msxml3.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")}],t=!1,n=0;e.length>n;n++){try{e[n](),t=e[n]}catch(r){continue}break}return t}(),Analyzer;(function(){var e=Fiber.extend(function(){return{init:function(){},stripBuiltins:function(e){var t=[],n=e.length,r=0;for(r;n>r;r++)BUILTINS[e[r]]||t.push(e[r]);return t},extractRequires:function(e){var t,n,r,o=[],i={require:1,module:1,exports:1};if(!e)return[];for(e=e.replace(JS_COMMENTS_REGEX,"");t=REQUIRE_REGEX.exec(e);)r=t[1],i[r]||(i[r]=1,o.push(r));for(;t=DEFINE_REGEX.exec(e);)for(;n=DEFINE_TERM_REGEX.exec(t[1]);)r=n[1],i[r]||(i[r]=1,o.push(r));return o}}});Analyzer=new e})();var Communicator;(function(){var e=Fiber.extend(function(){function e(){var e=d;d=[],h={};for(var t=0,n=e.length;n>t;t++)sendMessage(c.contentWindow,userConfig.xd.relayFile,"fetch",{url:e[t]})}function t(e){h[e]||(h[e]=1,d.push(e))}function n(){f||(f=!0,addListener(window,"message",function(t){var n,r,o;if(userConfig.xd.relayFile&&getDomainName(t.origin)===getDomainName(userConfig.xd.relayFile))switch(n=t.data.split(/:/),r=n.shift()){case"ready":l=!1,e();break;case"fetchFail":case"fetchOk":o=JSON.parse(n.join(":")),u(o.url,o.status,o.responseText)}}))}function r(){downloadCompleteQueue={}}function o(e,t){return userConfig.fileExpires>0?lscache.set(e,t,userConfig.fileExpires):null}function i(e){return userConfig.fileExpires>0?lscache.get(e):null}function u(e,t,n){t=1*t,debugLog("Communicator ("+e+")","status "+t+". Length: "+(n?n.length:"NaN")),200!==t||userConfig.xd.relayFile||o(e,n),200!==t&&(n="throw new Error('Error "+t+": Unable to retrieve "+e+"');"),each(downloadCompleteQueue[e],function(e){e(n)}),downloadCompleteQueue[e]=[]}function s(e){if(n(),c&&!l)sendMessage(c.contentWindow,userConfig.xd.relayFile,"fetch",{url:e});else{if(c&&l)return t(e),undefined;l=!0,t(e);var r=userConfig.xd.relayFile;c=document.createElement("iframe"),r+=0>r.indexOf("?")?"?":"&",r+="injectReturn="+encodeURIComponent(location.href),c.src=r,c.style.visibility="hidden",c.style.border=0,c.style.width="1px",c.style.height="1px",c.style.left="-5000px",c.style.top="-5000px",c.style.opacity="0",window.setTimeout(function(){document.body.firsChild?document.body.insertBefore(c,document.body.firstChild):document.body.appendChild(c)})}}function a(e){var t=getXHR();t.open("GET",e),t.onreadystatechange=function(){4===t.readyState&&u(e,t.status,t.responseText)},t.send(null)}var c,l,f=!1,d=[],h={};return{init:function(){this.clearCaches()},clearCaches:function(){r()},noop:function(e,t,n){n("")},get:function(e,t,n){if(downloadCompleteQueue[t]||(downloadCompleteQueue[t]=[]),debugLog("Communicator ("+t+")","requesting"),!userConfig.xd.relayFile){var r=i(t);if(r)return debugLog("Communicator ("+t+")","retireved from cache. length: "+r.length),n(r),undefined}return debugLog("Communicator ("+t+")","queued"),downloadCompleteQueue[t].length?(downloadCompleteQueue[t].push(n),debugLog("Communicator ("+t+")","request already in progress"),undefined):(downloadCompleteQueue[t].push(n),userConfig.xd.relayFile?(s(t),undefined):(a(t),undefined))}}});Communicator=new e})();var Executor;(function(){function hasOwnProperty(e,t){return{}.prototype.hasOwnProperty.call(e,t)}function executeJavaScriptModule(code,functionId){var meta=context.Inject.INTERNAL.executor[functionId],module=meta.module,failed=!1,sourceString=IS_IE?"":"//@ sourceURL="+module.uri,result,err;code=[code,sourceString].join("\n");try{eval(code)}catch(ex){ex.message="Parse error in "+module.id+" ("+module.uri+") please check for an uncaught error "+ex.message;var scr=document.createElement("script");return scr.src=module.uri,scr.type="text/javascript",docHead.appendChild(scr),{__error:ex}}if(userConfig.debug.sourceMap){var toExec=code.replace(/([\w\W]+?)=([\w\W]*\})[\w\W]*?$/,"$1 = ($2)();");toExec=[toExec,sourceString].join("\n"),eval(toExec),module.__error&&(module.__error.message="Runtime error in "+module.id+"("+module.uri+") "+module.__error.message)}else context.Inject.INTERNAL.executor[functionId].fn(),module.__error&&(module.__error.message="Runtime error in "+module.id+"("+module.uri+") "+module.__error.message)}var moduleFailureCache={},docHead=!1;try{docHead=document.getElementsByTagName("head")[0]}catch(e){docHead=!1}var stacknorm={mode:function(e){if(e.arguments&&e.stack)return"chrome";if(e.stack&&e.sourceURL)return"safari";if(e.stack&&e.number)return"ie";if(e.stack&&e.fileName)return"firefox";if(e.message&&e["opera#sourceloc"])return e.stacktrace?e.message.indexOf("\n")>-1&&e.message.split("\n").length>e.stacktrace.split("\n").length?"opera9":"opera10a":"opera9";if(e.message&&e.stack&&e.stacktrace)return 0>e.stacktrace.indexOf("called from line")?"opera10b":"opera11";if(e.stack&&!e.fileName){var t=/:[\d]+:[\d]+\)?(\n|$)/;return t.test(e.stack)?"chrome":"phantom"}return"other"},chrome:function(e){return(e.stack+"\n").replace(/^\s+(at eval )?at\s+/gm,"").replace(/^([^\(]+?)([\n$])/gm,"{anonymous}() ($1)$2").replace(/^Object.<anonymous>\s*\(([^\)]+)\)/gm,"{anonymous}() ($1)").replace(/^(.+) \((.+)\)$/gm,"$1@$2").split("\n").slice(1,-1)},phantom:function(e){return(e.stack+"\n").replace(/^\s+(at eval )?at\s+/gm,"").replace(/^([^\(]+?)([\n$])/gm,"{anonymous}() ($1)$2").replace(/^Object.<anonymous>\s*\(([^\)]+)\)/gm,"{anonymous}() ($1)").replace(/^(.+) \((.+)\)$/gm,"$1@$2").replace(/(.+):([0-9]+)(\)?)/g,"$1:$2:0$3").split("\n").slice(1,-1)},safari:function(e){return e.stack.replace(/\[native code\]\n/m,"").replace(/^(?=\w+Error\:).*$\n/m,"").replace(/^@/gm,"{anonymous}()@").split("\n")},ie:function(e){return e.stack.replace(/^\s*at\s+(.*)$/gm,"$1").replace(/^Anonymous function\s+/gm,"{anonymous}() ").replace(/^(.+)\s+\((.+)\)$/gm,"$1@$2").split("\n").slice(1)},firefox:function(e){return e.stack.replace(/(?:\n@:0)?\s+$/m,"").replace(/^(?:\((\S*)\))?@/gm,"{anonymous}($1)@").split("\n")},opera11:function(e){for(var t="{anonymous}",n=/^.*line (\d+), column (\d+)(?: in (.+))? in (\S+):$/,r=e.stacktrace.split("\n"),o=[],i=0,u=r.length;u>i;i+=2){var s=n.exec(r[i]);if(s){var a=s[4]+":"+s[1]+":"+s[2],c=s[3]||"global code";c=c.replace(/<anonymous function: (\S+)>/,"$1").replace(/<anonymous function>/,t),o.push(c+"@"+a+" -- "+r[i+1].replace(/^\s+/,""))}}return o},opera10b:function(e){for(var t=/^(.*)@(.+):(\d+)$/,n=e.stacktrace.split("\n"),r=[],o=0,i=n.length;i>o;o++){var u=t.exec(n[o]);if(u){var s=u[1]?u[1]+"()":"global code";r.push(s+"@"+u[2]+":"+u[3])}}return r},opera10a:function(e){for(var t="{anonymous}",n=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,r=e.stacktrace.split("\n"),o=[],i=0,u=r.length;u>i;i+=2){var s=n.exec(r[i]);if(s){var a=s[3]||t;o.push(a+"()@"+s[2]+":"+s[1]+" -- "+r[i+1].replace(/^\s+/,""))}}return o},opera9:function(e){for(var t="{anonymous}",n=/Line (\d+).*script (?:in )?(\S+)/i,r=e.message.split("\n"),o=[],i=2,u=r.length;u>i;i+=2){var s=n.exec(r[i]);s&&o.push(t+"()@"+s[2]+":"+s[1]+" -- "+r[i+1].replace(/^\s+/,""))}return o},other:function(e){for(var t,n,r="{anonymous}",o=/function\s*([\w\-$]+)?\s*\(/i,i=[],u=10;e&&e.arguments&&u>i.length;)t=o.test(""+e)?RegExp.$1||r:r,n=Array.prototype.slice.call(e.arguments||[]),i[i.length]=t+"("+this.stringifyArguments(n)+")",e=e.caller;return i}},AsStatic=Fiber.extend(function(){var e=0;return{init:function(){this.clearCaches()},clearCaches:function(){this.cache={},this.errors={},this.anonymousAMDStack=[]},defineExecutingModuleAs:function(e,t){return this.anonymousAMDStack.push({id:e,path:t})},undefineExecutingModule:function(){return this.anonymousAMDStack.pop()},getCurrentExecutingAMD:function(){return this.anonymousAMDStack[this.anonymousAMDStack.length-1]},getFromCache:function(e){var t,n,r,o,i,u,s,a,c,l,f=RulesEngine.getOriginalName(e);if(HAS_OWN_PROPERTY.call(this.errors,e)&&this.errors[e]?t=this.errors[e]:f&&HAS_OWN_PROPERTY.call(this.errors,f)&&this.errors[f]&&(t=this.errors[f]),this.cache[e]?r=this.cache[e]:f&&this.cache[f]&&(this.cache[e]=this.cache[f],r=this.cache[f]),t)throw n="module "+e+" failed to load successfully",n+=t?": "+t.message:"",r&&r.__error_line&&(o=stacknorm.mode(t),i=stacknorm[o](t),u=stacknorm[o](r.__error_line),s=i[0].split(/:/),a=u[0].split(/:/),c=s[s.length-2]-a[a.length-2],c-=1,l=s[s.length-1],n=n+" @ Line: "+c+" Column: "+l+" "),t.message=n,t;return r||null},createModule:function(e,t,n){var r;return!/\!/.test(e)&&this.cache[e]?(this.cache[t]=this.cache[e],this.cache[e]):(r={},r.id=e||null,r.qualifiedId=t||null,r.uri=n||null,r.exports={},r.exec=!1,r.setExports=function(e){var t;for(t in r.exports)if(Object.hasOwnProperty.call(r.exports,t))return debugLog("cannot setExports when exports have already been set. setExports skipped"),undefined;switch(typeof e){case"object":for(t in e)r.exports[t]=e[t];break;case"function":r.exports=e;break;default:r.exports=e}},/\!/.test(e)||(this.cache[e]=r),this.cache[t]=r,r)},getModule:function(e,t){return this.getFromCache(e)||t},runModule:function(t,n){function r(e){return e.replace(/__MODULE_ID__/g,t.id).replace(/__MODULE_URI__/g,t.uri).replace(/__FUNCTION_ID__/g,o).replace(/__INJECT_NS__/g,NAMESPACE)}debugLog("Executor","executing "+t.uri);var o="exec"+e++,i={};context.Inject.INTERNAL.executor[o]=i,i.module=t,i.require=RequireContext.createRequire(t.id,t.uri,t.qualifiedId),i.define=RequireContext.createInlineDefine(t,i.require);var u=r(commonJSHeader),s=r(commonJSFooter),a=[u,";",n,s].join("\n");executeJavaScriptModule(a,o),t.__error&&(debugLog("Executor","broken",t.id,t.uri,t.exports),this.errors[t.id]=t.__error),debugLog("Executor","executed",t.id,t.uri,t.exports)}}});Executor=new AsStatic})();var InjectCore;(function(){var e=Fiber.extend(function(){return{init:function(){},plugin:function(e,t,n,r){RulesEngine.addRule(RegExp("^"+e+"!"),t),r.plugins=r.plugins||{},r.plugins[e]=n},setModuleRoot:function(e){userConfig.moduleRoot=e},setCrossDomain:function(e){userConfig.xd.relayFile=e.relayFile||null},setUseSuffix:function(e){userConfig.useSuffix=e},clearCache:function(){HAS_LOCAL_STORAGE&&lscache&&lscache.flush()},setExpires:function(e){userConfig.fileExpires=e||0},setCacheKey:function(e){var t;return HAS_LOCAL_STORAGE&&lscache?(t=lscache.get(LSCACHE_APP_KEY_STRING),(!e&&t||null!==t&&t!==e||null===t&&e)&&(lscache.flush(),lscache.set(LSCACHE_APP_KEY_STRING,e)),undefined):!1},reset:function(){this.clearCache(),Executor.clearCaches(),Communicator.clearCaches()},enableDebug:function(e,t){userConfig.debug[e]=t||!0}}});InjectCore=new e})();var RequireContext=Fiber.extend(function(){return{init:function(e,t,n){this.id=e||null,this.path=t||null,this.qualifiedId=n||null},log:function(e){debugLog("RequireContext for "+this.path,e)},getPath:function(){if(!userConfig.moduleRoot)throw Error("moduleRoot must be defined. Please use Inject.setModuleRoot()");return this.path||userConfig.moduleRoot},getId:function(){return this.id||""},require:function(e,t){var n,r,o;if("string"==typeof e){if(this.log("CommonJS require(string) of "+e),/^[\d]+$/.test(e))throw Error("require() must be a string containing a-z, slash(/), dash(-), and dots(.)");if(r=RulesEngine.resolveModule(e,this.getId()),o=RequireContext.qualifiedId(r,this.qualifiedId),o&&(n=Executor.getModule(o)),n||(n=Executor.getModule(r)),!n)throw Error("module "+e+" is not available");if(n.__error)throw n.__error;return n.exports}this.log("AMD require(Array) of "+e.join(", "));var i=[];this.ensure(e,proxy(function(n){for(var r=0,o=e.length;o>r;r++)switch(e[r]){case"require":i.push(n);break;case"module":case"exports":throw Error("require(array, callback) doesn't create a module. You cannot use module/exports here");default:i.push(n(e[r]))}t.apply(context,i)},this))},ensure:function(e,t){if("[object Array]"!==Object.prototype.toString.call(e))throw Error("require.ensure() must take an Array as the first argument");this.log("CommonJS require.ensure(array) of "+e.join(", ")),e=Analyzer.stripBuiltins(e);var require=proxy(this.require,this);this.process(e,function(){"function"==typeof t&&t(require)})},run:function(e){this.log("AMD require.run(string) of "+e),this.ensure([e])},define:function(){var e,t,n=Array.prototype.slice.call(arguments,0),r=null,o=["require","exports","module"],i=!1,u={},s={"string array object":["id","dependencies","factory"],"string object":["id","factory"],"array object":["dependencies","factory"],object:["factory"]},a=[];for(t=0,len=n.length;len>t;t++)"[object Array]"===Object.prototype.toString.apply(n[t])?a.push("array"):"object"==typeof n[t]||"function"==typeof n[t]?a.push("object"):a.push(typeof n[t]);if(a=a.join(" "),!s[a])throw Error("You did not use an AMD compliant interface. Please check your define() calls");for(a=s[a],t=0,len=a.length;len>t;t++)switch(e=n[t],a[t]){case"id":r=e;break;case"dependencies":o=e,i=!0;break;case"factory":u=e}if(!r){if(currentExecutingAMD=Executor.getCurrentExecutingAMD(),!currentExecutingAMD)throw Error("Anonymous AMD module used, but it was not included as a dependency. This is most often caused by an anonymous define() from a script tag.");r=currentExecutingAMD.id,this.log("AMD identified anonymous module as "+r)}this.process(r,o,function(e){if(e.data.resolvedId){for(var t,n=[],r=i?o:["require","exports","module"],require=RequireContext.createRequire(e.data.resolvedId,e.data.resolvedUrl),s=Executor.createModule(e.data.resolvedId,RequireContext.qualifiedId(e),e.data.resolvedUrl),a=0,c=r.length;c>a;a++)switch(r[a]){case"require":n.push(require);break;case"module":n.push(s);break;case"exports":n.push(s.exports);break;default:n.push(require(r[a]))}"function"==typeof u?(t=u.apply(s,n),t&&(s.exports=t)):"object"==typeof u&&(s.exports=u),s.amd=!0,s.exec=!0}})},process:function(e){var t,n,r;"string"!=typeof e?(t=this.id,n=arguments[0],r=arguments[1]):(t=arguments[0],n=arguments[1],r=arguments[2]);var o,u,s=new TreeNode,a=n.length,c=[],l=function(){(0===a||0===--a)&&(u=new TreeRunner(s),u.execute(function(){r(s)}))};if(s.data.originalId=t,s.data.resolvedId=t,s.data.resolvedUrl=RulesEngine.resolveFile(t,this.path),n.length)for(i=0,len=n.length;len>i;i++)BUILTINS[n[i]]?l():(o=new TreeNode,o.data.originalId=n[i],s.addChild(o),Executor.getModule(n[i])?l():Executor.getModule(RequireContext.qualifiedId(RulesEngine.resolveModule(o.data.originalId,s.data.resolvedId),o))?l():(u=new TreeRunner(o),c.push(u),u.download(l)));else l()}}});RequireContext.createRequire=function(e,t,n){var r=new RequireContext(e,t,n),require=proxy(r.require,r);return require.ensure=proxy(r.ensure,r),require.run=proxy(r.run,r),require.toUrl=function(n){var r=RulesEngine.resolveModule(n,e),o=RulesEngine.resolveFile(r,t,!0);return o},require},RequireContext.createDefine=function(e,t,n){var r=new RequireContext(e,t),define=proxy(r.define,r);return define.amd=n?!1:{},define},RequireContext.qualifiedId=function(e,t){var n=[];return"string"==typeof e?t?[e,t].join("(from)"):e:(e.parents(function(e){e.data.resolvedId&&n.push(e.data.resolvedId)}),n.join("(from)"))},RequireContext.createInlineDefine=function(e,require){var define=function(){function t(e){return"[object Array]"===Object.prototype.toString.call(e)}for(var n,r=[],o=["require","exports","module"],i={},u=0,s=arguments.length;s>u;u++)if(t(arguments[u])){o=arguments[u];break}i=arguments[arguments.length-1];for(var a=0,c=o.length;c>a;a++)switch(o[a]){case"require":r.push(require);break;case"module":r.push(e);break;case"exports":r.push(e.exports);break;default:r.push(require(o[a]))}"function"==typeof i?(n=i.apply(e,r),n&&(e.exports=n)):"object"==typeof i&&(e.exports=i),e.amd=!0,e.exec=!0};return define.amd={},define};var RulesEngine;(function(){var e=/^\/+/g,t=function(e){return e=e.split("/"),e.pop(),e=e.join("/")},n=Fiber.extend(function(){return{init:function(){this.clearRules()},clearRules:function(){this.moduleRules=[],this.fileRules=[],this.contentRules=[],this.fetchRules=[],this.aliasRules={},this.revAliasRules={},this.dirty={moduleRules:!0,fileRules:!0,contentRules:!0,fetchRules:!0,aliasRules:!0,revAliasRules:!0},this.caches={moduleRules:{},fileRules:{},contentRules:{},fetchRules:{},aliasRules:{},revAliasRules:{}},this.addRuleCounter=0,this.addRulePointcuts={}},add:function(e,t,n,r){this.dirty[e]=!0,r=r||{};var o=r.weight||this[e].length,i=r.last||!1;this[e].push({matches:t,fn:"function"==typeof n?n:function(){return n},weight:o,last:i,all:r})},clearCache:function(e){this.caches[e]={}},sort:function(e){this.dirty[e]&&(this.clearCache(e),this[e].sort(function(e,t){return t.weight-e.weight}),this.dirty[e]=!1)},getDeprecatedPointcuts:function(e){return this.addRulePointcuts[e]||[]},addRule:function(e,t,n){n||(n=t,t=null),n||(n={}),"string"==typeof n&&(n={path:n}),n.weight||(n.weight=this.addRuleCounter++),n.path?this.addFileRule(e,n.path,{weight:n.weight,last:n.last,useSuffix:n.useSuffix,afterFetch:n.pointcuts&&n.pointcuts.afterFetch?n.pointcuts.afterFetch:null}):n.pointcuts&&n.pointcuts.afterFetch&&this.addContentRule(e,n.pointcuts.afterFetch,{weight:n.weight})},addModuleRule:function(e,t,n){return this.add("moduleRules",e,t,n)},addFileRule:function(e,t,n){return this.add("fileRules",e,t,n)},addContentRule:function(e,t,n){return this.add("contentRules",e,t,n)},addFetchRule:function(e,t,n){return this.add("fetchRules",e,t,n)},addPackage:function(e,t){if(this.dirty.aliasRules=!0,this.revAliasRules[e])throw Error("An alias can only map back to 1 origin");this.aliasRules[e]||(this.aliasRules[e]=[]),this.aliasRules[e].push(t),this.revAliasRules[t]=e},resolveModule:function(n,r){n=n||"",r=r||"",this.sort("moduleRules");var o,i,u=n,s=0,a=this.moduleRules,c=a.length,l=!1;for(s;c>s&&(o=a[s].matches,i=a[s].fn,l=!1,"string"==typeof o?o===n&&(l=!0):"function"==typeof o.test&&(l=o.test(n)),!l||(u=i(u),!o.last));s++);return u=u.replace(e,""),0!==u.indexOf(".")&&(r=null),r&&(r=t(r)),u=this.getRelative(u,r),u=u.replace(e,""),this.caches.moduleRules[n]=u,u},resolveFile:function(e,t,n){e=e||"",t=t||"",this.sort("fileRules");var r,o,i=e,u=0,s=this.fileRules,a=s.length,c=!1,l=[];for(u;a>u&&(r=s[u].matches,o=s[u].fn,c=!1,"string"==typeof r?r===e&&(c=!0):"function"==typeof r.test&&(c=r.test(e)),!c||(i=o(i),s[u].all&&s[u].all.afterFetch&&l.push(s[u].all.afterFetch),!s[u].last));u++);return userConfig.moduleRoot||"undefined"==typeof console||"function"!=typeof console.log||console.log("Without moduleRoot defined, Inject will default to the URL of the current page. This may cause unexpected behavior"),i?(t&&!userConfig.baseDir?(t=t.replace(PROTOCOL_REGEX,PROTOCOL_EXPANDED_STRING).split("/"),t[t.length-1]&&1!==t.length&&t.pop(),t=t.join("/").replace(PROTOCOL_EXPANDED_REGEX,PROTOCOL_STRING)):t=t?userConfig.baseDir(t):userConfig.moduleRoot?userConfig.moduleRoot:location.pathname,ABSOLUTE_PATH_REGEX.test(i)?(this.caches.fileRules[e]=i,i):(t=t.replace(PROTOCOL_REGEX,PROTOCOL_EXPANDED_STRING),i=i.replace(PROTOCOL_REGEX,PROTOCOL_EXPANDED_STRING),i=/\?/.test(t)?t+i:this.getRelative(i,t),i=i.replace(PROTOCOL_EXPANDED_REGEX,PROTOCOL_STRING),n||!userConfig.useSuffix||FILE_SUFFIX_REGEX.test(i)||(i+=BASIC_FILE_SUFFIX),this.addRulePointcuts[i]=l,this.caches.fileRules[e]=i,i)):(this.addRulePointcuts[i]=l,this.caches.fileRules[e]=i,i)},getAliases:function(e){return this.aliasRules[e]||[]},getOriginalName:function(e){return this.revAliasRules[e]||null},getFetchRules:function(e){this.sort("fetchRules");var t,n,r=0,o=this.fetchRules,i=o.length,u=!1,s=[];for(r;i>r;r++)t=o[r].matches,n=o[r].fn,u=!1,"string"==typeof t?t===e&&(u=!0):"function"==typeof t.test&&(u=t.test(e)),u&&s.push(n);return this.caches.contentRules[e]=s,s},getContentRules:function(e){this.sort("contentRules");var t,n,r=0,o=this.contentRules,i=o.length,u=!1,s=[],a=!1,c=this.addRulePointcuts[e]||[];for(r;i>r;r++)t=o[r].matches,n=o[r].fn,u=!1,"string"==typeof t?t===e&&(u=!0):"function"==typeof t.test&&(u=t.test(e)),u&&s.push(n);return each(c,function(e){a=!1,each(s,function(t){t===e&&(a=!0)}),a||s.push(e)}),this.caches.contentRules[e]=s,s},getRelative:function(e,t){var n,r,o=[];if(t=t||"",ABSOLUTE_PATH_REGEX.test(e))return e;n=[].concat(t.split("/"),e.split("/"));for(var i=0,u=n.length;u>i;i++)if(r=n[i],!("."===r||""===r&&i>0))if(".."===r){if(0===o.length)throw Error("could not traverse higher than highest path: "+e+", "+t);o.pop()}else o.push(r);return o=o.join("/")}}});RulesEngine=new n})();var TreeRunner=Fiber.extend(function(){function e(e){var t=e.data,n=e.getParent()?e.getParent().data:null,r=RulesEngine.getFetchRules(t.resolvedId),o=new Flow,i={module:function(){return RulesEngine.resolveModule.apply(RulesEngine,arguments)},url:function(){return RulesEngine.resolveFile.apply(RulesEngine,arguments)}},u={get:function(){return Communicator.get.apply(Communicator,arguments)}},s=function(e){o.seq(function(r,o,s){e(r,s,i,u,{moduleId:t.originalId,parentId:n?n.originalId:"",parentUrl:n?n.resolvedUrl:""})})};return Executor.getModule(t.resolvedId)?function(e,t,n){n("")}:Executor.getModule(RequireContext.qualifiedId(e))?function(e,t,n){n("")}:r.length>0?function(e,t,n){var i=0,u=r.length;for(o.seq(function(e){e(null,"")}),i;u>i;i++)s(r[i]);o.seq(function(e,t,r){n(r)})}:Communicator.get}function t(e,t){var r,o,i=Analyzer.extractRequires(e.data.file),u=i.length,s=0,a=u,c=function(){u--,0===u&&t()},l=function(e){n(function(){e.download(c)})};if(!i.length)return t();for(s;a>s;s++)r=new TreeNode,r.data.originalId=i[s],e.addChild(r),Executor.getModule(i[s])&&Executor.getModule(i[s]).exec?c():(o=new TreeRunner(r),l(o))}var n=function(){function e(){var e=o;for(o=[],s=!1,fn=e.shift();fn;)fn(),fn=e.shift()}function t(e){o.push(e),s||(s=!0,n())}var n,r,o=[],i=!!window.postMessage,u="inject-nexttick",s=!1;return i?(n=function(){window.postMessage(u,"*")},r=function(t){t.source==window&&t.data===u&&(t.stopPropagation?t.stopPropagation():t.returnValue=!1,e())},t.listener=addListener(window,"message",r,!0)):(n=function(){window.setTimeout(function(){r()},0)},r=e),t.removeListener=function(){removeListener(window,"message",r,!0)},t}();return{init:function(e){this.root=e},download:function(n){var r,o=this.root,i=o.data,u=o.getParent();i.resolvedId=u?RulesEngine.resolveModule(i.originalId,u.data.resolvedId):RulesEngine.resolveModule(i.originalId,""),i.resolvedUrl=RulesEngine.resolveFile(i.resolvedId),r=e(o),r(i.originalId,i.resolvedUrl,function(e){var r=RulesEngine.getContentRules(i.resolvedUrl),s=new Flow,a=0,c=r.length;for(addContent=function(e){s.seq(function(t,n,r){e(t,r)})},s.seq(function(t){t(null,e)}),a;c>a;a++)addContent(r[a]);s.seq(function(e,r,s){var a,c=!1,l={},f=u;for("string"==typeof s?i.file=s:i.exports=s,l[i.originalId]=!0;f&&!c;)l[f.data.originalId]?c=!0:(l[f.data.originalId]=!0,f=f.getParent());i.circular=c,i.exports?(a=Executor.createModule(i.resolvedId,RequireContext.qualifiedId(o),i.resolvedUrl),a.exec=!0,a.exports=s,n()):i.circular?n():t(o,n)})})},execute:function(e){var t=this.root.postOrder(),n=t.length,r=0,o=function(e){var t,n=e.data;n.resolvedId&&(t=Executor.createModule(n.resolvedId,RequireContext.qualifiedId(e),n.resolvedUrl),n.module=t,t.exec||n.circular||(n.exports?(t.exports=n.exports,t.exec=!0):"string"==typeof n.file&&(Executor.runModule(t,n.file),t.exec=!0,t.amd||(n.exports=t.exports))))};for(r;n>r;r++)o(t[r]);e()}}}),TreeNode=Fiber.extend(function(){return{init:function(){this.data={},this.children=[],this.left=null,this.right=null,this.parent=null},addChild:function(e){var t;return this.children.length>0&&(t=this.children[this.children.length-1],e.setLeft(t),t.setRight(e)),this.children.push(e),e.setParent(this)},getChildren:function(){return this.children},setLeft:function(e){return this.left=e,this.left},getLeft:function(){return this.left},setRight:function(e){return this.right=e,this.right},getRight:function(){return this.right},setParent:function(e){return this.parent=e,this.parent},getParent:function(){return this.parent},parents:function(e){for(var t=[],n=this;n;)e&&e(n),t.push(n),n=n.getParent();return t},postOrder:function(e){for(var t=this,n=null,r=[];t;)if(t.getChildren().length>0&&"up"!==n)n="down",t=t.getChildren()[0];else if(r.push(t),e&&e(t),t.getRight())n="right",t=t.getRight();else{if(!t.getParent())return r;n="up",t=t.getParent()}}}});TreeNode=TreeNode;var globalRequire=new RequireContext,errorQueue=[];
context.Inject={INTERNAL:{Classes:{Analyzer:Analyzer,Communicator:Communicator,Executor:Executor,InjectCore:InjectCore,RequireContext:RequireContext,RulesEngine:RulesEngine,TreeNode:TreeNode,TreeRunner:TreeRunner},defineExecutingModuleAs:proxy(Executor.defineExecutingModuleAs,Executor),undefineExecutingModule:proxy(Executor.undefineExecutingModule,Executor),executor:{},globalRequire:globalRequire},plugins:{},reset:proxy(InjectCore.reset,InjectCore),enableDebug:function(){InjectCore.enableDebug.apply(this,arguments)},onError:function(e){errorQueue.push(e)},emit:function(e){for(var t=0,n=errorQueue.length;n>t;t++)errorQueue[t].call(context,e)},enableAMDPlugins:function(){RulesEngine.addFetchRule(/^.+?\!.+$/,function(e,t,n,r,o){var i=o.moduleId,u=o.parentId,s=o.parentUrl,a=i.split("!"),c=n.module(a[0],u);n.url(c,s);var l=a[1],f=RequireContext.createRequire(u,s),d=!1,h=function(){return d?undefined:f.apply(f,arguments)},g=function(e){h[e]=function(){return f[e].apply(f,arguments)}};for(var p in f)HAS_OWN_PROPERTY.call(f,p)&&g(p);var _=function(e){return n.module(e,u)};f([c],function(t){var n=t.normalize?t.normalize(l,_):_(l),r=function(t){d||(d=!0,"string"==typeof t&&(t=['module.exports = decodeURIComponent("',encodeURIComponent(t),'");'].join("")),e(null,t))};r.fromText=function(t,n){d||(d=!0,n||(n=t,t=null),e(null,n))},t.load(n,h,r,{})})})},setModuleRoot:function(){InjectCore.setModuleRoot.apply(this,arguments)},setExpires:function(){InjectCore.setExpires.apply(this,arguments)},setCacheKey:function(){InjectCore.setCacheKey.apply(this,arguments)},setCrossDomain:function(){InjectCore.setCrossDomain.apply(this,arguments)},setUseSuffix:function(e){InjectCore.setUseSuffix(e)},disableGlobalAMD:function(e){context.define=e?RequireContext.createDefine(null,null,!0):RequireContext.createDefine()},clearCache:proxy(InjectCore.clearCache,InjectCore),addRule:function(){RulesEngine.addRule.apply(RulesEngine,arguments)},addModuleRule:function(){RulesEngine.addModuleRule.apply(RulesEngine,arguments)},addFileRule:function(){RulesEngine.addFileRule.apply(RulesEngine,arguments)},addContentRule:function(){RulesEngine.addContentRule.apply(RulesEngine,arguments)},addFetchRule:function(){RulesEngine.addFetchRule.apply(RulesEngine,arguments)},addPackage:function(){RulesEngine.addPackage.apply(RulesEngine,arguments)},plugin:function(){var e=[].slice.call(arguments,0);e.push(context.Inject),InjectCore.plugin.apply(InjectCore,e)},require:RequireContext.createRequire(),define:RequireContext.createDefine(),version:"undefined"},context.require=context.Inject.require,context.define=context.Inject.define,context.Inject.version="0.6.1"}(this);(function(){function f(b){this.txt=b}var a=document.createElement("style"),g=!1,c="",h;a.type="text/css";h=!!a.styleSheet;f.prototype.attach=function(){Inject.plugins.css.addStyles(this.txt)};Inject.addFetchRule(/^css\!.+$/,function(b,a,d,c,e){a=e.moduleId.replace(/^css!\s*/,"");a=d.module(a,e.parentId);d=d.url("css!"+a,e.parentUrl,!0);c.get(a,d,function(a){b(null,["",['var cssText \x3d decodeURIComponent("',encodeURIComponent(a),'");'].join(""),"module.setExports(Inject.plugins.css.create(cssText))\n"].join("\n"))})});
Inject.plugins.css={create:function(a){return new f(a)},addStyles:function(b){h?(c+=b,a.styleSheet.cssText=c):a.appendChild(document.createTextNode(b));g||(g=!0,document.getElementsByTagName("head")[0].appendChild(a))}}})();(function(){Inject.setModuleRoot(LI.JSContentBasePath+"\x26f\x3d");Inject.setUseSuffix(!1);LI.staticUrlHashEnabled||Inject.setExpires(0);Inject.setCrossDomain({relayFile:LI.injectRelayHtmlUrl});Inject.addFileRule(/.*$/,function(a){0===a.indexOf("css!")&&(a=a.replace("css!",""),a=LI.CSSContentBasePath+"\x26f\x3d"+a+"_"+LI.i18n.getLocale().value);return a})})();//     Underscore.js 1.6.0
//     http://underscorejs.org
//     (c) 2009-2014 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
//     Underscore may be freely distributed under the MIT license.
(function(){var n=this,t=n._,r={},e=Array.prototype,u=Object.prototype,i=Function.prototype,a=e.push,o=e.slice,c=e.concat,l=u.toString,f=u.hasOwnProperty,s=e.forEach,p=e.map,h=e.reduce,v=e.reduceRight,g=e.filter,d=e.every,m=e.some,y=e.indexOf,b=e.lastIndexOf,x=Array.isArray,w=Object.keys,_=i.bind,j=function(n){return n instanceof j?n:this instanceof j?void(this._wrapped=n):new j(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=j),exports._=j):n._=j,j.VERSION="1.6.0";var A=j.each=j.forEach=function(n,t,e){if(null==n)return n;if(s&&n.forEach===s)n.forEach(t,e);else if(n.length===+n.length){for(var u=0,i=n.length;i>u;u++)if(t.call(e,n[u],u,n)===r)return}else for(var a=j.keys(n),u=0,i=a.length;i>u;u++)if(t.call(e,n[a[u]],a[u],n)===r)return;return n};j.map=j.collect=function(n,t,r){var e=[];return null==n?e:p&&n.map===p?n.map(t,r):(A(n,function(n,u,i){e.push(t.call(r,n,u,i))}),e)};var O="Reduce of empty array with no initial value";j.reduce=j.foldl=j.inject=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),h&&n.reduce===h)return e&&(t=j.bind(t,e)),u?n.reduce(t,r):n.reduce(t);if(A(n,function(n,i,a){u?r=t.call(e,r,n,i,a):(r=n,u=!0)}),!u)throw new TypeError(O);return r},j.reduceRight=j.foldr=function(n,t,r,e){var u=arguments.length>2;if(null==n&&(n=[]),v&&n.reduceRight===v)return e&&(t=j.bind(t,e)),u?n.reduceRight(t,r):n.reduceRight(t);var i=n.length;if(i!==+i){var a=j.keys(n);i=a.length}if(A(n,function(o,c,l){c=a?a[--i]:--i,u?r=t.call(e,r,n[c],c,l):(r=n[c],u=!0)}),!u)throw new TypeError(O);return r},j.find=j.detect=function(n,t,r){var e;return k(n,function(n,u,i){return t.call(r,n,u,i)?(e=n,!0):void 0}),e},j.filter=j.select=function(n,t,r){var e=[];return null==n?e:g&&n.filter===g?n.filter(t,r):(A(n,function(n,u,i){t.call(r,n,u,i)&&e.push(n)}),e)},j.reject=function(n,t,r){return j.filter(n,function(n,e,u){return!t.call(r,n,e,u)},r)},j.every=j.all=function(n,t,e){t||(t=j.identity);var u=!0;return null==n?u:d&&n.every===d?n.every(t,e):(A(n,function(n,i,a){return(u=u&&t.call(e,n,i,a))?void 0:r}),!!u)};var k=j.some=j.any=function(n,t,e){t||(t=j.identity);var u=!1;return null==n?u:m&&n.some===m?n.some(t,e):(A(n,function(n,i,a){return u||(u=t.call(e,n,i,a))?r:void 0}),!!u)};j.contains=j.include=function(n,t){return null==n?!1:y&&n.indexOf===y?n.indexOf(t)!=-1:k(n,function(n){return n===t})},j.invoke=function(n,t){var r=o.call(arguments,2),e=j.isFunction(t);return j.map(n,function(n){return(e?t:n[t]).apply(n,r)})},j.pluck=function(n,t){return j.map(n,j.property(t))},j.where=function(n,t){return j.filter(n,j.matches(t))},j.findWhere=function(n,t){return j.find(n,j.matches(t))},j.max=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.max.apply(Math,n);var e=-1/0,u=-1/0;return A(n,function(n,i,a){var o=t?t.call(r,n,i,a):n;o>u&&(e=n,u=o)}),e},j.min=function(n,t,r){if(!t&&j.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.min.apply(Math,n);var e=1/0,u=1/0;return A(n,function(n,i,a){var o=t?t.call(r,n,i,a):n;u>o&&(e=n,u=o)}),e},j.shuffle=function(n){var t,r=0,e=[];return A(n,function(n){t=j.random(r++),e[r-1]=e[t],e[t]=n}),e},j.sample=function(n,t,r){return null==t||r?(n.length!==+n.length&&(n=j.values(n)),n[j.random(n.length-1)]):j.shuffle(n).slice(0,Math.max(0,t))};var E=function(n){return null==n?j.identity:j.isFunction(n)?n:j.property(n)};j.sortBy=function(n,t,r){return t=E(t),j.pluck(j.map(n,function(n,e,u){return{value:n,index:e,criteria:t.call(r,n,e,u)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=E(r),A(t,function(i,a){var o=r.call(e,i,a,t);n(u,o,i)}),u}};j.groupBy=F(function(n,t,r){j.has(n,t)?n[t].push(r):n[t]=[r]}),j.indexBy=F(function(n,t,r){n[t]=r}),j.countBy=F(function(n,t){j.has(n,t)?n[t]++:n[t]=1}),j.sortedIndex=function(n,t,r,e){r=E(r);for(var u=r.call(e,t),i=0,a=n.length;a>i;){var o=i+a>>>1;r.call(e,n[o])<u?i=o+1:a=o}return i},j.toArray=function(n){return n?j.isArray(n)?o.call(n):n.length===+n.length?j.map(n,j.identity):j.values(n):[]},j.size=function(n){return null==n?0:n.length===+n.length?n.length:j.keys(n).length},j.first=j.head=j.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:0>t?[]:o.call(n,0,t)},j.initial=function(n,t,r){return o.call(n,0,n.length-(null==t||r?1:t))},j.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:o.call(n,Math.max(n.length-t,0))},j.rest=j.tail=j.drop=function(n,t,r){return o.call(n,null==t||r?1:t)},j.compact=function(n){return j.filter(n,j.identity)};var M=function(n,t,r){return t&&j.every(n,j.isArray)?c.apply(r,n):(A(n,function(n){j.isArray(n)||j.isArguments(n)?t?a.apply(r,n):M(n,t,r):r.push(n)}),r)};j.flatten=function(n,t){return M(n,t,[])},j.without=function(n){return j.difference(n,o.call(arguments,1))},j.partition=function(n,t){var r=[],e=[];return A(n,function(n){(t(n)?r:e).push(n)}),[r,e]},j.uniq=j.unique=function(n,t,r,e){j.isFunction(t)&&(e=r,r=t,t=!1);var u=r?j.map(n,r,e):n,i=[],a=[];return A(u,function(r,e){(t?e&&a[a.length-1]===r:j.contains(a,r))||(a.push(r),i.push(n[e]))}),i},j.union=function(){return j.uniq(j.flatten(arguments,!0))},j.intersection=function(n){var t=o.call(arguments,1);return j.filter(j.uniq(n),function(n){return j.every(t,function(t){return j.contains(t,n)})})},j.difference=function(n){var t=c.apply(e,o.call(arguments,1));return j.filter(n,function(n){return!j.contains(t,n)})},j.zip=function(){for(var n=j.max(j.pluck(arguments,"length").concat(0)),t=new Array(n),r=0;n>r;r++)t[r]=j.pluck(arguments,""+r);return t},j.object=function(n,t){if(null==n)return{};for(var r={},e=0,u=n.length;u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},j.indexOf=function(n,t,r){if(null==n)return-1;var e=0,u=n.length;if(r){if("number"!=typeof r)return e=j.sortedIndex(n,t),n[e]===t?e:-1;e=0>r?Math.max(0,u+r):r}if(y&&n.indexOf===y)return n.indexOf(t,r);for(;u>e;e++)if(n[e]===t)return e;return-1},j.lastIndexOf=function(n,t,r){if(null==n)return-1;var e=null!=r;if(b&&n.lastIndexOf===b)return e?n.lastIndexOf(t,r):n.lastIndexOf(t);for(var u=e?r:n.length;u--;)if(n[u]===t)return u;return-1},j.range=function(n,t,r){arguments.length<=1&&(t=n||0,n=0),r=arguments[2]||1;for(var e=Math.max(Math.ceil((t-n)/r),0),u=0,i=new Array(e);e>u;)i[u++]=n,n+=r;return i};var R=function(){};j.bind=function(n,t){var r,e;if(_&&n.bind===_)return _.apply(n,o.call(arguments,1));if(!j.isFunction(n))throw new TypeError;return r=o.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(t,r.concat(o.call(arguments)));R.prototype=n.prototype;var u=new R;R.prototype=null;var i=n.apply(u,r.concat(o.call(arguments)));return Object(i)===i?i:u}},j.partial=function(n){var t=o.call(arguments,1);return function(){for(var r=0,e=t.slice(),u=0,i=e.length;i>u;u++)e[u]===j&&(e[u]=arguments[r++]);for(;r<arguments.length;)e.push(arguments[r++]);return n.apply(this,e)}},j.bindAll=function(n){var t=o.call(arguments,1);if(0===t.length)throw new Error("bindAll must be passed function names");return A(t,function(t){n[t]=j.bind(n[t],n)}),n},j.memoize=function(n,t){var r={};return t||(t=j.identity),function(){var e=t.apply(this,arguments);return j.has(r,e)?r[e]:r[e]=n.apply(this,arguments)}},j.delay=function(n,t){var r=o.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},j.defer=function(n){return j.delay.apply(j,[n,1].concat(o.call(arguments,1)))},j.throttle=function(n,t,r){var e,u,i,a=null,o=0;r||(r={});var c=function(){o=r.leading===!1?0:j.now(),a=null,i=n.apply(e,u),e=u=null};return function(){var l=j.now();o||r.leading!==!1||(o=l);var f=t-(l-o);return e=this,u=arguments,0>=f?(clearTimeout(a),a=null,o=l,i=n.apply(e,u),e=u=null):a||r.trailing===!1||(a=setTimeout(c,f)),i}},j.debounce=function(n,t,r){var e,u,i,a,o,c=function(){var l=j.now()-a;t>l?e=setTimeout(c,t-l):(e=null,r||(o=n.apply(i,u),i=u=null))};return function(){i=this,u=arguments,a=j.now();var l=r&&!e;return e||(e=setTimeout(c,t)),l&&(o=n.apply(i,u),i=u=null),o}},j.once=function(n){var t,r=!1;return function(){return r?t:(r=!0,t=n.apply(this,arguments),n=null,t)}},j.wrap=function(n,t){return j.partial(t,n)},j.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length-1;r>=0;r--)t=[n[r].apply(this,t)];return t[0]}},j.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},j.keys=function(n){if(!j.isObject(n))return[];if(w)return w(n);var t=[];for(var r in n)j.has(n,r)&&t.push(r);return t},j.values=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},j.pairs=function(n){for(var t=j.keys(n),r=t.length,e=new Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},j.invert=function(n){for(var t={},r=j.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},j.functions=j.methods=function(n){var t=[];for(var r in n)j.isFunction(n[r])&&t.push(r);return t.sort()},j.extend=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]=t[r]}),n},j.pick=function(n){var t={},r=c.apply(e,o.call(arguments,1));return A(r,function(r){r in n&&(t[r]=n[r])}),t},j.omit=function(n){var t={},r=c.apply(e,o.call(arguments,1));for(var u in n)j.contains(r,u)||(t[u]=n[u]);return t},j.defaults=function(n){return A(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]===void 0&&(n[r]=t[r])}),n},j.clone=function(n){return j.isObject(n)?j.isArray(n)?n.slice():j.extend({},n):n},j.tap=function(n,t){return t(n),n};var S=function(n,t,r,e){if(n===t)return 0!==n||1/n==1/t;if(null==n||null==t)return n===t;n instanceof j&&(n=n._wrapped),t instanceof j&&(t=t._wrapped);var u=l.call(n);if(u!=l.call(t))return!1;switch(u){case"[object String]":return n==String(t);case"[object Number]":return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case"[object Date]":case"[object Boolean]":return+n==+t;case"[object RegExp]":return n.source==t.source&&n.global==t.global&&n.multiline==t.multiline&&n.ignoreCase==t.ignoreCase}if("object"!=typeof n||"object"!=typeof t)return!1;for(var i=r.length;i--;)if(r[i]==n)return e[i]==t;var a=n.constructor,o=t.constructor;if(a!==o&&!(j.isFunction(a)&&a instanceof a&&j.isFunction(o)&&o instanceof o)&&"constructor"in n&&"constructor"in t)return!1;r.push(n),e.push(t);var c=0,f=!0;if("[object Array]"==u){if(c=n.length,f=c==t.length)for(;c--&&(f=S(n[c],t[c],r,e)););}else{for(var s in n)if(j.has(n,s)&&(c++,!(f=j.has(t,s)&&S(n[s],t[s],r,e))))break;if(f){for(s in t)if(j.has(t,s)&&!c--)break;f=!c}}return r.pop(),e.pop(),f};j.isEqual=function(n,t){return S(n,t,[],[])},j.isEmpty=function(n){if(null==n)return!0;if(j.isArray(n)||j.isString(n))return 0===n.length;for(var t in n)if(j.has(n,t))return!1;return!0},j.isElement=function(n){return!(!n||1!==n.nodeType)},j.isArray=x||function(n){return"[object Array]"==l.call(n)},j.isObject=function(n){return n===Object(n)},A(["Arguments","Function","String","Number","Date","RegExp"],function(n){j["is"+n]=function(t){return l.call(t)=="[object "+n+"]"}}),j.isArguments(arguments)||(j.isArguments=function(n){return!(!n||!j.has(n,"callee"))}),"function"!=typeof/./&&(j.isFunction=function(n){return"function"==typeof n}),j.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},j.isNaN=function(n){return j.isNumber(n)&&n!=+n},j.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==l.call(n)},j.isNull=function(n){return null===n},j.isUndefined=function(n){return n===void 0},j.has=function(n,t){return f.call(n,t)},j.noConflict=function(){return n._=t,this},j.identity=function(n){return n},j.constant=function(n){return function(){return n}},j.property=function(n){return function(t){return t[n]}},j.matches=function(n){return function(t){if(t===n)return!0;for(var r in n)if(n[r]!==t[r])return!1;return!0}},j.times=function(n,t,r){for(var e=Array(Math.max(0,n)),u=0;n>u;u++)e[u]=t.call(r,u);return e},j.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},j.now=Date.now||function(){return(new Date).getTime()};var T={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"}};T.unescape=j.invert(T.escape);var I={escape:new RegExp("["+j.keys(T.escape).join("")+"]","g"),unescape:new RegExp("("+j.keys(T.unescape).join("|")+")","g")};j.each(["escape","unescape"],function(n){j[n]=function(t){return null==t?"":(""+t).replace(I[n],function(t){return T[n][t]})}}),j.result=function(n,t){if(null==n)return void 0;var r=n[t];return j.isFunction(r)?r.call(n):r},j.mixin=function(n){A(j.functions(n),function(t){var r=j[t]=n[t];j.prototype[t]=function(){var n=[this._wrapped];return a.apply(n,arguments),z.call(this,r.apply(j,n))}})};var N=0;j.uniqueId=function(n){var t=++N+"";return n?n+t:t},j.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var q=/(.)^/,B={"'":"'","\\":"\\","\r":"r","\n":"n","	":"t","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\t|\u2028|\u2029/g;j.template=function(n,t,r){var e;r=j.defaults({},r,j.templateSettings);var u=new RegExp([(r.escape||q).source,(r.interpolate||q).source,(r.evaluate||q).source].join("|")+"|$","g"),i=0,a="__p+='";n.replace(u,function(t,r,e,u,o){return a+=n.slice(i,o).replace(D,function(n){return"\\"+B[n]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),u&&(a+="';\n"+u+"\n__p+='"),i=o+t.length,t}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=new Function(r.variable||"obj","_",a)}catch(o){throw o.source=a,o}if(t)return e(t,j);var c=function(n){return e.call(this,n,j)};return c.source="function("+(r.variable||"obj")+"){\n"+a+"}",c},j.chain=function(n){return j(n).chain()};var z=function(n){return this._chain?j(n).chain():n};j.mixin(j),A(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=e[n];j.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!=n&&"splice"!=n||0!==r.length||delete r[0],z.call(this,r)}}),A(["concat","join","slice"],function(n){var t=e[n];j.prototype[n]=function(){return z.call(this,t.apply(this._wrapped,arguments))}}),j.extend(j.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}}),"function"==typeof define&&define.amd&&define("underscore",[],function(){return j})}).call(this);
(function(h){var s=[].slice,g=h.requires("underscore"),l=h.imports("Backbone"),d=l&&l.Events;if(!d){var d={on:function(b,c,a){if(!m(this,"on",b,[c,a])||!c)return this;this._events=this._events||{};(this._events[b]||(this._events[b]=[])).push({callback:c,context:a,ctx:a||this});return this},once:function(b,c,a){if(!m(this,"once",b,[c,a])||!c)return this;var e=this,f=g.once(function(){e.off(b,f);c.apply(this,arguments)});f._callback=c;return this.on(b,f,a)},off:function(b,c,a){var e,f,d,k,n,h,p,l;if(!this._events||
!m(this,"off",b,[c,a]))return this;if(!b&&!c&&!a)return this._events={},this;k=b?[b]:g.keys(this._events);n=0;for(h=k.length;n<h;n++)if(b=k[n],d=this._events[b]){this._events[b]=e=[];if(c||a)for(p=0,l=d.length;p<l;p++)f=d[p],(c&&c!==f.callback&&c!==f.callback._callback||a&&a!==f.context)&&e.push(f);e.length||delete this._events[b]}return this},trigger:function(b){if(!this._events)return this;var c=s.call(arguments,1);if(!m(this,"trigger",b,c))return this;var a=this._events[b],e=this._events.all;a&&
q(a,c);e&&q(e,arguments);return this},stopListening:function(b,c,a){var e=this._listeners;if(!e)return this;var f=!c&&!a;"object"===typeof c&&(a=this);b&&((e={})[b._listenerId]=b);for(var d in e)e[d].off(c,a,this),f&&delete this._listeners[d];return this}},r=/\s+/,m=function(b,c,a,e){if(!a)return!0;if("object"===typeof a){for(var f in a)b[c].apply(b,[f,a[f]].concat(e));return!1}if(r.test(a)){a=a.split(r);f=0;for(var d=a.length;f<d;f++)b[c].apply(b,[a[f]].concat(e));return!1}return!0},q=function(b,
c){var a,e=-1,f=b.length,d=c[0],k=c[1],g=c[2];switch(c.length){case 0:for(;++e<f;)(a=b[e]).callback.call(a.ctx);break;case 1:for(;++e<f;)(a=b[e]).callback.call(a.ctx,d);break;case 2:for(;++e<f;)(a=b[e]).callback.call(a.ctx,d,k);break;case 3:for(;++e<f;)(a=b[e]).callback.call(a.ctx,d,k,g);break;default:for(;++e<f;)(a=b[e]).callback.apply(a.ctx,c)}};g.each({listenTo:"on",listenToOnce:"once"},function(b,c){d[c]=function(a,c,d){var h=this._listeners||(this._listeners={}),k=a._listenerId||(a._listenerId=
g.uniqueId("l"));h[k]=a;"object"===typeof c&&(d=this);a[b](c,d,this);return this}});g.each(g.keys(d),function(b){d[b]=g.bind(d[b],d)})}d.bind=d.on;d.unbind=d.off;d.fire=d.trigger;h.exports("Events",d)})(LIModules);LI.define("BaseControl");
LI.BaseControl=Fiber.extend(function(){return{init:function(a,c){var b=this,d=new $.Deferred,e=function(a){var b=_.functions(a);_.each(b,function(b){a[b]=_.bind(a[b],a)})};this._$el=$(a);this._observableEmitter=$({});this._state={};this._config=this._config||c||{};this.isReady=d.promise();this.beforeInit();this.beforeDecoration();this.decorate().pipe(function(){e(b)}).pipe(function(){b.afterDecoration()}).pipe(function(){b.beforeLoad()}).pipe(function(){if(b._config.dependencies)return b.loadDependencies()}).pipe(function(a){b.afterLoad(a)}).pipe(function(){b.attachEventListeners()}).pipe(function(){b.afterInit()}).pipe(function(){d.resolve()})},destroy:function(){this.detachEventListeners()},
state:function(a,c,b){var d=[].slice.call(arguments,0),e,g={},f=[],h=null;if("undefined"===typeof d[1]){if("undefined"===typeof d[0]){for(e in this._state)this._state.hasOwnProperty(e)&&(g[e]=this._state[e].value);return g}if("string"===typeof d[0])return this._state.hasOwnProperty(d[0])?this._state[d[0]].value:b}if("object"===typeof d[0])for(e in d[0])!d[0].hasOwnProperty(e)||!d[1]&&this._state.hasOwnProperty(e)||(this._setState(e,d[0][e]),f.push(e));"string"===typeof d[0]&&(this._setState(d[0],
d[1]),f.push(d[0]));d=0;for(e=f.length;d<e;d++)h=this._state[f[d]],this._observableEmitter.trigger(f[d],{newValue:h.value,oldValue:h.lastValue,revision:h.rev})},_setState:function(a,c){"undefined"===typeof this._state[a]?this._state[a]={rev:0,value:c,lastValue:void 0}:(this._state[a].rev++,this._state[a].lastValue=this._state[a].value,this._state[a].value=c)},observe:function(a,c){this._observableEmitter.on(a,c);return this},unobserve:function(a,c){this._observableEmitter.off(a,c);return this},beforeInit:function(){},
beforeDecoration:function(){},decorate:function(){return this._config.decorators?this.loadDependencies(this._config.decorators).pipe(_.bind(this._applyDecorators,this)):$.Deferred().resolve().promise()},_applyDecorators:function(a){_.each(this._config.decorators,function(c){if("function"!==typeof a(c))throw new TypeError("Decorator ("+c+") is not a function");Fiber.decorate(this,a(c))},this)},afterDecoration:function(){},beforeLoad:function(){},afterLoad:function(){},attachEventListeners:function(){},
detachEventListeners:function(){},afterInit:function(){},onResolve:function(){},before:function(a,c){var b=this;this.isReady.pipe(function(){b[a]=_.wrap(b[a],function(a){var e=Array.prototype.slice.apply(arguments,[1]);"string"===typeof c?b[c].apply(b,e):c.apply(b,e);return a.apply(b,e)})})},after:function(a,c){var b=this;this.isReady.pipe(function(){b[a]=_.wrap(b[a],function(a){var e=Array.prototype.slice.apply(arguments,[1]),g=a.apply(b,e);"string"===typeof c?b[c].apply(b,e):c.apply(b,e);return g})})},
clobber:function(a,c){var b=this;this.isReady.pipe(function(){b[a]=_.bind(c,b)})},loadDependencies:function(a){var c=new $.Deferred;a=a||this._config.dependencies||[];require.ensure(a,function(a){c.resolve(a)});return c.promise()},loadCss:function(a){var c=new $.Deferred;require.ensure(a,function(b){_.each(a,function(a){b(a).attach()});c.resolve()});return c.promise()}}});