!function(){vara={},b=function(b){for(varc=a[b],e=c.deps,f=c.defn,g=e.length,h=newArray(g),i=0;i<g;++i)h[i]=d(e[i]);varj=f.apply(null,h);if(void0===j)throw"module ["+b+"] returned undefined";c.instance=j},c=function(b,c,d){if("string"!=typeofb)throw"module id must be a string";if(void0===c)throw"no dependencies for "+b;if(void0===d)throw"no definition function for "+b;a[b]={deps:c,defn:d,instance:void0}},d=function(c){vard=a[c];if(void0===d)throw"module ["+c+"] was undefined";returnvoid0===d.instance&&b(c),d.instance},e=function(a,b){for(varc=a.length,e=newArray(c),f=0;f<c;++f)e.push(d(a[f]));b.apply(null,b)},f={};f.bolt={module:{api:{define:c,require:e,demand:d}}};varg=c,h=function(a,b){g(a,[],function(){returnb})};g("p",[],function(){functiona(a,b){returnfunction(){a.apply(b,arguments)}}functionb(b){if("object"!=typeofthis)thrownewTypeError("Promises must be constructed via new");if("function"!=typeofb)thrownewTypeError("not a function");this._state=null,this._value=null,this._deferreds=[],h(b,a(d,this),a(e,this))}functionc(a){varb=this;returnnull===this._state?voidthis._deferreds.push(a):voidi(function(){varc=b._state?a.onFulfilled:a.onRejected;if(null===c)returnvoid(b._state?a.resolve:a.reject)(b._value);vard;try{d=c(b._value)}catch(b){returnvoida.reject(b)}a.resolve(d)})}functiond(b){try{if(b===this)thrownewTypeError("A promise cannot be resolved with itself.");if(b&&("object"==typeofb||"function"==typeofb)){varc=b.then;if("function"==typeofc)returnvoidh(a(c,b),a(d,this),a(e,this))}this._state=!0,this._value=b,f.call(this)}catch(a){e.call(this,a)}}functione(a){this._state=!1,this._value=a,f.call(this)}functionf(){for(vara=0,b=this._deferreds.length;a<b;a++)c.call(this,this._deferreds[a]);this._deferreds=null}functiong(a,b,c,d){this.onFulfilled="function"==typeofa?a:null,this.onRejected="function"==typeofb?b:null,this.resolve=c,this.reject=d}functionh(a,b,c){vard=!1;try{a(function(a){d||(d=!0,b(a))},function(a){d||(d=!0,c(a))})}catch(a){if(d)return;d=!0,c(a)}}if(window.Promise)returnwindow.Promise;vari=b.immediateFn||"function"==typeofsetImmediate&&setImmediate||function(a){setTimeout(a,1)},j=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)};returnb.prototype["catch"]=function(a){returnthis.then(null,a)},b.prototype.then=function(a,d){vare=this;returnnewb(function(b,f){c.call(e,newg(a,d,b,f))})},b.all=function(){vara=Array.prototype.slice.call(1===arguments.length&&j(arguments[0])?arguments[0]:arguments);returnnewb(function(b,c){functiond(f,g){try{if(g&&("object"==typeofg||"function"==typeofg)){varh=g.then;if("function"==typeofh)returnvoidh.call(g,function(a){d(f,a)},c)}a[f]=g,0===--e&&b(a)}catch(a){c(a)}}if(0===a.length)returnb([]);for(vare=a.length,f=0;f<a.length;f++)d(f,a[f])})},b.resolve=function(a){returna&&"object"==typeofa&&a.constructor===b?a:newb(function(b){b(a)})},b.reject=function(a){returnnewb(function(b,c){c(a)})},b.race=function(a){returnnewb(function(b,c){for(vard=0,e=a.length;d<e;d++)a[d].then(b,c)})},b}),g("q",[],function(){functiona(a,b){returne(document.createElement("canvas"),a,b)}functionb(b){vard,e;returnd=a(b.width,b.height),e=c(d),e.drawImage(b,0,0),d}functionc(a){returna.getContext("2d")}functiond(a){varb=null;try{b=a.getContext("webgl")||a.getContext("experimental-webgl")}catch(a){}returnb||(b=null),b}functione(a,b,c){returna.width=b,a.height=c,a}return{create:a,clone:b,resize:e,get2dContext:c,get3dContext:d}}),g("r",[],function(){functiona(a){varb=document.createElement("a");returnb.href=a,b.pathname}functionb(b){varc,d,e,f;return0===b.indexOf("data:")?(b=b.split(","),f=/data:([^;]+)/.exec(b[0]),f?f[1]:""):(e={jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png"},c=a(b).split("."),d=c[c.length-1],d&&(d=d.toLowerCase()),e[d])}return{guessMimeType:b}}),g("s",[],function(){functiona(a){returna.naturalWidth||a.width}functionb(a){returna.naturalHeight||a.height}return{getWidth:a,getHeight:b}}),g("c",["p","q","r","s"],function(a,b,c,d){functione(b){returnn