text: /*! Flight v1.1.4 | (c) Twitter, Inc. | MIT License */
  !function(a){function f(){var e,f,a=Array.prototype.slice.call(arguments),c=[];"string"==typeof a[0]&&(e=a.shift()),d(a[0])&&(c=a.shift()),f=a.shift(),b[e]=[c,f]}function g(a){function d(b){var c=a.split("/"),d=b.split("/"),e=!1;for(c.pop();".."==d[0]&&c.length;)c.pop(),d.shift(),e=!0;return"."==d[0]&&(d.shift(),e=!0),e&&(d=c.concat(d)),d.join("/")}var f,h,i;return"undefined"==typeof c[a]&&(f=b[a],f&&(i=f[0],h=f[1],c[a]=h.apply(void 0,e(i,function(a){return g(d(a))})))),c[a]}var b={},c={},d=Array.isArray||function(a){return a.constructor==Array},e=Array.map||function(a,b,c){for(var d=0,e=a.length,f=[];e>d;d++)f.push(b.call(c,a[d]));return f};f("lib/utils",[],function(){"use strict";var a=[],b=100,c={isDomObj:function(a){return!(!a.nodeType&&a!==window)},toArray:function(b,c){return a.slice.call(b,c)},merge:function(){for(var a=arguments.length,b=0,c=new Array(a+1);a>b;b++)c[b+1]=arguments[b];return 0===a?{}:(c[0]={},c[c.length-1]===!0&&(c.pop(),c.unshift(!0)),$.extend.apply(void 0,c))},push:function(a,b,c){return a&&Object.keys(b||{}).forEach(function(d){if(a[d]&&c)throw new Error('utils.push attempted to overwrite "'+d+'" while running in protected mode');"object"==typeof a[d]&&"object"==typeof b[d]?this.push(a[d],b[d]):a[d]=b[d]},this),a},isEnumerable:function(a,b){return Object.keys(a).indexOf(b)>-1},compose:function(){var a=arguments;return function(){for(var b=arguments,c=a.length-1;c>=0;c--)b=[a[c].apply(this,b)];return b[0]}},uniqueArray:function(a){for(var b={},c=[],d=0,e=a.length;e>d;++d)b.hasOwnProperty(a[d])||(c.push(a[d]),b[a[d]]=1);return c},debounce:function(a,c,d){"number"!=typeof c&&(c=b);var e,f;return function(){var b=this,g=arguments,h=function(){e=null,d||(f=a.apply(b,g))},i=d&&!e;return clearTimeout(e),e=setTimeout(h,c),i&&(f=a.apply(b,g)),f}},throttle:function(a,c){"number"!=typeof c&&(c=b);var d,e,f,g,h,i,j=this.debounce(function(){h=g=!1},c);return function(){d=this,e=arguments;var b=function(){f=null,h&&(i=a.apply(d,e)),j()};return f||(f=setTimeout(b,c)),g?h=!0:(g=!0,i=a.apply(d,e)),j(),i}},countThen:function(a,b){return function(){return--a?void 0:b.apply(this,arguments)}},delegate:function(a){return function(b,c){var e,d=$(b.target);Object.keys(a).forEach(function(f){return!b.isPropagationStopped()&&(e=d.closest(f)).length?(c=c||{},c.el=e[0],a[f].apply(this,[b,c])):void 0},this)}},once:function(a){var b,c;return function(){return b?c:(b=!0,c=a.apply(this,arguments))}}};return c}),f("lib/debug",[],function(){"use strict";function a(b,d,e){e=e||{};var f=e.obj||window,g=e.path||(f==window?"window":""),h=Object.keys(f);h.forEach(function(e){(c[b]||b)(d,f,e)&&console.log([g,".",e].join(""),"->",["(",typeof f[e],")"].join(""),f[e]),"[object Object]"==Object.prototype.toString.call(f[e])&&f[e]!=f&&-1==g.split(".").indexOf(e)&&a(b,d,{obj:f[e],path:[g,e].join(".")})})}function b(b,c,d,e){c&&typeof d!=c?console.error([d,"must be",c].join(" ")):a(b,d,e)}function d(a,c){b("name","string",a,c)}function e(a,c){b("nameContains","string",a,c)}function f(a,c){b("type","function",a,c)}function g(a,c){b("value",null,a,c)}function h(a,c){b("valueCoerced",null,a,c)}function i(b,c){a(b,null,c)}function l(){var a=[].slice.call(arguments);k.eventNames.length||(k.eventNames=j),k.actions=a.length?a:j,p()}function m(){var a=[].slice.call(arguments);k.actions.length||(k.actions=j),k.eventNames=a.length?a:j,p()}function n(){k.actions=[],k.eventNames=[],p()}function o(){k.actions=j,k.eventNames=j,p()}function p(){try{window.localStorage&&(localStorage.setItem("logFilter_eventNames",k.eventNames),localStorage.setItem("logFilter_actions",k.actions))}catch(a){}}function q(){var a,b;try{a=window.localStorage&&localStorage.getItem("logFilter_eventNames"),b=window.localStorage&&localStorage.getItem("logFilter_actions")}catch(c){return}a&&(k.eventNames=a),b&&(k.actions=b),Object.keys(k).forEach(function(a){var b=k[a];"string"==typeof b&&b!==j&&(k[a]=b?b.split(","):[])})}var c={name:function(a,b,c){return a==c},nameContains:function(a,b,c){return c.indexOf(a)>-1},type:function(a,b,c){return b[c]instanceof a},value:function(a,b,c){return b[c]===a},valueCoerced:function(a,b,c){return b[c]==a}},j="all",k={eventNames:[],actions:[]};return{enable:function(a){this.enabled=!!a,a&&window.console&&(console.info("Booting in DEBUG mode"),console.info("You can configure event logging with DEBUG.events.logAll()/logNone()/logByName()/logByAction()")),q(),window.DEBUG=this},find:{byName:d,byNameContains:e,byType:f,byValue:g,byValueCoerced:h,custom:i},events:{logFilter:k,logByAction:l,logByName:m,logAll:o,logNone:n}}}),f("lib/compose",["./utils","./debug"],function(a,b){"use strict";function f(a,b){if(c){var e=Object.create(null);Object.keys(a).forEach(function(c){if(d.indexOf(c)<0){var f=Object.getOwnPropertyDescriptor(a,c);f.writable=b,e[c]=f}}),Object.defineProperties(a,e)}}function g(a,b,d){var e;return c&&a.hasOwnProperty(b)?(e=Object.getOwnPropertyDescriptor(a,b).writable,Object.defineProperty(a,b,{writable:!0}),d.call(a),Object.defineProperty(a,b,{writable:e}),void 0):(d.call(a),void 0)}function h(a,b){a.mixedIn=a.hasOwnProperty("mixedIn")?a.mixedIn:[];for(var c=0;c<b.length;c++)-1==a.mixedIn.indexOf(b[c])&&(f(a,!1),b[c].call(a),a.mixedIn.push(b[c]));f(a,!0)}var c=b.enabled&&!a.isEnumerable(Object,"getOwnPropertyDescriptor"),d=["mixedIn"];if(c)try{Object.getOwnPropertyDescriptor(Object,"keys")}catch(e){c=!1}return{mixin:h,unlockProperty:g}}),f("lib/advice",["./compose"],function(a){"use strict";var b={around:function(a,b){return function(){var c=0,d=arguments.length,e=new Array(d+1);for(e[0]=a.bind(this);d>c;c++)e[c+1]=arguments[c];return b.apply(this,e)}},before:function(a,b){var c="function"==typeof b?b:b.obj[b.fnName];return function(){return c.apply(this,arguments),a.apply(this,arguments)}},after:function(a,b){var c="function"==typeof b?b:b.obj[b.fnName];return function(){var b=(a.unbound||a).apply(this,arguments);return c.apply(this,arguments),b}},withAdvice:function(){["before","after","around"].forEach(function(c){this[c]=function(d,e){a.unlockProperty(this,d,function(){return this[d]="function"==typeof this[d]?b[c](this[d],e):e,this[d]})}},this)}};return b}),f("lib/registry",[],function(){"use strict";function a(a,b){var c,d,e,f=b.length;return"function"==typeof b[f-1]&&(f-=1,e=b[f]),"object"==typeof b[f-1]&&(f-=1),2==f?(c=b[0],d=b[1]):(c=a.node,d=b[0]),{element:c,type:d,callback:e}}function b(a,b){return a.element==b.element&&a.type==b.type&&(null==b.callback||a.callback==b.callback)}function c(){function d(a){this.component=a,this.attachedTo=[],this.instances={},this.addInstance=function(a){var b=new e(a);return this.instances[a.identity]=b,this.attachedTo.push(a.node),b},this.removeInstance=function(a){delete this.instances[a.identity];var b=this.attachedTo.indexOf(a.node);b>-1&&this.attachedTo.splice(b,1),Object.keys(this.instances).length||c.removeComponentInfo(this)},this.isAttachedTo=function(a){return this.attachedTo.indexOf(a)>-1}}function e(a){this.instance=a,this.events=[],this.addBind=function(a){this.events.push(a),c.events.push(a)},this.removeBind=function(a){for(var d,c=0;d=this.events[c];c++)b(d,a)&&this.events.splice(c,1)}}var c=this;(this.reset=function(){this.components=[],this.allInstances={},this.events=[]}).call(this),this.addInstance=function(a){var b=this.findComponentInfo(a);b||(b=new d(a.constructor),this.components.push(b));var c=b.addInstance(a);return this.allInstances[a.identity]=c,b},this.removeInstance=function(a){this.findInstanceInfo(a);var d=this.findComponentInfo(a);d&&d.removeInstance(a),delete this.allInstances[a.identity]},this.removeComponentInfo=function(a){var b=this.components.indexOf(a);b>-1&&this.components.splice(b,1)},this.findComponentInfo=function(a){for(var d,b=a.attachTo?a:a.constructor,c=0;d=this.components[c];c++)if(d.component===b)return d;return null},this.findInstanceInfo=function(a){return this.allInstances[a.identity]||null},this.getBoundEventNames=function(a){return this.findInstanceInfo(a).events.map(function(a){return a.type})},this.findInstanceInfoByNode=function(a){var b=[];return Object.keys(this.allInstances).forEach(function(c){var d=this.allInstances[c];d.instance.node===a&&b.push(d)},this),b},this.on=function(b){for(var e,d=c.findInstanceInfo(this),f=arguments.length,g=1,h=new Array(f-1);f>g;g++)h[g-1]=arguments[g];if(d){e=b.apply(null,h),e&&(h[h.length-1]=e);var i=a(this,h);d.addBind(i)}},this.off=function(){var d=a(this,arguments),e=c.findInstanceInfo(this);e&&e.removeBind(d);for(var g,f=0;g=c.events[f];f++)b(g,d)&&c.events.splice(f,1)},c.trigger=function(){},this.teardown=function(){c.removeInstance(this)},this.withRegistration=function(){this.after("initialize",function(){c.addInstance(this)}),this.around("on",c.on),this.after("off",c.off),window.DEBUG&&DEBUG.enabled&&this.after("trigger",c.trigger),this.after("teardown",{obj:c,fnName:"teardown"})}}return new c}),f("lib/base",["./utils","./registry","./debug"],function(a,b,c){"use strict";function e(a){a.events.slice().forEach(function(a){var b=[a.type];a.element&&b.unshift(a.element),"function"==typeof a.callback&&b.push(a.callback),this.off.apply(this,b)},a.instance)}function f(a,b){try{window.postMessage(b,"*")}catch(c){throw console.log("unserializable data for event",a,":",b),new Error(["The event",a,"on component",this.toString(),"was triggered with non-serializable data"].join(" "))}}function g(a){return function(b,c){$(b.target).trigger(a,c)}}function h(){this.trigger=function(){var a,b,d,e,g,h=arguments.length-1,i=arguments[h];return"string"==typeof i||i&&i.defaultBehavior||(h--,d=i),1==h?(a=$(arguments[0]),e=arguments[1]):(a=this.$node,e=arguments[0]),e.defaultBehavior&&(g=e.defaultBehavior,e=$.Event(e.type)),b=e.type||e,c.enabled&&window.postMessage&&f.call(this,b,d),"object"==typeof this.attr.eventData&&(d=$.extend(!0,{},this.attr.eventData,d)),a.trigger(e||b,d),g&&!e.isDefaultPrevented()&&(this[g]||g).call(this),a},this.on=function(){var b,c,d,e,f=arguments.length-1,h=arguments[f];if(e="object"==typeof h?a.delegate(this.resolveDelegateRules(h)):"string"==typeof h?g(h):h,2==f?(b=$(arguments[0]),c=arguments[1]):(b=this.$node,c=arguments[0]),"function"!=typeof e&&"object"!=typeof e)throw new Error('Unable to bind to "'+c+'" because the given callback is not a function or an object');return d=e.bind(this),d.target=e,d.context=this,b.on(c,d),e.bound||(e.bound=[]),e.bound.push(d),d},this.off=function(){var a,b,c,d=arguments.length-1;if("function"==typeof arguments[d]&&(c=arguments[d],d-=1),1==d?(a=$(arguments[0]),b=arguments[1]):(a=this.$node,b=arguments[0]),c){var e=c.target?c.target.bound:c.bound||[];e&&e.some(function(a,b,d){return a.context&&this.identity==a.context.identity?(d.splice(b,1),c=a,!0):void 0},this)}return a.off(b,c)},this.resolveDelegateRules=function(a){var b={};return Object.keys(a).forEach(function(c){if(!(c in this.attr))throw new Error('Component "'+this.toString()+'" wants to listen on "'+c+'" but no such attribute was defined.');b[this.attr[c]]="string"==typeof a[c]?g(a[c]):a[c]},this),b},this.defaultAttrs=function(b){a.push(this.defaults,b,!0)||(this.defaults=b)},this.select=function(a){return this.$node.find(this.attr[a])},this.initialize=function(a,b){if(b||(b={}),this.identity||(this.identity=d++),!a)throw new Error("Component needs a node");a.jquery?(this.node=a[0],this.$node=a):(this.node=a,this.$node=$(a));var c=Object.create(b);for(var e in this.defaults)b.hasOwnProperty(e)||(c[e]=this.defaults[e]);return this.attr=c,Object.keys(this.defaults||{}).forEach(function(a){if(null===this.defaults[a]&&null===this.attr[a])throw new Error('Required attribute "'+a+'" not specified in attachTo for component "'+this.toString()+'".')},this),this},this.teardown=function(){e(b.findInstanceInfo(this))}}var d=0;return h}),f("lib/logger",["./utils"],function(a){"use strict";function c(a){var b=a.tagName?a.tagName.toLowerCase():a.toString(),c=a.className?"."+a.className:"",d=b+c;return a.tagName?["'","'"].join(d):d}function d(a,d,e){if(window.DEBUG&&window.DEBUG.enabled){var f,g,h,i,j,k,l,m,n,o;"function"==typeof e[e.length-1]&&(i=e.pop(),i=i.unbound||i),1==e.length?(h=d.$node[0],g=e[0]):2!=e.length||"object"!=typeof e[1]||e[1].type?(h=e[0],g=e[1],"trigger"==a&&(j=e[2])):(h=d.$node[0],g=e[0],"trigger"==a&&(j=e[1])),f="object"==typeof g?g.type:g,k=DEBUG.events.logFilter,m="all"==k.actions||k.actions.indexOf(a)>-1,l=function(a){return a.test?a:new RegExp("^"+a.replace(/\*/g,".*")+"$")},n="all"==k.eventNames||k.eventNames.some(function(a){return l(a).test(f)}),m&&n&&(o=[b[a],a,"["+f+"]"],j&&o.push(j),o.push(c(h)),o.push(d.constructor.describe.split(" ").slice(0,3).join(" ")),console.groupCollapsed&&"trigger"==a&&console.groupCollapsed(a,f),console.info.apply(console,o))}}function e(){this.before("trigger",function(){d("trigger",this,a.toArray(arguments))}),console.groupCollapsed&&this.after("trigger",function(){console.groupEnd()}),this.before("on",function(){d("on",this,a.toArray(arguments))}),this.before("off",function(){d("off",this,a.toArray(arguments))})}var b={on:"<-",trigger:"->",off:"x "};return e}),f("lib/component",["./advice","./utils","./compose","./base","./registry","./logger","./debug"],function(a,b,c,d,e,f,g){"use strict";function i(){var a=e.findComponentInfo(this);a&&Object.keys(a.instances).forEach(function(b){var c=a.instances[b];c&&c.instance&&c.instance.teardown()})}function k(a){for(var c=arguments.length,d=new Array(c-1),f=1;c>f;f++)d[f-1]=arguments[f];if(!a)throw new Error("Component needs to be attachTo'd a jQuery object, native node or selector string");var g=b.merge.apply(b,d),h=e.findComponentInfo(this);$(a).each(function(a,b){h&&h.isAttachedTo(b)||(new this).initialize(b,g)}.bind(this))}function l(){var a=this.mixedIn||this.prototype.mixedIn||[];return a.map(function(a){if(null==a.name){var b=a.toString().match(h);return b&&b[1]?b[1]:""}return"withBase"!=a.name?a.name:""}).filter(Boolean).join(", ")}function m(){for(var b=arguments.length,h=new Array(b),j=0;b>j;j++)h[j]=arguments[j];var n=function(){};return n.toString=n.prototype.toString=l,g.enabled&&(n.describe=n.prototype.describe=n.toString()),n.attachTo=k,n.mixin=function(){var a=m(),b=Object.create(n.prototype);return b.mixedIn=[].concat(n.prototype.mixedIn),c.mixin(b,arguments),a.prototype=b,a.prototype.constructor=a,a},n.teardownAll=i,g.enabled&&h.unshift(f),h.unshift(d,a.withAdvice,e.withRegistration),c.mixin(n.prototype,h),n}var h=/function (.*?)\s?\(/;return m.teardownAll=function(){e.components.slice().forEach(function(a){a.component.teardownAll()}),e.reset()},m}),f("lib/index",["./advice","./component","./compose","./logger","./registry","./utils"],function(a,b,c,d,e,f){"use strict";return{advice:a,component:b,compose:c,logger:d,registry:e,utils:f}}),a.flight=g("lib/index")}(this);
  