/* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/ (function(a){function b(){if(this.isDisposed)throw new Error(Fb)}function c(a,b){if(Gb&&b.stack&&"object"==typeof a&&null!==a&&a.stack&&-1===a.stack.indexOf(Kb)){for(var c=[],e=b;e;e=e.source)e.stack&&c.unshift(e.stack);c.unshift(a.stack);var f=c.join("\n"+Kb+"\n");a.stack=d(f)}}function d(a){for(var b=a.split("\n"),c=[],d=0,g=b.length;g>d;d++){var h=b[d];e(h)||f(h)||!h||c.push(h)}return c.join("\n")}function e(a){var b=h(a);if(!b)return!1;var c=b[0],d=b[1];return c===Ib&&d>=Jb&&Td>=d}function f(a){return-1!==a.indexOf("(module.js:")||-1!==a.indexOf("(node.js:")}function g(){if(Gb)try{throw new Error}catch(a){var b=a.stack.split("\n"),c=b[0].indexOf("@")>0?b[1]:b[2],d=h(c);if(!d)return;return Ib=d[0],d[1]}}function h(a){var b=/at .+ \((.+):(\d+):(?:\d+)\)$/.exec(a);if(b)return[b[1],Number(b[2])];var c=/at ([^ ]+):(\d+):(?:\d+)$/.exec(a);if(c)return[c[1],Number(c[2])];var d=/.*@(.+):(\d+)$/.exec(a);return d?[d[1],Number(d[2])]:void 0}function i(a){var b=[];if(!kc(a))return b;jc.nonEnumArgs&&a.length&&lc(a)&&(a=nc.call(a));var c=jc.enumPrototypes&&"function"==typeof a,d=jc.enumErrorProps&&(a===ec||a instanceof Error);for(var e in a)c&&"prototype"==e||d&&("message"==e||"name"==e)||b.push(e);if(jc.nonEnumShadows&&a!==fc){var f=a.constructor,g=-1,h=Sb;if(a===(f&&f.prototype))var i=a===gc?ac:a===ec?Xb:bc.call(a),j=ic[i];for(;++g-1:void 0});return c.pop(),d.pop(),q}function n(a,b){return 1===a.length&&Array.isArray(a[b])?a[b]:nc.call(a)}function o(a,b){for(var c=new Array(a),d=0;a>d;d++)c[d]=b();return c}function p(a,b){this.id=a,this.value=b}function q(a,b){this.scheduler=a,this.disposable=b,this.isDisposed=!1}function r(){this._s=s}function t(){this._s=s,this._l=s.length,this._i=0}function u(a){this._a=a}function v(a){this._a=a,this._l=z(a),this._i=0}function w(a){return"number"==typeof a&&nb.isFinite(a)}function x(b){var c,d=b[Lb];if(!d&&"string"==typeof b)return c=new r(b),c[Lb]();if(!d&&b.length!==a)return c=new u(b),c[Lb]();if(!d)throw new TypeError("Object is not iterable");return b[Lb]()}function y(a){var b=+a;return 0===b?b:isNaN(b)?b:0>b?-1:1}function z(a){var b=+a.length;return isNaN(b)?0:0!==b&&w(b)?(b=y(b)*Math.floor(Math.abs(b)),0>=b?0:b>gd?gd:b):b}function A(a,b){return ub(a)||(a=Hc),new Nd(function(c){var d=0,e=b.length;return a.scheduleRecursive(function(a){e>d?(c.onNext(b[d++]),a()):c.onCompleted()})})}function B(a,b){return new Nd(function(c){var d=new yc,e=new zc;return e.setDisposable(d),d.setDisposable(a.subscribe(c.onNext.bind(c),function(a){var d,f;try{f=b(a)}catch(g){return void c.onError(g)}Ab(f)&&(f=dd(f)),d=new yc,e.setDisposable(d),d.setDisposable(f.subscribe(c))},c.onCompleted.bind(c))),e},a)}function C(a,b){var c=this;return new Nd(function(d){var e=0,f=a.length;return c.subscribe(function(c){if(f>e){var g,h=a[e++];try{g=b(c,h)}catch(i){return void d.onError(i)}d.onNext(g)}else d.onCompleted()},function(a){d.onError(a)},function(){d.onCompleted()})},c)}function D(a,b,c){var d=Qb(b,c,3);return a.map(function(b,c){var e=d(b,c,a);return Ab(e)&&(e=dd(e)),(Ob(e)||Nb(e))&&(e=hd(e)),e}).concatAll()}function E(a,b,c){for(var d=0,e=a.length;e>d;d++)if(c(a[d],b))return d;return-1}function F(a){this.comparer=a,this.set=[]}function G(a,b,c){var d=Qb(b,c,3);return a.map(function(b,c){var e=d(b,c,a);return Ab(e)&&(e=dd(e)),(Ob(e)||Nb(e))&&(e=hd(e)),e}).mergeAll()}function H(a,b,c){return new Nd(function(d){var e=!1,f=null,g=[];return a.subscribe(function(a){var h,i;try{i=b(a)}catch(j){return void d.onError(j)}if(h=0,e)try{h=c(i,f)}catch(k){return void d.onError(k)}else e=!0,f=i;h>0&&(f=i,g=[]),h>=0&&g.push(a)},function(a){d.onError(a)},function(){d.onNext(g),d.onCompleted()})},a)}function I(a){if(0===a.length)throw new Error(Db);return a[0]}function J(a,b,c,d){if(0>b)throw new Error(Eb);return new Nd(function(e){var f=b;return a.subscribe(function(a){0===f--&&(e.onNext(a),e.onCompleted())},function(a){e.onError(a)},function(){c?(e.onNext(d),e.onCompleted()):e.onError(new Error(Eb))})},a)}function K(a,b,c){return new Nd(function(d){var e=c,f=!1;return a.subscribe(function(a){f?d.onError(new Error("Sequence contains more than one element")):(e=a,f=!0)},function(a){d.onError(a)},function(){f||b?(d.onNext(e),d.onCompleted()):d.onError(new Error(Db))})},a)}function L(a,b,c){return new Nd(function(d){return a.subscribe(function(a){d.onNext(a),d.onCompleted()},function(a){d.onError(a)},function(){b?(d.onNext(c),d.onCompleted()):d.onError(new Error(Db))})},a)}function M(a,b,c){return new Nd(function(d){var e=c,f=!1;return a.subscribe(function(a){e=a,f=!0},function(a){d.onError(a)},function(){f||b?(d.onNext(e),d.onCompleted()):d.onError(new Error(Db))})},a)}function N(b,c,d,e){var f=Qb(c,d,3);return new Nd(function(c){var d=0;return b.subscribe(function(a){var g;try{g=f(a,d,b)}catch(h){return void c.onError(h)}g?(c.onNext(e?d:a),c.onCompleted()):d++},function(a){c.onError(a)},function(){c.onNext(e?-1:a),c.onCompleted()})},b)}function O(a,b){return Array.isArray(a)?P.call(b,a):T(a)?td(a.call(b)):U(a)?td(a):S(a)?Q(a):Ab(a)?R(a):typeof a===rd?a:kc(a)||Array.isArray(a)?P.call(b,a):a}function P(a){var b=this;return function(c){function d(a,d){if(!e)try{if(a=O(a,b),typeof a!==rd)return h[d]=a,--g||c(null,h);a.call(b,function(a,b){if(!e){if(a)return e=!0,c(a);h[d]=b,--g||c(null,h)}})}catch(f){e=!0,c(f)}}var e,f=Object.keys(a),g=f.length,h=new a.constructor;if(!g)return void Mc.schedule(function(){c(null,h)});for(var i=0,j=f.length;j>i;i++)d(a[f[i]],f[i])}}function Q(a){return function(b){var c,d=!1;a.subscribe(function(a){c=a,d=!0},b,function(){d&&b(null,c)})}}function R(a){return function(b){a.then(function(a){b(null,a)},b)}}function S(a){return a&&typeof a.subscribe===rd}function T(a){return a&&a.constructor&&"GeneratorFunction"===a.constructor.name}function U(a){return a&&typeof a.next===rd&&typeof a[sd]===rd}function V(a){a&&Mc.schedule(function(){throw a})}function W(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1),wc(function(){a.removeEventListener(b,c,!1)});throw new Error("No listener found")}function X(a,b,c){var d=new tc;if("[object NodeList]"===Object.prototype.toString.call(a))for(var e=0,f=a.length;f>e;e++)d.add(X(a.item(e),b,c));else a&&d.add(W(a,b,c));return d}function Y(a,b,c){return new Nd(function(d){function e(a,b){j[b]=a;var e;if(g[b]=!0,h||(h=g.every(vb))){if(f)return void d.onError(f);try{e=c.apply(null,j)}catch(k){return void d.onError(k)}d.onNext(e)}i&&j[1]&&d.onCompleted()}var f,g=[!1,!1],h=!1,i=!1,j=new Array(2);return new tc(a.subscribe(function(a){e(a,0)},function(a){j[1]?d.onError(a):f=a},function(){i=!0,j[1]&&d.onCompleted()}),b.subscribe(function(a){e(a,1)},function(a){d.onError(a)},function(){i=!0,e(!0,1)}))},a)}function Z(a,b){return a.groupJoin(this,b,fd,function(a,b){return b})}function $(a){var b=this;return new Nd(function(c){var d=new Qd,e=new tc,f=new Ac(e);return c.onNext(qc(d,f)),e.add(b.subscribe(function(a){d.onNext(a)},function(a){d.onError(a),c.onError(a)},function(){d.onCompleted(),c.onCompleted()})),Ab(a)&&(a=dd(a)),e.add(a.subscribe(function(){d.onCompleted(),d=new Qd,c.onNext(qc(d,f))},function(a){d.onError(a),c.onError(a)},function(){d.onCompleted(),c.onCompleted()})),f},b)}function _(a){var b=this;return new Nd(function(c){function d(){var b;try{b=a()}catch(f){return void c.onError(f)}Ab(b)&&(b=dd(b));var i=new yc;e.setDisposable(i),i.setDisposable(b.take(1).subscribe(tb,function(a){h.onError(a),c.onError(a)},function(){h.onCompleted(),h=new Qd,c.onNext(qc(h,g)),d()}))}var e=new zc,f=new tc(e),g=new Ac(f),h=new Qd;return c.onNext(qc(h,g)),f.add(b.subscribe(function(a){h.onNext(a)},function(a){h.onError(a),c.onError(a)},function(){h.onCompleted(),c.onCompleted()})),d(),g},b)}function ab(b,c){return new Tc(function(){return new Sc(function(){return b()?{done:!1,value:c}:{done:!0,value:a}})})}function bb(a){this.patterns=a}function cb(a,b){this.expression=a,this.selector=b}function db(a,b,c){var d=a.get(b);if(!d){var e=new Kd(b,c);return a.set(b,e),e}return d}function eb(a,b,c){this.joinObserverArray=a,this.onNext=b,this.onCompleted=c,this.joinObservers=new Jd;for(var d=0,e=this.joinObserverArray.length;e>d;d++){var f=this.joinObserverArray[d];this.joinObservers.set(f,f)}}function fb(a,b){return new Nd(function(c){return b.scheduleWithAbsolute(a,function(){c.onNext(0),c.onCompleted()})})}function gb(a,b,c){return new Nd(function(d){var e=0,f=a,g=Dc(b);return c.scheduleRecursiveWithAbsolute(f,function(a){if(g>0){var b=c.now();f+=g,b>=f&&(f=b+g)}d.onNext(e++),a(f)})})}function hb(a,b){return new Nd(function(c){return b.scheduleWithRelative(Dc(a),function(){c.onNext(0),c.onCompleted()})})}function ib(a,b,c){return a===b?new Nd(function(a){return c.schedulePeriodicWithState(0,b,function(b){return a.onNext(b),b+1})}):ed(function(){return gb(c.now()+a,b,c)})}function jb(a,b,c){return new Nd(function(d){var e,f=!1,g=new zc,h=null,i=[],j=!1;return e=a.materialize().timestamp(c).subscribe(function(a){var e,k;"E"===a.value.kind?(i=[],i.push(a),h=a.value.exception,k=!j):(i.push({value:a.value,timestamp:a.timestamp+b}),k=!f,f=!0),k&&(null!==h?d.onError(h):(e=new yc,g.setDisposable(e),e.setDisposable(c.scheduleRecursiveWithRelative(b,function(a){var b,e,g,k;if(null===h){j=!0;do g=null,i.length>0&&i[0].timestamp-c.now()<=0&&(g=i.shift().value),null!==g&&g.accept(d);while(null!==g);k=!1,e=0,i.length>0?(k=!0,e=Math.max(0,i[0].timestamp-c.now())):f=!1,b=h,j=!1,null!==b?d.onError(b):k&&a(e)}}))))}),new tc(e,g)},a)}function kb(a,b,c){return ed(function(){return jb(a,b-c.now(),c)})}function lb(a,b){return new Nd(function(c){function d(){g&&(g=!1,c.onNext(f)),e&&c.onCompleted()}var e,f,g;return new tc(a.subscribe(function(a){g=!0,f=a},c.onError.bind(c),function(){e=!0}),b.subscribe(d,c.onError.bind(c),d))},a)}var mb={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},nb=mb[typeof window]&&window||this,ob=mb[typeof exports]&&exports&&!exports.nodeType&&exports,pb=mb[typeof module]&&module&&!module.nodeType&&module,qb=pb&&pb.exports===ob&&ob,rb=mb[typeof global]&&global;!rb||rb.global!==rb&&rb.window!==rb||(nb=rb);var sb={internals:{},config:{Promise:nb.Promise},helpers:{}},tb=sb.helpers.noop=function(){},ub=(sb.helpers.notDefined=function(a){return"undefined"==typeof a},sb.helpers.isScheduler=function(a){return a instanceof sb.Scheduler}),vb=sb.helpers.identity=function(a){return a},wb=(sb.helpers.pluck=function(a){return function(b){return b[a]}},sb.helpers.just=function(a){return function(){return a}},sb.helpers.defaultNow=Date.now),xb=sb.helpers.defaultComparer=function(a,b){return mc(a,b)},yb=sb.helpers.defaultSubComparer=function(a,b){return a>b?1:b>a?-1:0},zb=(sb.helpers.defaultKeySerializer=function(a){return a.toString()},sb.helpers.defaultError=function(a){throw a}),Ab=sb.helpers.isPromise=function(a){return!!a&&"function"==typeof a.then},Bb=(sb.helpers.asArray=function(){return Array.prototype.slice.call(arguments)},sb.helpers.not=function(a){return!a}),Cb=sb.helpers.isFunction=function(){var a=function(a){return"function"==typeof a||!1};return a(/x/)&&(a=function(a){return"function"==typeof a&&"[object Function]"==bc.call(a)}),a}(),Db="Sequence contains no elements.",Eb="Argument out of range",Fb="Object has been disposed";sb.config.longStackSupport=!1;var Gb=!1;try{throw new Error}catch(Hb){Gb=!!Hb.stack}var Ib,Jb=g(),Kb="From previous event:",Lb="function"==typeof Symbol&&Symbol.iterator||"_es6shim_iterator_";nb.Set&&"function"==typeof(new nb.Set)["@@iterator"]&&(Lb="@@iterator");var Mb=sb.doneEnumerator={done:!0,value:a},Nb=sb.helpers.isIterable=function(b){return b[Lb]!==a},Ob=sb.helpers.isArrayLike=function(b){return b&&b.length!==a};sb.helpers.iterator=Lb;var Pb,Qb=sb.internals.bindCallback=function(a,b,c){if("undefined"==typeof b)return a;switch(c){case 0:return function(){return a.call(b)};case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}},Rb=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Sb=Rb.length,Tb="[object Arguments]",Ub="[object Array]",Vb="[object Boolean]",Wb="[object Date]",Xb="[object Error]",Yb="[object Function]",Zb="[object Number]",$b="[object Object]",_b="[object RegExp]",ac="[object String]",bc=Object.prototype.toString,cc=Object.prototype.hasOwnProperty,dc=bc.call(arguments)==Tb,ec=Error.prototype,fc=Object.prototype,gc=String.prototype,hc=fc.propertyIsEnumerable;try{Pb=!(bc.call(document)==$b&&!({toString:0}+""))}catch(Hb){Pb=!0}var ic={};ic[Ub]=ic[Wb]=ic[Zb]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},ic[Vb]=ic[ac]={constructor:!0,toString:!0,valueOf:!0},ic[Xb]=ic[Yb]=ic[_b]={constructor:!0,toString:!0},ic[$b]={constructor:!0};var jc={};!function(){var a=function(){this.x=1},b=[];a.prototype={valueOf:1,y:1};for(var c in new a)b.push(c);for(c in arguments);jc.enumErrorProps=hc.call(ec,"message")||hc.call(ec,"name"),jc.enumPrototypes=hc.call(a,"prototype"),jc.nonEnumArgs=0!=c,jc.nonEnumShadows=!/valueOf/.test(b)}(1);var kc=sb.internals.isObject=function(a){var b=typeof a;return a&&("function"==b||"object"==b)||!1},lc=function(a){return a&&"object"==typeof a?bc.call(a)==Tb:!1};dc||(lc=function(a){return a&&"object"==typeof a?cc.call(a,"callee"):!1});var mc=sb.internals.isEqual=function(a,b){return m(a,b,[],[])},nc=Array.prototype.slice,oc=({}.hasOwnProperty,this.inherits=sb.internals.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c}),pc=sb.internals.addProperties=function(a){for(var b=nc.call(arguments,1),c=0,d=b.length;d>c;c++){var e=b[c];for(var f in e)a[f]=e[f]}},qc=sb.internals.addRef=function(a,b){return new Nd(function(c){return new tc(b.getDisposable(),a.subscribe(c))})};p.prototype.compareTo=function(a){var b=this.value.compareTo(a.value);return 0===b&&(b=this.id-a.id),b};var rc=sb.internals.PriorityQueue=function(a){this.items=new Array(a),this.length=0},sc=rc.prototype;sc.isHigherPriority=function(a,b){return this.items[a].compareTo(this.items[b])<0},sc.percolate=function(a){if(!(a>=this.length||0>a)){var b=a-1>>1;if(!(0>b||b===a)&&this.isHigherPriority(a,b)){var c=this.items[a];this.items[a]=this.items[b],this.items[b]=c,this.percolate(b)}}},sc.heapify=function(a){if(+a||(a=0),!(a>=this.length||0>a)){var b=2*a+1,c=2*a+2,d=a;if(bb;b++)a[b].dispose()}},uc.toArray=function(){return this.disposables.slice(0)};var vc=sb.Disposable=function(a){this.isDisposed=!1,this.action=a||tb};vc.prototype.dispose=function(){this.isDisposed||(this.action(),this.isDisposed=!0)};var wc=vc.create=function(a){return new vc(a)},xc=vc.empty={dispose:tb},yc=sb.SingleAssignmentDisposable=function(){function a(){this.isDisposed=!1,this.current=null}var b=a.prototype;return b.getDisposable=function(){return this.current},b.setDisposable=function(a){var b,c=this.isDisposed;c||(b=this.current,this.current=a),b&&b.dispose(),c&&a&&a.dispose()},b.dispose=function(){var a;this.isDisposed||(this.isDisposed=!0,a=this.current,this.current=null),a&&a.dispose()},a}(),zc=sb.SerialDisposable=yc,Ac=sb.RefCountDisposable=function(){function a(a){this.disposable=a,this.disposable.count++,this.isInnerDisposed=!1}function b(a){this.underlyingDisposable=a,this.isDisposed=!1,this.isPrimaryDisposed=!1,this.count=0}return a.prototype.dispose=function(){this.disposable.isDisposed||this.isInnerDisposed||(this.isInnerDisposed=!0,this.disposable.count--,0===this.disposable.count&&this.disposable.isPrimaryDisposed&&(this.disposable.isDisposed=!0,this.disposable.underlyingDisposable.dispose()))},b.prototype.dispose=function(){this.isDisposed||this.isPrimaryDisposed||(this.isPrimaryDisposed=!0,0===this.count&&(this.isDisposed=!0,this.underlyingDisposable.dispose()))},b.prototype.getDisposable=function(){return this.isDisposed?xc:new a(this)},b}();q.prototype.dispose=function(){var a=this;this.scheduler.schedule(function(){a.isDisposed||(a.isDisposed=!0,a.disposable.dispose())})};var Bc=sb.internals.ScheduledItem=function(a,b,c,d,e){this.scheduler=a,this.state=b,this.action=c,this.dueTime=d,this.comparer=e||yb,this.disposable=new yc};Bc.prototype.invoke=function(){this.disposable.setDisposable(this.invokeCore())},Bc.prototype.compareTo=function(a){return this.comparer(this.dueTime,a.dueTime)},Bc.prototype.isCancelled=function(){return this.disposable.isDisposed},Bc.prototype.invokeCore=function(){return this.action(this.scheduler,this.state)};var Cc=sb.Scheduler=function(){function a(a,b,c,d){this.now=a,this._schedule=b,this._scheduleRelative=c,this._scheduleAbsolute=d}function b(a,b){return b(),xc}var c=a.prototype;return c.schedule=function(a){return this._schedule(a,b)},c.scheduleWithState=function(a,b){return this._schedule(a,b)},c.scheduleWithRelative=function(a,c){return this._scheduleRelative(c,a,b)},c.scheduleWithRelativeAndState=function(a,b,c){return this._scheduleRelative(a,b,c)},c.scheduleWithAbsolute=function(a,c){return this._scheduleAbsolute(c,a,b)},c.scheduleWithAbsoluteAndState=function(a,b,c){return this._scheduleAbsolute(a,b,c)},a.now=wb,a.normalize=function(a){return 0>a&&(a=0),a},a}(),Dc=Cc.normalize;!function(a){function b(a,b){var c=b.first,d=b.second,e=new tc,f=function(b){d(b,function(b){var c=!1,d=!1,g=a.scheduleWithState(b,function(a,b){return c?e.remove(g):d=!0,f(b),xc});d||(e.add(g),c=!0)})};return f(c),e}function c(a,b,c){var d=b.first,e=b.second,f=new tc,g=function(b){e(b,function(b,d){var e=!1,h=!1,i=a[c].call(a,b,d,function(a,b){return e?f.remove(i):h=!0,g(b),xc});h||(f.add(i),e=!0)})};return g(d),f}function d(a,b){a(function(c){b(a,c)})}a.scheduleRecursive=function(a){return this.scheduleRecursiveWithState(a,function(a,b){a(function(){b(a)})})},a.scheduleRecursiveWithState=function(a,c){return this.scheduleWithState({first:a,second:c},b)},a.scheduleRecursiveWithRelative=function(a,b){return this.scheduleRecursiveWithRelativeAndState(b,a,d)},a.scheduleRecursiveWithRelativeAndState=function(a,b,d){return this._scheduleRelative({first:a,second:d},b,function(a,b){return c(a,b,"scheduleWithRelativeAndState")})},a.scheduleRecursiveWithAbsolute=function(a,b){return this.scheduleRecursiveWithAbsoluteAndState(b,a,d)},a.scheduleRecursiveWithAbsoluteAndState=function(a,b,d){return this._scheduleAbsolute({first:a,second:d},b,function(a,b){return c(a,b,"scheduleWithAbsoluteAndState")})}}(Cc.prototype),function(){Cc.prototype.schedulePeriodic=function(a,b){return this.schedulePeriodicWithState(null,a,b)},Cc.prototype.schedulePeriodicWithState=function(a,b,c){if("undefined"==typeof nb.setInterval)throw new Error("Periodic scheduling not supported.");var d=a,e=nb.setInterval(function(){d=c(d)},b);return wc(function(){nb.clearInterval(e)})}}(Cc.prototype),function(a){a.catchError=a["catch"]=function(a){return new Nc(this,a)}}(Cc.prototype);var Ec,Fc=sb.internals.SchedulePeriodicRecursive=function(){function a(a,b){b(0,this._period);try{this._state=this._action(this._state)}catch(c){throw this._cancel.dispose(),c}}function b(a,b,c,d){this._scheduler=a,this._state=b,this._period=c,this._action=d}return b.prototype.start=function(){var b=new yc;return this._cancel=b,b.setDisposable(this._scheduler.scheduleRecursiveWithRelativeAndState(0,this._period,a.bind(this))),b},b}(),Gc=Cc.immediate=function(){function a(a,b){return b(this,a)}function b(a,b,c){for(var d=this.now()+Dc(b);d-this.now()>0;);return c(this,a)}function c(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}return new Cc(wb,a,b,c)}(),Hc=Cc.currentThread=function(){function a(a){for(var b;a.length>0;)if(b=a.dequeue(),!b.isCancelled()){for(;b.dueTime-Cc.now()>0;);b.isCancelled()||b.invoke()}}function b(a,b){return this.scheduleWithRelativeAndState(a,0,b)}function c(b,c,d){var f=this.now()+Cc.normalize(c),g=new Bc(this,b,d,f);if(e)e.enqueue(g);else{e=new rc(4),e.enqueue(g);try{a(e)}catch(h){throw h}finally{e=null}}return g.disposable}function d(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}var e,f=new Cc(wb,b,c,d);return f.scheduleRequired=function(){return!e},f.ensureTrampoline=function(a){e?a():this.schedule(a)},f}(),Ic=tb,Jc=function(){var a,b=tb;if("WScript"in this)a=function(a,b){WScript.Sleep(b),a()};else{if(!nb.setTimeout)throw new Error("No concurrency detected!");a=nb.setTimeout,b=nb.clearTimeout}return{setTimeout:a,clearTimeout:b}}(),Kc=Jc.setTimeout,Lc=Jc.clearTimeout;!function(){function a(){if(!nb.postMessage||nb.importScripts)return!1;var a=!1,b=nb.onmessage;return nb.onmessage=function(){a=!0},nb.postMessage("","*"),nb.onmessage=b,a}var b=RegExp("^"+String(bc).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),c="function"==typeof(c=rb&&qb&&rb.setImmediate)&&!b.test(c)&&c,d="function"==typeof(d=rb&&qb&&rb.clearImmediate)&&!b.test(d)&&d;if("function"==typeof c)Ec=c,Ic=d;else if("undefined"!=typeof process&&"[object process]"==={}.toString.call(process))Ec=process.nextTick;else if(a()){var e="ms.rx.schedule"+Math.random(),f={},g=0,h=function(a){if("string"==typeof a.data&&a.data.substring(0,e.length)===e){var b=a.data.substring(e.length),c=f[b];c(),delete f[b]}};nb.addEventListener?nb.addEventListener("message",h,!1):nb.attachEvent("onmessage",h,!1),Ec=function(a){var b=g++;f[b]=a,nb.postMessage(e+b,"*")}}else if(nb.MessageChannel){var i=new nb.MessageChannel,j={},k=0;i.port1.onmessage=function(a){var b=a.data,c=j[b];c(),delete j[b]},Ec=function(a){var b=k++;j[b]=a,i.port2.postMessage(b)}}else"document"in nb&&"onreadystatechange"in nb.document.createElement("script")?Ec=function(a){var b=nb.document.createElement("script");b.onreadystatechange=function(){a(),b.onreadystatechange=null,b.parentNode.removeChild(b),b=null},nb.document.documentElement.appendChild(b)}:(Ec=function(a){return Kc(a,0)},Ic=Lc)}();var Mc=Cc.timeout=function(){function a(a,b){var c=this,d=new yc,e=Ec(function(){d.isDisposed||d.setDisposable(b(c,a))});return new tc(d,wc(function(){Ic(e)}))}function b(a,b,c){var d=this,e=Cc.normalize(b);if(0===e)return d.scheduleWithState(a,c);var f=new yc,g=Kc(function(){f.isDisposed||f.setDisposable(c(d,a))},e);return new tc(f,wc(function(){Lc(g)}))}function c(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}return new Cc(wb,a,b,c)}(),Nc=function(a){function b(a,b){return this._scheduler.scheduleWithState(a,this._wrap(b))}function c(a,b,c){return this._scheduler.scheduleWithRelativeAndState(a,b,this._wrap(c))}function d(a,b,c){return this._scheduler.scheduleWithAbsoluteAndState(a,b,this._wrap(c))}function e(e,f){this._scheduler=e,this._handler=f,this._recursiveOriginal=null,this._recursiveWrapper=null,a.call(this,this._scheduler.now.bind(this._scheduler),b,c,d)}return oc(e,a),e.prototype._clone=function(a){return new e(a,this._handler)},e.prototype._wrap=function(a){var b=this;return function(c,d){try{return a(b._getRecursiveWrapper(c),d)}catch(e){if(!b._handler(e))throw e;return xc}}},e.prototype._getRecursiveWrapper=function(a){if(this._recursiveOriginal!==a){this._recursiveOriginal=a;var b=this._clone(a);b._recursiveOriginal=a,b._recursiveWrapper=b,this._recursiveWrapper=b}return this._recursiveWrapper},e.prototype.schedulePeriodicWithState=function(a,b,c){var d=this,e=!1,f=new yc;return f.setDisposable(this._scheduler.schedulePeriodicWithState(a,b,function(a){if(e)return null;try{return c(a)}catch(b){if(e=!0,!d._handler(b))throw b;return f.dispose(),null}})),f},e}(Cc),Oc=sb.Notification=function(){function a(a,b){this.hasValue=null==b?!1:b,this.kind=a}return a.prototype.accept=function(a,b,c){return a&&"object"==typeof a?this._acceptObservable(a):this._accept(a,b,c)},a.prototype.toObservable=function(a){var b=this;return ub(a)||(a=Gc),new Nd(function(c){return a.schedule(function(){b._acceptObservable(c),"N"===b.kind&&c.onCompleted()})})},a}(),Pc=Oc.createOnNext=function(){function a(a){return a(this.value)}function b(a){return a.onNext(this.value)}function c(){return"OnNext("+this.value+")"}return function(d){var e=new Oc("N",!0);return e.value=d,e._accept=a,e._acceptObservable=b,e.toString=c,e}}(),Qc=Oc.createOnError=function(){function a(a,b){return b(this.exception)}function b(a){return a.onError(this.exception)}function c(){return"OnError("+this.exception+")"}return function(d){var e=new Oc("E");return e.exception=d,e._accept=a,e._acceptObservable=b,e.toString=c,e}}(),Rc=Oc.createOnCompleted=function(){function a(a,b,c){return c()}function b(a){return a.onCompleted()}function c(){return"OnCompleted()"}return function(){var d=new Oc("C");return d._accept=a,d._acceptObservable=b,d.toString=c,d}}(),Sc=sb.internals.Enumerator=function(a){this._next=a};Sc.prototype.next=function(){return this._next()},Sc.prototype[Lb]=function(){return this};var Tc=sb.internals.Enumerable=function(a){this._iterator=a};Tc.prototype[Lb]=function(){return this._iterator()},Tc.prototype.concat=function(){var a=this;return new Nd(function(b){var c;try{c=a[Lb]()}catch(d){return void b.onError(d)}var e,f=new zc,g=Gc.scheduleRecursive(function(a){var d;if(!e){try{d=c.next()}catch(g){return void b.onError(g)}if(d.done)return void b.onCompleted();var h=d.value;Ab(h)&&(h=dd(h));var i=new yc;f.setDisposable(i),i.setDisposable(h.subscribe(b.onNext.bind(b),b.onError.bind(b),function(){a()}))}});return new tc(f,g,wc(function(){e=!0}))})},Tc.prototype.catchError=function(){var a=this;return new Nd(function(b){var c;try{c=a[Lb]()}catch(d){return void b.onError(d)}var e,f,g=new zc,h=Gc.scheduleRecursive(function(a){if(!e){var d;try{d=c.next()}catch(h){return void b.onError(h)}if(d.done)return void(f?b.onError(f):b.onCompleted());var i=d.value;Ab(i)&&(i=dd(i));var j=new yc;g.setDisposable(j),j.setDisposable(i.subscribe(b.onNext.bind(b),function(b){f=b,a()},b.onCompleted.bind(b)))}});return new tc(g,h,wc(function(){e=!0}))})},Tc.prototype.catchErrorWhen=function(a){var b=this;return new Nd(function(c){var d,e=new Qd,f=a(e),g=new Qd,h=f.subscribe(g);try{d=b[Lb]()}catch(i){return void c.onError(i)}var j,k,l=new zc,m=Gc.scheduleRecursive(function(a){if(!j){var b;try{b=d.next()}catch(f){return void c.onError(f)}if(b.done)return void(k?c.onError(k):c.onCompleted());var h=b.value;Ab(h)&&(h=dd(h));var i=new yc,m=new yc;l.setDisposable(new tc(m,i)),i.setDisposable(h.subscribe(c.onNext.bind(c),function(b){m.setDisposable(g.subscribe(function(){a()},function(a){c.onError(a)},function(){c.onCompleted()})),e.onNext(b)},c.onCompleted.bind(c)))}});return new tc(h,l,m,wc(function(){j=!0}))})};var Uc=Tc.repeat=function(a,b){return null==b&&(b=-1),new Tc(function(){var c=b;return new Sc(function(){return 0===c?Mb:(c>0&&c--,{done:!1,value:a})})})},Vc=Tc.of=function(a,b,c){return b||(b=vb),new Tc(function(){var d=-1;return new Sc(function(){return++d0&&(a=!this.isAcquired,this.isAcquired=!0),a&&this.disposable.setDisposable(this.scheduler.scheduleRecursive(function(a){var c;if(!(b.queue.length>0))return void(b.isAcquired=!1);c=b.queue.shift();try{c()}catch(d){throw b.queue=[],b.hasFaulted=!0,d }a()}))},b.prototype.dispose=function(){a.prototype.dispose.call(this),this.disposable.dispose()},b}(Zc),bd=function(a){function b(b,c,d){a.call(this,b,c),this._cancel=d}return oc(b,a),b.prototype.next=function(b){a.prototype.next.call(this,b),this.ensureActive()},b.prototype.error=function(b){a.prototype.error.call(this,b),this.ensureActive()},b.prototype.completed=function(){a.prototype.completed.call(this),this.ensureActive()},b.prototype.dispose=function(){a.prototype.dispose.call(this),this._cancel&&this._cancel.dispose(),this._cancel=null},b}(ad),cd=sb.Observable=function(){function a(a){if(sb.config.longStackSupport&&Gb){try{throw new Error}catch(b){this.stack=b.stack.substring(b.stack.indexOf("\n")+1)}var d=this;this._subscribe=function(b){var e=b.onError.bind(b);return b.onError=function(a){c(a,d),e(a)},a.call(d,b)}}else this._subscribe=a}return Yc=a.prototype,Yc.subscribe=Yc.forEach=function(a,b,c){return this._subscribe("object"==typeof a?a:Xc(a,b,c))},Yc.subscribeOnNext=function(a,b){return this._subscribe(Xc(2===arguments.length?function(c){a.call(b,c)}:a))},Yc.subscribeOnError=function(a,b){return this._subscribe(Xc(null,2===arguments.length?function(c){a.call(b,c)}:a))},Yc.subscribeOnCompleted=function(a,b){return this._subscribe(Xc(null,null,2===arguments.length?function(){a.call(b)}:a))},a}();Yc.observeOn=function(a){var b=this;return new Nd(function(c){return b.subscribe(new bd(a,c))},b)},Yc.subscribeOn=function(a){var b=this;return new Nd(function(c){var d=new yc,e=new zc;return e.setDisposable(d),d.setDisposable(a.schedule(function(){e.setDisposable(new q(a,b.subscribe(c)))})),e},b)};var dd=cd.fromPromise=function(a){return ed(function(){var b=new sb.AsyncSubject;return a.then(function(a){b.onNext(a),b.onCompleted()},b.onError.bind(b)),b})};Yc.toPromise=function(a){if(a||(a=sb.config.Promise),!a)throw new TypeError("Promise type not provided nor in Rx.config.Promise");var b=this;return new a(function(a,c){var d,e=!1;b.subscribe(function(a){d=a,e=!0},c,function(){e&&a(d)})})},Yc.toArray=function(){var a=this;return new Nd(function(b){var c=[];return a.subscribe(function(a){c.push(a)},function(a){b.onError(a)},function(){b.onNext(c),b.onCompleted()})},a)},cd.create=cd.createWithDisposable=function(a,b){return new Nd(a,b)};var ed=cd.defer=function(a){return new Nd(function(b){var c;try{c=a()}catch(d){return ld(d).subscribe(b)}return Ab(c)&&(c=dd(c)),c.subscribe(b)})},fd=cd.empty=function(a){return ub(a)||(a=Gc),new Nd(function(b){return a.schedule(function(){b.onCompleted()})})},gd=Math.pow(2,53)-1;r.prototype[Lb]=function(){return new t(this._s)},t.prototype[Lb]=function(){return this},t.prototype.next=function(){if(this._id?(c.onNext(a[d++]),b()):c.onCompleted()})})};cd.generate=function(a,b,c,d,e){return ub(e)||(e=Hc),new Nd(function(f){var g=!0,h=a;return e.scheduleRecursive(function(a){var e,i;try{g?g=!1:h=c(h),e=b(h),e&&(i=d(h))}catch(j){return void f.onError(j)}e?(f.onNext(i),a()):f.onCompleted()})})},cd.of=function(){return A(null,arguments)},cd.ofWithScheduler=function(a){return A(a,nc.call(arguments,1))};var jd=cd.never=function(){return new Nd(function(){return xc})};cd.pairs=function(a,b){return b||(b=sb.Scheduler.currentThread),new Nd(function(c){var d=0,e=Object.keys(a),f=e.length;return b.scheduleRecursive(function(b){if(f>d){var g=e[d++];c.onNext([g,a[g]]),b()}else c.onCompleted()})})},cd.range=function(a,b,c){return ub(c)||(c=Hc),new Nd(function(d){return c.scheduleRecursiveWithState(0,function(c,e){b>c?(d.onNext(a+c),e(c+1)):d.onCompleted()})})},cd.repeat=function(a,b,c){return ub(c)||(c=Hc),kd(a,c).repeat(null==b?-1:b)};var kd=cd["return"]=cd.just=function(a,b){return ub(b)||(b=Gc),new Nd(function(c){return b.schedule(function(){c.onNext(a),c.onCompleted()})})};cd.returnValue=function(){return kd.apply(null,arguments)};var ld=cd["throw"]=cd.throwError=function(a,b){return ub(b)||(b=Gc),new Nd(function(c){return b.schedule(function(){c.onError(a)})})};cd.throwException=function(){return cd.throwError.apply(null,arguments)},cd.using=function(a,b){return new Nd(function(c){var d,e,f=xc;try{d=a(),d&&(f=d),e=b(d)}catch(g){return new tc(ld(g).subscribe(c),f)}return new tc(e.subscribe(c),f)})},Yc.amb=function(a){var b=this;return new Nd(function(c){function d(){f||(f=g,j.dispose())}function e(){f||(f=h,i.dispose())}var f,g="L",h="R",i=new yc,j=new yc;return Ab(a)&&(a=dd(a)),i.setDisposable(b.subscribe(function(a){d(),f===g&&c.onNext(a)},function(a){d(),f===g&&c.onError(a)},function(){d(),f===g&&c.onCompleted()})),j.setDisposable(a.subscribe(function(a){e(),f===h&&c.onNext(a)},function(a){e(),f===h&&c.onError(a)},function(){e(),f===h&&c.onCompleted()})),new tc(i,j)})},cd.amb=function(){function a(a,b){return a.amb(b)}for(var b=jd(),c=n(arguments,0),d=0,e=c.length;e>d;d++)b=a(b,c[d]);return b},Yc["catch"]=Yc.catchError=function(a){return"function"==typeof a?B(this,a):md([this,a])},Yc.catchException=function(a){return this.catchError(a)};var md=cd.catchError=cd["catch"]=function(){return Vc(n(arguments,0)).catchError()};cd.catchException=function(){return md.apply(null,arguments)},Yc.combineLatest=function(){var a=nc.call(arguments);return Array.isArray(a[0])?a[0].unshift(this):a.unshift(this),nd.apply(this,a)};var nd=cd.combineLatest=function(){var a=nc.call(arguments),b=a.pop();return Array.isArray(a[0])&&(a=a[0]),new Nd(function(c){function d(a){var d;if(h[a]=!0,i||(i=h.every(vb))){try{d=b.apply(null,k)}catch(e){return void c.onError(e)}c.onNext(d)}else j.filter(function(b,c){return c!==a}).every(vb)&&c.onCompleted()}function e(a){j[a]=!0,j.every(vb)&&c.onCompleted()}for(var f=function(){return!1},g=a.length,h=o(g,f),i=!1,j=o(g,f),k=new Array(g),l=new Array(g),m=0;g>m;m++)!function(b){var f=a[b],g=new yc;Ab(f)&&(f=dd(f)),g.setDisposable(f.subscribe(function(a){k[b]=a,d(b)},function(a){c.onError(a)},function(){e(b)})),l[b]=g}(m);return new tc(l)},this)};Yc.concat=function(){var a=nc.call(arguments,0);return a.unshift(this),od.apply(this,a)};var od=cd.concat=function(){return Vc(n(arguments,0)).concat()};Yc.concatAll=function(){return this.merge(1)},Yc.concatObservable=function(){return this.merge(1)},Yc.merge=function(a){if("number"!=typeof a)return pd(this,a);var b=this;return new Nd(function(c){function d(a){var b=new yc;f.add(b),Ab(a)&&(a=dd(a)),b.setDisposable(a.subscribe(function(a){c.onNext(a)},function(a){c.onError(a)},function(){f.remove(b),h.length>0?d(h.shift()):(e--,g&&0===e&&c.onCompleted())}))}var e=0,f=new tc,g=!1,h=[];return f.add(b.subscribe(function(b){a>e?(e++,d(b)):h.push(b)},function(a){c.onError(a)},function(){g=!0,0===e&&c.onCompleted()})),f},b)};var pd=cd.merge=function(){var a,b;return arguments[0]?ub(arguments[0])?(a=arguments[0],b=nc.call(arguments,1)):(a=Gc,b=nc.call(arguments,0)):(a=Gc,b=nc.call(arguments,1)),Array.isArray(b[0])&&(b=b[0]),A(a,b).mergeAll()};Yc.mergeAll=function(){var a=this;return new Nd(function(b){var c=new tc,d=!1,e=new yc;return c.add(e),e.setDisposable(a.subscribe(function(a){var e=new yc;c.add(e),Ab(a)&&(a=dd(a)),e.setDisposable(a.subscribe(function(a){b.onNext(a)},function(a){b.onError(a)},function(){c.remove(e),d&&1===c.length&&b.onCompleted()}))},function(a){b.onError(a)},function(){d=!0,1===c.length&&b.onCompleted()})),c},a)},Yc.mergeObservable=function(){return this.mergeAll.apply(this,arguments)},Yc.onErrorResumeNext=function(a){if(!a)throw new Error("Second observable is required");return qd([this,a])};var qd=cd.onErrorResumeNext=function(){var a=n(arguments,0);return new Nd(function(b){var c=0,d=new zc,e=Gc.scheduleRecursive(function(e){var f,g;ck;k++)!function(a){var c=b[a],e=new yc;Ab(c)&&(c=dd(c)),e.setDisposable(c.subscribe(function(b){i[a]=b,g[a]=!0,h=g.every(vb)},d.onError.bind(d),function(){})),j[a]=e}(k);var l=new yc;return l.setDisposable(a.subscribe(function(a){var b,e=[a].concat(i);if(h){try{b=c.apply(null,e)}catch(f){return void d.onError(f)}d.onNext(b)}},d.onError.bind(d),function(){d.onCompleted()})),j[f]=l,new tc(j)},this)},Yc.zip=function(){if(Array.isArray(arguments[0]))return C.apply(this,arguments);var a=this,b=nc.call(arguments),c=b.pop();return b.unshift(a),new Nd(function(d){function e(b){var e,f;if(h.every(function(a){return a.length>0})){try{f=h.map(function(a){return a.shift()}),e=c.apply(a,f)}catch(g){return void d.onError(g)}d.onNext(e)}else i.filter(function(a,c){return c!==b}).every(vb)&&d.onCompleted()}function f(a){i[a]=!0,i.every(function(a){return a})&&d.onCompleted()}for(var g=b.length,h=o(g,function(){return[]}),i=o(g,function(){return!1}),j=new Array(g),k=0;g>k;k++)!function(a){var c=b[a],g=new yc;Ab(c)&&(c=dd(c)),g.setDisposable(c.subscribe(function(b){h[a].push(b),e(a)},function(a){d.onError(a)},function(){f(a)})),j[a]=g}(k);return new tc(j)},a)},cd.zip=function(){var a=nc.call(arguments,0),b=a.shift();return b.zip.apply(b,a)},cd.zipArray=function(){var a=n(arguments,0);return new Nd(function(b){function c(a){if(f.every(function(a){return a.length>0})){var c=f.map(function(a){return a.shift()});b.onNext(c)}else if(g.filter(function(b,c){return c!==a}).every(vb))return void b.onCompleted()}function d(a){return g[a]=!0,g.every(vb)?void b.onCompleted():void 0}for(var e=a.length,f=o(e,function(){return[]}),g=o(e,function(){return!1}),h=new Array(e),i=0;e>i;i++)!function(e){h[e]=new yc,h[e].setDisposable(a[e].subscribe(function(a){f[e].push(a),c(e)},function(a){b.onError(a)},function(){d(e)}))}(i);return new tc(h)})},Yc.asObservable=function(){var a=this;return new Nd(function(b){return a.subscribe(b)},this)},Yc.bufferWithCount=function(a,b){return"number"!=typeof b&&(b=a),this.windowWithCount(a,b).selectMany(function(a){return a.toArray()}).where(function(a){return a.length>0})},Yc.dematerialize=function(){var a=this;return new Nd(function(b){return a.subscribe(function(a){return a.accept(b)},function(a){b.onError(a)},function(){b.onCompleted()})},this)},Yc.distinctUntilChanged=function(a,b){var c=this;return a||(a=vb),b||(b=xb),new Nd(function(d){var e,f=!1;return c.subscribe(function(c){var g,h=!1;try{g=a(c)}catch(i){return void d.onError(i)}if(f)try{h=b(e,g)}catch(i){return void d.onError(i)}f&&h||(f=!0,e=g,d.onNext(c))},function(a){d.onError(a)},function(){d.onCompleted()})},this)},Yc["do"]=Yc.tap=function(a,b,c){var d,e=this;return"function"==typeof a?d=a:(d=function(b){a.onNext(b)},b=function(b){a.onError(b)},c=function(){a.onCompleted()}),new Nd(function(a){return e.subscribe(function(b){try{d(b)}catch(c){a.onError(c)}a.onNext(b)},function(c){if(b)try{b(c)}catch(d){a.onError(d)}a.onError(c)},function(){if(c)try{c()}catch(b){a.onError(b)}a.onCompleted()})},this)},Yc.doAction=function(){return this.tap.apply(this,arguments)},Yc.doOnNext=Yc.tapOnNext=function(a,b){return this.tap("undefined"!=typeof b?function(c){a.call(b,c)}:a)},Yc.doOnError=Yc.tapOnError=function(a,b){return this.tap(tb,"undefined"!=typeof b?function(c){a.call(b,c)}:a)},Yc.doOnCompleted=Yc.tapOnCompleted=function(a,b){return this.tap(tb,null,"undefined"!=typeof b?function(){a.call(b)}:a)},Yc["finally"]=Yc.ensure=function(a){var b=this;return new Nd(function(c){var d;try{d=b.subscribe(c)}catch(e){throw a(),e}return wc(function(){try{d.dispose()}catch(b){throw b}finally{a()}})},this)},Yc.finallyAction=function(a){return this.ensure(a)},Yc.ignoreElements=function(){var a=this;return new Nd(function(b){return a.subscribe(tb,function(a){b.onError(a)},function(){b.onCompleted()})},a)},Yc.materialize=function(){var a=this;return new Nd(function(b){return a.subscribe(function(a){b.onNext(Pc(a))},function(a){b.onNext(Qc(a)),b.onCompleted()},function(){b.onNext(Rc()),b.onCompleted()})},a)},Yc.repeat=function(a){return Uc(this,a).concat()},Yc.retry=function(a){return Uc(this,a).catchError()},Yc.retryWhen=function(a){return Uc(this).catchErrorWhen(a)},Yc.scan=function(){var a,b,c=!1,d=this;return 2===arguments.length?(c=!0,a=arguments[0],b=arguments[1]):b=arguments[0],new Nd(function(e){var f,g,h;return d.subscribe(function(d){!h&&(h=!0);try{f?g=b(g,d):(g=c?b(a,d):d,f=!0)}catch(i){return void e.onError(i)}e.onNext(g)},function(a){e.onError(a)},function(){!h&&c&&e.onNext(a),e.onCompleted()})},d)},Yc.skipLast=function(a){var b=this;return new Nd(function(c){var d=[];return b.subscribe(function(b){d.push(b),d.length>a&&c.onNext(d.shift())},function(a){c.onError(a)},function(){c.onCompleted()})},b)},Yc.startWith=function(){var a,b,c=0;return arguments.length&&ub(arguments[0])?(b=arguments[0],c=1):b=Gc,a=nc.call(arguments,c),Vc([id(a,b),this]).concat()},Yc.takeLast=function(a){var b=this;return new Nd(function(c){var d=[];return b.subscribe(function(b){d.push(b),d.length>a&&d.shift()},function(a){c.onError(a)},function(){for(;d.length>0;)c.onNext(d.shift());c.onCompleted()})},b)},Yc.takeLastBuffer=function(a){var b=this;return new Nd(function(c){var d=[];return b.subscribe(function(b){d.push(b),d.length>a&&d.shift()},function(a){c.onError(a)},function(){c.onNext(d),c.onCompleted()})},b)},Yc.windowWithCount=function(a,b){var c=this;if(+a||(a=0),1/0===Math.abs(a)&&(a=0),0>=a)throw new Error(Eb);if(null==b&&(b=a),+b||(b=0),1/0===Math.abs(b)&&(b=0),0>=b)throw new Error(Eb);return new Nd(function(d){function e(){var a=new Qd;i.push(a),d.onNext(qc(a,g))}var f=new yc,g=new Ac(f),h=0,i=[];return e(),f.setDisposable(c.subscribe(function(c){for(var d=0,f=i.length;f>d;d++)i[d].onNext(c);var g=h-a+1;g>=0&&g%b===0&&i.shift().onCompleted(),++h%b===0&&e()},function(a){for(;i.length>0;)i.shift().onError(a);d.onError(a)},function(){for(;i.length>0;)i.shift().onCompleted();d.onCompleted()})),g},c)},Yc.selectConcat=Yc.concatMap=function(a,b,c){return Cb(a)&&Cb(b)?this.concatMap(function(c,d){var e=a(c,d);return Ab(e)&&(e=dd(e)),(Ob(e)||Nb(e))&&(e=hd(e)),e.map(function(a,e){return b(c,a,d,e)})}):Cb(a)?D(this,a,c):D(this,function(){return a})},Yc.concatMapObserver=Yc.selectConcatObserver=function(a,b,c,d){var e=this,f=Qb(a,d,2),g=Qb(b,d,1),h=Qb(c,d,0);return new Nd(function(a){var b=0;return e.subscribe(function(c){var d;try{d=f(c,b++)}catch(e){return void a.onError(e)}Ab(d)&&(d=dd(d)),a.onNext(d)},function(b){var c;try{c=g(b)}catch(d){return void a.onError(d)}Ab(c)&&(c=dd(c)),a.onNext(c),a.onCompleted()},function(){var b;try{b=h()}catch(c){return void a.onError(c)}Ab(b)&&(b=dd(b)),a.onNext(b),a.onCompleted()})},this).concatAll()},Yc.defaultIfEmpty=function(b){var c=this;return b===a&&(b=null),new Nd(function(a){var d=!1;return c.subscribe(function(b){d=!0,a.onNext(b)},function(b){a.onError(b)},function(){!d&&a.onNext(b),a.onCompleted()})},c)},F.prototype.push=function(a){var b=-1===E(this.set,a,this.comparer);return b&&this.set.push(a),b},Yc.distinct=function(a,b){var c=this;return b||(b=xb),new Nd(function(d){var e=new F(b);return c.subscribe(function(b){var c=b;if(a)try{c=a(b)}catch(f){return void d.onError(f)}e.push(c)&&d.onNext(b)},function(a){d.onError(a)},function(){d.onCompleted()})},this)},Yc.groupBy=function(a,b,c){return this.groupByUntil(a,b,jd,c)},Yc.groupByUntil=function(a,b,c,d){var e=this;return b||(b=vb),d||(d=xb),new Nd(function(f){function g(a){return function(b){b.onError(a)}}var h=new Gd(0,d),i=new tc,j=new Ac(i);return i.add(e.subscribe(function(d){var e;try{e=a(d)}catch(k){return h.getValues().forEach(g(k)),void f.onError(k)}var l=!1,m=h.tryGetValue(e);if(m||(m=new Qd,h.set(e,m),l=!0),l){var n=new Pd(e,m,j),o=new Pd(e,m);try{duration=c(o)}catch(k){return h.getValues().forEach(g(k)),void f.onError(k)}f.onNext(n);var p=new yc;i.add(p);var q=function(){h.remove(e)&&m.onCompleted(),i.remove(p)};p.setDisposable(duration.take(1).subscribe(tb,function(a){h.getValues().forEach(g(a)),f.onError(a)},q))}var r;try{r=b(d)}catch(k){return h.getValues().forEach(g(k)),void f.onError(k)}m.onNext(r)},function(a){h.getValues().forEach(g(a)),f.onError(a)},function(){h.getValues().forEach(function(a){a.onCompleted()}),f.onCompleted()})),j},e)},Yc.select=Yc.map=function(a,b){var c=Cb(a)?Qb(a,b,3):function(){return a},d=this;return new Nd(function(a){var b=0;return d.subscribe(function(e){try{var f=c(e,b++,d)}catch(g){return void a.onError(g)}a.onNext(f)},function(b){a.onError(b)},function(){a.onCompleted()})},d)},Yc.pluck=function(a){return this.map(function(b){return b[a]})},Yc.selectMany=Yc.flatMap=function(a,b,c){return Cb(a)&&Cb(b)?this.flatMap(function(c,d){var e=a(c,d);return Ab(e)&&(e=dd(e)),(Ob(e)||Nb(e))&&(e=hd(e)),e.map(function(a,e){return b(c,a,d,e)})},c):Cb(a)?G(this,a,c):G(this,function(){return a})},Yc.flatMapObserver=Yc.selectManyObserver=function(a,b,c,d){var e=this;return new Nd(function(f){var g=0;return e.subscribe(function(b){var c;try{c=a.call(d,b,g++)}catch(e){return void f.onError(e)}Ab(c)&&(c=dd(c)),f.onNext(c)},function(a){var c;try{c=b.call(d,a)}catch(e){return void f.onError(e)}Ab(c)&&(c=dd(c)),f.onNext(c),f.onCompleted()},function(){var a;try{a=c.call(d)}catch(b){return void f.onError(b)}Ab(a)&&(a=dd(a)),f.onNext(a),f.onCompleted()})},e).mergeAll()},Yc.selectSwitch=Yc.flatMapLatest=Yc.switchMap=function(a,b){return this.select(a,b).switchLatest()},Yc.skip=function(a){if(0>a)throw new Error(Eb);var b=this;return new Nd(function(c){var d=a;return b.subscribe(function(a){0>=d?c.onNext(a):d--},function(a){c.onError(a)},function(){c.onCompleted()})},b)},Yc.skipWhile=function(a,b){var c=this,d=Qb(a,b,3);return new Nd(function(a){var b=0,e=!1;return c.subscribe(function(f){if(!e)try{e=!d(f,b++,c)}catch(g){return void a.onError(g)}e&&a.onNext(f)},function(b){a.onError(b)},function(){a.onCompleted()})},c)},Yc.take=function(a,b){if(0>a)throw new RangeError(Eb);if(0===a)return fd(b);var c=this;return new Nd(function(b){var d=a;return c.subscribe(function(a){d-->0&&(b.onNext(a),0===d&&b.onCompleted())},function(a){b.onError(a)},function(){b.onCompleted()})},c)},Yc.takeWhile=function(a,b){var c=this,d=Qb(a,b,3);return new Nd(function(a){var b=0,e=!0;return c.subscribe(function(f){if(e){try{e=d(f,b++,c)}catch(g){return void a.onError(g)}e?a.onNext(f):a.onCompleted()}},function(b){a.onError(b)},function(){a.onCompleted()})},c)},Yc.where=Yc.filter=function(a,b){var c=this;return a=Qb(a,b,3),new Nd(function(b){var d=0;return c.subscribe(function(e){try{var f=a(e,d++,c)}catch(g){return void b.onError(g)}f&&b.onNext(e)},function(a){b.onError(a)},function(){b.onCompleted()})},c)},Yc.aggregate=function(){var a,b,c=!1,d=this;return 2===arguments.length?(c=!0,b=arguments[0],a=arguments[1]):a=arguments[0],new Nd(function(e){var f,g,h;return d.subscribe(function(d){!h&&(h=!0);try{f?g=a(g,d):(g=c?a(b,d):d,f=!0)}catch(i){return void e.onError(i)}},function(a){e.onError(a)},function(){h&&e.onNext(g),!h&&c&&e.onNext(b),!h&&!c&&e.onError(new Error(Db)),e.onCompleted()})},d)},Yc.reduce=function(a){var b,c=!1,d=this;return 2===arguments.length&&(c=!0,b=arguments[1]),new Nd(function(e){var f,g,h;return d.subscribe(function(d){!h&&(h=!0);try{f?g=a(g,d):(g=c?a(b,d):d,f=!0)}catch(i){return void e.onError(i)}},function(a){e.onError(a)},function(){h&&e.onNext(g),!h&&c&&e.onNext(b),!h&&!c&&e.onError(new Error(Db)),e.onCompleted()})},d)},Yc.some=function(a,b){var c=this;return a?c.filter(a,b).some():new Nd(function(a){return c.subscribe(function(){a.onNext(!0),a.onCompleted()},function(b){a.onError(b)},function(){a.onNext(!1),a.onCompleted()})},c)},Yc.any=function(){return this.some.apply(this,arguments)},Yc.isEmpty=function(){return this.any().map(Bb)},Yc.every=function(a,b){return this.filter(function(b){return!a(b)},b).some().map(Bb)},Yc.all=function(){return this.every.apply(this,arguments)},Yc.contains=function(a,b){function c(a,b){return 0===a&&0===b||a===b||isNaN(a)&&isNaN(b)}var d=this;return new Nd(function(e){var f=0,g=+b||0;return 1/0===Math.abs(g)&&(g=0),0>g?(e.onNext(!1),e.onCompleted(),xc):d.subscribe(function(b){f++>=g&&c(b,a)&&(e.onNext(!0),e.onCompleted())},function(a){e.onError(a)},function(){e.onNext(!1),e.onCompleted()})},this)},Yc.count=function(a,b){return a?this.filter(a,b).count():this.reduce(function(a){return a+1},0)},Yc.indexOf=function(a,b){var c=this;return new Nd(function(d){var e=0,f=+b||0;return 1/0===Math.abs(f)&&(f=0),0>f?(d.onNext(-1),d.onCompleted(),xc):c.subscribe(function(b){e>=f&&b===a&&(d.onNext(e),d.onCompleted()),e++},function(a){d.onError(a)},function(){d.onNext(-1),d.onCompleted()})},c)},Yc.sum=function(a,b){return a&&Cb(a)?this.map(a,b).sum():this.reduce(function(a,b){return a+b},0)},Yc.minBy=function(a,b){return b||(b=yb),H(this,a,function(a,c){return-1*b(a,c)})},Yc.min=function(a){return this.minBy(vb,a).map(function(a){return I(a)})},Yc.maxBy=function(a,b){return b||(b=yb),H(this,a,b)},Yc.max=function(a){return this.maxBy(vb,a).map(function(a){return I(a)})},Yc.average=function(a,b){return a&&Cb(a)?this.map(a,b).average():this.reduce(function(a,b){return{sum:a.sum+b,count:a.count+1}},{sum:0,count:0}).map(function(a){if(0===a.count)throw new Error(Db);return a.sum/a.count})},Yc.sequenceEqual=function(a,b){var c=this;return b||(b=xb),new Nd(function(d){var e=!1,f=!1,g=[],h=[],i=c.subscribe(function(a){var c,e;if(h.length>0){e=h.shift();try{c=b(e,a)}catch(i){return void d.onError(i)}c||(d.onNext(!1),d.onCompleted())}else f?(d.onNext(!1),d.onCompleted()):g.push(a)},function(a){d.onError(a)},function(){e=!0,0===g.length&&(h.length>0?(d.onNext(!1),d.onCompleted()):f&&(d.onNext(!0),d.onCompleted()))});(Ob(a)||Nb(a))&&(a=hd(a)),Ab(a)&&(a=dd(a));var j=a.subscribe(function(a){var c;if(g.length>0){var f=g.shift();try{c=b(f,a)}catch(i){return void d.onError(i)}c||(d.onNext(!1),d.onCompleted())}else e?(d.onNext(!1),d.onCompleted()):h.push(a)},function(a){d.onError(a)},function(){f=!0,0===h.length&&(g.length>0?(d.onNext(!1),d.onCompleted()):e&&(d.onNext(!0),d.onCompleted()))});return new tc(i,j)},c)},Yc.elementAt=function(a){return J(this,a,!1)},Yc.elementAtOrDefault=function(a,b){return J(this,a,!0,b)},Yc.single=function(a,b){return a&&Cb(a)?this.where(a,b).single():K(this,!1)},Yc.singleOrDefault=function(a,b,c){return a&&Cb(a)?this.filter(a,c).singleOrDefault(null,b):K(this,!0,b)},Yc.first=function(a,b){return a?this.where(a,b).first():L(this,!1)},Yc.firstOrDefault=function(a,b){return a?this.where(a).firstOrDefault(null,b):L(this,!0,b)},Yc.last=function(a,b){return a?this.where(a,b).last():M(this,!1)},Yc.lastOrDefault=function(a,b,c){return a?this.where(a,c).lastOrDefault(null,b):M(this,!0,b)},Yc.find=function(a,b){return N(this,a,b,!1)},Yc.findIndex=function(a,b){return N(this,a,b,!0)},Yc.toSet=function(){if("undefined"==typeof nb.Set)throw new TypeError;var a=this;return new Nd(function(b){var c=new nb.Set;return a.subscribe(function(a){c.add(a)},function(a){b.onError(a)},function(){b.onNext(c),b.onCompleted()})},a)},Yc.toMap=function(a,b){if("undefined"==typeof nb.Map)throw new TypeError;var c=this;return new Nd(function(d){var e=new nb.Map;return c.subscribe(function(c){var f;try{f=a(c)}catch(g){return void d.onError(g)}var h=c;if(b)try{h=b(c)}catch(g){return void d.onError(g)}e.set(f,h)},function(a){d.onError(a)},function(){d.onNext(e),d.onCompleted()})},c)};var rd="function",sd="throw",kc=sb.internals.isObject,td=sb.spawn=function(a){var b=T(a);return function(c){function d(a,b){Mc.schedule(c.bind(f,a,b))}function e(a,b){var c;if(arguments.length>2&&(b=nc.call(arguments,1)),a)try{c=g[sd](a)}catch(h){return d(h)}if(!a)try{c=g.next(b)}catch(h){return d(h)}if(c.done)return d(null,c.value);if(c.value=O(c.value,f),typeof c.value!==rd)e(new TypeError("Rx.spawn only supports a function, Promise, Observable, Object or Array."));else{var i=!1;try{c.value.call(f,function(){i||(i=!0,e.apply(f,arguments))})}catch(h){Mc.schedule(function(){i||(i=!0,e.call(f,h))})}}}var f=this,g=a;if(b){var h=nc.call(arguments),i=h.length,j=i&&typeof h[i-1]===rd;c=j?h.pop():V,g=a.apply(this,h)}else c=c||V;e()}};cd.start=function(a,b,c){return ud(a,b,c)()};var ud=cd.toAsync=function(a,b,c){return ub(c)||(c=Mc),function(){var d=arguments,e=new Rd;return c.schedule(function(){var c;try{c=a.apply(b,d)}catch(f){return void e.onError(f)}e.onNext(c),e.onCompleted()}),e.asObservable()}};cd.fromCallback=function(a,b,c){return function(){var d=nc.call(arguments,0);return new Nd(function(e){function f(){var a=arguments;if(c){try{a=c(a)}catch(b){return void e.onError(b)}e.onNext(a)}else a.length<=1?e.onNext.apply(e,a):e.onNext(a);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},cd.fromNodeCallback=function(a,b,c){return function(){var d=nc.call(arguments,0);return new Nd(function(e){function f(a){if(a)return void e.onError(a);var b=nc.call(arguments,1);if(c){try{b=c(b)}catch(d){return void e.onError(d)}e.onNext(b)}else b.length<=1?e.onNext.apply(e,b):e.onNext(b);e.onCompleted()}d.push(f),a.apply(b,d)}).publishLast().refCount()}},sb.config.useNativeEvents=!1,cd.fromEvent=function(a,b,c){if(a.addListener)return vd(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},c);if(!sb.config.useNativeEvents){if("function"==typeof a.on&&"function"==typeof a.off)return vd(function(c){a.on(b,c)},function(c){a.off(b,c)},c);if(nb.Ember&&"function"==typeof nb.Ember.addListener)return vd(function(c){Ember.addListener(a,b,c)},function(c){Ember.removeListener(a,b,c)},c)}return new Nd(function(d){return X(a,b,function(a){var b=a;if(c)try{b=c(arguments)}catch(e){return void d.onError(e)}d.onNext(b)})}).publish().refCount()};var vd=cd.fromEventPattern=function(a,b,c){return new Nd(function(d){function e(a){var b=a;if(c)try{b=c(arguments)}catch(e){return void d.onError(e)}d.onNext(b)}var f=a(e);return wc(function(){b&&b(e,f)})}).publish().refCount()};cd.startAsync=function(a){var b;try{b=a()}catch(c){return ld(c)}return dd(b)};var wd=function(a){function b(a){var b=this.source.publish(),c=b.subscribe(a),d=xc,e=this.pauser.distinctUntilChanged().subscribe(function(a){a?d=b.connect():(d.dispose(),d=xc)});return new tc(c,d,e)}function c(c,d){this.source=c,this.controller=new Qd,this.pauser=d&&d.subscribe?this.controller.merge(d):this.controller,a.call(this,b,c)}return oc(c,a),c.prototype.pause=function(){this.controller.onNext(!1)},c.prototype.resume=function(){this.controller.onNext(!0)},c}(cd);Yc.pausable=function(a){return new wd(this,a)};var xd=function(b){function c(b){var c,d=[],e=Y(this.source,this.pauser.distinctUntilChanged().startWith(!1),function(a,b){return{data:a,shouldFire:b}}).subscribe(function(e){if(c!==a&&e.shouldFire!=c){if(c=e.shouldFire,e.shouldFire)for(;d.length>0;)b.onNext(d.shift())}else c=e.shouldFire,e.shouldFire?b.onNext(e.data):d.push(e.data)},function(a){for(;d.length>0;)b.onNext(d.shift());b.onError(a)},function(){for(;d.length>0;)b.onNext(d.shift());b.onCompleted()});return e}function d(a,d){this.source=a,this.controller=new Qd,this.pauser=d&&d.subscribe?this.controller.merge(d):this.controller,b.call(this,c,a)}return oc(d,b),d.prototype.pause=function(){this.controller.onNext(!1)},d.prototype.resume=function(){this.controller.onNext(!0)},d}(cd);Yc.pausableBuffered=function(a){return new xd(this,a)};var yd=function(a){function b(a){return this.source.subscribe(a)}function c(c,d){a.call(this,b,c),this.subject=new zd(d),this.source=c.multicast(this.subject).refCount()}return oc(c,a),c.prototype.request=function(a){return null==a&&(a=-1),this.subject.request(a)},c}(cd),zd=function(a){function b(a){return this.subject.subscribe(a)}function c(c){null==c&&(c=!0),a.call(this,b),this.subject=new Qd,this.enableQueue=c,this.queue=c?[]:null,this.requestedCount=0,this.requestedDisposable=xc,this.error=null,this.hasFailed=!1,this.hasCompleted=!1,this.controlledDisposable=xc}return oc(c,a),pc(c.prototype,Wc,{onCompleted:function(){this.hasCompleted=!0,(!this.enableQueue||0===this.queue.length)&&this.subject.onCompleted()},onError:function(a){this.hasFailed=!0,this.error=a,(!this.enableQueue||0===this.queue.length)&&this.subject.onError(a)},onNext:function(a){var b=!1;0===this.requestedCount?this.enableQueue&&this.queue.push(a):(-1!==this.requestedCount&&0===this.requestedCount--&&this.disposeCurrentRequest(),b=!0),b&&this.subject.onNext(a)},_processRequest:function(a){if(this.enableQueue){for(;this.queue.length>=a&&a>0;)this.subject.onNext(this.queue.shift()),a--;return 0!==this.queue.length?{numberOfItems:a,returnValue:!0}:{numberOfItems:a,returnValue:!1}}return this.hasFailed?(this.subject.onError(this.error),this.controlledDisposable.dispose(),this.controlledDisposable=xc):this.hasCompleted&&(this.subject.onCompleted(),this.controlledDisposable.dispose(),this.controlledDisposable=xc),{numberOfItems:a,returnValue:!1}},request:function(a){this.disposeCurrentRequest();var b=this,c=this._processRequest(a),a=c.numberOfItems;return c.returnValue?xc:(this.requestedCount=a,this.requestedDisposable=wc(function(){b.requestedCount=0}),this.requestedDisposable)},disposeCurrentRequest:function(){this.requestedDisposable.dispose(),this.requestedDisposable=xc}}),c}(cd);Yc.controlled=function(a){return null==a&&(a=!0),new yd(this,a)};var Ad=function(a){function b(a){this.subscription=this.source.subscribe(new d(a,this,this.subscription));var b=this;return Mc.schedule(function(){b.source.request(1)}),this.subscription}function c(c){a.call(this,b,c),this.source=c}oc(c,a);var d=function(a){function b(b,c,d){a.call(this),this.observer=b,this.observable=c,this.cancel=d}oc(b,a);var c=b.prototype;return c.completed=function(){this.observer.onCompleted(),this.dispose()},c.error=function(a){this.observer.onError(a),this.dispose()},c.next=function(a){this.observer.onNext(a);var b=this;Mc.schedule(function(){b.observable.source.request(1)})},c.dispose=function(){this.observer=null,this.cancel&&(this.cancel.dispose(),this.cancel=null),a.prototype.dispose.call(this)},b}(Zc);return c}(cd);yd.prototype.stopAndWait=function(){return new Ad(this)};var Bd=function(a){function b(a){this.subscription=this.source.subscribe(new d(a,this,this.subscription)); var b=this;return Mc.schedule(function(){b.source.request(b.windowSize)}),this.subscription}function c(c,d){a.call(this,b,c),this.source=c,this.windowSize=d}oc(c,a);var d=function(a){function b(a,b,c){this.observer=a,this.observable=b,this.cancel=c,this.received=0}oc(b,a);var c=b.prototype;return c.completed=function(){this.observer.onCompleted(),this.dispose()},c.error=function(a){this.observer.onError(a),this.dispose()},c.next=function(a){if(this.observer.onNext(a),this.received=++this.received%this.observable.windowSize,0===this.received){var b=this;Mc.schedule(function(){b.observable.source.request(b.observable.windowSize)})}},c.dispose=function(){this.observer=null,this.cancel&&(this.cancel.dispose(),this.cancel=null),a.prototype.dispose.call(this)},b}(Zc);return c}(cd);yd.prototype.windowed=function(a){return new Bd(this,a)},Yc.multicast=function(a,b){var c=this;return"function"==typeof a?new Nd(function(d){var e=c.multicast(a());return new tc(b(e).subscribe(d),e.connect())},c):new Fd(c,a)},Yc.publish=function(a){return a&&Cb(a)?this.multicast(function(){return new Qd},a):this.multicast(new Qd)},Yc.share=function(){return this.publish().refCount()},Yc.publishLast=function(a){return a&&Cb(a)?this.multicast(function(){return new Rd},a):this.multicast(new Rd)},Yc.publishValue=function(a,b){return 2===arguments.length?this.multicast(function(){return new Dd(b)},a):this.multicast(new Dd(a))},Yc.shareValue=function(a){return this.publishValue(a).refCount()},Yc.replay=function(a,b,c,d){return a&&Cb(a)?this.multicast(function(){return new Ed(b,c,d)},a):this.multicast(new Ed(b,c,d))},Yc.shareReplay=function(a,b,c){return this.replay(null,a,b,c).refCount()};var Cd=function(a,b){this.subject=a,this.observer=b};Cd.prototype.dispose=function(){if(!this.subject.isDisposed&&null!==this.observer){var a=this.subject.observers.indexOf(this.observer);this.subject.observers.splice(a,1),this.observer=null}};var Dd=sb.BehaviorSubject=function(a){function c(a){return b.call(this),this.isStopped?(this.hasError?a.onError(this.error):a.onCompleted(),xc):(this.observers.push(a),a.onNext(this.value),new Cd(this,a))}function d(b){a.call(this,c),this.value=b,this.observers=[],this.isDisposed=!1,this.isStopped=!1,this.hasError=!1}return oc(d,a),pc(d.prototype,Wc,{hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(b.call(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=this.observers.slice(0),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(b.call(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=this.observers.slice(0),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(b.call(this),!this.isStopped){this.value=a;for(var c=0,d=this.observers.slice(0),e=d.length;e>c;c++)d[c].onNext(a)}},dispose:function(){this.isDisposed=!0,this.observers=null,this.value=null,this.exception=null}}),d}(cd),Ed=sb.ReplaySubject=function(a){function c(a,b){return wc(function(){b.dispose(),!a.isDisposed&&a.observers.splice(a.observers.indexOf(b),1)})}function d(a){var d=new ad(this.scheduler,a),e=c(this,d);b.call(this),this._trim(this.scheduler.now()),this.observers.push(d);for(var f=0,g=this.q.length;g>f;f++)d.onNext(this.q[f].value);return this.hasError?d.onError(this.error):this.isStopped&&d.onCompleted(),d.ensureActive(),e}function e(b,c,e){this.bufferSize=null==b?Number.MAX_VALUE:b,this.windowSize=null==c?Number.MAX_VALUE:c,this.scheduler=e||Hc,this.q=[],this.observers=[],this.isStopped=!1,this.isDisposed=!1,this.hasError=!1,this.error=null,a.call(this,d)}return oc(e,a),pc(e.prototype,Wc.prototype,{hasObservers:function(){return this.observers.length>0},_trim:function(a){for(;this.q.length>this.bufferSize;)this.q.shift();for(;this.q.length>0&&a-this.q[0].interval>this.windowSize;)this.q.shift()},onNext:function(a){if(b.call(this),!this.isStopped){var c=this.scheduler.now();this.q.push({interval:c,value:a}),this._trim(c);for(var d=this.observers.slice(0),e=0,f=d.length;f>e;e++){var g=d[e];g.onNext(a),g.ensureActive()}}},onError:function(a){if(b.call(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;var c=this.scheduler.now();this._trim(c);for(var d=this.observers.slice(0),e=0,f=d.length;f>e;e++){var g=d[e];g.onError(a),g.ensureActive()}this.observers=[]}},onCompleted:function(){if(b.call(this),!this.isStopped){this.isStopped=!0;var a=this.scheduler.now();this._trim(a);for(var c=this.observers.slice(0),d=0,e=c.length;e>d;d++){var f=c[d];f.onCompleted(),f.ensureActive()}this.observers=[]}},dispose:function(){this.isDisposed=!0,this.observers=null}}),e}(cd),Fd=sb.ConnectableObservable=function(a){function b(b,c){var d,e=!1,f=b.asObservable();this.connect=function(){return e||(e=!0,d=new tc(f.subscribe(c),wc(function(){e=!1}))),d},a.call(this,function(a){return c.subscribe(a)})}return oc(b,a),b.prototype.refCount=function(){var a,b=0,c=this;return new Nd(function(d){var e=1===++b,f=c.subscribe(d);return e&&(a=c.connect()),function(){f.dispose(),0===--b&&a.dispose()}})},b}(cd),Gd=function(){function b(a){if(0===(1&a))return 2===a;for(var b=Math.sqrt(a),c=3;b>=c;){if(a%c===0)return!1;c+=2}return!0}function c(a){var c,d,e;for(c=0;c=a)return d;for(e=1|a;ec;c++){var e=a.charCodeAt(c);b=(b<<5)-b+e,b&=b}return b}function e(a){var b=668265261;return a=61^a^a>>>16,a+=a<<3,a^=a>>>4,a*=b,a^=a>>>15}function f(){return{key:null,value:null,next:0,hashCode:0}}function g(a,b){if(0>a)throw new Error("out of range");a>0&&this._initialize(a),this.comparer=b||xb,this.freeCount=0,this.size=0,this.freeList=-1}var h=[1,3,7,13,31,61,127,251,509,1021,2039,4093,8191,16381,32749,65521,131071,262139,524287,1048573,2097143,4194301,8388593,16777213,33554393,67108859,134217689,268435399,536870909,1073741789,2147483647],i="no such key",j="duplicate key",k=function(){var a=0;return function(b){if(null==b)throw new Error(i);if("string"==typeof b)return d(b);if("number"==typeof b)return e(b);if("boolean"==typeof b)return b===!0?1:0;if(b instanceof Date)return e(b.valueOf());if(b instanceof RegExp)return d(b.toString());if("function"==typeof b.valueOf){var c=b.valueOf();if("number"==typeof c)return e(c);if("string"==typeof b)return d(c)}if(b.hashCode)return b.hashCode();var f=17*a++;return b.hashCode=function(){return f},f}}(),l=g.prototype;return l._initialize=function(a){var b,d=c(a);for(this.buckets=new Array(d),this.entries=new Array(d),b=0;d>b;b++)this.buckets[b]=-1,this.entries[b]=f();this.freeList=-1},l.add=function(a,b){this._insert(a,b,!0)},l._insert=function(a,b,c){this.buckets||this._initialize(0);for(var d,e=2147483647&k(a),f=e%this.buckets.length,g=this.buckets[f];g>=0;g=this.entries[g].next)if(this.entries[g].hashCode===e&&this.comparer(this.entries[g].key,a)){if(c)throw new Error(j);return void(this.entries[g].value=b)}this.freeCount>0?(d=this.freeList,this.freeList=this.entries[d].next,--this.freeCount):(this.size===this.entries.length&&(this._resize(),f=e%this.buckets.length),d=this.size,++this.size),this.entries[d].hashCode=e,this.entries[d].next=this.buckets[f],this.entries[d].key=a,this.entries[d].value=b,this.buckets[f]=d},l._resize=function(){var a=c(2*this.size),b=new Array(a);for(e=0;ee;++e)d[e]=f();for(var g=0;g=0;e=this.entries[e].next){if(this.entries[e].hashCode===b&&this.comparer(this.entries[e].key,a))return 0>d?this.buckets[c]=this.entries[e].next:this.entries[d].next=this.entries[e].next,this.entries[e].hashCode=-1,this.entries[e].next=this.freeList,this.entries[e].key=null,this.entries[e].value=null,this.freeList=e,++this.freeCount,!0;d=e}return!1},l.clear=function(){var a,b;if(!(this.size<=0)){for(a=0,b=this.buckets.length;b>a;++a)this.buckets[a]=-1;for(a=0;a=0;c=this.entries[c].next)if(this.entries[c].hashCode===b&&this.comparer(this.entries[c].key,a))return c;return-1},l.count=function(){return this.size-this.freeCount},l.tryGetValue=function(b){var c=this._findEntry(b);return c>=0?this.entries[c].value:a},l.getValues=function(){var a=0,b=[];if(this.entries)for(var c=0;c=0&&(b[a++]=this.entries[c].value);return b},l.get=function(a){var b=this._findEntry(a);if(b>=0)return this.entries[b].value;throw new Error(i)},l.set=function(a,b){this._insert(a,b,!1)},l.containskey=function(a){return this._findEntry(a)>=0},g}();Yc.join=function(a,b,c,d){var e=this;return new Nd(function(f){var g=new tc,h=!1,i=!1,j=0,k=0,l=new Gd,m=new Gd;return g.add(e.subscribe(function(a){var c=j++,e=new yc;l.add(c,a),g.add(e);var i,k=function(){l.remove(c)&&0===l.count()&&h&&f.onCompleted(),g.remove(e)};try{i=b(a)}catch(n){return void f.onError(n)}e.setDisposable(i.take(1).subscribe(tb,f.onError.bind(f),k)),m.getValues().forEach(function(b){var c;try{c=d(a,b)}catch(e){return void f.onError(e)}f.onNext(c)})},f.onError.bind(f),function(){h=!0,(i||0===l.count())&&f.onCompleted()})),g.add(a.subscribe(function(a){var b=k++,e=new yc;m.add(b,a),g.add(e);var h,j=function(){m.remove(b)&&0===m.count()&&i&&f.onCompleted(),g.remove(e)};try{h=c(a)}catch(n){return void f.onError(n)}e.setDisposable(h.take(1).subscribe(tb,f.onError.bind(f),j)),l.getValues().forEach(function(b){var c;try{c=d(b,a)}catch(e){return void f.onError(e)}f.onNext(c)})},f.onError.bind(f),function(){i=!0,(h||0===m.count())&&f.onCompleted()})),g},e)},Yc.groupJoin=function(a,b,c,d){var e=this;return new Nd(function(f){function g(a){return function(b){b.onError(a)}}var h=new tc,i=new Ac(h),j=new Gd,k=new Gd,l=0,m=0;return h.add(e.subscribe(function(a){var c=new Qd,e=l++;j.add(e,c);var m;try{m=d(a,qc(c,i))}catch(n){return j.getValues().forEach(g(n)),void f.onError(n)}f.onNext(m),k.getValues().forEach(function(a){c.onNext(a)});var o=new yc;h.add(o);var p,q=function(){j.remove(e)&&c.onCompleted(),h.remove(o)};try{p=b(a)}catch(n){return j.getValues().forEach(g(n)),void f.onError(n)}o.setDisposable(p.take(1).subscribe(tb,function(a){j.getValues().forEach(g(a)),f.onError(a)},q))},function(a){j.getValues().forEach(g(a)),f.onError(a)},f.onCompleted.bind(f))),h.add(a.subscribe(function(a){var b=m++;k.add(b,a);var d=new yc;h.add(d);var e,i=function(){k.remove(b),h.remove(d)};try{e=c(a)}catch(l){return j.getValues().forEach(g(l)),void f.onError(l)}d.setDisposable(e.take(1).subscribe(tb,function(a){j.getValues().forEach(g(a)),f.onError(a)},i)),j.getValues().forEach(function(b){b.onNext(a)})},function(a){j.getValues().forEach(g(a)),f.onError(a)})),i},e)},Yc.buffer=function(){return this.window.apply(this,arguments).selectMany(function(a){return a.toArray()})},Yc.window=function(a,b){return 1===arguments.length&&"function"!=typeof arguments[0]?$.call(this,a):"function"==typeof a?_.call(this,a):Z.call(this,a,b)},Yc.pairwise=function(){var a=this;return new Nd(function(b){var c,d=!1;return a.subscribe(function(a){d?b.onNext([c,a]):d=!0,c=a},b.onError.bind(b),b.onCompleted.bind(b))},a)},Yc.partition=function(a,b){return[this.filter(a,b),this.filter(function(c,d,e){return!a.call(b,c,d,e)})]},Yc.letBind=Yc.let=function(a){return a(this)},cd["if"]=cd.ifThen=function(a,b,c){return ed(function(){return c||(c=fd()),Ab(b)&&(b=dd(b)),Ab(c)&&(c=dd(c)),"function"==typeof c.now&&(c=fd(c)),a()?b:c})},cd["for"]=cd.forIn=function(a,b,c){return Vc(a,b,c).concat()};var Hd=cd["while"]=cd.whileDo=function(a,b){return Ab(b)&&(b=dd(b)),ab(a,b).concat()};Yc.doWhile=function(a){return od([this,Hd(a,this)])},cd["case"]=cd.switchCase=function(a,b,c){return ed(function(){Ab(c)&&(c=dd(c)),c||(c=fd()),"function"==typeof c.now&&(c=fd(c));var d=b[a()];return Ab(d)&&(d=dd(d)),d||c})},Yc.expand=function(a,b){ub(b)||(b=Gc);var c=this;return new Nd(function(d){var e=[],f=new zc,g=new tc(f),h=0,i=!1,j=function(){var c=!1;e.length>0&&(c=!i,i=!0),c&&f.setDisposable(b.scheduleRecursive(function(b){var c;if(!(e.length>0))return void(i=!1);c=e.shift();var f=new yc;g.add(f),f.setDisposable(c.subscribe(function(b){d.onNext(b);var c=null;try{c=a(b)}catch(f){d.onError(f)}e.push(c),h++,j()},d.onError.bind(d),function(){g.remove(f),h--,0===h&&d.onCompleted()})),b()}))};return e.push(c),h++,j(),g},this)},cd.forkJoin=function(){var a=n(arguments,0);return new Nd(function(b){var c=a.length;if(0===c)return b.onCompleted(),xc;for(var d=new tc,e=!1,f=new Array(c),g=new Array(c),h=new Array(c),i=0;c>i;i++)!function(i){var j=a[i];Ab(j)&&(j=dd(j)),d.add(j.subscribe(function(a){e||(f[i]=!0,h[i]=a)},function(a){e=!0,b.onError(a),d.dispose()},function(){if(!e){if(!f[i])return void b.onCompleted();g[i]=!0;for(var a=0;c>a;a++)if(!g[a])return;e=!0,b.onNext(h),b.onCompleted()}}))}(i);return d})},Yc.forkJoin=function(a,b){var c=this;return new Nd(function(d){var e,f,g=!1,h=!1,i=!1,j=!1,k=new yc,l=new yc;return Ab(a)&&(a=dd(a)),k.setDisposable(c.subscribe(function(a){i=!0,e=a},function(a){l.dispose(),d.onError(a)},function(){if(g=!0,h)if(i)if(j){var a;try{a=b(e,f)}catch(c){return void d.onError(c)}d.onNext(a),d.onCompleted()}else d.onCompleted();else d.onCompleted()})),l.setDisposable(a.subscribe(function(a){j=!0,f=a},function(a){k.dispose(),d.onError(a)},function(){if(h=!0,g)if(i)if(j){var a;try{a=b(e,f)}catch(c){return void d.onError(c)}d.onNext(a),d.onCompleted()}else d.onCompleted();else d.onCompleted()})),new tc(k,l)},c)},Yc.manySelect=function(a,b){ub(b)||(b=Gc);var c=this;return ed(function(){var d;return c.map(function(a){var b=new Id(a);return d&&d.onNext(a),d=b,b}).tap(tb,function(a){d&&d.onError(a)},function(){d&&d.onCompleted()}).observeOn(b).map(a)},c)};var Id=function(a){function b(a){var b=this,c=new tc;return c.add(Hc.schedule(function(){a.onNext(b.head),c.add(b.tail.mergeAll().subscribe(a))})),c}function c(c){a.call(this,b),this.head=c,this.tail=new Rd}return oc(c,a),pc(c.prototype,Wc,{onCompleted:function(){this.onNext(cd.empty())},onError:function(a){this.onNext(cd.throwException(a))},onNext:function(a){this.tail.onNext(a),this.tail.onCompleted()}}),c}(cd),Jd=nb.Map||function(){function b(){this._keys=[],this._values=[]}return b.prototype.get=function(b){var c=this._keys.indexOf(b);return-1!==c?this._values[c]:a},b.prototype.set=function(a,b){var c=this._keys.indexOf(a);-1!==c&&(this._values[c]=b),this._values[this._keys.push(a)-1]=b},b.prototype.forEach=function(a,b){for(var c=0,d=this._keys.length;d>c;c++)a.call(b,this._values[c],this._keys[c])},b}();bb.prototype.and=function(a){return new bb(this.patterns.concat(a))},bb.prototype.thenDo=function(a){return new cb(this,a)},cb.prototype.activate=function(a,b,c){for(var d=this,e=[],f=0,g=this.expression.patterns.length;g>f;f++)e.push(db(a,this.expression.patterns[f],b.onError.bind(b)));var h=new eb(e,function(){var a;try{a=d.selector.apply(d,arguments)}catch(c){return void b.onError(c)}b.onNext(a)},function(){for(var a=0,b=e.length;b>a;a++)e[a].removeActivePlan(h);c(h)});for(f=0,g=e.length;g>f;f++)e[f].addActivePlan(h);return h},eb.prototype.dequeue=function(){this.joinObservers.forEach(function(a){a.queue.shift()})},eb.prototype.match=function(){var a,b,c=!0;for(a=0,b=this.joinObserverArray.length;b>a;a++)if(0===this.joinObserverArray[a].queue.length){c=!1;break}if(c){var d=[],e=!1;for(a=0,b=this.joinObserverArray.length;b>a;a++)d.push(this.joinObserverArray[a].queue[0]),"C"===this.joinObserverArray[a].queue[0].kind&&(e=!0);if(e)this.onCompleted();else{this.dequeue();var f=[];for(a=0,b=d.length;ac;c++)b[c].match()}},c.error=tb,c.completed=tb,c.addActivePlan=function(a){this.activePlans.push(a)},c.subscribe=function(){this.subscription.setDisposable(this.source.materialize().subscribe(this))},c.removeActivePlan=function(a){this.activePlans.splice(this.activePlans.indexOf(a),1),0===this.activePlans.length&&this.dispose()},c.dispose=function(){a.prototype.dispose.call(this),this.isDisposed||(this.isDisposed=!0,this.subscription.dispose())},b}(Zc);Yc.and=function(a){return new bb([this,a])},Yc.thenDo=function(a){return new bb([this]).thenDo(a)},cd.when=function(){var a=n(arguments,0);return new Nd(function(b){var c=[],d=new Jd,e=Xc(b.onNext.bind(b),function(a){d.forEach(function(b){b.onError(a)}),b.onError(a)},b.onCompleted.bind(b));try{for(var f=0,g=a.length;g>f;f++)c.push(a[f].activate(d,e,function(a){var d=c.indexOf(a);c.splice(d,1),0===c.length&&b.onCompleted()}))}catch(h){ld(h).subscribe(b)}var i=new tc;return d.forEach(function(a){a.subscribe(),i.add(a)}),i})};var Ld=cd.interval=function(a,b){return ib(a,a,ub(b)?b:Mc)},Md=cd.timer=function(b,c,d){var e;return ub(d)||(d=Mc),c!==a&&"number"==typeof c?e=c:ub(c)&&(d=c),b instanceof Date&&e===a?fb(b.getTime(),d):b instanceof Date&&e!==a?(e=c,gb(b.getTime(),e,d)):e===a?hb(b,d):ib(b,e,d)};Yc.delay=function(a,b){return ub(b)||(b=Mc),a instanceof Date?kb(this,a.getTime(),b):jb(this,a,b)},Yc.debounce=Yc.throttleWithTimeout=function(a,b){ub(b)||(b=Mc);var c=this;return new Nd(function(d){var e,f=new zc,g=!1,h=0,i=c.subscribe(function(c){g=!0,e=c,h++;var i=h,j=new yc;f.setDisposable(j),j.setDisposable(b.scheduleWithRelative(a,function(){g&&h===i&&d.onNext(e),g=!1}))},function(a){f.dispose(),d.onError(a),g=!1,h++},function(){f.dispose(),g&&d.onNext(e),d.onCompleted(),g=!1,h++});return new tc(i,f)},this)},Yc.throttle=function(a,b){return this.debounce(a,b)},Yc.windowWithTime=function(a,b,c){var d,e=this;return null==b&&(d=a),ub(c)||(c=Mc),"number"==typeof b?d=b:ub(b)&&(d=a,c=b),new Nd(function(b){function f(){var a=new yc,e=!1,g=!1;l.setDisposable(a),j===i?(e=!0,g=!0):i>j?e=!0:g=!0;var n=e?j:i,o=n-m;m=n,e&&(j+=d),g&&(i+=d),a.setDisposable(c.scheduleWithRelative(o,function(){if(g){var a=new Qd;k.push(a),b.onNext(qc(a,h))}e&&k.shift().onCompleted(),f()}))}var g,h,i=d,j=a,k=[],l=new zc,m=0;return g=new tc(l),h=new Ac(g),k.push(new Qd),b.onNext(qc(k[0],h)),f(),g.add(e.subscribe(function(a){for(var b=0,c=k.length;c>b;b++)k[b].onNext(a)},function(a){for(var c=0,d=k.length;d>c;c++)k[c].onError(a);b.onError(a)},function(){for(var a=0,c=k.length;c>a;a++)k[a].onCompleted();b.onCompleted()})),h},e)},Yc.windowWithTimeOrCount=function(a,b,c){var d=this;return ub(c)||(c=Mc),new Nd(function(e){function f(b){var d=new yc;g.setDisposable(d),d.setDisposable(c.scheduleWithRelative(a,function(){if(b===k){j=0;var a=++k;l.onCompleted(),l=new Qd,e.onNext(qc(l,i)),f(a)}}))}var g=new zc,h=new tc(g),i=new Ac(h),j=0,k=0,l=new Qd;return e.onNext(qc(l,i)),f(0),h.add(d.subscribe(function(a){var c=0,d=!1;l.onNext(a),++j===b&&(d=!0,j=0,c=++k,l.onCompleted(),l=new Qd,e.onNext(qc(l,i))),d&&f(c)},function(a){l.onError(a),e.onError(a)},function(){l.onCompleted(),e.onCompleted()})),i},d)},Yc.bufferWithTime=function(){return this.windowWithTime.apply(this,arguments).selectMany(function(a){return a.toArray()})},Yc.bufferWithTimeOrCount=function(a,b,c){return this.windowWithTimeOrCount(a,b,c).selectMany(function(a){return a.toArray()})},Yc.timeInterval=function(a){var b=this;return ub(a)||(a=Mc),ed(function(){var c=a.now();return b.map(function(b){var d=a.now(),e=d-c;return c=d,{value:b,interval:e}})})},Yc.timestamp=function(a){return ub(a)||(a=Mc),this.map(function(b){return{value:b,timestamp:a.now()}})},Yc.sample=Yc.throttleLatest=function(a,b){return ub(b)||(b=Mc),"number"==typeof a?lb(this,Ld(a,b)):lb(this,a)},Yc.timeout=function(a,b,c){(null==b||"string"==typeof b)&&(b=ld(new Error(b||"Timeout"))),ub(c)||(c=Mc);var d=this,e=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new Nd(function(f){function g(){var d=h;l.setDisposable(c[e](a,function(){h===d&&(Ab(b)&&(b=dd(b)),j.setDisposable(b.subscribe(f)))}))}var h=0,i=new yc,j=new zc,k=!1,l=new zc;return j.setDisposable(i),g(),i.setDisposable(d.subscribe(function(a){k||(h++,f.onNext(a),g())},function(a){k||(h++,f.onError(a))},function(){k||(h++,f.onCompleted())})),new tc(j,l)},d)},cd.generateWithAbsoluteTime=function(a,b,c,d,e,f){return ub(f)||(f=Mc),new Nd(function(g){var h,i,j=!0,k=!1,l=a;return f.scheduleRecursiveWithAbsolute(f.now(),function(a){k&&g.onNext(h);try{j?j=!1:l=c(l),k=b(l),k&&(h=d(l),i=e(l))}catch(f){return void g.onError(f)}k?a(i):g.onCompleted()})})},cd.generateWithRelativeTime=function(a,b,c,d,e,f){return ub(f)||(f=Mc),new Nd(function(g){var h,i,j=!0,k=!1,l=a;return f.scheduleRecursiveWithRelative(0,function(a){k&&g.onNext(h);try{j?j=!1:l=c(l),k=b(l),k&&(h=d(l),i=e(l))}catch(f){return void g.onError(f)}k?a(i):g.onCompleted()})})},Yc.delaySubscription=function(a,b){return this.delayWithSelector(Md(a,ub(b)?b:Mc),fd)},Yc.delayWithSelector=function(a,b){var c,d,e=this;return"function"==typeof a?d=a:(c=a,d=b),new Nd(function(a){var b=new tc,f=!1,g=function(){f&&0===b.length&&a.onCompleted()},h=new zc,i=function(){h.setDisposable(e.subscribe(function(c){var e;try{e=d(c)}catch(f){return void a.onError(f)}var h=new yc;b.add(h),h.setDisposable(e.subscribe(function(){a.onNext(c),b.remove(h),g()},a.onError.bind(a),function(){a.onNext(c),b.remove(h),g()}))},a.onError.bind(a),function(){f=!0,h.dispose(),g()}))};return c?h.setDisposable(c.subscribe(i,a.onError.bind(a),i)):i(),new tc(h,b)},this)},Yc.timeoutWithSelector=function(a,b,c){1===arguments.length&&(b=a,a=jd()),c||(c=ld(new Error("Timeout")));var d=this;return new Nd(function(e){function f(a){function b(){return k===d}var d=k,f=new yc;i.setDisposable(f),f.setDisposable(a.subscribe(function(){b()&&h.setDisposable(c.subscribe(e)),f.dispose()},function(a){b()&&e.onError(a)},function(){b()&&h.setDisposable(c.subscribe(e))}))}function g(){var a=!l;return a&&k++,a}var h=new zc,i=new zc,j=new yc;h.setDisposable(j);var k=0,l=!1;return f(a),j.setDisposable(d.subscribe(function(a){if(g()){e.onNext(a);var c;try{c=b(a)}catch(d){return void e.onError(d)}f(Ab(c)?dd(c):c)}},function(a){g()&&e.onError(a)},function(){g()&&e.onCompleted()})),new tc(h,i)},d)},Yc.debounceWithSelector=function(a){var b=this;return new Nd(function(c){var d,e=!1,f=new zc,g=0,h=b.subscribe(function(b){var h;try{h=a(b)}catch(i){return void c.onError(i)}Ab(h)&&(h=dd(h)),e=!0,d=b,g++;var j=g,k=new yc;f.setDisposable(k),k.setDisposable(h.subscribe(function(){e&&g===j&&c.onNext(d),e=!1,k.dispose()},c.onError.bind(c),function(){e&&g===j&&c.onNext(d),e=!1,k.dispose()}))},function(a){f.dispose(),c.onError(a),e=!1,g++},function(){f.dispose(),e&&c.onNext(d),c.onCompleted(),e=!1,g++});return new tc(h,f)},b)},Yc.throttleWithSelector=function(){return this.debounceWithSelector.apply(this,arguments)},Yc.skipLastWithTime=function(a,b){ub(b)||(b=Mc);var c=this;return new Nd(function(d){var e=[];return c.subscribe(function(c){var f=b.now();for(e.push({interval:f,value:c});e.length>0&&f-e[0].interval>=a;)d.onNext(e.shift().value)},function(a){d.onError(a)},function(){for(var c=b.now();e.length>0&&c-e[0].interval>=a;)d.onNext(e.shift().value);d.onCompleted()})},c)},Yc.takeLastWithTime=function(a,b){var c=this;return ub(b)||(b=Mc),new Nd(function(d){var e=[];return c.subscribe(function(c){var d=b.now();for(e.push({interval:d,value:c});e.length>0&&d-e[0].interval>=a;)e.shift()},function(a){d.onError(a)},function(){for(var c=b.now();e.length>0;){var f=e.shift();c-f.interval<=a&&d.onNext(f.value)}d.onCompleted()})},c)},Yc.takeLastBufferWithTime=function(a,b){var c=this;return ub(b)||(b=Mc),new Nd(function(d){var e=[];return c.subscribe(function(c){var d=b.now();for(e.push({interval:d,value:c});e.length>0&&d-e[0].interval>=a;)e.shift()},function(a){d.onError(a)},function(){for(var c=b.now(),f=[];e.length>0;){var g=e.shift();c-g.interval<=a&&f.push(g.value)}d.onNext(f),d.onCompleted()})},c)},Yc.takeWithTime=function(a,b){var c=this;return ub(b)||(b=Mc),new Nd(function(d){return new tc(b.scheduleWithRelative(a,function(){d.onCompleted()}),c.subscribe(d))},c)},Yc.skipWithTime=function(a,b){var c=this;return ub(b)||(b=Mc),new Nd(function(d){var e=!1;return new tc(b.scheduleWithRelative(a,function(){e=!0}),c.subscribe(function(a){e&&d.onNext(a)},d.onError.bind(d),d.onCompleted.bind(d)))},c)},Yc.skipUntilWithTime=function(a,b){ub(b)||(b=Mc);var c=this,d=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new Nd(function(e){var f=!1;return new tc(b[d](a,function(){f=!0}),c.subscribe(function(a){f&&e.onNext(a)},function(a){e.onError(a)},function(){e.onCompleted()}))},c)},Yc.takeUntilWithTime=function(a,b){ub(b)||(b=Mc);var c=this,d=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new Nd(function(e){return new tc(b[d](a,function(){e.onCompleted()}),c.subscribe(e))},c)},Yc.throttleFirst=function(a,b){ub(b)||(b=Mc);var c=+a||0;if(0>=c)throw new RangeError("windowDuration cannot be less or equal zero.");var d=this;return new Nd(function(a){var e=0;return d.subscribe(function(d){var f=b.now();(0===e||f-e>=c)&&(e=f,a.onNext(d))},function(b){a.onError(b)},function(){a.onCompleted()})},d)},Yc.transduce=function(a){function b(a){return{init:function(){return a},step:function(a,b){return a.onNext(b)},result:function(a){return a.onCompleted()}}}var c=this;return new Nd(function(d){var e=a(b(d));return c.subscribe(function(a){try{e.step(d,a)}catch(b){d.onError(b)}},d.onError.bind(d),function(){e.result(d)})},c)},Yc.exclusive=function(){var a=this;return new Nd(function(b){var c=!1,d=!1,e=new yc,f=new tc;return f.add(e),e.setDisposable(a.subscribe(function(a){if(!c){c=!0,Ab(a)&&(a=dd(a));var e=new yc;f.add(e),e.setDisposable(a.subscribe(b.onNext.bind(b),b.onError.bind(b),function(){f.remove(e),c=!1,d&&1===f.length&&b.onCompleted()}))}},b.onError.bind(b),function(){d=!0,c||1!==f.length||b.onCompleted()})),f},this)},Yc.exclusiveMap=function(a,b){var c=this,d=Qb(a,b,3);return new Nd(function(a){var b=0,e=!1,f=!0,g=new yc,h=new tc;return h.add(g),g.setDisposable(c.subscribe(function(c){e||(e=!0,innerSubscription=new yc,h.add(innerSubscription),Ab(c)&&(c=dd(c)),innerSubscription.setDisposable(c.subscribe(function(e){var f;try{f=d(e,b++,c)}catch(g){return void a.onError(g)}a.onNext(f)},function(b){a.onError(b)},function(){h.remove(innerSubscription),e=!1,f&&1===h.length&&a.onCompleted()})))},function(b){a.onError(b)},function(){f=!0,1!==h.length||e||a.onCompleted()})),h},this)},sb.VirtualTimeScheduler=function(a){function b(){throw new Error("Not implemented")}function c(){return this.toDateTimeOffset(this.clock)}function d(a,b){return this.scheduleAbsoluteWithState(a,this.clock,b)}function e(a,b,c){return this.scheduleRelativeWithState(a,this.toRelative(b),c)}function f(a,b,c){return this.scheduleRelativeWithState(a,this.toRelative(b-this.now()),c)}function g(a,b){return b(),xc}function h(b,g){this.clock=b,this.comparer=g,this.isEnabled=!1,this.queue=new rc(1024),a.call(this,c,d,e,f)}oc(h,a);var i=h.prototype;return i.add=b,i.toDateTimeOffset=b,i.toRelative=b,i.schedulePeriodicWithState=function(a,b,c){var d=new Fc(this,a,b,c);return d.start()},i.scheduleRelativeWithState=function(a,b,c){var d=this.add(this.clock,b);return this.scheduleAbsoluteWithState(a,d,c)},i.scheduleRelative=function(a,b){return this.scheduleRelativeWithState(b,a,g)},i.start=function(){if(!this.isEnabled){this.isEnabled=!0;do{var a=this.getNext();null!==a?(this.comparer(a.dueTime,this.clock)>0&&(this.clock=a.dueTime),a.invoke()):this.isEnabled=!1}while(this.isEnabled)}},i.stop=function(){this.isEnabled=!1},i.advanceTo=function(a){var b=this.comparer(this.clock,a);if(this.comparer(this.clock,a)>0)throw new Error(Eb);if(0!==b&&!this.isEnabled){this.isEnabled=!0;do{var c=this.getNext();null!==c&&this.comparer(c.dueTime,a)<=0?(this.comparer(c.dueTime,this.clock)>0&&(this.clock=c.dueTime),c.invoke()):this.isEnabled=!1}while(this.isEnabled);this.clock=a}},i.advanceBy=function(a){var b=this.add(this.clock,a),c=this.comparer(this.clock,b);if(c>0)throw new Error(Eb);0!==c&&this.advanceTo(b)},i.sleep=function(a){var b=this.add(this.clock,a);if(this.comparer(this.clock,b)>=0)throw new Error(Eb);this.clock=b},i.getNext=function(){for(;this.queue.length>0;){var a=this.queue.peek();if(!a.isCancelled())return a;this.queue.dequeue()}return null},i.scheduleAbsolute=function(a,b){return this.scheduleAbsoluteWithState(b,a,g)},i.scheduleAbsoluteWithState=function(a,b,c){function d(a,b){return e.queue.remove(f),c(a,b)}var e=this,f=new Bc(this,a,d,b,this.comparer);return this.queue.enqueue(f),f.disposable},h}(Cc),sb.HistoricalScheduler=function(a){function b(b,c){var d=null==b?0:b,e=c||yb;a.call(this,d,e)}oc(b,a);var c=b.prototype;return c.add=function(a,b){return a+b},c.toDateTimeOffset=function(a){return new Date(a).getTime()},c.toRelative=function(a){return a},b}(sb.VirtualTimeScheduler);var Nd=sb.AnonymousObservable=function(a){function b(a){return a&&"function"==typeof a.dispose?a:"function"==typeof a?wc(a):xc}function c(d,e){function f(a){var c=function(){try{e.setDisposable(b(d(e)))}catch(a){if(!e.fail(a))throw a}},e=new Od(a);return Hc.scheduleRequired()?Hc.schedule(c):c(),e}return this.source=e,this instanceof c?void a.call(this,f):new c(d)}return oc(c,a),c}(cd),Od=function(a){function b(b){a.call(this),this.observer=b,this.m=new yc}oc(b,a);var c=b.prototype;return c.next=function(a){var b=!1;try{this.observer.onNext(a),b=!0}catch(c){throw c}finally{!b&&this.dispose()}},c.error=function(a){try{this.observer.onError(a)}catch(b){throw b}finally{this.dispose()}},c.completed=function(){try{this.observer.onCompleted()}catch(a){throw a}finally{this.dispose()}},c.setDisposable=function(a){this.m.setDisposable(a)},c.getDisposable=function(){return this.m.getDisposable()},c.dispose=function(){a.prototype.dispose.call(this),this.m.dispose()},b}(Zc),Pd=function(a){function b(a){return this.underlyingObservable.subscribe(a)}function c(c,d,e){a.call(this,b),this.key=c,this.underlyingObservable=e?new Nd(function(a){return new tc(e.getDisposable(),d.subscribe(a))}):d}return oc(c,a),c}(cd),Qd=sb.Subject=function(a){function c(a){return b.call(this),this.isStopped?this.hasError?(a.onError(this.error),xc):(a.onCompleted(),xc):(this.observers.push(a),new Cd(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.observers=[],this.hasError=!1}return oc(d,a),pc(d.prototype,Wc.prototype,{hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(b.call(this),!this.isStopped){var a=this.observers.slice(0);this.isStopped=!0;for(var c=0,d=a.length;d>c;c++)a[c].onCompleted();this.observers.length=0}},onError:function(a){if(b.call(this),!this.isStopped){var c=this.observers.slice(0);this.isStopped=!0,this.error=a,this.hasError=!0;for(var d=0,e=c.length;e>d;d++)c[d].onError(a);this.observers.length=0}},onNext:function(a){if(b.call(this),!this.isStopped)for(var c=this.observers.slice(0),d=0,e=c.length;e>d;d++)c[d].onNext(a)},dispose:function(){this.isDisposed=!0,this.observers=null}}),d.create=function(a,b){return new Sd(a,b)},d}(cd),Rd=sb.AsyncSubject=function(a){function c(a){return b.call(this),this.isStopped?(this.hasError?a.onError(this.error):this.hasValue?(a.onNext(this.value),a.onCompleted()):a.onCompleted(),xc):(this.observers.push(a),new Cd(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.hasValue=!1,this.observers=[],this.hasError=!1}return oc(d,a),pc(d.prototype,Wc,{hasObservers:function(){return b.call(this),this.observers.length>0},onCompleted:function(){var a,c;if(b.call(this),!this.isStopped){this.isStopped=!0; var d=this.observers.slice(0),c=d.length;if(this.hasValue)for(a=0;c>a;a++){var e=d[a];e.onNext(this.value),e.onCompleted()}else for(a=0;c>a;a++)d[a].onCompleted();this.observers.length=0}},onError:function(a){if(b.call(this),!this.isStopped){var c=this.observers.slice(0);this.isStopped=!0,this.hasError=!0,this.error=a;for(var d=0,e=c.length;e>d;d++)c[d].onError(a);this.observers.length=0}},onNext:function(a){b.call(this),this.isStopped||(this.value=a,this.hasValue=!0)},dispose:function(){this.isDisposed=!0,this.observers=null,this.exception=null,this.value=null}}),d}(cd),Sd=sb.AnonymousSubject=function(a){function b(a){this.observable.subscribe(a)}function c(c,d){this.observer=c,this.observable=d,a.call(this,b)}return oc(c,a),pc(c.prototype,Wc.prototype,{onCompleted:function(){this.observer.onCompleted()},onError:function(a){this.observer.onError(a)},onNext:function(a){this.observer.onNext(a)}}),c}(cd);sb.Pauser=function(a){function b(){a.call(this)}return oc(b,a),b.prototype.pause=function(){this.onNext(!1)},b.prototype.resume=function(){this.onNext(!0)},b}(Qd),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(nb.Rx=sb,define(function(){return sb})):ob&&pb?qb?(pb.exports=sb).Rx=sb:ob.Rx=sb:nb.Rx=sb;var Td=g()}).call(this); //# sourceMappingURL=rx.all.map