!function(n){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=n();else if("function"==typeof define&&define.amd)define([],n);else{var t;"undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self);t.Promise=n()}}(function(){return function n(t,i,r){function u(f,o){var h,c,s;if(!i[f]){if(!t[f]){if(h="function"==typeof _dereq_&&_dereq_,!o&&h)return h(f,!0);if(e)return e(f,!0);c=new Error("Cannot find module '"+f+"'");throw c.code="MODULE_NOT_FOUND",c;}s=i[f]={exports:{}};t[f][0].call(s.exports,function(n){var i=t[f][1][n];return u(i?i:n)},s,s.exports,n,t,i,r)}return i[f].exports}for(var e="function"==typeof _dereq_&&_dereq_,f=0;f<r.length;f++)u(r[f]);return u}({1:[function(n,t){"use strict";t.exports=function(n){function t(n){var t=new i(n),r=t.promise();return t.setHowMany(1),t.setUnwrap(),t.init(),r}var i=n._SomePromiseArray;n.any=function(n){return t(n)};n.prototype.any=function(){return t(this)}}},{}],2:[function(n,t){"use strict";function i(){this._customScheduler=!1;this._isTickUsed=!1;this._lateQueue=new o(16);this._normalQueue=new o(16);this._haveDrainedQueues=!1;this._trampolineEnabled=!0;var n=this;this.drainQueues=function(){n._drainQueues()};this._schedule=c}function r(n,t,i){this._lateQueue.push(n,t,i);this._queueTick()}function u(n,t,i){this._normalQueue.push(n,t,i);this._queueTick()}function f(n){this._normalQueue._pushOne(n);this._queueTick()}var e;try{throw new Error;}catch(h){e=h}var c=n("./schedule"),o=n("./queue"),s=n("./util");i.prototype.setScheduler=function(n){var t=this._schedule;return this._schedule=n,this._customScheduler=!0,t};i.prototype.hasCustomScheduler=function(){return this._customScheduler};i.prototype.enableTrampoline=function(){this._trampolineEnabled=!0};i.prototype.disableTrampolineIfNecessary=function(){s.hasDevTools&&(this._trampolineEnabled=!1)};i.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues};i.prototype.fatalError=function(n,t){t?(process.stderr.write("Fatal "+(n instanceof Error?n.stack:n)+"\n"),process.exit(2)):this.throwLater(n)};i.prototype.throwLater=function(n,t){if(1===arguments.length&&(t=n,n=function(){throw t;}),"undefined"!=typeof setTimeout)setTimeout(function(){n(t)},0);else try{this._schedule(function(){n(t)})}catch(i){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n");}};s.hasDevTools?(i.prototype.invokeLater=function(n,t,i){this._trampolineEnabled?r.call(this,n,t,i):this._schedule(function(){setTimeout(function(){n.call(t,i)},100)})},i.prototype.invoke=function(n,t,i){this._trampolineEnabled?u.call(this,n,t,i):this._schedule(function(){n.call(t,i)})},i.prototype.settlePromises=function(n){this._trampolineEnabled?f.call(this,n):this._schedule(function(){n._settlePromises()})}):(i.prototype.invokeLater=r,i.prototype.invoke=u,i.prototype.settlePromises=f);i.prototype._drainQueue=function(n){for(var t,i,r;n.length()>0;)t=n.shift(),"function"==typeof t?(i=n.shift(),r=n.shift(),t.call(i,r)):t._settlePromises()};i.prototype._drainQueues=function(){this._drainQueue(this._normalQueue);this._reset();this._haveDrainedQueues=!0;this._drainQueue(this._lateQueue)};i.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))};i.prototype._reset=function(){this._isTickUsed=!1};t.exports=i;t.exports.firstLineError=e},{"./queue":26,"./schedule":29,"./util":36}],3:[function(n,t){"use strict";t.exports=function(n,t,i,r){var u=!1,f=function(n,t){this._reject(t)},e=function(n,t){t.promiseRejectionQueued=!0;t.bindingPromise._then(f,f,null,this,n)},o=function(n,t){0==(50397184&this._bitField)&&this._resolveCallback(t.target)},s=function(n,t){t.promiseRejectionQueued||this._reject(n)};n.prototype.bind=function(f){var c,h,l,a;return u||(u=!0,n.prototype._propagateFrom=r.propagateFromFunction(),n.prototype._boundValue=r.boundValueFunction()),c=i(f),h=new n(t),h._propagateFrom(this,1),l=this._target(),(h._setBoundTo(c),c instanceof n)?(a={promiseRejectionQueued:!1,promise:h,target:l,bindingPromise:c},l._then(t,e,void 0,h,a),c._then(o,s,void 0,h,a),h._setOnCancel(c)):h._resolveCallback(l),h};n.prototype._setBoundTo=function(n){void 0!==n?(this._bitField=2097152|this._bitField,this._boundTo=n):this._bitField=-2097153&this._bitField};n.prototype._isBound=function(){return 2097152==(2097152&this._bitField)};n.bind=function(t,i){return n.resolve(i).bind(t)}}},{}],4:[function(n,t){"use strict";function u(){try{Promise===i&&(Promise=r)}catch(n){}return i}var r,i;"undefined"!=typeof Promise&&(r=Promise);i=n("./promise")();i.noConflict=u;t.exports=i},{"./promise":22}],5:[function(n,t){"use strict";var i=Object.create,r,u;i&&(r=i(null),u=i(null),r[" size"]=u[" size"]=0);t.exports=function(t){function u(n,r){var u,f;if(null!=n&&(u=n[r]),"function"!=typeof u){f="Object "+i.classString(n)+" has no method '"+i.toString(r)+"'";throw new t.TypeError(f);}return u}function f(n){var t=this.pop(),i=u(n,t);return i.apply(n,this)}function r(n){return n[this]}function e(n){var t=+this;return 0>t&&(t=Math.max(0,t+n.length)),n[t]}var o,i=n("./util"),s=i.canEvaluate;i.isIdentifier;t.prototype.call=function(n){var t=[].slice.call(arguments,1);return t.push(n),this._then(f,void 0,void 0,t,void 0)};t.prototype.get=function(n){var t,u="number"==typeof n,i;return u?t=e:s?(i=o(n),t=null!==i?i:r):t=r,this._then(t,void 0,void 0,n,void 0)}}},{"./util":36}],6:[function(n,t){"use strict";t.exports=function(t,i,r,u){var f=n("./util"),o=f.tryCatch,s=f.errorObj,e=t._async;t.prototype["break"]=t.prototype.cancel=function(){var n,t,i;if(!u.cancellation())return this._warn("cancellation is disabled");for(n=this,t=n;n._isCancellable();){if(!n._cancelBy(t)){t._isFollowing()?t._followee().cancel():t._cancelBranched();break}if(i=n._cancellationParent,null==i||!i._isCancellable()){n._isFollowing()?n._followee().cancel():n._cancelBranched();break}n._isFollowing()&&n._followee().cancel();n._setWillBeCancelled();t=n;n=i}};t.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--};t.prototype._enoughBranchesHaveCancelled=function(){return void 0===this._branchesRemainingToCancel||this._branchesRemainingToCancel<=0};t.prototype._cancelBy=function(n){return n===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),this._enoughBranchesHaveCancelled()?(this._invokeOnCancel(),!0):!1)};t.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()};t.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),e.invoke(this._cancelPromises,this,void 0))};t.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()};t.prototype._unsetOnCancel=function(){this._onCancelField=void 0};t.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()};t.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()};t.prototype._doInvokeOnCancel=function(n,t){var i,r;if(f.isArray(n))for(i=0;i<n.length;++i)this._doInvokeOnCancel(n[i],t);else void 0!==n&&("function"==typeof n?t||(r=o(n).call(this._boundValue()),r===s&&(this._attachExtraTrace(r.e),e.throwLater(r.e))):n._resultCancelled(this))};t.prototype._invokeOnCancel=function(){var n=this._onCancel();this._unsetOnCancel();e.invoke(this._doInvokeOnCancel,this,n)};t.prototype._invokeInternalOnCancel=function(){this._isCancellable()&&(this._doInvokeOnCancel(this._onCancel(),!0),this._unsetOnCancel())};t.prototype._resultCancelled=function(){this.cancel()}}},{"./util":36}],7:[function(n,t){"use strict";t.exports=function(t){function u(n,u,o){return function(s){var c=o._boundValue(),l,h,a,y,v,p;n:for(l=0;l<n.length;++l)if(h=n[l],h===Error||null!=h&&h.prototype instanceof Error){if(s instanceof h)return i(u).call(c,s)}else if("function"==typeof h){if(a=i(h).call(c,s),a===e)return a;if(a)return i(u).call(c,s)}else if(r.isObject(s)){for(y=f(h),v=0;v<y.length;++v)if(p=y[v],h[p]!=s[p])continue n;return i(u).call(c,s)}return t}}var r=n("./util"),f=n("./es5").keys,i=r.tryCatch,e=r.errorObj;return u}},{"./es5":13,"./util":36}],8:[function(n,t){"use strict";t.exports=function(n){function t(){this._trace=new t.CapturedTrace(u())}function f(){if(r)return new t}function u(){var n=i.length-1;if(n>=0)return i[n]}var r=!1,i=[];return n.prototype._promiseCreated=function(){},n.prototype._pushContext=function(){},n.prototype._popContext=function(){return null},n._peekContext=n.prototype._peekContext=function(){},t.prototype._pushContext=function(){void 0!==this._trace&&(this._trace._promiseCreated=null,i.push(this._trace))},t.prototype._popContext=function(){if(void 0!==this._trace){var n=i.pop(),t=n._promiseCreated;return n._promiseCreated=null,t}return null},t.CapturedTrace=null,t.create=f,t.deactivateLongStackTraces=function(){},t.activateLongStackTraces=function(){var i=n.prototype._pushContext,f=n.prototype._popContext,e=n._peekContext,o=n.prototype._peekContext,s=n.prototype._promiseCreated;t.deactivateLongStackTraces=function(){n.prototype._pushContext=i;n.prototype._popContext=f;n._peekContext=e;n.prototype._peekContext=o;n.prototype._promiseCreated=s;r=!1};r=!0;n.prototype._pushContext=t.prototype._pushContext;n.prototype._popContext=t.prototype._popContext;n._peekContext=n.prototype._peekContext=u;n.prototype._promiseCreated=function(){var n=this._peekContext();n&&null==n._promiseCreated&&(n._promiseCreated=this)}},t}},{}],9:[function(n,t){"use strict";t.exports=function(t,i){function o(n,t){return{promise:t}}function nt(){return!1}function pt(n,t,i){var u=this;try{n(t,i,function(n){if("function"!=typeof n)throw new TypeError("onCancel must be a function, got: "+r.toString(n));u._attachCancellationCallback(n)})}catch(f){return f}}function wt(n){if(!this._isCancellable())return this;var t=this._onCancel();void 0!==t?r.isArray(t)?t.push(n):this._setOnCancel([t,n]):this._setOnCancel(n)}function bt(){return this._onCancelField}function kt(n){this._onCancelField=n}function dt(){this._cancellationParent=void 0;this._onCancelField=void 0}function tt(n,t){if(0!=(1&t)){this._cancellationParent=n;var i=n._branchesRemainingToCancel;void 0===i&&(i=0);n._branchesRemainingToCancel=i+1}0!=(2&t)&&n._isBound()&&this._setBoundTo(n._boundTo)}function gt(n,t){0!=(2&t)&&n._isBound()&&this._setBoundTo(n._boundTo)}function ni(){var n=this._boundTo;return void 0!==n&&n instanceof t?n.isFulfilled()?n.value():void 0:n}function ti(){this._trace=new e(this._peekContext())}function ii(n,t){var i,u;ai(n)&&(i=this._trace,(void 0!==i&&t&&(i=i._parent),void 0!==i)?i.attachExtraTrace(n):n.__stackCleaned__||(u=y(n),r.notEnumerableProp(n,"stack",u.message+"\n"+u.stack.join("\n")),r.notEnumerableProp(n,"__stackCleaned__",!0)))}function ri(n,t,i,r,u){var h,c,l,e,a,f,y;if(void 0===n&&null!==t&&b){if(void 0!==u&&u._returnedNonUndefined())return;if(0==(65535&r._bitField))return;if(i&&(i+=" "),h="",c="",t._trace){for(var o=t._trace.stack.split("\n"),s=v(o),f=s.length-1;f>=0;--f)if(l=s[f],!vi.test(l)){e=l.match(yi);e&&(h="at "+e[1]+":"+e[2]+":"+e[3]+" ");break}if(s.length>0)for(a=s[0],f=0;f<o.length;++f)if(o[f]===a){f>0&&(c="\n"+o[f-1]);break}}y="a promise was created in a "+i+"handler "+h+"but was not returned from it, see http://goo.gl/rRqMUw"+c;r._warn(y,!0,t)}}function ui(n,t){var i=n+" is deprecated and will be removed in a future version.";return t&&(i+=" Use "+t+" instead."),a(i)}function a(n,i,r){var o,f,e;u.warnings&&(f=new li(n),i?r._attachExtraTrace(f):u.longStackTraces&&(o=t._peekContext())?o.attachExtraTrace(f):(e=y(f),f.stack=e.message+"\n"+e.stack.join("\n")),l("warning",f)||it(f,"",!0))}function fi(n,t){for(var i=0;i<t.length-1;++i)t[i].push("From previous event:"),t[i]=t[i].join("\n");return i<t.length&&(t[i]=t[i].join("\n")),n+"\n"+t.join("\n")}function ei(n){for(var t=0;t<n.length;++t)(0===n[t].length||t+1<n.length&&n[t][0]===n[t+1][0])&&(n.splice(t,1),t--)}function oi(n){for(var t,o,i=n[0],r=1;r<n.length;++r){for(var u=n[r],f=i.length-1,s=i[f],e=-1,t=u.length-1;t>=0;--t)if(u[t]===s){e=t;break}for(t=e;t>=0;--t){if(o=u[t],i[f]!==o)break;i.pop();f--}i=u}}function v(n){for(var r=[],i=0;i<n.length;++i){var t=n[i],u=" (No stack trace)"===t||h.test(t),f=u&&d(t);u&&!f&&(ht&&" "!==t.charAt(0)&&(t=" "+t),r.push(t))}return r}function si(n){for(var r,t=n.stack.replace(/\s+$/g,"").split("\n"),i=0;i<t.length;++i)if(r=t[i]," (No stack trace)"===r||h.test(r))break;return i>0&&"SyntaxError"!=n.name&&(t=t.slice(i)),t}function y(n){var t=n.stack,i=n.toString();return t="string"==typeof t&&t.length>0?si(n):[" (No stack trace)"],{message:i,stack:"SyntaxError"==n.name?t:v(t)}}function it(n,t,i){var u,f;"undefined"!=typeof console&&(r.isObject(n)?(f=n.stack,u=t+c(f,n)):u=t+String(n),"function"==typeof s?s(u,i):("function"==typeof console.log||"object"==typeof console.log)&&console.log(u))}function rt(n,t,i,r){var u=!1;try{"function"==typeof t&&(u=!0,"rejectionHandled"===n?t(r):t(i,r))}catch(e){f.throwLater(e)}"unhandledRejection"===n?l(n,i,r)||u||it(i,"Unhandled rejection "):l(n,r)}function ut(n){var t,i,u;if("function"==typeof n)t="[function "+(n.name||"anonymous")+"]";else{if(t=n&&"function"==typeof n.toString?n.toString():r.toString(n),i=/\[object [a-zA-Z0-9$_]+\]/,i.test(t))try{u=JSON.stringify(n);t=u}catch(f){}0===t.length&&(t="(empty array)")}return"(<"+hi(t)+">, no stack trace)"}function hi(n){var t=41;return n.length<t?n:n.substr(0,t-3)+"..."}function p(){return"function"==typeof g}function w(n){var t=n.match(bi);if(t)return{fileName:t[1],line:parseInt(t[2],10)}}function ci(n,t){var r,i;if(p()){for(var u,o,s=n.stack.split("\n"),h=t.stack.split("\n"),f=-1,e=-1,r=0;r<s.length;++r)if(i=w(s[r]),i){u=i.fileName;f=i.line;break}for(r=0;r<h.length;++r)if(i=w(h[r]),i){o=i.fileName;e=i.line;break}0>f||0>e||!u||!o||u!==o||f>=e||(d=function(n){if(st.test(n))return!0;var t=w(n);return t&&t.fileName===u&&f<=t.line&&t.line<=e?!0:!1})}}function e(n){this._parent=n;this._promisesCreated=0;var t=this._length=1+(void 0===n?0:n._length);g(this,e);t>32&&this.uncycle()}var ft,et,s,ot=t._getDomain,f=t._async,li=n("./errors").Warning,r=n("./util"),ai=r.canAttachTrace,st=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,vi=/\((?:timers\.js):\d+:\d+\)/,yi=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,h=null,c=null,ht=!1,ct=!(0==r.env("BLUEBIRD_DEBUG")||!r.env("BLUEBIRD_DEBUG")&&"development"!==r.env("NODE_ENV")),lt=!(0==r.env("BLUEBIRD_WARNINGS")||!ct&&!r.env("BLUEBIRD_WARNINGS")),pi=!(0==r.env("BLUEBIRD_LONG_STACK_TRACES")||!ct&&!r.env("BLUEBIRD_LONG_STACK_TRACES")),b=0!=r.env("BLUEBIRD_W_FORGOTTEN_RETURN")&&(lt||!!r.env("BLUEBIRD_W_FORGOTTEN_RETURN")),k,g,u;t.prototype.suppressUnhandledRejections=function(){var n=this._target();n._bitField=-1048577&n._bitField|524288};t.prototype._ensurePossibleRejectionHandled=function(){0==(524288&this._bitField)&&(this._setRejectionIsUnhandled(),f.invokeLater(this._notifyUnhandledRejection,this,void 0))};t.prototype._notifyUnhandledRejectionIsHandled=function(){rt("rejectionHandled",ft,void 0,this)};t.prototype._setReturnedNonUndefined=function(){this._bitField=268435456|this._bitField};t.prototype._returnedNonUndefined=function(){return 0!=(268435456&this._bitField)};t.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var n=this._settledValue();this._setUnhandledRejectionIsNotified();rt("unhandledRejection",et,n,this)}};t.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=262144|this._bitField};t.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=-262145&this._bitField};t.prototype._isUnhandledRejectionNotified=function(){return(262144&this._bitField)>0};t.prototype._setRejectionIsUnhandled=function(){this._bitField=1048576|this._bitField};t.prototype._unsetRejectionIsUnhandled=function(){this._bitField=-1048577&this._bitField;this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())};t.prototype._isRejectionUnhandled=function(){return(1048576&this._bitField)>0};t.prototype._warn=function(n,t,i){return a(n,t,i||this)};t.onPossiblyUnhandledRejection=function(n){var t=ot();et="function"==typeof n?null===t?n:r.domainBind(t,n):void 0};t.onUnhandledRejectionHandled=function(n){var t=ot();ft="function"==typeof n?null===t?n:r.domainBind(t,n):void 0};k=function(){};t.longStackTraces=function(){if(f.haveItemsQueued()&&!u.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");if(!u.longStackTraces&&p()){var n=t.prototype._captureStackTrace,r=t.prototype._attachExtraTrace;u.longStackTraces=!0;k=function(){if(f.haveItemsQueued()&&!u.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");t.prototype._captureStackTrace=n;t.prototype._attachExtraTrace=r;i.deactivateLongStackTraces();f.enableTrampoline();u.longStackTraces=!1};t.prototype._captureStackTrace=ti;t.prototype._attachExtraTrace=ii;i.activateLongStackTraces();f.disableTrampolineIfNecessary()}};t.hasLongStackTraces=function(){return u.longStackTraces&&p()};var at=function(){var n;try{return"function"==typeof CustomEvent?(n=new CustomEvent("CustomEvent"),r.global.dispatchEvent(n),function(n,t){var i=new CustomEvent(n.toLowerCase(),{detail:t,cancelable:!0});return!r.global.dispatchEvent(i)}):"function"==typeof Event?(n=new Event("CustomEvent"),r.global.dispatchEvent(n),function(n,t){var i=new Event(n.toLowerCase(),{cancelable:!0});return i.detail=t,!r.global.dispatchEvent(i)}):(n=document.createEvent("CustomEvent"),n.initCustomEvent("testingtheevent",!1,!0,{}),r.global.dispatchEvent(n),function(n,t){var i=document.createEvent("CustomEvent");return i.initCustomEvent(n.toLowerCase(),!1,!0,t),!r.global.dispatchEvent(i)})}catch(t){}return function(){return!1}}(),vt=function(){return r.isNode?function(){return process.emit.apply(process,arguments)}:r.global?function(n){var i="on"+n.toLowerCase(),t=r.global[i];return t?(t.apply(r.global,[].slice.call(arguments,1)),!0):!1}:function(){return!1}}(),wi={promiseCreated:o,promiseFulfilled:o,promiseRejected:o,promiseResolved:o,promiseCancelled:o,promiseChained:function(n,t,i){return{promise:t,child:i}},warning:function(n,t){return{warning:t}},unhandledRejection:function(n,t,i){return{reason:t,promise:i}},rejectionHandled:o},l=function(n){var i=!1,t;try{i=vt.apply(null,arguments)}catch(r){f.throwLater(r);i=!0}t=!1;try{t=at(n,wi[n].apply(null,arguments))}catch(r){f.throwLater(r);t=!0}return t||i};t.config=function(n){if(n=Object(n),"longStackTraces"in n&&(n.longStackTraces?t.longStackTraces():!n.longStackTraces&&t.hasLongStackTraces()&&k()),"warnings"in n){var i=n.warnings;u.warnings=!!i;b=u.warnings;r.isObject(i)&&"wForgottenReturn"in i&&(b=!!i.wForgottenReturn)}if("cancellation"in n&&n.cancellation&&!u.cancellation){if(f.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");t.prototype._clearCancellationData=dt;t.prototype._propagateFrom=tt;t.prototype._onCancel=bt;t.prototype._setOnCancel=kt;t.prototype._attachCancellationCallback=wt;t.prototype._execute=pt;yt=tt;u.cancellation=!0}return"monitoring"in n&&(n.monitoring&&!u.monitoring?(u.monitoring=!0,t.prototype._fireEvent=l):!n.monitoring&&u.monitoring&&(u.monitoring=!1,t.prototype._fireEvent=nt)),t};t.prototype._fireEvent=nt;t.prototype._execute=function(n,t,i){try{n(t,i)}catch(r){return r}};t.prototype._onCancel=function(){};t.prototype._setOnCancel=function(){};t.prototype._attachCancellationCallback=function(){};t.prototype._captureStackTrace=function(){};t.prototype._attachExtraTrace=function(){};t.prototype._clearCancellationData=function(){};t.prototype._propagateFrom=function(){};var yt=gt,d=function(){return!1},bi=/[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/;return r.inherits(e,Error),i.CapturedTrace=e,e.prototype.uncycle=function(){var u=this._length,s,n,c,i,r,h,e;if(!(2>u)){for(var t=[],o={},n=0,f=this;void 0!==f;++n)t.push(f),f=f._parent;for(u=this._length=n,n=u-1;n>=0;--n)s=t[n].stack,void 0===o[s]&&(o[s]=n);for(n=0;u>n;++n)if(c=t[n].stack,i=o[c],void 0!==i&&i!==n){for(i>0&&(t[i-1]._parent=void 0,t[i-1]._length=1),t[n]._parent=void 0,t[n]._length=1,r=n>0?t[n-1]:this,u-1>i?(r._parent=t[i+1],r._parent.uncycle(),r._length=r._parent._length+1):(r._parent=void 0,r._length=1),h=r._length+1,e=n-2;e>=0;--e)t[e]._length=h,h++;return}}},e.prototype.attachExtraTrace=function(n){if(!n.__stackCleaned__){this.uncycle();for(var u=y(n),f=u.message,t=[u.stack],i=this;void 0!==i;)t.push(v(i.stack.split("\n"))),i=i._parent;oi(t);ei(t);r.notEnumerableProp(n,"stack",fi(f,t));r.notEnumerableProp(n,"__stackCleaned__",!0)}},g=function(){var i=/^\s*at\s*/,t=function(n,t){return"string"==typeof n?n:void 0!==t.name&&void 0!==t.message?t.toString():ut(t)},r,n,u;if("number"==typeof Error.stackTraceLimit&&"function"==typeof Error.captureStackTrace)return Error.stackTraceLimit+=6,h=i,c=t,r=Error.captureStackTrace,d=function(n){return st.test(n)},function(n,t){Error.stackTraceLimit+=6;r(n,t);Error.stackTraceLimit-=6};if(n=new Error,"string"==typeof n.stack&&n.stack.split("\n")[0].indexOf("stackDetection@")>=0)return h=/@/,c=t,ht=!0,function(n){n.stack=(new Error).stack};try{throw new Error;}catch(f){u="stack"in f}return"stack"in n||!u||"number"!=typeof Error.stackTraceLimit?(c=function(n,t){return"string"==typeof n?n:"object"!=typeof t&&"function"!=typeof t||void 0===t.name||void 0===t.message?ut(t):t.toString()},null):(h=i,c=t,function(n){Error.stackTraceLimit+=6;try{throw new Error;}catch(t){n.stack=t.stack}Error.stackTraceLimit-=6})}([]),"undefined"!=typeof console&&"undefined"!=typeof console.warn&&(s=function(n){console.warn(n)},r.isNode&&process.stderr.isTTY?s=function(n,t){var i=t?"\x1b[33m":"\x1b[31m";console.warn(i+n+"\x1b[0m\n")}:r.isNode||"string"!=typeof(new Error).stack||(s=function(n,t){console.warn("%c"+n,t?"color: darkorange":"color: red")})),u={warnings:lt,longStackTraces:!1,cancellation:!1,monitoring:!1},pi&&t.longStackTraces(),{longStackTraces:function(){return u.longStackTraces},warnings:function(){return u.warnings},cancellation:function(){return u.cancellation},monitoring:function(){return u.monitoring},propagateFromFunction:function(){return yt},boundValueFunction:function(){return ni},checkForgottenReturns:ri,setBounds:ci,warn:a,deprecated:ui,CapturedTrace:e,fireDomEvent:at,fireGlobalEvent:vt}}},{"./errors":12,"./util":36}],10:[function(n,t){"use strict";t.exports=function(n){function t(){return this.value}function i(){throw this.reason;}n.prototype["return"]=n.prototype.thenReturn=function(i){return i instanceof n&&i.suppressUnhandledRejections(),this._then(t,void 0,void 0,{value:i},void 0)};n.prototype["throw"]=n.prototype.thenThrow=function(n){return this._then(i,void 0,void 0,{reason:n},void 0)};n.prototype.catchThrow=function(n){if(arguments.length<=1)return this._then(void 0,i,void 0,{reason:n},void 0);var t=arguments[1],r=function(){throw t;};return this.caught(n,r)};n.prototype.catchReturn=function(i){var r,u;return arguments.length<=1?(i instanceof n&&i.suppressUnhandledRejections(),this._then(void 0,t,void 0,{value:i},void 0)):(r=arguments[1],r instanceof n&&r.suppressUnhandledRejections(),u=function(){return r},this.caught(i,u))}}},{}],11:[function(n,t){"use strict";t.exports=function(n,t){function r(){return f(this)}function u(n,r){return i(n,r,t,t)}var i=n.reduce,f=n.all;n.prototype.each=function(n){return i(this,n,t,0)._then(r,void 0,void 0,this,void 0)};n.prototype.mapSeries=function(n){return i(this,n,t,t)};n.each=function(n,u){return i(n,u,t,0)._then(r,void 0,void 0,n,void 0)};n.mapSeries=u}},{}],12:[function(n,t){"use strict";function r(n,t){function i(r){return this instanceof i?(u(this,"message","string"==typeof r?r:t),u(this,"name",n),void(Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this))):new i(r)}return y(i,Error),i}function e(n){return this instanceof e?(u(this,"name","OperationalError"),u(this,"message",n),this.cause=n,this.isOperational=!0,void(n instanceof Error?(u(this,"message",n.message),u(this,"stack",n.stack)):Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor))):new e(n)}var c,l,a=n("./es5"),p=a.freeze,v=n("./util"),y=v.inherits,u=v.notEnumerableProp,w=r("Warning","warning"),b=r("CancellationError","cancellation error"),k=r("TimeoutError","timeout error"),o=r("AggregateError","aggregate error"),s,f,h,i;try{c=TypeError;l=RangeError}catch(d){c=r("TypeError","type error");l=r("RangeError","range error")}for(s="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "),f=0;f<s.length;++f)"function"==typeof Array.prototype[s[f]]&&(o.prototype[s[f]]=Array.prototype[s[f]]);a.defineProperty(o.prototype,"length",{value:0,configurable:!1,writable:!0,enumerable:!0});o.prototype.isOperational=!0;h=0;o.prototype.toString=function(){var r=Array(4*h+1).join(" "),f="\n"+r+"AggregateError of:\n",n;for(h++,r=Array(4*h+1).join(" "),n=0;n<this.length;++n){for(var u=this[n]===this?"[Circular AggregateError]":this[n]+"",t=u.split("\n"),i=0;i<t.length;++i)t[i]=r+t[i];u=t.join("\n");f+=u+"\n"}return h--,f};y(e,Error);i=Error.__BluebirdErrorTypes__;i||(i=p({CancellationError:b,TimeoutError:k,OperationalError:e,RejectionError:e,AggregateError:o}),a.defineProperty(Error,"__BluebirdErrorTypes__",{value:i,writable:!1,enumerable:!1,configurable:!1}));t.exports={Error:Error,TypeError:c,RangeError:l,CancellationError:i.CancellationError,OperationalError:i.OperationalError,TimeoutError:i.TimeoutError,AggregateError:i.AggregateError,Warning:w}},{"./es5":13,"./util":36}],13:[function(n,t){var i=function(){"use strict";return void 0===this}();if(i)t.exports={freeze:Object.freeze,defineProperty:Object.defineProperty,getDescriptor:Object.getOwnPropertyDescriptor,keys:Object.keys,names:Object.getOwnPropertyNames,getPrototypeOf:Object.getPrototypeOf,isArray:Array.isArray,isES5:i,propertyIsWritable:function(n,t){var i=Object.getOwnPropertyDescriptor(n,t);return!(i&&!i.writable&&!i.set)}};else{var u={}.hasOwnProperty,f={}.toString,e={}.constructor.prototype,r=function(n){var i=[],t;for(t in n)u.call(n,t)&&i.push(t);return i},o=function(n,t){return{value:n[t]}},s=function(n,t,i){return n[t]=i.value,n},h=function(n){return n},c=function(n){try{return Object(n).constructor.prototype}catch(t){return e}},l=function(n){try{return"[object Array]"===f.call(n)}catch(t){return!1}};t.exports={isArray:l,keys:r,names:r,defineProperty:s,getDescriptor:o,freeze:h,getPrototypeOf:c,isES5:i,propertyIsWritable:function(){return!0}}}},{}],14:[function(n,t){"use strict";t.exports=function(n,t){var i=n.map;n.prototype.filter=function(n,r){return i(this,n,r,t)};n.filter=function(n,r,u){return i(n,r,u,t)}}},{}],15:[function(n,t){"use strict";t.exports=function(t,i,r){function o(n,t,i){this.promise=n;this.type=t;this.handler=i;this.called=!1;this.cancelPromise=null}function h(n){this.finallyHandler=n}function e(n,t){return null!=n.cancelPromise?(arguments.length>1?n.cancelPromise._reject(t):n.cancelPromise._cancel(),n.cancelPromise=null,!0):!1}function c(){return u.call(this,this.promise._target()._settledValue())}function l(n){if(!e(this,n))return(f.e=n,f)}function u(n){var u=this.promise,y=this.handler,s,o,v;if(!this.called){if(this.called=!0,s=this.isFinallyHandler()?y.call(u._boundValue()):y.call(u._boundValue(),n),s===r)return s;if(void 0!==s&&(u._setReturnedNonUndefined(),o=i(s,u),o instanceof t)){if(null!=this.cancelPromise){if(o._isCancelled())return v=new a("late cancellation observer"),u._attachExtraTrace(v),f.e=v,f;o.isPending()&&o._attachCancellationCallback(new h(this))}return o._then(c,l,void 0,this,void 0)}}return u.isRejected()?(e(this),f.e=n,f):(e(this),n)}var s=n("./util"),a=t.CancellationError,f=s.errorObj,v=n("./catch_filter")(r);return o.prototype.isFinallyHandler=function(){return 0===this.type},h.prototype._resultCancelled=function(){e(this.finallyHandler)},t.prototype._passThrough=function(n,t,i,r){return"function"!=typeof n?this.then():this._then(i,r,void 0,new o(this,t,n),void 0)},t.prototype.lastly=t.prototype["finally"]=function(n){return this._passThrough(n,0,u,u)},t.prototype.tap=function(n){return this._passThrough(n,1,u)},t.prototype.tapCatch=function(n){var e=arguments.length,i,r,o,f,h;if(1===e)return this._passThrough(n,1,void 0,u);for(r=new Array(e-1),o=0,i=0;e-1>i;++i){if(f=arguments[i],!s.isObject(f))return t.reject(new TypeError("tapCatch statement predicate: expecting an object but got "+s.classString(f)));r[o++]=f}return r.length=o,h=arguments[i],this._passThrough(v(r,h,this),1,void 0,u)},o}},{"./catch_filter":7,"./util":36}],16:[function(n,t){"use strict";t.exports=function(t,i,r,u,f,e){function v(n,i,r){for(var e,h,o,f=0;f<i.length;++f){if(r._pushContext(),e=s(i[f])(n),r._popContext(),e===l)return r._pushContext(),h=t.reject(l.e),r._popContext(),h;if(o=u(e,r),o instanceof t)return o}return null}function o(n,i,u,f){var o,s,h;e.cancellation()?(o=new t(r),s=this._finallyPromise=new t(r),this._promise=o.lastly(function(){return s}),o._captureStackTrace(),o._setOnCancel(this)):(h=this._promise=new t(r),h._captureStackTrace());this._stack=f;this._generatorFunction=n;this._receiver=i;this._generator=void 0;this._yieldHandlers="function"==typeof u?[u].concat(a):a;this._yieldedPromise=null;this._cancellationPhase=!1}var y=n("./errors"),c=y.TypeError,h=n("./util"),l=h.errorObj,s=h.tryCatch,a=[];h.inherits(o,f);o.prototype._isResolved=function(){return null===this._promise};o.prototype._cleanup=function(){this._promise=this._generator=null;e.cancellation()&&null!==this._finallyPromise&&(this._finallyPromise._fulfill(),this._finallyPromise=null)};o.prototype._promiseCancelled=function(){var i,r,n;this._isResolved()||(r="undefined"!=typeof this._generator["return"],r?(this._promise._pushContext(),i=s(this._generator["return"]).call(this._generator,void 0),this._promise._popContext()):(n=new t.CancellationError("generator .return() sentinel"),t.coroutine.returnSentinel=n,this._promise._attachExtraTrace(n),this._promise._pushContext(),i=s(this._generator["throw"]).call(this._generator,n),this._promise._popContext()),this._cancellationPhase=!0,this._yieldedPromise=null,this._continue(i))};o.prototype._promiseFulfilled=function(n){this._yieldedPromise=null;this._promise._pushContext();var t=s(this._generator.next).call(this._generator,n);this._promise._popContext();this._continue(t)};o.prototype._promiseRejected=function(n){this._yieldedPromise=null;this._promise._attachExtraTrace(n);this._promise._pushContext();var t=s(this._generator["throw"]).call(this._generator,n);this._promise._popContext();this._continue(t)};o.prototype._resultCancelled=function(){if(this._yieldedPromise instanceof t){var n=this._yieldedPromise;this._yieldedPromise=null;n.cancel()}};o.prototype.promise=function(){return this._promise};o.prototype._run=function(){this._generator=this._generatorFunction.call(this._receiver);this._receiver=this._generatorFunction=void 0;this._promiseFulfilled(void 0)};o.prototype._continue=function(n){var r=this._promise,f,i,e;if(n===l)return this._cleanup(),this._cancellationPhase?r.cancel():r._rejectCallback(n.e,!1);if(f=n.value,n.done===!0)return this._cleanup(),this._cancellationPhase?r.cancel():r._resolveCallback(f);if(i=u(f,this._promise),!(i instanceof t)&&(i=v(i,this._yieldHandlers,this._promise),null===i))return void this._promiseRejected(new c("A value %s was yielded that could not be treated as a promise\n\n See http://goo.gl/MqrFmX\n\n".replace("%s",String(f))+"From coroutine:\n"+this._stack.split("\n").slice(1,-7).join("\n")));i=i._target();e=i._bitField;0==(50397184&e)?(this._yieldedPromise=i,i._proxy(this,null)):0!=(33554432&e)?t._async.invoke(this._promiseFulfilled,this,i._value()):0!=(16777216&e)?t._async.invoke(this._promiseRejected,this,i._reason()):this._promiseCancelled()};t.coroutine=function(n,t){if("function"!=typeof n)throw new c("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var i=Object(t).yieldHandler,r=o,u=(new Error).stack;return function(){var f=n.apply(this,arguments),t=new r(void 0,void 0,i,u),e=t.promise();return t._generator=f,t._promiseFulfilled(void 0),e}};t.coroutine.addYieldHandler=function(n){if("function"!=typeof n)throw new c("expecting a function but got "+h.classString(n));a.push(n)};t.spawn=function(n){if(e.deprecated("Promise.spawn()","Promise.coroutine()"),"function"!=typeof n)return i("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var r=new o(n,this),u=r.promise();return r._run(t.spawn),u}}},{"./errors":12,"./util":36}],17:[function(n,t){"use strict";t.exports=function(t,i){var r=n("./util");r.canEvaluate;r.tryCatch;r.errorObj;t.join=function(){var n,r=arguments.length-1,u,t;return r>0&&"function"==typeof arguments[r]&&(n=arguments[r]),u=[].slice.call(arguments),n&&u.pop(),t=new i(u).promise(),void 0!==n?t.spread(n):t}}},{"./util":36}],18:[function(n,t){"use strict";t.exports=function(t,i,r,u,f,e){function o(n,t,i,r){this.constructor$(n);this._promise._captureStackTrace();var u=c();this._callback=null===u?t:s.domainBind(u,t);this._preservedValues=r===f?new Array(this.length()):null;this._limit=i;this._inFlight=0;this._queue=[];v.invoke(this._asyncInit,this,void 0)}function h(n,i,u,f){if("function"!=typeof i)return r("expecting a function but got "+s.classString(i));var e=0;if(void 0!==u){if("object"!=typeof u||null===u)return t.reject(new TypeError("options argument must be an object but it is "+s.classString(u)));if("number"!=typeof u.concurrency)return t.reject(new TypeError("'concurrency' must be a number but it is "+s.classString(u.concurrency)));e=u.concurrency}return e="number"==typeof e&&isFinite(e)&&e>=1?e:0,new o(n,i,e,f).promise()}var c=t._getDomain,s=n("./util"),l=s.tryCatch,a=s.errorObj,v=t._async;s.inherits(o,i);o.prototype._asyncInit=function(){this._init$(void 0,-2)};o.prototype._init=function(){};o.prototype._promiseFulfilled=function(n,i){var o=this._values,y=this.length(),s=this._preservedValues,h=this._limit,f,p,r,v,w;if(0>i){if(i=-1*i-1,o[i]=n,h>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(h>=1&&this._inFlight>=h)return o[i]=n,this._queue.push(i),!1;null!==s&&(s[i]=n);var c=this._promise,b=this._callback,k=c._boundValue();if(c._pushContext(),f=l(b).call(k,n,i,y),p=c._popContext(),e.checkForgottenReturns(f,p,null!==s?"Promise.filter":"Promise.map",c),f===a)return this._reject(f.e),!0;if(r=u(f,this._promise),r instanceof t){if(r=r._target(),v=r._bitField,0==(50397184&v))return h>=1&&this._inFlight++,o[i]=r,r._proxy(this,-1*(i+1)),!1;if(0==(33554432&v))return 0!=(16777216&v)?(this._reject(r._reason()),!0):(this._cancel(),!0);f=r._value()}o[i]=f}return w=++this._totalResolved,w>=y?(null!==s?this._filter(o,s):this._resolve(o),!0):!1};o.prototype._drainQueue=function(){for(var n,t=this._queue,i=this._limit,r=this._values;t.length>0&&this._inFlight<i;){if(this._isResolved())return;n=t.pop();this._promiseFulfilled(r[n],n)}};o.prototype._filter=function(n,t){for(var u=t.length,r=new Array(u),f=0,i=0;u>i;++i)n[i]&&(r[f++]=t[i]);r.length=f;this._resolve(r)};o.prototype.preservedValues=function(){return this._preservedValues};t.prototype.map=function(n,t){return h(this,n,t,null)};t.map=function(n,t,i,r){return h(n,t,i,r)}}},{"./util":36}],19:[function(n,t){"use strict";t.exports=function(t,i,r,u,f){var e=n("./util"),o=e.tryCatch;t.method=function(n){if("function"!=typeof n)throw new t.TypeError("expecting a function but got "+e.classString(n));return function(){var r=new t(i),u,e;return r._captureStackTrace(),r._pushContext(),u=o(n).apply(this,arguments),e=r._popContext(),f.checkForgottenReturns(u,e,"Promise.method",r),r._resolveFromSyncValue(u),r}};t.attempt=t["try"]=function(n){var r,s,h,c,l;return"function"!=typeof n?u("expecting a function but got "+e.classString(n)):(r=new t(i),r._captureStackTrace(),r._pushContext(),arguments.length>1?(f.deprecated("calling Promise.try with more than 1 argument"),h=arguments[1],c=arguments[2],s=e.isArray(h)?o(n).apply(c,h):o(n).call(c,h)):s=o(n)(),l=r._popContext(),f.checkForgottenReturns(s,l,"Promise.try",r),r._resolveFromSyncValue(s),r)};t.prototype._resolveFromSyncValue=function(n){n===e.errorObj?this._rejectCallback(n.e,!1):this._resolveCallback(n,!0)}}},{"./util":36}],20:[function(n,t){"use strict";function u(n){return n instanceof Error&&r.getPrototypeOf(n)===Error.prototype}function f(n){var t,o,f,e;if(u(n)){for(t=new h(n),t.name=n.name,t.message=n.message,t.stack=n.stack,o=r.keys(n),f=0;f<o.length;++f)e=o[f],c.test(e)||(t[e]=n[e]);return t}return i.markAsOriginatingFromRejection(n),n}function e(n,t){return function(i,r){var u,e;null!==n&&(i?(u=f(o(i)),n._attachExtraTrace(u),n._reject(u)):t?(e=[].slice.call(arguments,1),n._fulfill(e)):n._fulfill(r),n=null)}}var i=n("./util"),o=i.maybeWrapAsError,s=n("./errors"),h=s.OperationalError,r=n("./es5"),c=/^(?:name|message|stack|cause)$/;t.exports=e},{"./errors":12,"./es5":13,"./util":36}],21:[function(n,t){"use strict";t.exports=function(t){function o(n,t){var s=this,o;if(!r.isArray(n))return e.call(s,n,t);o=i(t).apply(s._boundValue(),[null].concat(n));o===f&&u.throwLater(o.e)}function e(n,t){var o=this,r=o._boundValue(),e=void 0===n?i(t).call(r,null):i(t).call(r,null,n);e===f&&u.throwLater(e.e)}function s(n,t){var o=this,r,e;n||(r=new Error(n+""),r.cause=n,n=r);e=i(t).call(o._boundValue(),n);e===f&&u.throwLater(e.e)}var r=n("./util"),u=t._async,i=r.tryCatch,f=r.errorObj;t.prototype.asCallback=t.prototype.nodeify=function(n,t){if("function"==typeof n){var i=e;void 0!==t&&Object(t).spread&&(i=o);this._then(i,s,void 0,this,n)}return this}}},{"./util":36}],22:[function(n,t){"use strict";t.exports=function(){function y(){}function ut(n,t){if(null==n||n.constructor!==i)throw new a("the promise constructor cannot be invoked directly\n\n See http://goo.gl/MqrFmX\n");if("function"!=typeof t)throw new a("expecting a function but got "+r.classString(t));}function i(n){n!==u&&ut(this,n);this._bitField=0;this._fulfillmentHandler0=void 0;this._rejectionHandler0=void 0;this._promise0=void 0;this._receiver0=void 0;this._resolveFromExecutor(n);this._promiseCreated();this._fireEvent("promiseCreated",this)}function ft(n){this.promise._resolveCallback(n)}function et(n){this.promise._rejectCallback(n,!1)}function h(n){var t=new i(u);t._fulfillmentHandler0=n;t._rejectionHandler0=n;t._promise0=n;t._receiver0=n}var p,w=function(){return new a("circular promise resolution chain\n\n See http://goo.gl/MqrFmX\n")},b=function(){return new i.PromiseInspection(this._target())},o=function(n){return i.reject(new a(n))},d={},r=n("./util"),l,a,g;p=r.isNode?function(){var n=process.domain;return void 0===n&&(n=null),n}:function(){return null};r.notEnumerableProp(i,"_getDomain",p);var ot=n("./es5"),tt=n("./async"),c=new tt;ot.defineProperty(i,"_async",{value:c});l=n("./errors");a=i.TypeError=l.TypeError;i.RangeError=l.RangeError;g=i.CancellationError=l.CancellationError;i.TimeoutError=l.TimeoutError;i.OperationalError=l.OperationalError;i.RejectionError=l.OperationalError;i.AggregateError=l.AggregateError;var u=function(){},it={},nt={},e=n("./thenables")(i,u),s=n("./promise_array")(i,u,e,o,y),rt=n("./context")(i),st=rt.create,f=n("./debuggability")(i,rt),ht=(f.CapturedTrace,n("./finally")(i,e,nt)),ct=n("./catch_filter")(nt),lt=n("./nodeback"),v=r.errorObj,k=r.tryCatch;return i.prototype.toString=function(){return"[object Promise]"},i.prototype.caught=i.prototype["catch"]=function(n){var f=arguments.length,t,i,e,u;if(f>1){for(i=new Array(f-1),e=0,t=0;f-1>t;++t){if(u=arguments[t],!r.isObject(u))return o("Catch statement predicate: expecting an object but got "+r.classString(u));i[e++]=u}return i.length=e,n=arguments[t],this.then(void 0,ct(i,n,this))}return this.then(void 0,n)},i.prototype.reflect=function(){return this._then(b,b,void 0,this,void 0)},i.prototype.then=function(n,t){if(f.warnings()&&arguments.length>0&&"function"!=typeof n&&"function"!=typeof t){var i=".then() only accepts functions but was passed: "+r.classString(n);arguments.length>1&&(i+=", "+r.classString(t));this._warn(i)}return this._then(n,t,void 0,void 0,void 0)},i.prototype.done=function(n,t){var i=this._then(n,t,void 0,void 0,void 0);i._setIsFinal()},i.prototype.spread=function(n){return"function"!=typeof n?o("expecting a function but got "+r.classString(n)):this.all()._then(n,void 0,void 0,it,void 0)},i.prototype.toJSON=function(){var n={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(n.fulfillmentValue=this.value(),n.isFulfilled=!0):this.isRejected()&&(n.rejectionReason=this.reason(),n.isRejected=!0),n},i.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new s(this).promise()},i.prototype.error=function(n){return this.caught(r.originatesFromRejection,n)},i.getNewLibraryCopy=t.exports,i.is=function(n){return n instanceof i},i.fromNode=i.fromCallback=function(n){var t=new i(u),f,r;return t._captureStackTrace(),f=arguments.length>1?!!Object(arguments[1]).multiArgs:!1,r=k(n)(lt(t,f)),r===v&&t._rejectCallback(r.e,!0),t._isFateSealed()||t._setAsyncGuaranteed(),t},i.all=function(n){return new s(n).promise()},i.cast=function(n){var t=e(n);return t instanceof i||(t=new i(u),t._captureStackTrace(),t._setFulfilled(),t._rejectionHandler0=n),t},i.resolve=i.fulfilled=i.cast,i.reject=i.rejected=function(n){var t=new i(u);return t._captureStackTrace(),t._rejectCallback(n,!0),t},i.setScheduler=function(n){if("function"!=typeof n)throw new a("expecting a function but got "+r.classString(n));return c.setScheduler(n)},i.prototype._then=function(n,t,f,e,o){var b=void 0!==o,h=b?o:new i(u),s=this._target(),v=s._bitField,y,l,a,w;return b||(h._propagateFrom(this,3),h._captureStackTrace(),void 0===e&&0!=(2097152&this._bitField)&&(e=0!=(50397184&v)?this._boundValue():s===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,h)),y=p(),0!=(50397184&v)?(w=s._settlePromiseCtx,0!=(33554432&v)?(a=s._rejectionHandler0,l=n):0!=(16777216&v)?(a=s._fulfillmentHandler0,l=t,s._unsetRejectionIsUnhandled()):(w=s._settlePromiseLateCancellationObserver,a=new g("late cancellation observer"),s._attachExtraTrace(a),l=t),c.invoke(w,s,{handler:null===y?l:"function"==typeof l&&r.domainBind(y,l),promise:h,receiver:e,value:a})):s._addCallbacks(n,t,h,e,y),h},i.prototype._length=function(){return 65535&this._bitField},i.prototype._isFateSealed=function(){return 0!=(117506048&this._bitField)},i.prototype._isFollowing=function(){return 67108864==(67108864&this._bitField)},i.prototype._setLength=function(n){this._bitField=-65536&this._bitField|65535&n},i.prototype._setFulfilled=function(){this._bitField=33554432|this._bitField;this._fireEvent("promiseFulfilled",this)},i.prototype._setRejected=function(){this._bitField=16777216|this._bitField;this._fireEvent("promiseRejected",this)},i.prototype._setFollowing=function(){this._bitField=67108864|this._bitField;this._fireEvent("promiseResolved",this)},i.prototype._setIsFinal=function(){this._bitField=4194304|this._bitField},i.prototype._isFinal=function(){return(4194304&this._bitField)>0},i.prototype._unsetCancelled=function(){this._bitField=-65537&this._bitField},i.prototype._setCancelled=function(){this._bitField=65536|this._bitField;this._fireEvent("promiseCancelled",this)},i.prototype._setWillBeCancelled=function(){this._bitField=8388608|this._bitField},i.prototype._setAsyncGuaranteed=function(){c.hasCustomScheduler()||(this._bitField=134217728|this._bitField)},i.prototype._receiverAt=function(n){var t=0===n?this._receiver0:this[4*n-1];if(t!==d)return void 0===t&&this._isBound()?this._boundValue():t},i.prototype._promiseAt=function(n){return this[4*n-2]},i.prototype._fulfillmentHandlerAt=function(n){return this[4*n-4]},i.prototype._rejectionHandlerAt=function(n){return this[4*n-3]},i.prototype._boundValue=function(){},i.prototype._migrateCallback0=function(n){var i=(n._bitField,n._fulfillmentHandler0),r=n._rejectionHandler0,u=n._promise0,t=n._receiverAt(0);void 0===t&&(t=d);this._addCallbacks(i,r,u,t,null)},i.prototype._migrateCallbackAt=function(n,t){var r=n._fulfillmentHandlerAt(t),u=n._rejectionHandlerAt(t),f=n._promiseAt(t),i=n._receiverAt(t);void 0===i&&(i=d);this._addCallbacks(r,u,f,i,null)},i.prototype._addCallbacks=function(n,t,i,u,f){var e=this._length(),o;return(e>=65531&&(e=0,this._setLength(0)),0===e)?(this._promise0=i,this._receiver0=u,"function"==typeof n&&(this._fulfillmentHandler0=null===f?n:r.domainBind(f,n)),"function"==typeof t&&(this._rejectionHandler0=null===f?t:r.domainBind(f,t))):(o=4*e-4,this[o+2]=i,this[o+3]=u,"function"==typeof n&&(this[o+0]=null===f?n:r.domainBind(f,n)),"function"==typeof t&&(this[o+1]=null===f?t:r.domainBind(f,t))),this._setLength(e+1),e},i.prototype._proxy=function(n,t){this._addCallbacks(void 0,void 0,t,n,null)},i.prototype._resolveCallback=function(n,t){var u,r,f,s,o,h;if(0==(117506048&this._bitField)){if(n===this)return this._rejectCallback(w(),!1);if(u=e(n,this),!(u instanceof i))return this._fulfill(n);if(t&&this._propagateFrom(u,2),r=u._target(),r===this)return void this._reject(w());if(f=r._bitField,0==(50397184&f)){for(s=this._length(),s>0&&r._migrateCallback0(this),o=1;s>o;++o)r._migrateCallbackAt(this,o);this._setFollowing();this._setLength(0);this._setFollowee(r)}else 0!=(33554432&f)?this._fulfill(r._value()):0!=(16777216&f)?this._reject(r._reason()):(h=new g("late cancellation observer"),r._attachExtraTrace(h),this._reject(h))}},i.prototype._rejectCallback=function(n,t,i){var u=r.ensureErrorObject(n),e=u===n,o;e||i||!f.warnings()||(o="a promise was rejected with a non-error: "+r.classString(n),this._warn(o,!0));this._attachExtraTrace(u,t?e:!1);this._reject(n)},i.prototype._resolveFromExecutor=function(n){var t,i,r;n!==u&&(t=this,this._captureStackTrace(),this._pushContext(),i=!0,r=this._execute(n,function(n){t._resolveCallback(n)},function(n){t._rejectCallback(n,i)}),i=!1,this._popContext(),void 0!==r&&t._rejectCallback(r,!0))},i.prototype._settlePromiseFromHandler=function(n,t,i,u){var o=u._bitField,e,s;0==(65536&o)&&(u._pushContext(),t===it?i&&"number"==typeof i.length?e=k(n).apply(this._boundValue(),i):(e=v,e.e=new a("cannot .spread() a non-array: "+r.classString(i))):e=k(n).call(t,i),s=u._popContext(),o=u._bitField,0==(65536&o)&&(e===nt?u._reject(i):e===v?u._rejectCallback(e.e,!1):(f.checkForgottenReturns(e,s,"",u,this),u._resolveCallback(e))))},i.prototype._target=function(){for(var n=this;n._isFollowing();)n=n._followee();return n},i.prototype._followee=function(){return this._rejectionHandler0},i.prototype._setFollowee=function(n){this._rejectionHandler0=n},i.prototype._settlePromise=function(n,t,r,u){var f=n instanceof i,e=this._bitField,o=0!=(134217728&e);0!=(65536&e)?(f&&n._invokeInternalOnCancel(),r instanceof ht&&r.isFinallyHandler()?(r.cancelPromise=n,k(t).call(r,u)===v&&n._reject(v.e)):t===b?n._fulfill(b.call(r)):r instanceof y?r._promiseCancelled(n):f||n instanceof s?n._cancel():r.cancel()):"function"==typeof t?f?(o&&n._setAsyncGuaranteed(),this._settlePromiseFromHandler(t,r,u,n)):t.call(r,u,n):r instanceof y?r._isResolved()||(0!=(33554432&e)?r._promiseFulfilled(u,n):r._promiseRejected(u,n)):f&&(o&&n._setAsyncGuaranteed(),0!=(33554432&e)?n._fulfill(u):n._reject(u))},i.prototype._settlePromiseLateCancellationObserver=function(n){var r=n.handler,t=n.promise,f=n.receiver,u=n.value;"function"==typeof r?t instanceof i?this._settlePromiseFromHandler(r,f,u,t):r.call(f,u,t):t instanceof i&&t._reject(u)},i.prototype._settlePromiseCtx=function(n){this._settlePromise(n.promise,n.handler,n.receiver,n.value)},i.prototype._settlePromise0=function(n,t){var i=this._promise0,r=this._receiverAt(0);this._promise0=void 0;this._receiver0=void 0;this._settlePromise(i,n,r,t)},i.prototype._clearCallbackDataAtIndex=function(n){var t=4*n-4;this[t+2]=this[t+3]=this[t+0]=this[t+1]=void 0},i.prototype._fulfill=function(n){var t=this._bitField,i;if(!((117506048&t)>>>16)){if(n===this)return i=w(),this._attachExtraTrace(i),this._reject(i);this._setFulfilled();this._rejectionHandler0=n;(65535&t)>0&&(0!=(134217728&t)?this._settlePromises():c.settlePromises(this))}},i.prototype._reject=function(n){var t=this._bitField;if(!((117506048&t)>>>16))return this._setRejected(),this._fulfillmentHandler0=n,this._isFinal()?c.fatalError(n,r.isNode):void((65535&t)>0?c.settlePromises(this):this._ensurePossibleRejectionHandled())},i.prototype._fulfillPromises=function(n,t){for(var i=1;n>i;i++){var r=this._fulfillmentHandlerAt(i),u=this._promiseAt(i),f=this._receiverAt(i);this._clearCallbackDataAtIndex(i);this._settlePromise(u,r,f,t)}},i.prototype._rejectPromises=function(n,t){for(var i=1;n>i;i++){var r=this._rejectionHandlerAt(i),u=this._promiseAt(i),f=this._receiverAt(i);this._clearCallbackDataAtIndex(i);this._settlePromise(u,r,f,t)}},i.prototype._settlePromises=function(){var n=this._bitField,t=65535&n,i,r;t>0&&(0!=(16842752&n)?(i=this._fulfillmentHandler0,this._settlePromise0(this._rejectionHandler0,i,n),this._rejectPromises(t,i)):(r=this._rejectionHandler0,this._settlePromise0(this._fulfillmentHandler0,r,n),this._fulfillPromises(t,r)),this._setLength(0));this._clearCancellationData()},i.prototype._settledValue=function(){var n=this._bitField;return 0!=(33554432&n)?this._rejectionHandler0:0!=(16777216&n)?this._fulfillmentHandler0:void 0},i.defer=i.pending=function(){f.deprecated("Promise.defer","new Promise");var n=new i(u);return{promise:n,resolve:ft,reject:et}},r.notEnumerableProp(i,"_makeSelfResolutionError",w),n("./method")(i,u,e,o,f),n("./bind")(i,u,e,f),n("./cancel")(i,s,o,f),n("./direct_resolve")(i),n("./synchronous_inspection")(i),n("./join")(i,s,e,u,c,p),i.Promise=i,i.version="3.5.0",n("./map.js")(i,s,o,e,u,f),n("./call_get.js")(i),n("./using.js")(i,o,e,st,u,f),n("./timers.js")(i,u,f),n("./generators.js")(i,o,u,e,y,f),n("./nodeify.js")(i),n("./promisify.js")(i,u),n("./props.js")(i,s,e,o),n("./race.js")(i,u,e,o),n("./reduce.js")(i,s,o,e,u,f),n("./settle.js")(i,s,f),n("./some.js")(i,s,o),n("./filter.js")(i,u),n("./each.js")(i,u),n("./any.js")(i),r.toFastProperties(i),r.toFastProperties(i.prototype),h({a:1}),h({b:2}),h({c:3}),h(1),h(function(){}),h(void 0),h(!1),h(new i(u)),f.setBounds(tt.firstLineError,r.lastLineError),i}},{"./any.js":1,"./async":2,"./bind":3,"./call_get.js":5,"./cancel":6,"./catch_filter":7,"./context":8,"./debuggability":9,"./direct_resolve":10,"./each.js":11,"./errors":12,"./es5":13,"./filter.js":14,"./finally":15,"./generators.js":16,"./join":17,"./map.js":18,"./method":19,"./nodeback":20,"./nodeify.js":21,"./promise_array":23,"./promisify.js":24,"./props.js":25,"./race.js":27,"./reduce.js":28,"./settle.js":30,"./some.js":31,"./synchronous_inspection":32,"./thenables":33,"./timers.js":34,"./using.js":35,"./util":36}],23:[function(n,t){"use strict";t.exports=function(t,i,r,u,f){function s(n){switch(n){case-2:return[];case-3:return{};case-6:return new Map}}function e(n){var r=this._promise=new t(i);n instanceof t&&r._propagateFrom(n,3);r._setOnCancel(this);this._values=n;this._length=0;this._totalResolved=0;this._init(void 0,-2)}var o=n("./util");return o.isArray,o.inherits(e,f),e.prototype.length=function(){return this._length},e.prototype.promise=function(){return this._promise},e.prototype._init=function h(n,i){var f=r(this._values,this._promise),e,c;if(f instanceof t){if(f=f._target(),e=f._bitField,this._values=f,0==(50397184&e))return this._promise._setAsyncGuaranteed(),f._then(h,this._reject,void 0,this,i);if(0==(33554432&e))return 0!=(16777216&e)?this._reject(f._reason()):this._cancel();f=f._value()}return(f=o.asArray(f),null===f)?(c=u("expecting an array or an iterable object but got "+o.classString(f)).reason(),void this._promise._rejectCallback(c,!1)):0===f.length?void(-5===i?this._resolveEmptyArray():this._resolve(s(i))):void this._iterate(f)},e.prototype._iterate=function(n){var o=this.getActualLength(n.length),i;this._length=o;this._values=this.shouldCopyValues()?new Array(o):this._values;for(var s=this._promise,e=!1,f=null,u=0;o>u;++u)i=r(n[u],s),i instanceof t?(i=i._target(),f=i._bitField):f=null,e?null!==f&&i.suppressUnhandledRejections():null!==f?0==(50397184&f)?(i._proxy(this,u),this._values[u]=i):e=0!=(33554432&f)?this._promiseFulfilled(i._value(),u):0!=(16777216&f)?this._promiseRejected(i._reason(),u):this._promiseCancelled(u):e=this._promiseFulfilled(i,u);e||s._setAsyncGuaranteed()},e.prototype._isResolved=function(){return null===this._values},e.prototype._resolve=function(n){this._values=null;this._promise._fulfill(n)},e.prototype._cancel=function(){!this._isResolved()&&this._promise._isCancellable()&&(this._values=null,this._promise._cancel())},e.prototype._reject=function(n){this._values=null;this._promise._rejectCallback(n,!1)},e.prototype._promiseFulfilled=function(n,t){this._values[t]=n;var i=++this._totalResolved;return i>=this._length?(this._resolve(this._values),!0):!1},e.prototype._promiseCancelled=function(){return this._cancel(),!0},e.prototype._promiseRejected=function(n){return this._totalResolved++,this._reject(n),!0},e.prototype._resultCancelled=function(){var n,i;if(!this._isResolved())if(n=this._values,this._cancel(),n instanceof t)n.cancel();else for(i=0;i<n.length;++i)n[i]instanceof t&&n[i].cancel()},e.prototype.shouldCopyValues=function(){return!0},e.prototype.getActualLength=function(n){return n},e}},{"./util":36}],24:[function(n,t){"use strict";t.exports=function(t,i){function c(n){return!it.test(n)}function e(n){try{return n.__isPromisified__===!0}catch(t){return!1}}function l(n,t,i){var u=r.getDataPropertyOrDefault(n,t+i,tt);return u?e(u):!1}function a(n,t,i){for(var f,e,u,r=0;r<n.length;r+=2)if(f=n[r],i.test(f))for(e=f.replace(i,""),u=0;u<n.length;u+=2)if(n[u]===e)throw new s("Cannot promisify an API that has normal methods with '%s'-suffix\n\n See http://goo.gl/MqrFmX\n".replace("%s",t));}function v(n,t,i,u){for(var v=r.inheritedDataKeys(n),s=[],c=0;c<v.length;++c){var f=v[c],o=n[f],y=u===h?!0:h(f,o,n);"function"!=typeof o||e(o)||l(n,f,t)||!u(f,o,n,y)||s.push(f,o)}return a(s,t,i),s}function y(n,u,e,o,s,h){function l(){var e=u,r,o,s;u===f&&(e=this);r=new t(i);r._captureStackTrace();o="string"==typeof c&&this!==a?this[c]:n;s=b(r,h);try{o.apply(e,k(arguments,s))}catch(l){r._rejectCallback(d(l),!0,!0)}return r._isFateSealed()||r._setAsyncGuaranteed(),r}var a=function(){return this}(),c=n;return"string"==typeof c&&(n=o),r.notEnumerableProp(l,"__isPromisified__",!0),l}function o(n,t,i,e,o){for(var a,p=new RegExp(rt(t)+"$"),c=v(n,t,p,i),h=0,w=c.length;w>h;h+=2){var s=c[h],l=c[h+1],y=s+t;e===u?n[y]=u(s,f,s,l,t,o):(a=e(l,function(){return u(s,f,s,l,t,o)}),r.notEnumerableProp(a,"__isPromisified__",!0),n[y]=a)}return r.toFastProperties(n),n}function p(n,t,i){return u(n,t,void 0,n,null,i)}var w,f={},r=n("./util"),b=n("./nodeback"),k=r.withAppended,d=r.maybeWrapAsError,g=r.canEvaluate,s=n("./errors").TypeError,nt="Async",tt={__isPromisified__:!0},it=new RegExp("^(?:arity|length|name|arguments|caller|callee|prototype|__isPromisified__)$"),h=function(n){return r.isIdentifier(n)&&"_"!==n.charAt(0)&&"constructor"!==n},rt=function(n){return n.replace(/([$])/,"\\$")},u=g?w:y;t.promisify=function(n,t){if("function"!=typeof n)throw new s("expecting a function but got "+r.classString(n));if(e(n))return n;t=Object(t);var u=void 0===t.context?f:t.context,o=!!t.multiArgs,i=p(n,u,o);return r.copyDescriptors(n,i,c),i};t.promisifyAll=function(n,t){var l,i,f,e,a,c,v;if("function"!=typeof n&&"object"!=typeof n)throw new s("the target of promisifyAll must be an object or a function\n\n See http://goo.gl/MqrFmX\n");if(t=Object(t),l=!!t.multiArgs,i=t.suffix,"string"!=typeof i&&(i=nt),f=t.filter,"function"!=typeof f&&(f=h),e=t.promisifier,"function"!=typeof e&&(e=u),!r.isIdentifier(i))throw new RangeError("suffix must be a valid identifier\n\n See http://goo.gl/MqrFmX\n");for(a=r.inheritedDataKeys(n),c=0;c<a.length;++c)v=n[a[c]],"constructor"!==a[c]&&r.isClass(v)&&(o(v.prototype,i,f,e,l),o(v,i,f,e,l));return o(n,i,f,e,l)}}},{"./errors":12,"./nodeback":20,"./util":36}],25:[function(n,t){"use strict";t.exports=function(t,i,r,u){function f(n){var i,u=!1,f,r,t,o;if(void 0!==e&&n instanceof e)i=h(n),u=!0;else for(f=a.keys(n),r=f.length,i=new Array(2*r),t=0;r>t;++t)o=f[t],i[t]=n[o],i[t+r]=o;this.constructor$(i);this._isMap=u;this._init$(void 0,u?-6:-3)}function o(n){var e,i=r(n);return l(i)?(e=i instanceof t?i._then(t.props,void 0,void 0,void 0,void 0):new f(i).promise(),i instanceof t&&e._propagateFrom(i,2),e):u("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n")}var e,s=n("./util"),l=s.isObject,a=n("./es5"),h,c;"function"==typeof Map&&(e=Map);h=function(){function i(i,r){this[n]=i;this[n+t]=r;n++}var n=0,t=0;return function(r){t=r.size;n=0;var u=new Array(2*r.size);return r.forEach(i,u),u}}();c=function(n){for(var u,f,i=new e,r=n.length/2|0,t=0;r>t;++t)u=n[r+t],f=n[t],i.set(u,f);return i};s.inherits(f,i);f.prototype._init=function(){};f.prototype._promiseFulfilled=function(n,t){var u,i;if(this._values[t]=n,u=++this._totalResolved,u>=this._length){if(this._isMap)i=c(this._values);else{i={};for(var f=this.length(),r=0,e=this.length();e>r;++r)i[this._values[r+f]]=this._values[r]}return this._resolve(i),!0}return!1};f.prototype.shouldCopyValues=function(){return!1};f.prototype.getActualLength=function(n){return n>>1};t.prototype.props=function(){return o(this)};t.props=function(n){return o(n)}}},{"./es5":13,"./util":36}],26:[function(n,t){"use strict";function r(n,t,i,r,u){for(var f=0;u>f;++f)i[f+r]=n[f+t],n[f+t]=void 0}function i(n){this._capacity=n;this._length=0;this._front=0}i.prototype._willBeOverCapacity=function(n){return this._capacity<n};i.prototype._pushOne=function(n){var t=this.length(),i;this._checkCapacity(t+1);i=this._front+t&this._capacity-1;this[i]=n;this._length=t+1};i.prototype.push=function(n,t,i){var r=this.length()+3,u,f;if(this._willBeOverCapacity(r))return this._pushOne(n),this._pushOne(t),void this._pushOne(i);u=this._front+r-3;this._checkCapacity(r);f=this._capacity-1;this[u+0&f]=n;this[u+1&f]=t;this[u+2&f]=i;this._length=r};i.prototype.shift=function(){var n=this._front,t=this[n];return this[n]=void 0,this._front=n+1&this._capacity-1,this._length--,t};i.prototype.length=function(){return this._length};i.prototype._checkCapacity=function(n){this._capacity<n&&this._resizeTo(this._capacity<<1)};i.prototype._resizeTo=function(n){var t=this._capacity;this._capacity=n;var i=this._front,u=this._length,f=i+u&t-1;r(this,0,this,t,f)};t.exports=i},{}],27:[function(n,t){"use strict";t.exports=function(t,i,r,u){function f(n,f){var l=r(n),s,c;if(l instanceof t)return o(l);if(n=e.asArray(n),null===n)return u("expecting an array or an iterable object but got "+e.classString(n));s=new t(i);void 0!==f&&s._propagateFrom(f,3);for(var a=s._fulfill,v=s._reject,h=0,y=n.length;y>h;++h)c=n[h],(void 0!==c||h in n)&&t.cast(c)._then(a,v,void 0,s,null);return s}var e=n("./util"),o=function(n){return n.then(function(t){return f(t,n)})};t.race=function(n){return f(n,void 0)};t.prototype.race=function(){return f(this,void 0)}}},{"./util":36}],28:[function(n,t){"use strict";t.exports=function(t,i,r,u,f,e){function o(n,i,r,u){this.constructor$(n);var e=v();this._fn=null===e?i:s.domainBind(e,i);void 0!==r&&(r=t.resolve(r),r._attachCancellationCallback(this));this._initialValue=r;this._currentCancellable=null;this._eachValues=u===f?Array(this._length):0===u?null:void 0;this._promise._captureStackTrace();this._init$(void 0,-5)}function h(n,t){this.isFulfilled()?t._resolve(n):t._reject(n)}function c(n,t,i,u){if("function"!=typeof t)return r("expecting a function but got "+s.classString(t));var f=new o(n,t,i,u);return f.promise()}function a(n){this.accum=n;this.array._gotAccum(n);var i=u(this.value,this.array._promise);return i instanceof t?(this.array._currentCancellable=i,i._then(l,void 0,void 0,this,void 0)):l.call(this,i)}function l(n){var i=this.array,r=i._promise,f=y(i._fn),u,o;return r._pushContext(),u=void 0!==i._eachValues?f.call(r._boundValue(),n,this.index,this.length):f.call(r._boundValue(),this.accum,n,this.index,this.length),u instanceof t&&(i._currentCancellable=u),o=r._popContext(),e.checkForgottenReturns(u,o,void 0!==i._eachValues?"Promise.each":"Promise.reduce",r),u}var v=t._getDomain,s=n("./util"),y=s.tryCatch;s.inherits(o,i);o.prototype._gotAccum=function(n){void 0!==this._eachValues&&null!==this._eachValues&&n!==f&&this._eachValues.push(n)};o.prototype._eachComplete=function(n){return null!==this._eachValues&&this._eachValues.push(n),this._eachValues};o.prototype._init=function(){};o.prototype._resolveEmptyArray=function(){this._resolve(void 0!==this._eachValues?this._eachValues:this._initialValue)};o.prototype.shouldCopyValues=function(){return!1};o.prototype._resolve=function(n){this._promise._resolveCallback(n);this._values=null};o.prototype._resultCancelled=function(n){return n===this._initialValue?this._cancel():void(this._isResolved()||(this._resultCancelled$(),this._currentCancellable instanceof t&&this._currentCancellable.cancel(),this._initialValue instanceof t&&this._initialValue.cancel()))};o.prototype._iterate=function(n){var i,r,u,f;if(this._values=n,u=n.length,void 0!==this._initialValue?(i=this._initialValue,r=0):(i=t.resolve(n[0]),r=1),this._currentCancellable=i,!i.isRejected())for(;u>r;++r)f={accum:null,value:n[r],index:r,length:u,array:this},i=i._then(a,void 0,void 0,f,void 0);void 0!==this._eachValues&&(i=i._then(this._eachComplete,void 0,void 0,this,void 0));i._then(h,h,void 0,i,this)};t.prototype.reduce=function(n,t){return c(this,n,t,null)};t.reduce=function(n,t,i,r){return c(n,t,i,r)}}},{"./util":36}],29:[function(n,t){"use strict";var i,r=n("./util"),s=function(){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n");},u=r.getNativePromise(),f,e,o;r.isNode&&"undefined"==typeof MutationObserver?(f=global.setImmediate,e=process.nextTick,i=r.isRecentNode?function(n){f.call(global,n)}:function(n){e.call(process,n)}):"function"==typeof u&&"function"==typeof u.resolve?(o=u.resolve(),i=function(n){o.then(n)}):i="undefined"==typeof MutationObserver||"undefined"!=typeof window&&window.navigator&&(window.navigator.standalone||window.cordova)?"undefined"!=typeof setImmediate?function(n){setImmediate(n)}:"undefined"!=typeof setTimeout?function(n){setTimeout(n,0)}:s:function(){var t=document.createElement("div"),i={attributes:!0},n=!1,r=document.createElement("div"),f=new MutationObserver(function(){t.classList.toggle("foo");n=!1}),u;return f.observe(r,i),u=function(){n||(n=!0,r.classList.toggle("foo"))},function(n){var r=new MutationObserver(function(){r.disconnect();n()});r.observe(t,i);u()}}();t.exports=i},{"./util":36}],30:[function(n,t){"use strict";t.exports=function(t,i,r){function u(n){this.constructor$(n)}var f=t.PromiseInspection,e=n("./util");e.inherits(u,i);u.prototype._promiseResolved=function(n,t){this._values[n]=t;var i=++this._totalResolved;return i>=this._length?(this._resolve(this._values),!0):!1};u.prototype._promiseFulfilled=function(n,t){var i=new f;return i._bitField=33554432,i._settledValueField=n,this._promiseResolved(t,i)};u.prototype._promiseRejected=function(n,t){var i=new f;return i._bitField=16777216,i._settledValueField=n,this._promiseResolved(t,i)};t.settle=function(n){return r.deprecated(".settle()",".reflect()"),new u(n).promise()};t.prototype.settle=function(){return t.settle(this)}}},{"./util":36}],31:[function(n,t){"use strict";t.exports=function(t,i,r){function u(n){this.constructor$(n);this._howMany=0;this._unwrap=!1;this._initialized=!1}function f(n,t){if((0|t)!==t||0>t)return r("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");var i=new u(n),f=i.promise();return i.setHowMany(t),i.init(),f}var e=n("./util"),s=n("./errors").RangeError,h=n("./errors").AggregateError,c=e.isArray,o={};e.inherits(u,i);u.prototype._init=function(){if(this._initialized){if(0===this._howMany)return void this._resolve([]);this._init$(void 0,-5);var n=c(this._values);!this._isResolved()&&n&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}};u.prototype.init=function(){this._initialized=!0;this._init()};u.prototype.setUnwrap=function(){this._unwrap=!0};u.prototype.howMany=function(){return this._howMany};u.prototype.setHowMany=function(n){this._howMany=n};u.prototype._promiseFulfilled=function(n){return this._addFulfilled(n),this._fulfilled()===this.howMany()?(this._values.length=this.howMany(),1===this.howMany()&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0):!1};u.prototype._promiseRejected=function(n){return this._addRejected(n),this._checkOutcome()};u.prototype._promiseCancelled=function(){return this._values instanceof t||null==this._values?this._cancel():(this._addRejected(o),this._checkOutcome())};u.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var t=new h,n=this.length();n<this._values.length;++n)this._values[n]!==o&&t.push(this._values[n]);return t.length>0?this._reject(t):this._cancel(),!0}return!1};u.prototype._fulfilled=function(){return this._totalResolved};u.prototype._rejected=function(){return this._values.length-this.length()};u.prototype._addRejected=function(n){this._values.push(n)};u.prototype._addFulfilled=function(n){this._values[this._totalResolved++]=n};u.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()};u.prototype._getRangeError=function(n){var t="Input array must contain at least "+this._howMany+" items but contains only "+n+" items";return new s(t)};u.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))};t.some=function(n,t){return f(n,t)};t.prototype.some=function(n){return f(this,n)};t._SomePromiseArray=u}},{"./errors":12,"./util":36}],32:[function(n,t){"use strict";t.exports=function(n){function t(n){void 0!==n?(n=n._target(),this._bitField=n._bitField,this._settledValueField=n._isFateSealed()?n._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}t.prototype._settledValue=function(){return this._settledValueField};var i=t.prototype.value=function(){if(!this.isFulfilled())throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},r=t.prototype.error=t.prototype.reason=function(){if(!this.isRejected())throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},u=t.prototype.isFulfilled=function(){return 0!=(33554432&this._bitField)},f=t.prototype.isRejected=function(){return 0!=(16777216&this._bitField)},e=t.prototype.isPending=function(){return 0==(50397184&this._bitField)},o=t.prototype.isResolved=function(){return 0!=(50331648&this._bitField)};t.prototype.isCancelled=function(){return 0!=(8454144&this._bitField)};n.prototype.__isCancelled=function(){return 65536==(65536&this._bitField)};n.prototype._isCancelled=function(){return this._target().__isCancelled()};n.prototype.isCancelled=function(){return 0!=(8454144&this._target()._bitField)};n.prototype.isPending=function(){return e.call(this._target())};n.prototype.isRejected=function(){return f.call(this._target())};n.prototype.isFulfilled=function(){return u.call(this._target())};n.prototype.isResolved=function(){return o.call(this._target())};n.prototype.value=function(){return i.call(this._target())};n.prototype.reason=function(){var n=this._target();return n._unsetRejectionIsUnhandled(),r.call(n)};n.prototype._value=function(){return this._settledValue()};n.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()};n.PromiseInspection=t}},{}],33:[function(n,t){"use strict";t.exports=function(t,i){function f(n,u){var e,f;if(c(n)){if(n instanceof t)return n;if(e=o(n),e===r)return u&&u._pushContext(),f=t.reject(e.e),u&&u._popContext(),f;if("function"==typeof e)return s(n)?(f=new t(i),n._then(f._fulfill,f._reject,void 0,f,null),f):h(n,e,u)}return n}function e(n){return n.then}function o(n){try{return e(n)}catch(t){return r.e=t,r}}function s(n){try{return l.call(n,"_promise0")}catch(t){return!1}}function h(n,f,e){function c(n){o&&(o._resolveCallback(n),o=null)}function l(n){o&&(o._rejectCallback(n,s,!0),o=null)}var o=new t(i),a=o,s,h;return e&&e._pushContext(),o._captureStackTrace(),e&&e._popContext(),s=!0,h=u.tryCatch(f).call(n,c,l),s=!1,o&&h===r&&(o._rejectCallback(h.e,!0,!0),o=null),a}var u=n("./util"),r=u.errorObj,c=u.isObject,l={}.hasOwnProperty;return f}},{"./util":36}],34:[function(n,t){"use strict";t.exports=function(t,i,r){function u(n){this.handle=n}function e(n){return clearTimeout(this.handle),n}function o(n){throw clearTimeout(this.handle),n;}var l=n("./util"),s=t.TimeoutError,h,f,c;u.prototype._resultCancelled=function(){clearTimeout(this.handle)};h=function(n){return f(+this).thenReturn(n)};f=t.delay=function(n,f){var e,o;return void 0!==f?(e=t.resolve(f)._then(h,null,null,n,void 0),r.cancellation()&&f instanceof t&&e._setOnCancel(f)):(e=new t(i),o=setTimeout(function(){e._fulfill()},+n),r.cancellation()&&e._setOnCancel(new u(o)),e._captureStackTrace()),e._setAsyncGuaranteed(),e};t.prototype.delay=function(n){return f(n,this)};c=function(n,t,i){var r;r="string"!=typeof t?t instanceof Error?t:new s("operation timed out"):new s(t);l.markAsOriginatingFromRejection(r);n._attachExtraTrace(r);n._reject(r);null!=i&&i.cancel()};t.prototype.timeout=function(n,t){n=+n;var i,f,s=new u(setTimeout(function(){i.isPending()&&c(i,t,f)},n));return r.cancellation()?(f=this.then(),i=f._then(e,o,void 0,s,void 0),i._setOnCancel(s)):i=this._then(e,o,void 0,s,void 0),i}}},{"./util":36}],35:[function(n,t){"use strict";t.exports=function(t,i,r,u,f,e){function c(n){setTimeout(function(){throw n;},0)}function y(n){var t=r(n);return t!==n&&"function"==typeof n._isDisposable&&"function"==typeof n._getDisposer&&n._isDisposable()&&t._setDisposable(n._getDisposer()),t}function p(n,i){function u(){if(e>=s)return o._fulfill();var f=y(n[e++]);if(f instanceof t&&f._isDisposable()){try{f=r(f._getDisposer().tryDispose(i),n.promise)}catch(h){return c(h)}if(f instanceof t)return f._then(u,c,null,null,null)}u()}var e=0,s=n.length,o=new t(f);return u(),o}function o(n,t,i){this._data=n;this._promise=t;this._context=i}function s(n,t,i){this.constructor$(n,t,i)}function w(n){return o.isDisposer(n)?(this.resources[this.index]._setDisposable(n),n.promise()):n}function l(n){this.length=n;this.promise=null;this[n-1]=null}var h=n("./util"),b=n("./errors").TypeError,k=n("./util").inherits,a=h.errorObj,d=h.tryCatch,v={};o.prototype.data=function(){return this._data};o.prototype.promise=function(){return this._promise};o.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():v};o.prototype.tryDispose=function(n){var i=this.resource(),t=this._context,r;return void 0!==t&&t._pushContext(),r=i!==v?this.doDispose(i,n):null,void 0!==t&&t._popContext(),this._promise._unsetDisposable(),this._data=null,r};o.isDisposer=function(n){return null!=n&&"function"==typeof n.resource&&"function"==typeof n.tryDispose};k(s,o);s.prototype.doDispose=function(n,t){var i=this.data();return i.call(n,n,t)};l.prototype._resultCancelled=function(){for(var i,r=this.length,n=0;r>n;++n)i=this[n],i instanceof t&&i.cancel()};t.using=function(){var s=arguments.length,c,y,g,f,u,tt,nt,b,n,k,v;if(2>s)return i("you must pass at least 2 arguments to Promise.using");if(c=arguments[s-1],"function"!=typeof c)return i("expecting a function but got "+h.classString(c));for(g=!0,2===s&&Array.isArray(arguments[0])?(y=arguments[0],s=y.length,g=!1):(y=arguments,s--),f=new l(s),n=0;s>n;++n)u=y[n],o.isDisposer(u)?(tt=u,u=u.promise(),u._setDisposable(tt)):(nt=r(u),nt instanceof t&&(u=nt._then(w,null,null,{resources:f,index:n},void 0))),f[n]=u;for(b=new Array(f.length),n=0;n<b.length;++n)b[n]=t.resolve(f[n]).reflect();return k=t.all(b).then(function(n){for(var i,r,u,t=0;t<n.length;++t){if(i=n[t],i.isRejected())return a.e=i.error(),a;if(!i.isFulfilled())return void k.cancel();n[t]=i.value()}return v._pushContext(),c=d(c),r=g?c.apply(void 0,n):c(n),u=v._popContext(),e.checkForgottenReturns(r,u,"Promise.using",v),r}),v=k.lastly(function(){var n=new t.PromiseInspection(k);return p(f,n)}),f.promise=v,v._setOnCancel(f),v};t.prototype._setDisposable=function(n){this._bitField=131072|this._bitField;this._disposer=n};t.prototype._isDisposable=function(){return(131072&this._bitField)>0};t.prototype._getDisposer=function(){return this._disposer};t.prototype._unsetDisposable=function(){this._bitField=-131073&this._bitField;this._disposer=void 0};t.prototype.disposer=function(n){if("function"==typeof n)return new s(n,this,u());throw new b;}}},{"./errors":12,"./util":36}],36:[function(n,t){"use strict";function p(){try{var n=s;return s=null,n.apply(this,arguments)}catch(t){return o.e=t,o}}function w(n){return s=n,p}function f(n){return null==n||n===!0||n===!1||"string"==typeof n||"number"==typeof n}function b(n){return"function"==typeof n||"object"==typeof n&&null!==n}function k(n){return f(n)?new Error(u(n)):n}function d(n,t){for(var u=n.length,r=new Array(u+1),i=0;u>i;++i)r[i]=n[i];return r[i]=t,r}function g(n,t,r){if(!i.isES5)return{}.hasOwnProperty.call(n,t)?n[t]:void 0;var u=Object.getOwnPropertyDescriptor(n,t);if(null!=u)return null==u.get&&null==u.set?u.value:r}function h(n,t,r){if(f(n))return n;var u={value:r,configurable:!0,enumerable:!1,writable:!0};return i.defineProperty(n,t,u),n}function nt(n){throw n;}function tt(n){try{if("function"==typeof n){var t=i.names(n.prototype),r=i.isES5&&t.length>1,u=t.length>0&&!(1===t.length&&"constructor"===t[0]),f=pt.test(n+"")&&i.names(n).length>0;if(r||u||f)return!0}return!1}catch(e){return!1}}function it(n){function t(){}t.prototype=n;for(var i=8;i--;)new t;return n}function rt(n){return wt.test(n)}function ut(n,t,i){for(var u=new Array(n),r=0;n>r;++r)u[r]=t+r+i;return u}function u(n){try{return n+""}catch(t){return"[no string representation]"}}function c(n){return null!==n&&"object"==typeof n&&"string"==typeof n.message&&"string"==typeof n.name}function ft(n){try{h(n,"isOperational",!0)}catch(t){}}function et(n){return null==n?!1:n instanceof Error.__BluebirdErrorTypes__.OperationalError||n.isOperational===!0}function e(n){return c(n)&&i.propertyIsWritable(n,"stack")}function l(n){return{}.toString.call(n)}function ot(n,t,r){for(var f,e=i.names(n),u=0;u<e.length;++u)if(f=e[u],r(f))try{i.defineProperty(t,f,i.getDescriptor(n,f))}catch(o){}}function st(n){if(y)return process.env[n]}function ht(){if("function"==typeof Promise)try{var n=new Promise(function(){});if("[object Promise]"==={}.toString.call(n))return Promise}catch(t){}}function ct(n,t){return n.bind(t)}var i=n("./es5"),lt="undefined"==typeof navigator,o={e:{}},s,at="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0!==this?this:null,vt=function(n,t){function i(){this.constructor=n;this.constructor$=t;for(var i in t.prototype)r.call(t.prototype,i)&&"$"!==i.charAt(i.length-1)&&(this[i+"$"]=t.prototype[i])}var r={}.hasOwnProperty;return i.prototype=t.prototype,n.prototype=new i,n.prototype},yt=function(){var n=[Array.prototype,Object.prototype,Function.prototype],r=function(t){for(var i=0;i<n.length;++i)if(n[i]===t)return!0;return!1},u,t;return i.isES5?(u=Object.getOwnPropertyNames,function(n){for(var h,e,t,o,f=[],s=Object.create(null);null!=n&&!r(n);){try{h=u(n)}catch(c){return f}for(e=0;e<h.length;++e)t=h[e],s[t]||(s[t]=!0,o=Object.getOwnPropertyDescriptor(n,t),null!=o&&null==o.get&&null==o.set&&f.push(t));n=i.getPrototypeOf(n)}return f}):(t={}.hasOwnProperty,function(i){var f,u,e;if(r(i))return[];f=[];n:for(u in i)if(t.call(i,u))f.push(u);else{for(e=0;e<n.length;++e)if(t.call(n[e],u))continue n;f.push(u)}return f})}(),pt=/this\s*\.\s*\S+\s*=/,wt=/^[a-z$_][a-z$_0-9]*$/i,bt=function(){return"stack"in new Error?function(n){return e(n)?n:new Error(u(n))}:function(n){if(e(n))return n;try{throw new Error(u(n));}catch(t){return t}}}(),a=function(n){return i.isArray(n)?n:null},v;"undefined"!=typeof Symbol&&Symbol.iterator&&(v="function"==typeof Array.from?function(n){return Array.from(n)}:function(n){for(var t,i=[],r=n[Symbol.iterator]();!(t=r.next()).done;)i.push(t.value);return i},a=function(n){return i.isArray(n)?n:null!=n&&"function"==typeof n[Symbol.iterator]?v(n):null});var kt="undefined"!=typeof process&&"[object process]"===l(process).toLowerCase(),y="undefined"!=typeof process&&"undefined"!=typeof process.env,r={isClass:tt,isIdentifier:rt,inheritedDataKeys:yt,getDataPropertyOrDefault:g,thrower:nt,isArray:i.isArray,asArray:a,notEnumerableProp:h,isPrimitive:f,isObject:b,isError:c,canEvaluate:lt,errorObj:o,tryCatch:w,inherits:vt,withAppended:d,maybeWrapAsError:k,toFastProperties:it,filledRange:ut,toString:u,canAttachTrace:e,ensureErrorObject:bt,originatesFromRejection:et,markAsOriginatingFromRejection:ft,classString:l,copyDescriptors:ot,hasDevTools:"undefined"!=typeof chrome&&chrome&&"function"==typeof chrome.loadTimes,isNode:kt,hasEnvVariables:y,env:st,global:at,getNativePromise:ht,domainBind:ct};r.isRecentNode=r.isNode&&function(){var n=process.versions.node.split(".").map(Number);return 0===n[0]&&n[1]>10||n[0]>0}();r.isNode&&r.toFastProperties(process);try{throw new Error;}catch(dt){r.lastLineError=dt}t.exports=r},{"./es5":13}]},{},[4])(4)});"undefined"!=typeof window&&null!==window?window.P=window.Promise:"undefined"!=typeof self&&null!==self&&(self.P=self.Promise);Promise.config({cancellation:!0,longStackTraces:!1,monitoring:!1,warnings:!1})