rxjs-rails 2.5.2 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rxjs/rails/version.rb +1 -1
  3. data/vendor/assets/javascripts/rx.aggregates.js +367 -284
  4. data/vendor/assets/javascripts/rx.aggregates.map +1 -1
  5. data/vendor/assets/javascripts/rx.aggregates.min.js +1 -1
  6. data/vendor/assets/javascripts/rx.all.compat.js +2405 -2438
  7. data/vendor/assets/javascripts/rx.all.compat.map +1 -1
  8. data/vendor/assets/javascripts/rx.all.compat.min.js +4 -4
  9. data/vendor/assets/javascripts/rx.all.js +2380 -2395
  10. data/vendor/assets/javascripts/rx.all.map +1 -1
  11. data/vendor/assets/javascripts/rx.all.min.js +4 -4
  12. data/vendor/assets/javascripts/rx.async.compat.js +311 -333
  13. data/vendor/assets/javascripts/rx.async.compat.map +1 -1
  14. data/vendor/assets/javascripts/rx.async.compat.min.js +1 -1
  15. data/vendor/assets/javascripts/rx.async.js +280 -327
  16. data/vendor/assets/javascripts/rx.async.map +1 -1
  17. data/vendor/assets/javascripts/rx.async.min.js +1 -1
  18. data/vendor/assets/javascripts/rx.backpressure.js +208 -176
  19. data/vendor/assets/javascripts/rx.backpressure.map +1 -1
  20. data/vendor/assets/javascripts/rx.backpressure.min.js +1 -1
  21. data/vendor/assets/javascripts/rx.binding.js +44 -27
  22. data/vendor/assets/javascripts/rx.binding.map +1 -1
  23. data/vendor/assets/javascripts/rx.binding.min.js +1 -1
  24. data/vendor/assets/javascripts/rx.coincidence.js +220 -453
  25. data/vendor/assets/javascripts/rx.coincidence.map +1 -1
  26. data/vendor/assets/javascripts/rx.coincidence.min.js +1 -1
  27. data/vendor/assets/javascripts/rx.compat.js +1366 -1173
  28. data/vendor/assets/javascripts/rx.compat.map +1 -1
  29. data/vendor/assets/javascripts/rx.compat.min.js +3 -2
  30. data/vendor/assets/javascripts/rx.core.binding.js +823 -0
  31. data/vendor/assets/javascripts/rx.core.binding.map +1 -0
  32. data/vendor/assets/javascripts/rx.core.binding.min.js +3 -0
  33. data/vendor/assets/javascripts/rx.core.js +1281 -0
  34. data/vendor/assets/javascripts/rx.core.map +1 -0
  35. data/vendor/assets/javascripts/rx.core.min.js +3 -0
  36. data/vendor/assets/javascripts/rx.core.testing.js +1242 -0
  37. data/vendor/assets/javascripts/rx.core.testing.map +1 -0
  38. data/vendor/assets/javascripts/rx.core.testing.min.js +3 -0
  39. data/vendor/assets/javascripts/rx.experimental.js +85 -123
  40. data/vendor/assets/javascripts/rx.experimental.map +1 -1
  41. data/vendor/assets/javascripts/rx.experimental.min.js +1 -1
  42. data/vendor/assets/javascripts/rx.joinpatterns.js +48 -37
  43. data/vendor/assets/javascripts/rx.joinpatterns.map +1 -1
  44. data/vendor/assets/javascripts/rx.joinpatterns.min.js +1 -1
  45. data/vendor/assets/javascripts/rx.js +1367 -1174
  46. data/vendor/assets/javascripts/rx.lite.compat.js +1621 -1403
  47. data/vendor/assets/javascripts/rx.lite.compat.map +1 -1
  48. data/vendor/assets/javascripts/rx.lite.compat.min.js +3 -3
  49. data/vendor/assets/javascripts/rx.lite.extras.compat.js +119 -89
  50. data/vendor/assets/javascripts/rx.lite.extras.compat.map +1 -1
  51. data/vendor/assets/javascripts/rx.lite.extras.compat.min.js +1 -1
  52. data/vendor/assets/javascripts/rx.lite.extras.js +119 -89
  53. data/vendor/assets/javascripts/rx.lite.extras.map +1 -1
  54. data/vendor/assets/javascripts/rx.lite.extras.min.js +1 -1
  55. data/vendor/assets/javascripts/rx.lite.js +1583 -1390
  56. data/vendor/assets/javascripts/rx.lite.map +1 -1
  57. data/vendor/assets/javascripts/rx.lite.min.js +3 -3
  58. data/vendor/assets/javascripts/rx.map +1 -1
  59. data/vendor/assets/javascripts/rx.min.js +3 -2
  60. data/vendor/assets/javascripts/rx.sorting.js +23 -27
  61. data/vendor/assets/javascripts/rx.sorting.map +1 -1
  62. data/vendor/assets/javascripts/rx.sorting.min.js +1 -1
  63. data/vendor/assets/javascripts/rx.testing.js +11 -15
  64. data/vendor/assets/javascripts/rx.testing.map +1 -1
  65. data/vendor/assets/javascripts/rx.testing.min.js +1 -1
  66. data/vendor/assets/javascripts/rx.time.js +117 -133
  67. data/vendor/assets/javascripts/rx.time.map +1 -1
  68. data/vendor/assets/javascripts/rx.time.min.js +1 -1
  69. data/vendor/assets/javascripts/rx.virtualtime.js +120 -39
  70. data/vendor/assets/javascripts/rx.virtualtime.map +1 -1
  71. data/vendor/assets/javascripts/rx.virtualtime.min.js +1 -1
  72. metadata +12 -3
@@ -1 +1 @@
1
- {"version":3,"file":"rx.lite.min.js","sources":["rx.lite.js"],"names":["undefined","cloneArray","arr","len","length","a","Array","i","makeStackTraceLong","error","observable","hasStacks","stack","indexOf","STACK_JUMP_SEPARATOR","stacks","o","source","unshift","concatedStacks","join","filterStackString","stackString","lines","split","desiredLines","line","isInternalFrame","isNodeFrame","push","stackLine","fileNameAndLineNumber","getFileNameAndLineNumber","fileName","lineNumber","rFileName","rStartingLine","rEndingLine","captureLine","Error","e","firstLine","attempt1","exec","Number","attempt2","attempt3","keysIn","object","result","isObject","support","nonEnumArgs","isArguments","slice","call","skipProto","enumPrototypes","skipErrorProps","enumErrorProps","errorProto","key","nonEnumShadows","objectProto","ctor","constructor","index","dontEnumsLength","prototype","className","stringProto","stringClass","errorClass","toString","nonEnum","nonEnumProps","dontEnums","hasOwnProperty","internalFor","callback","keysFunc","props","internalForIn","isNode","value","deepEquals","b","stackA","stackB","type","otherType","otherClass","argsClass","objectClass","boolClass","dateClass","numberClass","regexpClass","String","isArr","arrayClass","nodeClass","ctorA","argsObject","Object","ctorB","isFunction","size","pop","tryCatcher","tryCatchTarget","apply","this","arguments","errorObj","tryCatch","fn","TypeError","thrower","arrayInitialize","count","factory","IndexedItem","id","ToArrayObserver","observer","isStopped","StringIterable","_s","s","StringIterator","_l","_i","ArrayIterable","_a","ArrayIterator","toLength","numberIsFinite","root","isFinite","getIterable","it","$iterator$","sign","number","isNaN","Math","floor","abs","maxSafeInteger","FromArraySink","parent","observableOf","scheduler","array","isScheduler","currentThreadScheduler","FromArrayObservable","PairsSink","RepeatSink","observableCatchHandler","handler","AnonymousObservable","d1","SingleAssignmentDisposable","subscription","SerialDisposable","setDisposable","subscribe","x","onNext","ex","onError","isPromise","observableFromPromise","d","onCompleted","zipArray","second","resultSelector","first","left","right","falseFactory","emptyArrayFactory","concatMap","selector","thisArg","selectorFunc","bindCallback","map","isArrayLike","isIterable","observableFrom","concatAll","MapObserver","flatMap","mergeAll","FilterObserver","predicate","createListener","element","name","addEventListener","disposableCreate","removeEventListener","createEventListener","el","eventName","disposables","CompositeDisposable","add","item","observableTimerDate","dueTime","scheduleWithAbsolute","observableTimerDateAndPeriod","period","p","normalizeTime","scheduleRecursiveWithAbsoluteAndState","self","now","observableTimerTimeSpan","scheduleWithRelative","observableTimerTimeSpanAndPeriod","schedulePeriodicWithState","observableDefer","observableDelayTimeSpan","active","cancelable","exception","q","running","materialize","timestamp","notification","shouldRun","kind","scheduleRecursiveWithRelative","recurseDueTime","shouldRecurse","shift","accept","max","observableDelayDate","sampleObservable","sampler","sampleSubscribe","hasValue","atEnd","newValue","bind","combineLatestSource","subject","next","values","res","hasValueAll","every","identity","err","isDone","objectTypes","boolean","function","string","window","freeExports","exports","nodeType","freeModule","module","moduleExports","freeGlobal","global","Rx","internals","config","Promise","helpers","noop","notDefined","defaultNow","pluck","property","just","Date","defaultComparer","y","isEqual","defaultSubComparer","defaultError","defaultKeySerializer","then","asArray","not","isFn","longStackSupport","EmptyError","message","ObjectDisposedError","ArgumentOutOfRangeError","NotSupportedError","NotImplementedError","notImplemented","notSupported","Symbol","iterator","Set","doneEnumerator","done","supportNodeClass","func","argCount","arg","collection","funcClass","supportsArgsClass","propertyIsEnumerable","document","toLocaleString","valueOf","test","inherits","child","__","addProperties","obj","sources","idx","ln","prop","addRef","xs","r","getDisposable","compareTo","other","c","PriorityQueue","capacity","items","priorityProto","isHigherPriority","percolate","temp","heapify","peek","removeAt","dequeue","enqueue","remove","args","isArray","isDisposable","isDisposed","CompositeDisposablePrototype","dispose","shouldDispose","splice","currentDisposables","Disposable","action","create","disposableEmpty","empty","checkDisposed","disposable","current","old","ScheduledItem","RefCountDisposable","InnerDisposable","isInnerDisposed","underlyingDisposable","isPrimaryDisposed","state","comparer","invoke","invokeCore","isCancelled","Scheduler","schedule","scheduleRelative","scheduleAbsolute","_schedule","_scheduleRelative","_scheduleAbsolute","invokeAction","schedulerProto","scheduleWithState","scheduleWithRelativeAndState","scheduleWithAbsoluteAndState","normalize","timeSpan","invokeRecImmediate","pair","recursiveAction","state1","state2","isAdded","scheduler1","state3","group","invokeRecDate","method","dueTime1","scheduleInnerRecursive","dt","scheduleRecursive","scheduleRecursiveWithState","_action","scheduleRecursiveWithRelativeAndState","scheduleRecursiveWithAbsolute","schedulePeriodic","setInterval","clearInterval","scheduleMethod","clearMethod","immediateScheduler","immediate","scheduleNow","currentThread","runTrampoline","queue","si","currentScheduler","scheduleRequired","localTimer","SchedulePeriodicRecursive","tick","command","recurse","_period","_state","_cancel","_scheduler","start","localSetTimeout","localClearTimeout","setTimeout","clearTimeout","WScript","time","Sleep","runTask","handle","currentlyRunning","task","tasksByHandle","postMessageSupported","postMessage","importScripts","isAsync","oldHandler","onmessage","onGlobalPostMessage","event","data","substring","MSG_PREFIX","nextHandle","reNative","RegExp","replace","setImmediate","process","nextTick","random","attachEvent","currentId","MessageChannel","channel","port1","port2","createElement","scriptElement","onreadystatechange","parentNode","removeChild","documentElement","appendChild","timeoutScheduler","timeout","Notification","acceptObservable","_accept","_acceptObservable","observerOrOnNext","toObservable","_","notificationCreateOnNext","createOnNext","notificationCreateOnError","createOnError","notificationCreateOnCompleted","createOnCompleted","Enumerator","_next","Enumerable","_iterator","concat","currentItem","currentValue","catchError","lastException","catchErrorWhen","notificationHandler","exceptions","Subject","notifier","handled","notificationDisposable","outer","inner","exn","observableProto","enumerableRepeat","repeat","repeatCount","enumerableOf","of","selectorFn","Observer","observerCreate","AnonymousObserver","AbstractObserver","__super__","completed","fail","_onNext","_onError","_onCompleted","Observable","_subscribe","oldOnError","forEach","subscribeOnNext","subscribeOnError","subscribeOnCompleted","ScheduledObserver","isAcquired","hasFaulted","ensureActive","isOwner","work","ObservableBase","fixSubscriber","subscriber","ado","sub","subscribeCore","AutoDetachObserver","ToArrayObservable","toArray","createWithDisposable","defer","observableFactory","observableThrow","EmptyObservable","EmptySink","scheduleItem","sink","run","observableEmpty","FromObservable","iterable","mapper","FromSink","loopRecursive","list","pow","charAt","from","mapFn","observableFromArray","fromArray","NeverObservable","never","ofWithScheduler","PairsObservable","keys","pairs","RangeObservable","RangeSink","range","RepeatObservable","JustObservable","JustSink","ThrowObservable","returnValue","ThrowSink","throwError","throwException","catchException","handlerOrSecond","observableCatch","combineLatest","filter","j","n","subscriptions","sad","observableConcat","concatObservable","merge","MergeObservable","maxConcurrent","g","MergeObserver","activeCount","InnerObserver","handleSubscribe","innerSource","maxConcurrentOrOther","observableMerge","CompositeError","errors","innerErrors","mergeDelayError","setCompletion","m","innerSubscription","MergeAllObservable","MergeAllObserver","mergeObservable","skipUntil","isOpen","rightSubscription","switchLatest","hasLatest","latest","takeUntil","withLatestFrom","allValues","zip","queuedValues","queues","asObservable","dematerialize","distinctUntilChanged","keySelector","currentKey","hasCurrentKey","comparerEquals","tap","doAction","tapObserver","doOnNext","tapOnNext","doOnError","tapOnError","doOnCompleted","tapOnCompleted","ensure","finallyAction","ignoreElements","retry","retryCount","retryWhen","scan","seed","accumulator","hasSeed","hasAccumulation","accumulation","skipLast","startWith","takeLast","selectConcat","selectorResult","i2","MapObservable","internalMap","select","currentProp","selectMany","selectSwitch","flatMapLatest","switchMap","skip","remaining","skipWhile","take","takeWhile","FilterObservable","internalFilter","shouldYield","where","fromCallback","context","results","publishLast","refCount","fromNodeCallback","useNativeEvents","fromEvent","addListener","fromEventPattern","h","removeListener","on","off","publish","addHandler","removeHandler","innerHandler","fromPromise","promise","AsyncSubject","toPromise","promiseCtor","resolve","reject","v","startAsync","functionAsync","multicast","subjectOrSubjectSelector","connectable","connect","ConnectableObservable","share","publishValue","initialValueOrSelector","initialValue","BehaviorSubject","shareValue","replay","bufferSize","windowSize","ReplaySubject","shareReplay","hasSubscription","sourceObservable","connectableSubscription","shouldConnect","observableinterval","interval","timer","periodOrScheduler","getTime","delay","debounce","throttleWithTimeout","hasvalue","throttle","sample","throttleLatest","intervalOrSampler","schedulerMethod","createTimer","myId","original","switched","throttleFirst","windowDuration","duration","RangeError","lastOnNext","PausableObservable","conn","connection","pausable","pauser","controller","pause","resume","PausableBufferedObservable","previousShouldFire","shouldFire","pausableBuffered","ControlledObservable","enableQueue","ControlledSubject","request","numberOfItems","requestedCount","requestedDisposable","hasFailed","hasCompleted","hasRequested","disposeCurrentRequest","_processRequest","controlled","pipe","dest","onDrain","write","emit","_isStdio","end","transduce","transducer","transformForObserver","@@transducer/init","@@transducer/step","obs","input","@@transducer/result","xform","AutoDetachObserverPrototype","InnerSubscription","observers","hasError","hasObservers","os","AnonymousSubject","getValue","createRemovableDisposable","so","_trim","Pauser","define","amd"],"mappings":"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"}
1
+ {"version":3,"file":"rx.lite.min.js","sources":["rx.lite.js"],"names":["undefined","cloneArray","arr","len","length","a","Array","i","tryCatcher","tryCatchTarget","apply","this","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","thrower","makeStackTraceLong","error","observable","hasStacks","stack","indexOf","STACK_JUMP_SEPARATOR","stacks","o","source","unshift","concatedStacks","join","filterStackString","stackString","lines","split","desiredLines","line","isInternalFrame","isNodeFrame","push","stackLine","fileNameAndLineNumber","getFileNameAndLineNumber","fileName","lineNumber","rFileName","rStartingLine","rEndingLine","captureLine","Error","firstLine","attempt1","exec","Number","attempt2","attempt3","keysIn","object","result","isObject","support","nonEnumArgs","isArguments","slice","call","skipProto","enumPrototypes","skipErrorProps","enumErrorProps","errorProto","key","nonEnumShadows","objectProto","ctor","constructor","index","dontEnumsLength","prototype","className","stringProto","stringClass","errorClass","toString","nonEnum","nonEnumProps","dontEnums","hasOwnProperty","internalFor","callback","keysFunc","props","internalForIn","isNode","value","deepEquals","b","stackA","stackB","type","otherType","otherClass","argsClass","objectClass","boolClass","dateClass","numberClass","regexpClass","String","isArr","arrayClass","nodeClass","ctorA","argsObject","Object","ctorB","size","pop","arrayInitialize","count","factory","StringIterable","s","_s","StringIterator","_l","_i","ArrayIterable","_a","ArrayIterator","toLength","numberIsFinite","root","isFinite","getIterable","it","$iterator$","sign","number","isNaN","Math","floor","abs","maxSafeInteger","FromArraySink","observer","parent","observableOf","scheduler","array","isScheduler","currentThreadScheduler","FromArrayObservable","PairsSink","RepeatSink","observableCatchHandler","handler","AnonymousObservable","d1","SingleAssignmentDisposable","subscription","SerialDisposable","setDisposable","subscribe","CatchObserver","falseFactory","argumentsToArray","args","emptyArrayFactory","asObservable","InnerObserver","accumulator","hasSeed","seed","hasAccumulation","accumulation","hasValue","isStopped","plucker","x","currentProp","p","createCbObservable","ctx","selector","AsyncSubject","createCbHandler","results","onError","onNext","onCompleted","createNodeObservable","createNodeHandler","err","ListenDisposable","n","_e","_n","_fn","addEventListener","isDisposed","createEventListener","el","eventName","disposables","CompositeDisposable","elemToString","add","item","eventHandler","observableTimerDate","dueTime","scheduleWithAbsolute","observableTimerDateAndPeriod","period","d","normalizeTime","scheduleRecursiveWithAbsoluteAndState","self","now","observableTimerTimeSpan","scheduleWithRelative","observableTimerTimeSpanAndPeriod","schedulePeriodicWithState","observableDefer","observableDelayTimeSpan","active","cancelable","exception","q","running","materialize","timestamp","notification","shouldRun","kind","scheduleRecursiveWithRelative","recurseDueTime","shouldRecurse","shift","accept","max","observableDelayDate","sampleObservable","sampler","sampleSubscribe","atEnd","sourceSubscription","newValue","dispose","combineLatestSource","subject","resultSelector","next","values","hasValueAll","every","identity","res","isDone","objectTypes","function","freeExports","exports","nodeType","freeSelf","freeWindow","window","freeModule","module","moduleExports","freeGlobal","global","Rx","internals","config","Promise","helpers","noop","defaultNow","Date","defaultComparer","y","isEqual","defaultSubComparer","defaultError","defaultKeySerializer","isPromise","then","isFn","longStackSupport","EmptyError","message","name","ObjectDisposedError","ArgumentOutOfRangeError","NotSupportedError","NotImplementedError","notImplemented","notSupported","Symbol","iterator","Set","doneEnumerator","done","isIterable","isArrayLike","supportNodeClass","bindCallback","func","thisArg","argCount","arg","collection","funcClass","supportsArgsClass","propertyIsEnumerable","document","toLocaleString","valueOf","test","inherits","child","__","addProperties","obj","sources","idx","ln","prop","addRef","xs","r","getDisposable","isArray","isDisposable","CompositeDisposablePrototype","remove","shouldDispose","splice","currentDisposables","Disposable","action","disposableCreate","create","disposableEmpty","empty","checkDisposed","disposable","current","old","ScheduledItem","RefCountDisposable","InnerDisposable","isInnerDisposed","underlyingDisposable","isPrimaryDisposed","state","comparer","invoke","invokeCore","compareTo","other","isCancelled","Scheduler","schedule","scheduleRelative","scheduleAbsolute","_schedule","_scheduleRelative","_scheduleAbsolute","invokeAction","schedulerProto","scheduleWithState","scheduleWithRelativeAndState","scheduleWithAbsoluteAndState","normalize","timeSpan","invokeRecImmediate","pair","innerAction","state2","scheduleWork","_","state3","isAdded","group","invokeRecDate","method","dueTime1","invokeRecDateRelative","invokeRecDateAbsolute","scheduleInnerRecursive","dt","scheduleRecursive","scheduleRecursiveWithState","scheduleRecursiveWithRelativeAndState","scheduleRecursiveWithAbsolute","schedulePeriodic","setInterval","id","clearInterval","scheduleMethod","clearMethod","immediateScheduler","immediate","scheduleNow","currentThread","runTrampoline","queue","si","currentScheduler","scheduleRequired","localTimer","SchedulePeriodicRecursive","tick","command","recurse","_period","_state","_action","_cancel","_scheduler","start","bind","localSetTimeout","localClearTimeout","setTimeout","clearTimeout","WScript","time","Sleep","runTask","handle","currentlyRunning","task","tasksByHandle","postMessageSupported","postMessage","importScripts","isAsync","oldHandler","onmessage","onGlobalPostMessage","event","data","substring","MSG_PREFIX","nextHandle","reNative","RegExp","replace","setImmediate","process","nextTick","random","attachEvent","currentId","MessageChannel","channel","port1","port2","createElement","scriptElement","onreadystatechange","parentNode","removeChild","documentElement","appendChild","observableProto","timeoutScheduler","timeout","Notification","acceptObservable","_accept","_acceptObservable","observerOrOnNext","toObservable","notificationCreateOnNext","createOnNext","notificationCreateOnError","createOnError","notificationCreateOnCompleted","createOnCompleted","Observer","observerCreate","AnonymousObserver","AbstractObserver","__super__","completed","fail","_onNext","_onError","_onCompleted","Observable","makeSubscribe","oldOnError","_subscribe","isObservable","forEach","oOrOnNext","subscribeOnNext","subscribeOnError","subscribeOnCompleted","ScheduledObserver","isAcquired","hasFaulted","ensureActive","isOwner","work","ObservableBase","fixSubscriber","subscriber","ado","sub","subscribeCore","AutoDetachObserver","FlatMapObservable","_wrapResult","map","i2","fromPromise","from","Enumerable","ConcatEnumerableObservable","currentItem","currentValue","observableFromPromise","concat","CatchErrorObservable","lastException","catchError","catchErrorWhen","notificationHandler","exceptions","Subject","notifier","handled","notificationDisposable","outer","inner","exn","ex","RepeatEnumerable","v","c","RepeatEnumerator","l","enumerableRepeat","repeat","repeatCount","OfEnumerable","OfEnumerator","enumerableOf","of","ToArrayObservable","toArray","defer","observableFactory","observableThrow","EmptyObservable","EmptySink","scheduleItem","sink","run","EMPTY_OBSERVABLE","observableEmpty","FromObservable","iterable","mapper","FromSink","loopRecursive","list","pow","charAt","observableFrom","mapFn","observableFromArray","fromArray","NeverObservable","NEVER_OBSERVABLE","never","ofWithScheduler","PairsObservable","keys","pairs","RangeObservable","rangeCount","RangeSink","range","RepeatObservable","JustObservable","JustSink","ThrowObservable","just","ThrowSink","_o","handlerOrSecond","observableCatch","items","combineLatest","filter","j","subscriptions","sad","observableConcat","ConcatObservable","ConcatSink","concatAll","merge","MergeObservable","maxConcurrent","g","MergeObserver","activeCount","handleSubscribe","innerSource","maxConcurrentOrOther","observableMerge","mergeAll","CompositeError","errors","innerErrors","mergeDelayError","setCompletion","m","innerSubscription","MergeAllObservable","MergeAllObserver","skipUntil","isOpen","left","rightSubscription","SwitchObservable","SwitchObserver","stopped","latest","hasLatest","switchLatest","TakeUntilObservable","takeUntil","withLatestFrom","allValues","zip","queues","queuedValues","first","zipIterable","dematerialize","DistinctUntilChangedObservable","keyFn","DistinctUntilChangedObserver","hasCurrentKey","currentKey","comparerEquals","distinctUntilChanged","TapObservable","_oN","_oE","_oC","t","tap","doAction","doOnNext","tapOnNext","doOnError","tapOnError","doOnCompleted","tapOnCompleted","IgnoreElementsObservable","ignoreElements","retry","retryCount","retryWhen","ScanObservable","scan","skipLast","startWith","takeLast","flatMapConcat","concatMap","MapObservable","innerMap","internalMap","select","selectorFn","pluck","flatMap","selectMany","flatMapLatest","SkipObservable","skipCount","skip","skipWhile","predicate","take","remaining","takeWhile","FilterObservable","innerPredicate","internalFilter","shouldYield","where","fromCallback","fromNodeCallback","removeEventListener","useNativeEvents","fromEvent","element","addListener","fromEventPattern","h","removeListener","on","off","publish","refCount","addHandler","removeHandler","innerHandler","returnValue","FromPromiseObservable","promise","toPromise","promiseCtor","resolve","reject","startAsync","functionAsync","multicast","subjectOrSubjectSelector","connectable","connect","ConnectableObservable","share","publishLast","publishValue","initialValueOrSelector","initialValue","BehaviorSubject","shareValue","replay","bufferSize","windowSize","ReplaySubject","shareReplay","hasSubscription","sourceObservable","connectableSubscription","shouldConnect","observableinterval","interval","timer","periodOrScheduler","getTime","delay","debounce","hasvalue","throttle","sample","throttleLatest","intervalOrSampler","schedulerMethod","createTimer","myId","original","switched","throttleFirst","windowDuration","duration","RangeError","lastOnNext","PausableObservable","conn","connection","pausable","pauser","controller","pause","resume","PausableBufferedObservable","drainQueue","previousShouldFire","shouldFire","pausableBuffered","ControlledObservable","enableQueue","ControlledSubject","request","numberOfItems","requestedCount","requestedDisposable","hasFailed","hasCompleted","disposeCurrentRequest","_processRequest","controlled","pipe","dest","onDrain","write","emit","_isStdio","end","transduce","transducer","transformForObserver","@@transducer/init","@@transducer/step","obs","input","@@transducer/result","xform","__subscribe","innerSubscribe","AutoDetachObserverPrototype","InnerSubscription","observers","hasError","hasObservers","os","AnonymousSubject","getValue","createRemovableDisposable","so","_trim","Pauser","define","amd"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/
2
- (function(a){function b(a){for(var b=a.length,c=new Array(b),d=0;b>d;d++)c[d]=a[d];return c}function c(a,b){if(lb&&b.stack&&"object"==typeof a&&null!==a&&a.stack&&-1===a.stack.indexOf(pb)){for(var c=[],e=b;e;e=e.source)e.stack&&c.unshift(e.stack);c.unshift(a.stack);var f=c.join("\n"+pb+"\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===nb&&d>=ob&&Id>=d}function f(a){return-1!==a.indexOf("(module.js:")||-1!==a.indexOf("(node.js:")}function g(){if(lb)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 nb=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(!Yb(a))return b;Xb.nonEnumArgs&&a.length&&Zb(a)&&(a=bc.call(a));var c=Xb.enumPrototypes&&"function"==typeof a,d=Xb.enumErrorProps&&(a===Sb||a instanceof Error);for(var e in a)c&&"prototype"==e||d&&("message"==e||"name"==e)||b.push(e);if(Xb.nonEnumShadows&&a!==Tb){var f=a.constructor,g=-1,h=Eb;if(a===(f&&f.prototype))var i=a===Ub?Ob:a===Sb?Jb:Pb.call(a),j=Wb[i];for(;++g<h;)e=Db[g],j&&j[e]||!Qb.call(a,e)||b.push(e)}return b}function j(a,b,c){for(var d=-1,e=c(a),f=e.length;++d<f;){var g=e[d];if(b(a[g],g,a)===!1)break}return a}function k(a,b){return j(a,b,i)}function l(a){return"function"!=typeof a.toString&&"string"==typeof(a+"")}function m(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;var e=typeof a,f=typeof b;if(a===a&&(null==a||null==b||"function"!=e&&"object"!=e&&"function"!=f&&"object"!=f))return!1;var g=Pb.call(a),h=Pb.call(b);if(g==Fb&&(g=Mb),h==Fb&&(h=Mb),g!=h)return!1;switch(g){case Hb:case Ib:return+a==+b;case Lb:return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case Nb:case Ob:return a==String(b)}var i=g==Gb;if(!i){if(g!=Mb||!Xb.nodeClass&&(l(a)||l(b)))return!1;var j=!Xb.argsObject&&Zb(a)?Object:a.constructor,n=!Xb.argsObject&&Zb(b)?Object:b.constructor;if(!(j==n||Qb.call(a,"constructor")&&Qb.call(b,"constructor")||kb(j)&&j instanceof j&&kb(n)&&n instanceof n||!("constructor"in a&&"constructor"in b)))return!1}c||(c=[]),d||(d=[]);for(var o=c.length;o--;)if(c[o]==a)return d[o]==b;var p=0,q=!0;if(c.push(a),d.push(b),i){if(o=a.length,p=b.length,q=p==o)for(;p--;){var r=b[p];if(!(q=m(a[p],r,c,d)))break}}else k(b,function(b,e,f){return Qb.call(f,e)?(p++,q=Qb.call(a,e)&&m(a[e],b,c,d)):void 0}),q&&k(a,function(a,b,c){return Qb.call(c,b)?q=--p>-1:void 0});return c.pop(),d.pop(),q}function n(){try{return $b.apply(this,arguments)}catch(a){return ac.e=a,ac}}function o(a){if(!kb(a))throw new TypeError("fn must be a function");return $b=a,n}function p(a){throw a}function q(a,b){for(var c=new Array(a),d=0;a>d;d++)c[d]=b();return c}function r(a,b){this.id=a,this.value=b}function t(a){this.observer=a,this.a=[],this.isStopped=!1}function u(){this._s=s}function v(){this._s=s,this._l=s.length,this._i=0}function w(a){this._a=a}function x(a){this._a=a,this._l=B(a),this._i=0}function y(a){return"number"==typeof a&&Z.isFinite(a)}function z(b){var c,d=b[xb];if(!d&&"string"==typeof b)return c=new u(b),c[xb]();if(!d&&b.length!==a)return c=new w(b),c[xb]();if(!d)throw new TypeError("Object is not iterable");return b[xb]()}function A(a){var b=+a;return 0===b?b:isNaN(b)?b:0>b?-1:1}function B(a){var b=+a.length;return isNaN(b)?0:0!==b&&y(b)?(b=A(b)*Math.floor(Math.abs(b)),0>=b?0:b>Xc?Xc:b):b}function C(a,b){this.observer=a,this.parent=b}function D(a,b){return sc(a)||(a=wc),new Zc(b,a)}function E(a,b){this.observer=a,this.parent=b}function F(a,b){this.observer=a,this.parent=b}function G(a,b){return new Ad(function(c){var d=new nc,e=new oc;return e.setDisposable(d),d.setDisposable(a.subscribe(function(a){c.onNext(a)},function(a){try{var d=b(a)}catch(f){return c.onError(f)}jb(d)&&(d=td(d));var g=new nc;e.setDisposable(g),g.setDisposable(d.subscribe(c))},function(a){c.onCompleted(a)})),e},a)}function H(a,b){var c=this;return new Ad(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 d.onError(i)}d.onNext(g)}else d.onCompleted()},function(a){d.onError(a)},function(){d.onCompleted()})},c)}function I(){return!1}function J(){return[]}function K(a,b,c){var d=Cb(b,c,3);return a.map(function(b,c){var e=d(b,c,a);return jb(e)&&(e=td(e)),(Ab(e)||zb(e))&&(e=Yc(e)),e}).concatAll()}function L(a,b,c){this.observer=a,this.selector=b,this.source=c,this.i=0,this.isStopped=!1}function M(a,b,c){var d=Cb(b,c,3);return a.map(function(b,c){var e=d(b,c,a);return jb(e)&&(e=td(e)),(Ab(e)||zb(e))&&(e=Yc(e)),e}).mergeAll()}function N(a,b,c){this.observer=a,this.predicate=b,this.source=c,this.i=0,this.isStopped=!1}function O(a,b,c){if(a.addEventListener)return a.addEventListener(b,c,!1),jc(function(){a.removeEventListener(b,c,!1)});throw new Error("No listener found")}function P(a,b,c){var d=new gc;if("[object NodeList]"===Object.prototype.toString.call(a))for(var e=0,f=a.length;f>e;e++)d.add(P(a.item(e),b,c));else a&&d.add(O(a,b,c));return d}function Q(a,b){return new Ad(function(c){return b.scheduleWithAbsolute(a,function(){c.onNext(0),c.onCompleted()})})}function R(a,b,c){return new Ad(function(d){var e=a,f=rc(b);return c.scheduleRecursiveWithAbsoluteAndState(0,e,function(a,b){if(f>0){var g=c.now();e+=f,g>=e&&(e=g+f)}d.onNext(a),b(a+1,e)})})}function S(a,b){return new Ad(function(c){return b.scheduleWithRelative(rc(a),function(){c.onNext(0),c.onCompleted()})})}function T(a,b,c){return a===b?new Ad(function(a){return c.schedulePeriodicWithState(0,b,function(b){return a.onNext(b),b+1})}):Sc(function(){return R(c.now()+a,b,c)})}function U(a,b,c){return new Ad(function(d){var e,f=!1,g=new oc,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 nc,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 gc(e,g)},a)}function V(a,b,c){return Sc(function(){return U(a,b-c.now(),c)})}function W(a,b){return new Ad(function(c){function d(){g&&(g=!1,c.onNext(f)),e&&c.onCompleted()}var e,f,g;return new gc(a.subscribe(function(a){g=!0,f=a},c.onError.bind(c),function(){e=!0}),b.subscribe(d,c.onError.bind(c),d))},a)}function X(a,b,c){return new Ad(function(d){function e(a,b){j[b]=a;var e;if(g[b]=!0,h||(h=g.every(eb))){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 gc(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)}var Y={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},Z=Y[typeof window]&&window||this,$=Y[typeof exports]&&exports&&!exports.nodeType&&exports,_=Y[typeof module]&&module&&!module.nodeType&&module,ab=_&&_.exports===$&&$,bb=Y[typeof global]&&global;!bb||bb.global!==bb&&bb.window!==bb||(Z=bb);var cb={internals:{},config:{Promise:Z.Promise},helpers:{}},db=cb.helpers.noop=function(){},eb=(cb.helpers.notDefined=function(a){return"undefined"==typeof a},cb.helpers.identity=function(a){return a}),fb=(cb.helpers.pluck=function(a){return function(b){return b[a]}},cb.helpers.just=function(a){return function(){return a}},cb.helpers.defaultNow=Date.now),gb=cb.helpers.defaultComparer=function(a,b){return _b(a,b)},hb=cb.helpers.defaultSubComparer=function(a,b){return a>b?1:b>a?-1:0},ib=(cb.helpers.defaultKeySerializer=function(a){return a.toString()},cb.helpers.defaultError=function(a){throw a}),jb=cb.helpers.isPromise=function(a){return!!a&&"function"==typeof a.then},kb=(cb.helpers.asArray=function(){return Array.prototype.slice.call(arguments)},cb.helpers.not=function(a){return!a},cb.helpers.isFunction=function(){var a=function(a){return"function"==typeof a||!1};return a(/x/)&&(a=function(a){return"function"==typeof a&&"[object Function]"==Pb.call(a)}),a}());cb.config.longStackSupport=!1;var lb=!1;try{throw new Error}catch(mb){lb=!!mb.stack}var nb,ob=g(),pb="From previous event:",qb=cb.EmptyError=function(){this.message="Sequence contains no elements.",Error.call(this)};qb.prototype=Error.prototype;var rb=cb.ObjectDisposedError=function(){this.message="Object has been disposed",Error.call(this)};rb.prototype=Error.prototype;var sb=cb.ArgumentOutOfRangeError=function(){this.message="Argument out of range",Error.call(this)};sb.prototype=Error.prototype;var tb=cb.NotSupportedError=function(a){this.message=a||"This operation is not supported",Error.call(this)};tb.prototype=Error.prototype;var ub=cb.NotImplementedError=function(a){this.message=a||"This operation is not implemented",Error.call(this)};ub.prototype=Error.prototype;var vb=cb.helpers.notImplemented=function(){throw new ub},wb=cb.helpers.notSupported=function(){throw new tb},xb="function"==typeof Symbol&&Symbol.iterator||"_es6shim_iterator_";Z.Set&&"function"==typeof(new Z.Set)["@@iterator"]&&(xb="@@iterator");var yb=cb.doneEnumerator={done:!0,value:a},zb=cb.helpers.isIterable=function(b){return b[xb]!==a},Ab=cb.helpers.isArrayLike=function(b){return b&&b.length!==a};cb.helpers.iterator=xb;var Bb,Cb=cb.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)}},Db=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Eb=Db.length,Fb="[object Arguments]",Gb="[object Array]",Hb="[object Boolean]",Ib="[object Date]",Jb="[object Error]",Kb="[object Function]",Lb="[object Number]",Mb="[object Object]",Nb="[object RegExp]",Ob="[object String]",Pb=Object.prototype.toString,Qb=Object.prototype.hasOwnProperty,Rb=Pb.call(arguments)==Fb,Sb=Error.prototype,Tb=Object.prototype,Ub=String.prototype,Vb=Tb.propertyIsEnumerable;try{Bb=!(Pb.call(document)==Mb&&!({toString:0}+""))}catch(mb){Bb=!0}var Wb={};Wb[Gb]=Wb[Ib]=Wb[Lb]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},Wb[Hb]=Wb[Ob]={constructor:!0,toString:!0,valueOf:!0},Wb[Jb]=Wb[Kb]=Wb[Nb]={constructor:!0,toString:!0},Wb[Mb]={constructor:!0};var Xb={};!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);Xb.enumErrorProps=Vb.call(Sb,"message")||Vb.call(Sb,"name"),Xb.enumPrototypes=Vb.call(a,"prototype"),Xb.nonEnumArgs=0!=c,Xb.nonEnumShadows=!/valueOf/.test(b)}(1);var Yb=cb.internals.isObject=function(a){var b=typeof a;return a&&("function"==b||"object"==b)||!1},Zb=function(a){return a&&"object"==typeof a?Pb.call(a)==Fb:!1};Rb||(Zb=function(a){return a&&"object"==typeof a?Qb.call(a,"callee"):!1});{var $b,_b=cb.internals.isEqual=function(a,b){return m(a,b,[],[])},ac={e:{}},bc=({}.hasOwnProperty,Array.prototype.slice),cc=this.inherits=cb.internals.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c},dc=cb.internals.addProperties=function(a){for(var b=[],c=1,d=arguments.length;d>c;c++)b.push(arguments[c]);for(var e=0,f=b.length;f>e;e++){var g=b[e];for(var h in g)a[h]=g[h]}};cb.internals.addRef=function(a,b){return new Ad(function(c){return new gc(b.getDisposable(),a.subscribe(c))})}}r.prototype.compareTo=function(a){var b=this.value.compareTo(a.value);return 0===b&&(b=this.id-a.id),b};var ec=cb.internals.PriorityQueue=function(a){this.items=new Array(a),this.length=0},fc=ec.prototype;fc.isHigherPriority=function(a,b){return this.items[a].compareTo(this.items[b])<0},fc.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)}}},fc.heapify=function(a){if(+a||(a=0),!(a>=this.length||0>a)){var b=2*a+1,c=2*a+2,d=a;if(b<this.length&&this.isHigherPriority(b,d)&&(d=b),c<this.length&&this.isHigherPriority(c,d)&&(d=c),d!==a){var e=this.items[a];this.items[a]=this.items[d],this.items[d]=e,this.heapify(d)}}},fc.peek=function(){return this.items[0].value},fc.removeAt=function(b){this.items[b]=this.items[--this.length],this.items[this.length]=a,this.heapify()},fc.dequeue=function(){var a=this.peek();return this.removeAt(0),a},fc.enqueue=function(a){var b=this.length++;this.items[b]=new r(ec.count++,a),this.percolate(b)},fc.remove=function(a){for(var b=0;b<this.length;b++)if(this.items[b].value===a)return this.removeAt(b),!0;return!1},ec.count=0;var gc=cb.CompositeDisposable=function(){var a,b,c=[];if(Array.isArray(arguments[0]))c=arguments[0],b=c.length;else for(b=arguments.length,c=new Array(b),a=0;b>a;a++)c[a]=arguments[a];for(a=0;b>a;a++)if(!lc(c[a]))throw new TypeError("Not a disposable");this.disposables=c,this.isDisposed=!1,this.length=c.length},hc=gc.prototype;hc.add=function(a){this.isDisposed?a.dispose():(this.disposables.push(a),this.length++)},hc.remove=function(a){var b=!1;if(!this.isDisposed){var c=this.disposables.indexOf(a);-1!==c&&(b=!0,this.disposables.splice(c,1),this.length--,a.dispose())}return b},hc.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;for(var a=this.disposables.length,b=new Array(a),c=0;a>c;c++)b[c]=this.disposables[c];for(this.disposables=[],this.length=0,c=0;a>c;c++)b[c].dispose()}};var ic=cb.Disposable=function(a){this.isDisposed=!1,this.action=a||db};ic.prototype.dispose=function(){this.isDisposed||(this.action(),this.isDisposed=!0)};var jc=ic.create=function(a){return new ic(a)},kc=ic.empty={dispose:db},lc=ic.isDisposable=function(a){return a&&kb(a.dispose)},mc=ic.checkDisposed=function(a){if(a.isDisposed)throw new rb},nc=cb.SingleAssignmentDisposable=function(){this.isDisposed=!1,this.current=null};nc.prototype.getDisposable=function(){return this.current},nc.prototype.setDisposable=function(a){if(this.current)throw new Error("Disposable has already been assigned");var b=this.isDisposed;!b&&(this.current=a),b&&a&&a.dispose()},nc.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var oc=cb.SerialDisposable=function(){this.isDisposed=!1,this.current=null};oc.prototype.getDisposable=function(){return this.current},oc.prototype.setDisposable=function(a){var b=this.isDisposed;if(!b){var c=this.current;this.current=a}c&&c.dispose(),b&&a&&a.dispose()},oc.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var pc=(cb.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?kc:new a(this)},b}(),cb.internals.ScheduledItem=function(a,b,c,d,e){this.scheduler=a,this.state=b,this.action=c,this.dueTime=d,this.comparer=e||hb,this.disposable=new nc});pc.prototype.invoke=function(){this.disposable.setDisposable(this.invokeCore())},pc.prototype.compareTo=function(a){return this.comparer(this.dueTime,a.dueTime)},pc.prototype.isCancelled=function(){return this.disposable.isDisposed},pc.prototype.invokeCore=function(){return this.action(this.scheduler,this.state)};var qc=cb.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(),kc}a.isScheduler=function(b){return b instanceof a};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=fb,a.normalize=function(a){return 0>a&&(a=0),a},a}(),rc=qc.normalize,sc=qc.isScheduler;!function(a){function b(a,b){function c(b){e(b,function(b){var d=!1,e=!1,g=a.scheduleWithState(b,function(a,b){return d?f.remove(g):e=!0,c(b),kc});e||(f.add(g),d=!0)})}var d=b[0],e=b[1],f=new gc;return c(d),f}function c(a,b,c){function d(b){f(b,function(b,e){var f=!1,h=!1,i=a[c](b,e,function(a,b){return f?g.remove(i):h=!0,d(b),kc});h||(g.add(i),f=!0)})}var e=b[0],f=b[1],g=new gc;return d(e),g}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([a,c],b)},a.scheduleRecursiveWithRelative=function(a,b){return this.scheduleRecursiveWithRelativeAndState(b,a,d)},a.scheduleRecursiveWithRelativeAndState=function(a,b,d){return this._scheduleRelative([a,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([a,d],b,function(a,b){return c(a,b,"scheduleWithAbsoluteAndState")})}}(qc.prototype),function(){qc.prototype.schedulePeriodic=function(a,b){return this.schedulePeriodicWithState(null,a,b)},qc.prototype.schedulePeriodicWithState=function(a,b,c){if("undefined"==typeof Z.setInterval)throw new tb;b=rc(b);var d=a,e=Z.setInterval(function(){d=c(d)},b);return jc(function(){Z.clearInterval(e)})}}(qc.prototype);var tc,uc,vc=qc.immediate=function(){function a(a,b){return b(this,a)}return new qc(fb,a,wb,wb)}(),wc=qc.currentThread=function(){function a(){for(;c.length>0;){var a=c.dequeue();!a.isCancelled()&&a.invoke()}}function b(b,d){var e=new pc(this,b,d,this.now());if(c)c.enqueue(e);else{c=new ec(4),c.enqueue(e);var f=o(a)();if(c=null,f===ac)return p(f.e)}return e.disposable}var c,d=new qc(fb,b,wb,wb);return d.scheduleRequired=function(){return!c},d}(),xc=(cb.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 nc;return this._cancel=b,b.setDisposable(this._scheduler.scheduleRecursiveWithRelativeAndState(0,this._period,a.bind(this))),b},b}(),function(){var a,b=db;if(Z.setTimeout)a=Z.setTimeout,b=Z.clearTimeout;else{if(!Z.WScript)throw new tb;a=function(a,b){Z.WScript.Sleep(b),a()}}return{setTimeout:a,clearTimeout:b}}()),yc=xc.setTimeout,zc=xc.clearTimeout;!function(){function a(b){if(f)yc(function(){a(b)},0);else{var c=e[b];if(c){f=!0;var d=o(c)();if(uc(b),f=!1,d===ac)return p(d.e)}}}function b(){if(!Z.postMessage||Z.importScripts)return!1;var a=!1,b=Z.onmessage;return Z.onmessage=function(){a=!0},Z.postMessage("","*"),Z.onmessage=b,a}function c(b){"string"==typeof b.data&&b.data.substring(0,i.length)===i&&a(b.data.substring(i.length))}var d=1,e={},f=!1;uc=function(a){delete e[a]};var g=RegExp("^"+String(Pb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),h="function"==typeof(h=bb&&ab&&bb.setImmediate)&&!g.test(h)&&h;if(kb(h))tc=function(b){var c=d++;return e[c]=b,h(function(){a(c)}),c};else if("undefined"!=typeof process&&"[object process]"==={}.toString.call(process))tc=function(b){var c=d++;return e[c]=b,process.nextTick(function(){a(c)}),c};else if(b()){var i="ms.rx.schedule"+Math.random();Z.addEventListener?Z.addEventListener("message",c,!1):Z.attachEvent?Z.attachEvent("onmessage",c):Z.onmessage=c,tc=function(a){var b=d++;return e[b]=a,Z.postMessage(i+currentId,"*"),b}}else if(Z.MessageChannel){var j=new Z.MessageChannel;j.port1.onmessage=function(b){a(b.data)},tc=function(a){var b=d++;return e[b]=a,j.port2.postMessage(b),b}}else tc="document"in Z&&"onreadystatechange"in Z.document.createElement("script")?function(b){var c=Z.document.createElement("script"),f=d++;return e[f]=b,c.onreadystatechange=function(){a(f),c.onreadystatechange=null,c.parentNode.removeChild(c),c=null},Z.document.documentElement.appendChild(c),f}:function(b){var c=d++;return e[c]=b,yc(function(){a(c)},0),c}}();var Ac=qc.timeout=qc["default"]=function(){function a(a,b){var c=this,d=new nc,e=tc(function(){!d.isDisposed&&d.setDisposable(b(c,a))});return new gc(d,jc(function(){uc(e)}))}function b(a,b,c){var d=this,e=qc.normalize(b),f=new nc;if(0===e)return d.scheduleWithState(a,c);var g=yc(function(){!f.isDisposed&&f.setDisposable(c(d,a))},e);return new gc(f,jc(function(){zc(g)}))}function c(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}return new qc(fb,a,b,c)}(),Bc=cb.Notification=function(){function a(a,b,c,d,e,f){this.kind=a,this.value=b,this.exception=c,this._accept=d,this._acceptObservable=e,this.toString=f}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 sc(a)||(a=vc),new Ad(function(c){return a.scheduleWithState(b,function(a,b){b._acceptObservable(c),"N"===b.kind&&c.onCompleted()})})},a}(),Cc=Bc.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){return new Bc("N",d,null,a,b,c)}}(),Dc=Bc.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){return new Bc("E",null,d,a,b,c)}}(),Ec=Bc.createOnCompleted=function(){function a(a,b,c){return c()}function b(a){return a.onCompleted()}function c(){return"OnCompleted()"}return function(){return new Bc("C",null,null,a,b,c)}}(),Fc=cb.internals.Enumerator=function(a){this._next=a};Fc.prototype.next=function(){return this._next()},Fc.prototype[xb]=function(){return this};var Gc=cb.internals.Enumerable=function(a){this._iterator=a};Gc.prototype[xb]=function(){return this._iterator()},Gc.prototype.concat=function(){var a=this;return new Ad(function(b){var c,d=a[xb](),e=new oc,f=vc.scheduleRecursive(function(a){if(!c){try{var f=d.next()}catch(g){return b.onError(g)}if(f.done)return b.onCompleted();var h=f.value;jb(h)&&(h=td(h));var i=new nc;e.setDisposable(i),i.setDisposable(h.subscribe(function(a){b.onNext(a)},function(a){b.onError(a)},a))}});return new gc(e,f,jc(function(){c=!0}))})},Gc.prototype.catchError=function(){var a=this;return new Ad(function(b){var c,d=a[xb](),e=new oc,f=vc.scheduleRecursiveWithState(null,function(a,f){if(!c){try{var g=d.next()}catch(h){return observer.onError(h)}if(g.done)return void(null!==a?b.onError(a):b.onCompleted());var i=g.value;jb(i)&&(i=td(i));var j=new nc;e.setDisposable(j),j.setDisposable(i.subscribe(function(a){b.onNext(a)},f,function(){b.onCompleted()}))}});return new gc(e,f,jc(function(){c=!0}))})},Gc.prototype.catchErrorWhen=function(a){var b=this;return new Ad(function(c){var d,e,f=new Dd,g=new Dd,h=a(f),i=h.subscribe(g),j=b[xb](),k=new oc,l=vc.scheduleRecursive(function(a){if(!d){try{var b=j.next()}catch(h){return c.onError(h)}if(b.done)return void(e?c.onError(e):c.onCompleted());var i=b.value;jb(i)&&(i=td(i));var l=new nc,m=new nc;k.setDisposable(new gc(m,l)),l.setDisposable(i.subscribe(function(a){c.onNext(a)},function(b){m.setDisposable(g.subscribe(a,function(a){c.onError(a)},function(){c.onCompleted()})),f.onNext(b)},function(){c.onCompleted()}))}});return new gc(i,k,l,jc(function(){d=!0}))})};var Hc,Ic=Gc.repeat=function(a,b){return null==b&&(b=-1),new Gc(function(){var c=b;return new Fc(function(){return 0===c?yb:(c>0&&c--,{done:!1,value:a})})})},Jc=Gc.of=function(a,b,c){if(b)var d=Cb(b,c,3);return new Gc(function(){var c=-1;return new Fc(function(){return++c<a.length?{done:!1,value:b?d(a[c],c,a):a[c]}:yb})})},Kc=cb.Observer=function(){},Lc=Kc.create=function(a,b,c){return a||(a=db),b||(b=ib),c||(c=db),new Nc(a,b,c)},Mc=cb.internals.AbstractObserver=function(a){function b(){this.isStopped=!1,a.call(this)}return cc(b,a),b.prototype.next=vb,b.prototype.error=vb,b.prototype.completed=vb,b.prototype.onNext=function(a){this.isStopped||this.next(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.error(a))},b.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.completed())},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.error(a),!0)},b}(Kc),Nc=cb.AnonymousObserver=function(a){function b(b,c,d){a.call(this),this._onNext=b,this._onError=c,this._onCompleted=d}return cc(b,a),b.prototype.next=function(a){this._onNext(a)},b.prototype.error=function(a){this._onError(a)},b.prototype.completed=function(){this._onCompleted()},b}(Mc),Oc=cb.Observable=function(){function a(a){if(cb.config.longStackSupport&&lb){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 Hc=a.prototype,Hc.subscribe=Hc.forEach=function(a,b,c){return this._subscribe("object"==typeof a?a:Lc(a,b,c))},Hc.subscribeOnNext=function(a,b){return this._subscribe(Lc("undefined"!=typeof b?function(c){a.call(b,c)}:a))},Hc.subscribeOnError=function(a,b){return this._subscribe(Lc(null,"undefined"!=typeof b?function(c){a.call(b,c)}:a))},Hc.subscribeOnCompleted=function(a,b){return this._subscribe(Lc(null,null,"undefined"!=typeof b?function(){a.call(b)}:a))},a}(),Pc=cb.internals.ScheduledObserver=function(a){function b(b,c){a.call(this),this.scheduler=b,this.observer=c,this.isAcquired=!1,this.hasFaulted=!1,this.queue=[],this.disposable=new oc}return cc(b,a),b.prototype.next=function(a){var b=this;this.queue.push(function(){b.observer.onNext(a)})},b.prototype.error=function(a){var b=this;this.queue.push(function(){b.observer.onError(a)})},b.prototype.completed=function(){var a=this;this.queue.push(function(){a.observer.onCompleted()})},b.prototype.ensureActive=function(){var a=!1,b=this;!this.hasFaulted&&this.queue.length>0&&(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}(Mc),Qc=cb.ObservableBase=function(a){function b(a){return a&&kb(a.dispose)?a:kb(a)?jc(a):kc}function c(a,c){var d=c[0],e=c[1],f=o(e.subscribeCore).call(e,d);return f!==ac||d.fail(ac.e)?void d.setDisposable(b(f)):p(ac.e)}function d(a){var b=new Bd(a),d=[b,this];return wc.scheduleRequired()?wc.scheduleWithState(d,c):c(null,d),b}function e(){a.call(this,d)}return cc(e,a),e.prototype.subscribeCore=vb,e}(Oc),Rc=function(a){function b(b){this.source=b,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new t(a))},b}(Qc);t.prototype.onNext=function(a){this.isStopped||this.a.push(a)},t.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.observer.onError(a))},t.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.observer.onNext(this.a),this.observer.onCompleted())},t.prototype.dispose=function(){this.isStopped=!0},t.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},Hc.toArray=function(){return new Rc(this)},Oc.create=Oc.createWithDisposable=function(a,b){return new Ad(a,b)};var Sc=Oc.defer=function(a){return new Ad(function(b){var c;try{c=a()}catch(d){return gd(d).subscribe(b)}return jb(c)&&(c=td(c)),c.subscribe(b)})},Tc=function(a){function b(b){this.scheduler=b,a.call(this)}function c(a,b){this.observer=a,this.parent=b}function d(a,b){b.onCompleted()}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.parent.scheduler.scheduleWithState(this.observer,d)},b}(Qc),Uc=Oc.empty=function(a){return sc(a)||(a=vc),new Tc(a)},Vc=function(a){function b(b,c,d){this.iterable=b,this.mapper=c,this.scheduler=d,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new Wc(a,this);return b.run()},b}(Qc),Wc=function(){function a(a,b){this.observer=a,this.parent=b}return a.prototype.run=function(){function a(a,b){try{var f=c.next()}catch(g){return d.onError(g)}if(f.done)return d.onCompleted();var h=f.value;if(e)try{h=e(h,a)}catch(g){return d.onError(g)}d.onNext(h),b(a+1)}var b=Object(this.parent.iterable),c=z(b),d=this.observer,e=this.parent.mapper;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}(),Xc=Math.pow(2,53)-1;u.prototype[xb]=function(){return new v(this._s)},v.prototype[xb]=function(){return this},v.prototype.next=function(){return this._i<this._l?{done:!1,value:this._s.charAt(this._i++)}:yb},w.prototype[xb]=function(){return new x(this._a)},x.prototype[xb]=function(){return this},x.prototype.next=function(){return this._i<this._l?{done:!1,value:this._a[this._i++]}:yb};var Yc=Oc.from=function(a,b,c,d){if(null==a)throw new Error("iterable cannot be null.");if(b&&!kb(b))throw new Error("mapFn when provided must be a function");if(b)var e=Cb(b,c,2);return sc(d)||(d=wc),new Vc(a,e,d)},Zc=function(a){function b(b,c){this.args=b,this.scheduler=c,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new C(a,this);return b.run()},b}(Qc);C.prototype.run=function(){function a(a,e){d>a?(b.onNext(c[a]),e(a+1)):b.onCompleted()}var b=this.observer,c=this.parent.args,d=c.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)};{var $c=Oc.fromArray=function(a,b){return sc(b)||(b=wc),new Zc(a,b)},_c=function(a){function b(){a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(){return kc},b}(Qc);Oc.never=function(){return new _c}}Oc.of=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return new Zc(b,wc)},Oc.ofWithScheduler=function(a){for(var b=arguments.length,c=new Array(b-1),d=1;b>d;d++)c[d-1]=arguments[d];return new Zc(c,a)};var ad=function(a){function b(b,c){this.obj=b,this.keys=Object.keys(b),this.scheduler=c,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new E(a,this);return b.run()},b}(Qc);E.prototype.run=function(){function a(a,f){if(e>a){var g=d[a];b.onNext([g,c[g]]),f(a+1)}else b.onCompleted()}var b=this.observer,c=this.parent.obj,d=this.parent.keys,e=d.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},Oc.pairs=function(a,b){return b||(b=wc),new ad(a,b)};var bd=function(a){function b(b,c,d){this.start=b,this.count=c,this.scheduler=d,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new cd(a,this);return b.run()},b}(Qc),cd=function(){function a(a,b){this.observer=a,this.parent=b}return a.prototype.run=function(){function a(a,e){c>a?(d.onNext(b+a),e(a+1)):d.onCompleted()
3
- }var b=this.parent.start,c=this.parent.count,d=this.observer;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}();Oc.range=function(a,b,c){return sc(c)||(c=wc),new bd(a,b,c)};var dd=function(a){function b(b,c,d){this.value=b,this.repeatCount=null==c?-1:c,this.scheduler=d,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new F(a,this);return b.run()},b}(Qc);F.prototype.run=function(){function a(a,d){return(-1===a||a>0)&&(b.onNext(c),a>0&&a--),0===a?b.onCompleted():void d(a)}var b=this.observer,c=this.parent.value;return this.parent.scheduler.scheduleRecursiveWithState(this.parent.repeatCount,a)},Oc.repeat=function(a,b,c){return sc(c)||(c=wc),new dd(a,b,c)};var ed=function(a){function b(b,c){this.value=b,this.scheduler=c,a.call(this)}function c(a,b){this.observer=a,this.parent=b}function d(a,b){var c=b[0],d=b[1];d.onNext(c),d.onCompleted()}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.parent.scheduler.scheduleWithState([this.parent.value,this.observer],d)},b}(Qc),fd=(Oc["return"]=Oc.just=Oc.returnValue=function(a,b){return sc(b)||(b=vc),new ed(a,b)},function(a){function b(b,c){this.error=b,this.scheduler=c,a.call(this)}function c(a,b){this.observer=a,this.parent=b}function d(a,b){var c=b[0],d=b[1];d.onError(c)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.parent.scheduler.scheduleWithState([this.parent.error,this.observer],d)},b}(Qc)),gd=Oc["throw"]=Oc.throwError=Oc.throwException=function(a,b){return sc(b)||(b=vc),new fd(a,b)};Hc["catch"]=Hc.catchError=Hc.catchException=function(a){return"function"==typeof a?G(this,a):hd([this,a])};var hd=Oc.catchError=Oc["catch"]=Oc.catchException=function(){var a=[];if(Array.isArray(arguments[0]))a=arguments[0];else for(var b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return Jc(a).catchError()};Hc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return Array.isArray(b[0])?b[0].unshift(this):b.unshift(this),id.apply(this,b)};var id=Oc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.pop();return Array.isArray(b[0])&&(b=b[0]),new Ad(function(a){function c(b){if(h[b]=!0,i||(i=h.every(eb))){try{var c=d.apply(null,k)}catch(e){return a.onError(e)}a.onNext(c)}else j.filter(function(a,c){return c!==b}).every(eb)&&a.onCompleted()}function e(b){j[b]=!0,j.every(eb)&&a.onCompleted()}for(var f=b.length,g=function(){return!1},h=q(f,g),i=!1,j=q(f,g),k=new Array(f),l=new Array(f),m=0;f>m;m++)!function(d){var f=b[d],g=new nc;jb(f)&&(f=td(f)),g.setDisposable(f.subscribe(function(a){k[d]=a,c(d)},function(b){a.onError(b)},function(){e(d)})),l[d]=g}(m);return new gc(l)},this)};Hc.concat=function(){for(var a=[],b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return a.unshift(this),jd.apply(null,a)};var jd=Oc.concat=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(arguments.length);for(var b=0,c=arguments.length;c>b;b++)a[b]=arguments[b]}return Jc(a).concat()};Hc.concatAll=Hc.concatObservable=function(){return this.merge(1)};var kd=function(a){function b(b,c){this.source=b,this.maxConcurrent=c,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new gc;return b.add(this.source.subscribe(new ld(a,this.maxConcurrent,b))),b},b}(Qc),ld=function(){function a(a,b,c){this.o=a,this.max=b,this.g=c,this.done=!1,this.q=[],this.activeCount=0,this.isStopped=!1}function b(a,b){this.parent=a,this.sad=b,this.isStopped=!1}return a.prototype.handleSubscribe=function(a){var c=new nc;this.g.add(c),jb(a)&&(a=td(a)),c.setDisposable(a.subscribe(new b(this,c)))},a.prototype.onNext=function(a){this.isStopped||(this.activeCount<this.max?(this.activeCount++,this.handleSubscribe(a)):this.q.push(a))},a.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},a.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,0===this.activeCount&&this.o.onCompleted())},a.prototype.dispose=function(){this.isStopped=!0},a.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},b.prototype.onCompleted=function(){if(!this.isStopped){this.isStopped=!0;var a=this.parent;a.g.remove(this.sad),a.q.length>0?a.handleSubscribe(a.q.shift()):(a.activeCount--,a.done&&0===a.activeCount&&a.o.onCompleted())}},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},a}();Hc.merge=function(a){return"number"!=typeof a?md(this,a):new kd(this,a)};var md=Oc.merge=function(){var a,b,c=[],d=arguments.length;if(arguments[0])if(sc(arguments[0]))for(a=arguments[0],b=1;d>b;b++)c.push(arguments[b]);else for(a=vc,b=0;d>b;b++)c.push(arguments[b]);else for(a=vc,b=1;d>b;b++)c.push(arguments[b]);return Array.isArray(c[0])&&(c=c[0]),D(a,c).mergeAll()},nd=cb.CompositeError=function(a){this.name="NotImplementedError",this.innerErrors=a,this.message="This contains multiple errors. Check the innerErrors",Error.call(this)};nd.prototype=Error.prototype,Oc.mergeDelayError=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}var d=D(null,a);return new Ad(function(a){function b(){0===g.length?a.onCompleted():a.onError(1===g.length?g[0]:new nd(g))}var c=new gc,e=new nc,f=!1,g=[];return c.add(e),e.setDisposable(d.subscribe(function(d){var e=new nc;c.add(e),jb(d)&&(d=td(d)),e.setDisposable(d.subscribe(function(b){a.onNext(b)},function(a){g.push(a),c.remove(e),f&&1===c.length&&b()},function(){c.remove(e),f&&1===c.length&&b()}))},function(a){g.push(a),f=!0,1===c.length&&b()},function(){f=!0,1===c.length&&b()})),c})};var od=function(a){function b(b){this.source=b,a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){var b=new gc,c=new nc;return b.add(c),c.setDisposable(this.source.subscribe(new pd(a,b))),b},b}(Qc),pd=function(){function a(a,b){this.o=a,this.g=b,this.isStopped=!1,this.done=!1}function b(a,b,c){this.parent=a,this.g=b,this.sad=c,this.isStopped=!1}return a.prototype.onNext=function(a){if(!this.isStopped){var c=new nc;this.g.add(c),jb(a)&&(a=td(a)),c.setDisposable(a.subscribe(new b(this,this.g,c)))}},a.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},a.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,1===this.g.length&&this.o.onCompleted())},a.prototype.dispose=function(){this.isStopped=!0},a.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},b.prototype.onCompleted=function(){if(!this.isStopped){var a=this.parent;this.isStopped=!0,a.g.remove(this.sad),a.done&&1===a.g.length&&a.o.onCompleted()}},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},a}();Hc.mergeAll=Hc.mergeObservable=function(){return new od(this)},Hc.skipUntil=function(a){var b=this;return new Ad(function(c){var d=!1,e=new gc(b.subscribe(function(a){d&&c.onNext(a)},function(a){c.onError(a)},function(){d&&c.onCompleted()}));jb(a)&&(a=td(a));var f=new nc;return e.add(f),f.setDisposable(a.subscribe(function(){d=!0,f.dispose()},function(a){c.onError(a)},function(){f.dispose()})),e},b)},Hc["switch"]=Hc.switchLatest=function(){var a=this;return new Ad(function(b){var c=!1,d=new oc,e=!1,f=0,g=a.subscribe(function(a){var g=new nc,h=++f;c=!0,d.setDisposable(g),jb(a)&&(a=td(a)),g.setDisposable(a.subscribe(function(a){f===h&&b.onNext(a)},function(a){f===h&&b.onError(a)},function(){f===h&&(c=!1,e&&b.onCompleted())}))},function(a){b.onError(a)},function(){e=!0,!c&&b.onCompleted()});return new gc(g,d)},a)},Hc.takeUntil=function(a){var b=this;return new Ad(function(c){return jb(a)&&(a=td(a)),new gc(b.subscribe(c),a.subscribe(function(){c.onCompleted()},function(a){c.onError(a)},db))},b)},Hc.withLatestFrom=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.pop(),e=this;if("undefined"==typeof e)throw new Error("Source observable not found for withLatestFrom().");if("function"!=typeof d)throw new Error("withLatestFrom() expects a resultSelector function.");return Array.isArray(b[0])&&(b=b[0]),new Ad(function(a){for(var c=function(){return!1},f=b.length,g=q(f,c),h=!1,i=new Array(f),j=new Array(f+1),k=0;f>k;k++)!function(c){var d=b[c],e=new nc;jb(d)&&(d=td(d)),e.setDisposable(d.subscribe(function(a){i[c]=a,g[c]=!0,h=g.every(eb)},a.onError.bind(a),function(){})),j[c]=e}(k);var l=new nc;return l.setDisposable(e.subscribe(function(b){var c,e=[b].concat(i);if(h){try{c=d.apply(null,e)}catch(f){return void a.onError(f)}a.onNext(c)}},a.onError.bind(a),function(){a.onCompleted()})),j[f]=l,new gc(j)},this)},Hc.zip=function(){if(Array.isArray(arguments[0]))return H.apply(this,arguments);for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=this,e=b.pop();return b.unshift(d),new Ad(function(a){function c(b){var c,f;if(h.every(function(a){return a.length>0})){try{f=h.map(function(a){return a.shift()}),c=e.apply(d,f)}catch(g){return void a.onError(g)}a.onNext(c)}else i.filter(function(a,c){return c!==b}).every(eb)&&a.onCompleted()}function f(b){i[b]=!0,i.every(function(a){return a})&&a.onCompleted()}for(var g=b.length,h=q(g,J),i=q(g,I),j=new Array(g),k=0;g>k;k++)!function(d){var e=b[d],g=new nc;jb(e)&&(e=td(e)),g.setDisposable(e.subscribe(function(a){h[d].push(a),c(d)},function(b){a.onError(b)},function(){f(d)})),j[d]=g}(k);return new gc(j)},d)},Oc.zip=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.shift();return d.zip.apply(d,b)},Oc.zipArray=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return new Ad(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(eb))return void b.onCompleted()}function d(a){return g[a]=!0,g.every(eb)?void b.onCompleted():void 0}for(var e=a.length,f=q(e,function(){return[]}),g=q(e,function(){return!1}),h=new Array(e),i=0;e>i;i++)!function(e){h[e]=new nc,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 gc(h)})},Hc.asObservable=function(){var a=this;return new Ad(function(b){return a.subscribe(b)},this)},Hc.dematerialize=function(){var a=this;return new Ad(function(b){return a.subscribe(function(a){return a.accept(b)},function(a){b.onError(a)},function(){b.onCompleted()})},this)},Hc.distinctUntilChanged=function(a,b){var c=this;return b||(b=gb),new Ad(function(d){var e,f=!1;return c.subscribe(function(c){var g=c;if(a)try{g=a(c)}catch(h){return void d.onError(h)}if(f)try{var i=b(e,g)}catch(h){return void d.onError(h)}f&&i||(f=!0,e=g,d.onNext(c))},function(a){d.onError(a)},function(){d.onCompleted()})},this)},Hc["do"]=Hc.tap=Hc.doAction=function(a,b,c){var d=this;return new Ad(function(e){var f=!a||kb(a)?Lc(a||db,b||db,c||db):a;return d.subscribe(function(a){try{f.onNext(a)}catch(b){e.onError(b)}e.onNext(a)},function(a){try{f.onError(a)}catch(b){e.onError(b)}e.onError(a)},function(){try{f.onCompleted()}catch(a){e.onError(a)}e.onCompleted()})},this)},Hc.doOnNext=Hc.tapOnNext=function(a,b){return this.tap("undefined"!=typeof b?function(c){a.call(b,c)}:a)},Hc.doOnError=Hc.tapOnError=function(a,b){return this.tap(db,"undefined"!=typeof b?function(c){a.call(b,c)}:a)},Hc.doOnCompleted=Hc.tapOnCompleted=function(a,b){return this.tap(db,null,"undefined"!=typeof b?function(){a.call(b)}:a)},Hc["finally"]=Hc.ensure=function(a){var b=this;return new Ad(function(c){var d;try{d=b.subscribe(c)}catch(e){throw a(),e}return jc(function(){try{d.dispose()}catch(b){throw b}finally{a()}})},this)},Hc.finallyAction=function(a){return this.ensure(a)},Hc.ignoreElements=function(){var a=this;return new Ad(function(b){return a.subscribe(db,function(a){b.onError(a)},function(){b.onCompleted()})},a)},Hc.materialize=function(){var a=this;return new Ad(function(b){return a.subscribe(function(a){b.onNext(Cc(a))},function(a){b.onNext(Dc(a)),b.onCompleted()},function(){b.onNext(Ec()),b.onCompleted()})},a)},Hc.repeat=function(a){return Ic(this,a).concat()},Hc.retry=function(a){return Ic(this,a).catchError()},Hc.retryWhen=function(a){return Ic(this).catchErrorWhen(a)},Hc.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 Ad(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)},Hc.skipLast=function(a){if(0>a)throw new sb;var b=this;return new Ad(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)},Hc.startWith=function(){var a,b=0;arguments.length&&sc(arguments[0])?(a=arguments[0],b=1):a=vc;for(var c=[],d=b,e=arguments.length;e>d;d++)c.push(arguments[d]);return Jc([$c(c,a),this]).concat()},Hc.takeLast=function(a){if(0>a)throw new sb;var b=this;return new Ad(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)},Hc.selectConcat=Hc.concatMap=function(a,b,c){return kb(a)&&kb(b)?this.concatMap(function(c,d){var e=a(c,d);return jb(e)&&(e=td(e)),(Ab(e)||zb(e))&&(e=Yc(e)),e.map(function(a,e){return b(c,a,d,e)})}):kb(a)?K(this,a,c):K(this,function(){return a})};var qd=function(a){function b(b,c,d){this.source=b,this.selector=Cb(c,d,3),a.call(this)}return cc(b,a),b.prototype.internalMap=function(a,c){var d=this;return new b(this.source,function(b,c,e){return a.call(this,d.selector(b,c,e),c,e)},c)},b.prototype.subscribeCore=function(a){return this.source.subscribe(new L(a,this.selector,this))},b}(Qc);L.prototype.onNext=function(a){if(!this.isStopped){var b=o(this.selector).call(this,a,this.i++,this.source);return b===ac?this.observer.onError(b.e):void this.observer.onNext(b)}},L.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.observer.onError(a))},L.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.observer.onCompleted())},L.prototype.dispose=function(){this.isStopped=!0},L.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},Hc.map=Hc.select=function(a,b){var c="function"==typeof a?a:function(){return a};return this instanceof qd?this.internalMap(c,b):new qd(this,c,b)},Hc.pluck=function(){var b=arguments,c=arguments.length;if(0===c)throw new Error("List of properties cannot be empty.");return this.map(function(d){for(var e=d,f=0;c>f;f++){var g=e[b[f]];if("undefined"==typeof g)return a;e=g}return e})},Hc.selectMany=Hc.flatMap=function(a,b,c){return kb(a)&&kb(b)?this.flatMap(function(c,d){var e=a(c,d);return jb(e)&&(e=td(e)),(Ab(e)||zb(e))&&(e=Yc(e)),e.map(function(a,e){return b(c,a,d,e)})},c):kb(a)?M(this,a,c):M(this,function(){return a})},Hc.selectSwitch=Hc.flatMapLatest=Hc.switchMap=function(a,b){return this.select(a,b).switchLatest()},Hc.skip=function(a){if(0>a)throw new sb;var b=this;return new Ad(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)},Hc.skipWhile=function(a,b){var c=this,d=Cb(a,b,3);return new Ad(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)},Hc.take=function(a,b){if(0>a)throw new sb;if(0===a)return Uc(b);var c=this;return new Ad(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)},Hc.takeWhile=function(a,b){var c=this,d=Cb(a,b,3);return new Ad(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)};var rd=function(a){function b(b,c,d){this.source=b,this.predicate=Cb(c,d,3),a.call(this)}return cc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new N(a,this.predicate,this))},b.prototype.internalFilter=function(a,c){var d=this;return new b(this.source,function(b,c,e){return d.predicate(b,c,e)&&a.call(this,b,c,e)},c)},b}(Qc);N.prototype.onNext=function(a){if(!this.isStopped){var b=o(this.predicate).call(this,a,this.i++,this.source);return b===ac?this.observer.onError(b.e):void(b&&this.observer.onNext(a))}},N.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.observer.onError(a))},N.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.observer.onCompleted())},N.prototype.dispose=function(){this.isStopped=!0},N.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},Hc.filter=Hc.where=function(a,b){return this instanceof rd?this.internalFilter(a,b):new rd(this,a,b)},Oc.fromCallback=function(a,b,c){return function(){for(var d=arguments.length,e=new Array(d),f=0;d>f;f++)e[f]=arguments[f];return new Ad(function(d){function f(){for(var a=arguments.length,e=new Array(a),f=0;a>f;f++)e[f]=arguments[f];if(c){try{e=c.apply(b,e)}catch(g){return d.onError(g)}d.onNext(e)}else e.length<=1?d.onNext.apply(d,e):d.onNext(e);d.onCompleted()}e.push(f),a.apply(b,e)}).publishLast().refCount()}},Oc.fromNodeCallback=function(a,b,c){return function(){for(var d=arguments.length,e=new Array(d),f=0;d>f;f++)e[f]=arguments[f];return new Ad(function(d){function f(a){if(a)return void d.onError(a);for(var e=arguments.length,f=[],g=1;e>g;g++)f[g-1]=arguments[g];if(c){try{f=c.apply(b,f)}catch(h){return d.onError(h)}d.onNext(f)}else f.length<=1?d.onNext.apply(d,f):d.onNext(f);d.onCompleted()}e.push(f),a.apply(b,e)}).publishLast().refCount()}},cb.config.useNativeEvents=!1,Oc.fromEvent=function(a,b,c){return a.addListener?sd(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},c):cb.config.useNativeEvents||"function"!=typeof a.on||"function"!=typeof a.off?new Ad(function(d){return P(a,b,function(a){var b=a;if(c)try{b=c(arguments)}catch(e){return d.onError(e)}d.onNext(b)})}).publish().refCount():sd(function(c){a.on(b,c)},function(c){a.off(b,c)},c)};var sd=Oc.fromEventPattern=function(a,b,c){return new Ad(function(d){function e(a){var b=a;if(c)try{b=c(arguments)}catch(e){return d.onError(e)}d.onNext(b)}var f=a(e);return jc(function(){b&&b(e,f)})}).publish().refCount()},td=Oc.fromPromise=function(a){return Sc(function(){var b=new cb.AsyncSubject;return a.then(function(a){b.onNext(a),b.onCompleted()},b.onError.bind(b)),b})};Hc.toPromise=function(a){if(a||(a=cb.config.Promise),!a)throw new tb("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)})})},Oc.startAsync=function(a){var b;try{b=a()}catch(c){return gd(c)}return td(b)},Hc.multicast=function(a,b){var c=this;return"function"==typeof a?new Ad(function(d){var e=c.multicast(a());return new gc(b(e).subscribe(d),e.connect())},c):new ud(c,a)},Hc.publish=function(a){return a&&kb(a)?this.multicast(function(){return new Dd},a):this.multicast(new Dd)},Hc.share=function(){return this.publish().refCount()},Hc.publishLast=function(a){return a&&kb(a)?this.multicast(function(){return new Ed},a):this.multicast(new Ed)},Hc.publishValue=function(a,b){return 2===arguments.length?this.multicast(function(){return new Gd(b)},a):this.multicast(new Gd(a))},Hc.shareValue=function(a){return this.publishValue(a).refCount()},Hc.replay=function(a,b,c,d){return a&&kb(a)?this.multicast(function(){return new Hd(b,c,d)},a):this.multicast(new Hd(b,c,d))},Hc.shareReplay=function(a,b,c){return this.replay(null,a,b,c).refCount()};{var ud=cb.ConnectableObservable=function(a){function b(b,c){var d,e=!1,f=b.asObservable();this.connect=function(){return e||(e=!0,d=new gc(f.subscribe(c),jc(function(){e=!1}))),d},a.call(this,function(a){return c.subscribe(a)})}return cc(b,a),b.prototype.refCount=function(){var a,b=0,c=this;return new Ad(function(d){var e=1===++b,f=c.subscribe(d);return e&&(a=c.connect()),function(){f.dispose(),0===--b&&a.dispose()}})},b}(Oc),vd=Oc.interval=function(a,b){return T(a,a,sc(b)?b:Ac)};Oc.timer=function(b,c,d){var e;return sc(d)||(d=Ac),c!==a&&"number"==typeof c?e=c:sc(c)&&(d=c),b instanceof Date&&e===a?Q(b.getTime(),d):b instanceof Date&&e!==a?(e=c,R(b.getTime(),e,d)):e===a?S(b,d):T(b,e,d)}}Hc.delay=function(a,b){return sc(b)||(b=Ac),a instanceof Date?V(this,a.getTime(),b):U(this,a,b)},Hc.debounce=Hc.throttleWithTimeout=function(a,b){sc(b)||(b=Ac);var c=this;return new Ad(function(d){var e,f=new oc,g=!1,h=0,i=c.subscribe(function(c){g=!0,e=c,h++;var i=h,j=new nc;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 gc(i,f)},this)},Hc.throttle=function(a,b){return this.debounce(a,b)},Hc.timestamp=function(a){return sc(a)||(a=Ac),this.map(function(b){return{value:b,timestamp:a.now()}})},Hc.sample=Hc.throttleLatest=function(a,b){return sc(b)||(b=Ac),"number"==typeof a?W(this,vd(a,b)):W(this,a)},Hc.timeout=function(a,b,c){(null==b||"string"==typeof b)&&(b=gd(new Error(b||"Timeout"))),sc(c)||(c=Ac);var d=this,e=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new Ad(function(f){function g(){var d=h;l.setDisposable(c[e](a,function(){h===d&&(jb(b)&&(b=td(b)),j.setDisposable(b.subscribe(f)))}))}var h=0,i=new nc,j=new oc,k=!1,l=new oc;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 gc(j,l)},d)},Hc.throttleFirst=function(a,b){sc(b)||(b=Ac);var c=+a||0;if(0>=c)throw new RangeError("windowDuration cannot be less or equal zero.");var d=this;return new Ad(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)};var wd=function(a){function b(a){var b=this.source.publish(),c=b.subscribe(a),d=kc,e=this.pauser.distinctUntilChanged().subscribe(function(a){a?d=b.connect():(d.dispose(),d=kc)});return new gc(c,d,e)}function c(c,d){this.source=c,this.controller=new Dd,this.pauser=d&&d.subscribe?this.controller.merge(d):this.controller,a.call(this,b,c)}return cc(c,a),c.prototype.pause=function(){this.controller.onNext(!1)},c.prototype.resume=function(){this.controller.onNext(!0)},c}(Oc);Hc.pausable=function(a){return new wd(this,a)};var xd=function(b){function c(b){var c,d=[],e=X(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 Dd,this.pauser=d&&d.subscribe?this.controller.merge(d):this.controller,b.call(this,c,a)}return cc(d,b),d.prototype.pause=function(){this.controller.onNext(!1)},d.prototype.resume=function(){this.controller.onNext(!0)},d}(Oc);Hc.pausableBuffered=function(a){return new xd(this,a)};var yd=function(a){function b(a){return this.source.subscribe(a)}function c(c,d,e){a.call(this,b,c),this.subject=new zd(d,e),this.source=c.multicast(this.subject).refCount()}return cc(c,a),c.prototype.request=function(a){return this.subject.request(null==a?-1:a)},c}(Oc),zd=function(a){function b(a){return this.subject.subscribe(a)}function c(c,d){null==c&&(c=!0),a.call(this,b),this.subject=new Dd,this.enableQueue=c,this.queue=c?[]:null,this.requestedCount=0,this.requestedDisposable=kc,this.error=null,this.hasFailed=!1,this.hasCompleted=!1,this.scheduler=d||wc}return cc(c,a),dc(c.prototype,Kc,{onCompleted:function(){this.hasCompleted=!0,this.enableQueue&&0!==this.queue.length?this.queue.push(Bc.createOnCompleted()):this.subject.onCompleted()},onError:function(a){this.hasFailed=!0,this.error=a,this.enableQueue&&0!==this.queue.length?this.queue.push(Bc.createOnError(a)):this.subject.onError(a)},onNext:function(a){var b=!1;0===this.requestedCount?this.enableQueue&&this.queue.push(Bc.createOnNext(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.queue.length>0&&"N"!==this.queue[0].kind;){var b=this.queue.shift();b.accept(this.subject),"N"===b.kind?a--:(this.disposeCurrentRequest(),this.queue=[])}return{numberOfItems:a,returnValue:0!==this.queue.length}}return{numberOfItems:a,returnValue:!1}},request:function(a){this.disposeCurrentRequest();var b=this;return this.requestedDisposable=this.scheduler.scheduleWithState(a,function(a,c){var d=b._processRequest(c),e=d.numberOfItems;d.returnValue||(b.requestedCount=e,b.requestedDisposable=jc(function(){b.requestedCount=0}))}),this.requestedDisposable},disposeCurrentRequest:function(){this.requestedDisposable.dispose(),this.requestedDisposable=kc}}),c}(Oc);Hc.controlled=function(a,b){return a&&sc(a)&&(b=a,a=!0),null==a&&(a=!0),new yd(this,a,b)},Hc.pipe=function(a){function b(){c.resume()}var c=this.pausableBuffered();return a.addListener("drain",b),c.subscribe(function(b){!a.write(String(b))&&c.pause()},function(b){a.emit("error",b)},function(){!a._isStdio&&a.end(),a.removeListener("drain",b)}),c.resume(),a},Hc.transduce=function(a){function b(a){return{"@@transducer/init":function(){return a},"@@transducer/step":function(a,b){return a.onNext(b)},"@@transducer/result":function(a){return a.onCompleted()}}}var c=this;return new Ad(function(d){var e=a(b(d));return c.subscribe(function(a){try{e["@@transducer/step"](d,a)}catch(b){d.onError(b)}},function(a){d.onError(a)},function(){e["@@transducer/result"](d)})},c)};var Ad=cb.AnonymousObservable=function(a){function b(a){return a&&kb(a.dispose)?a:kb(a)?jc(a):kc}function c(a,c){var d=c[0],e=c[1],f=o(e)(d);return f!==ac||d.fail(ac.e)?void d.setDisposable(b(f)):p(ac.e)}function d(b,d){function e(a){var d=new Bd(a),e=[d,b];return wc.scheduleRequired()?wc.scheduleWithState(e,c):c(null,e),d}this.source=d,a.call(this,e)}return cc(d,a),d}(Oc),Bd=function(a){function b(b){a.call(this),this.observer=b,this.m=new nc}cc(b,a);var c=b.prototype;return c.next=function(a){var b=o(this.observer.onNext).call(this.observer,a);b===ac&&(this.dispose(),p(b.e))},c.error=function(a){var b=o(this.observer.onError).call(this.observer,a);this.dispose(),b===ac&&p(b.e)},c.completed=function(){var a=o(this.observer.onCompleted).call(this.observer);this.dispose(),a===ac&&p(a.e)},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}(Mc),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=cb.Subject=function(a){function c(a){return mc(this),this.isStopped?this.hasError?(a.onError(this.error),kc):(a.onCompleted(),kc):(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 cc(d,a),dc(d.prototype,Kc.prototype,{hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(mc(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=b(this.observers),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(mc(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(mc(this),!this.isStopped)for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onNext(a)},dispose:function(){this.isDisposed=!0,this.observers=null}}),d.create=function(a,b){return new Fd(a,b)},d}(Oc),Ed=cb.AsyncSubject=function(a){function c(a){return mc(this),this.isStopped?(this.hasError?a.onError(this.error):this.hasValue?(a.onNext(this.value),a.onCompleted()):a.onCompleted(),kc):(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 cc(d,a),dc(d.prototype,Kc,{hasObservers:function(){return mc(this),this.observers.length>0},onCompleted:function(){var a,c;if(mc(this),!this.isStopped){this.isStopped=!0;var d=b(this.observers),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(mc(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){mc(this),this.isStopped||(this.value=a,this.hasValue=!0)},dispose:function(){this.isDisposed=!0,this.observers=null,this.exception=null,this.value=null}}),d}(Oc),Fd=cb.AnonymousSubject=function(a){function b(a){return this.observable.subscribe(a)}function c(c,d){this.observer=c,this.observable=d,a.call(this,b)}return cc(c,a),dc(c.prototype,Kc.prototype,{onCompleted:function(){this.observer.onCompleted()},onError:function(a){this.observer.onError(a)},onNext:function(a){this.observer.onNext(a)}}),c}(Oc),Gd=cb.BehaviorSubject=function(a){function c(a){return mc(this),this.isStopped?(this.hasError?a.onError(this.error):a.onCompleted(),kc):(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 cc(d,a),dc(d.prototype,Kc,{getValue:function(){if(mc(this),this.hasError)throw this.error;return this.value},hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(mc(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=b(this.observers),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(mc(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(mc(this),!this.isStopped){this.value=a;for(var c=0,d=b(this.observers),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}(Oc),Hd=cb.ReplaySubject=function(a){function c(a,b){return jc(function(){b.dispose(),!a.isDisposed&&a.observers.splice(a.observers.indexOf(b),1)})}function d(a){var b=new Pc(this.scheduler,a),d=c(this,b);mc(this),this._trim(this.scheduler.now()),this.observers.push(b);for(var e=0,f=this.q.length;f>e;e++)b.onNext(this.q[e].value);return this.hasError?b.onError(this.error):this.isStopped&&b.onCompleted(),b.ensureActive(),d}function e(b,c,e){this.bufferSize=null==b?f:b,this.windowSize=null==c?f:c,this.scheduler=e||wc,this.q=[],this.observers=[],this.isStopped=!1,this.isDisposed=!1,this.hasError=!1,this.error=null,a.call(this,d)
4
- }var f=Math.pow(2,53)-1;return cc(e,a),dc(e.prototype,Kc.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(mc(this),!this.isStopped){var c=this.scheduler.now();this.q.push({interval:c,value:a}),this._trim(c);for(var d=0,e=b(this.observers),f=e.length;f>d;d++){var g=e[d];g.onNext(a),g.ensureActive()}}},onError:function(a){if(mc(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;var c=this.scheduler.now();this._trim(c);for(var d=0,e=b(this.observers),f=e.length;f>d;d++){var g=e[d];g.onError(a),g.ensureActive()}this.observers.length=0}},onCompleted:function(){if(mc(this),!this.isStopped){this.isStopped=!0;var a=this.scheduler.now();this._trim(a);for(var c=0,d=b(this.observers),e=d.length;e>c;c++){var f=d[c];f.onCompleted(),f.ensureActive()}this.observers.length=0}},dispose:function(){this.isDisposed=!0,this.observers=null}}),e}(Oc);cb.Pauser=function(a){function b(){a.call(this)}return cc(b,a),b.prototype.pause=function(){this.onNext(!1)},b.prototype.resume=function(){this.onNext(!0)},b}(Dd),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Z.Rx=cb,define(function(){return cb})):$&&_?ab?(_.exports=cb).Rx=cb:$.Rx=cb:Z.Rx=cb;var Id=g()}).call(this);
2
+ (function(a){function b(a){for(var b=a.length,c=new Array(b),d=0;b>d;d++)c[d]=a[d];return c}function c(){try{return Z.apply(this,arguments)}catch(a){return pb.e=a,pb}}function d(a){if(!ob(a))throw new TypeError("fn must be a function");return Z=a,c}function e(a){throw a}function f(a,b){if(qb&&b.stack&&"object"==typeof a&&null!==a&&a.stack&&-1===a.stack.indexOf(ub)){for(var c=[],d=b;d;d=d.source)d.stack&&c.unshift(d.stack);c.unshift(a.stack);var e=c.join("\n"+ub+"\n");a.stack=g(e)}}function g(a){for(var b=a.split("\n"),c=[],d=0,e=b.length;e>d;d++){var f=b[d];h(f)||i(f)||!f||c.push(f)}return c.join("\n")}function h(a){var b=k(a);if(!b)return!1;var c=b[0],d=b[1];return c===sb&&d>=tb&&$d>=d}function i(a){return-1!==a.indexOf("(module.js:")||-1!==a.indexOf("(node.js:")}function j(){if(qb)try{throw new Error}catch(a){var b=a.stack.split("\n"),c=b[0].indexOf("@")>0?b[1]:b[2],d=k(c);if(!d)return;return sb=d[0],d[1]}}function k(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 l(a){var b=[];if(!cc(a))return b;bc.nonEnumArgs&&a.length&&dc(a)&&(a=fc.call(a));var c=bc.enumPrototypes&&"function"==typeof a,d=bc.enumErrorProps&&(a===Xb||a instanceof Error);for(var e in a)c&&"prototype"==e||d&&("message"==e||"name"==e)||b.push(e);if(bc.nonEnumShadows&&a!==Yb){var f=a.constructor,g=-1,h=Jb;if(a===(f&&f.prototype))var i=a===Zb?Tb:a===Xb?Ob:Ub.call(a),j=ac[i];for(;++g<h;)e=Ib[g],j&&j[e]||!Vb.call(a,e)||b.push(e)}return b}function m(a,b,c){for(var d=-1,e=c(a),f=e.length;++d<f;){var g=e[d];if(b(a[g],g,a)===!1)break}return a}function n(a,b){return m(a,b,l)}function o(a){return"function"!=typeof a.toString&&"string"==typeof(a+"")}function p(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;var e=typeof a,f=typeof b;if(a===a&&(null==a||null==b||"function"!=e&&"object"!=e&&"function"!=f&&"object"!=f))return!1;var g=Ub.call(a),h=Ub.call(b);if(g==Kb&&(g=Rb),h==Kb&&(h=Rb),g!=h)return!1;switch(g){case Mb:case Nb:return+a==+b;case Qb:return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case Sb:case Tb:return a==String(b)}var i=g==Lb;if(!i){if(g!=Rb||!bc.nodeClass&&(o(a)||o(b)))return!1;var j=!bc.argsObject&&dc(a)?Object:a.constructor,k=!bc.argsObject&&dc(b)?Object:b.constructor;if(!(j==k||Vb.call(a,"constructor")&&Vb.call(b,"constructor")||ob(j)&&j instanceof j&&ob(k)&&k instanceof k||!("constructor"in a&&"constructor"in b)))return!1}c||(c=[]),d||(d=[]);for(var l=c.length;l--;)if(c[l]==a)return d[l]==b;var m=0,q=!0;if(c.push(a),d.push(b),i){if(l=a.length,m=b.length,q=m==l)for(;m--;){var r=b[m];if(!(q=p(a[m],r,c,d)))break}}else n(b,function(b,e,f){return Vb.call(f,e)?(m++,q=Vb.call(a,e)&&p(a[e],b,c,d)):void 0}),q&&n(a,function(a,b,c){return Vb.call(c,b)?q=--m>-1:void 0});return c.pop(),d.pop(),q}function q(a,b){for(var c=new Array(a),d=0;a>d;d++)c[d]=b();return c}function r(a){this._s=a}function s(a){this._s=a,this._l=a.length,this._i=0}function t(a){this._a=a}function u(a){this._a=a,this._l=y(a),this._i=0}function v(a){return"number"==typeof a&&fb.isFinite(a)}function w(b){var c,d=b[Cb];if(!d&&"string"==typeof b)return c=new r(b),c[Cb]();if(!d&&b.length!==a)return c=new t(b),c[Cb]();if(!d)throw new TypeError("Object is not iterable");return b[Cb]()}function x(a){var b=+a;return 0===b?b:isNaN(b)?b:0>b?-1:1}function y(a){var b=+a.length;return isNaN(b)?0:0!==b&&v(b)?(b=x(b)*Math.floor(Math.abs(b)),0>=b?0:b>cd?cd:b):b}function z(a,b){this.observer=a,this.parent=b}function A(a,b){return uc(a)||(a=yc),new ed(b,a)}function B(a,b){this.observer=a,this.parent=b}function C(a,b){this.observer=a,this.parent=b}function D(a,b){return new Sd(function(c){var d=new pc,e=new qc;return e.setDisposable(d),d.setDisposable(a.subscribe(new pd(c,e,b))),e},a)}function E(){return!1}function F(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return b}function E(){return!1}function E(){return!1}function G(){return[]}function F(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return b}function E(){return!1}function G(){return[]}function F(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return b}function H(a){return function(b){return a.subscribe(b)}}function I(a,b){this.o=a,this.accumulator=b.accumulator,this.hasSeed=b.hasSeed,this.seed=b.seed,this.hasAccumulation=!1,this.accumulation=null,this.hasValue=!1,this.isStopped=!1}function J(b,c){return function(d){for(var e=d,f=0;c>f;f++){var g=e[b[f]];if("undefined"==typeof g)return a;e=g}return e}}function K(a,b,c,d){var e=new Wd;return d.push(L(e,b,c)),a.apply(b,d),e.asObservable()}function L(a,b,c){return function(){for(var e=arguments.length,f=new Array(e),g=0;e>g;g++)f[g]=arguments[g];if(ob(c)){if(f=d(c).apply(b,f),f===pb)return a.onError(f.e);a.onNext(f)}else a.onNext(f.length<=1?f[0]:f);a.onCompleted()}}function M(a,b,c,d){var e=new Wd;return d.push(N(e,b,c)),a.apply(b,d),e.asObservable()}function N(a,b,c){return function(){var e=arguments[0];if(e)return a.onError(e);for(var f=arguments.length,g=[],h=1;f>h;h++)g[h-1]=arguments[h];if(ob(c)){var g=d(c).apply(b,g);if(g===pb)return a.onError(g.e);a.onNext(g)}else a.onNext(g.length<=1?g[0]:g);a.onCompleted()}}function O(a,b,c){this._e=a,this._n=b,this._fn=c,this._e.addEventListener(this._n,this._fn,!1),this.isDisposed=!1}function P(a,b,c){var d=new ic,e=Object.prototype.toString.call(a);if("[object NodeList]"===e||"[object HTMLCollection]"===e)for(var f=0,g=a.length;g>f;f++)d.add(P(a.item(f),b,c));else a&&d.add(new O(a,b,c));return d}function Q(a,b){return function(){var c=arguments[0];return ob(b)&&(c=d(b).apply(null,arguments),c===pb)?a.onError(c.e):void a.onNext(c)}}function R(a,b){return new Sd(function(c){return b.scheduleWithAbsolute(a,function(){c.onNext(0),c.onCompleted()})})}function S(a,b,c){return new Sd(function(d){var e=a,f=tc(b);return c.scheduleRecursiveWithAbsoluteAndState(0,e,function(a,b){if(f>0){var g=c.now();e+=f,g>=e&&(e=g+f)}d.onNext(a),b(a+1,e)})})}function T(a,b){return new Sd(function(c){return b.scheduleWithRelative(tc(a),function(){c.onNext(0),c.onCompleted()})})}function U(a,b,c){return a===b?new Sd(function(a){return c.schedulePeriodicWithState(0,b,function(b){return a.onNext(b),b+1})}):Yc(function(){return S(c.now()+a,b,c)})}function V(a,b,c){return new Sd(function(d){var e,f=!1,g=new qc,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 pc,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 ic(e,g)},a)}function W(a,b,c){return Yc(function(){return V(a,b-c.now(),c)})}function X(a,b){return new Sd(function(c){function d(){g&&(g=!1,c.onNext(e)),f&&c.onCompleted()}var e,f=!1,g=!1,h=new pc;return h.setDisposable(a.subscribe(function(a){g=!0,e=a},function(a){c.onError(a)},function(){f=!0,h.dispose()})),new ic(h,b.subscribe(d,function(a){c.onError(a)},d))},a)}function Y(a,b,c){return new Sd(function(e){function f(a,b){if(k[b]=a,h[b]=!0,i||(i=h.every(ib))){if(g)return e.onError(g);var f=d(c).apply(null,k);if(f===pb)return e.onError(f.e);e.onNext(f)}j&&k[1]&&e.onCompleted()}var g,h=[!1,!1],i=!1,j=!1,k=new Array(2);return new ic(a.subscribe(function(a){f(a,0)},function(a){k[1]?e.onError(a):g=a},function(){j=!0,k[1]&&e.onCompleted()}),b.subscribe(function(a){f(a,1)},function(a){e.onError(a)},function(){j=!0,f(!0,1)}))},a)}var Z,$={"function":!0,object:!0},_=$[typeof exports]&&exports&&!exports.nodeType&&exports,ab=$[typeof self]&&self.Object&&self,bb=$[typeof window]&&window&&window.Object&&window,cb=$[typeof module]&&module&&!module.nodeType&&module,db=cb&&cb.exports===_&&_,eb=_&&cb&&"object"==typeof global&&global&&global.Object&&global,fb=fb=eb||bb!==(this&&this.window)&&bb||ab||this,gb={internals:{},config:{Promise:fb.Promise},helpers:{}},hb=gb.helpers.noop=function(){},ib=gb.helpers.identity=function(a){return a},jb=gb.helpers.defaultNow=Date.now,kb=gb.helpers.defaultComparer=function(a,b){return ec(a,b)},lb=gb.helpers.defaultSubComparer=function(a,b){return a>b?1:b>a?-1:0},mb=(gb.helpers.defaultKeySerializer=function(a){return a.toString()},gb.helpers.defaultError=function(a){throw a}),nb=gb.helpers.isPromise=function(a){return!!a&&"function"!=typeof a.subscribe&&"function"==typeof a.then},ob=gb.helpers.isFunction=function(){var a=function(a){return"function"==typeof a||!1};return a(/x/)&&(a=function(a){return"function"==typeof a&&"[object Function]"==Ub.call(a)}),a}(),pb={e:{}};gb.config.longStackSupport=!1;var qb=!1,rb=d(function(){throw new Error})();qb=!!rb.e&&!!rb.e.stack;var sb,tb=j(),ub="From previous event:",vb=gb.EmptyError=function(){this.message="Sequence contains no elements.",this.name="EmptyError",Error.call(this)};vb.prototype=Error.prototype;var wb=gb.ObjectDisposedError=function(){this.message="Object has been disposed",this.name="ObjectDisposedError",Error.call(this)};wb.prototype=Error.prototype;var xb=gb.ArgumentOutOfRangeError=function(){this.message="Argument out of range",this.name="ArgumentOutOfRangeError",Error.call(this)};xb.prototype=Error.prototype;var yb=gb.NotSupportedError=function(a){this.message=a||"This operation is not supported",this.name="NotSupportedError",Error.call(this)};yb.prototype=Error.prototype;var zb=gb.NotImplementedError=function(a){this.message=a||"This operation is not implemented",this.name="NotImplementedError",Error.call(this)};zb.prototype=Error.prototype;var Ab=gb.helpers.notImplemented=function(){throw new zb},Bb=gb.helpers.notSupported=function(){throw new yb},Cb="function"==typeof Symbol&&Symbol.iterator||"_es6shim_iterator_";fb.Set&&"function"==typeof(new fb.Set)["@@iterator"]&&(Cb="@@iterator");var Db=gb.doneEnumerator={done:!0,value:a},Eb=gb.helpers.isIterable=function(b){return b[Cb]!==a},Fb=gb.helpers.isArrayLike=function(b){return b&&b.length!==a};gb.helpers.iterator=Cb;var Gb,Hb=gb.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)}},Ib=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Jb=Ib.length,Kb="[object Arguments]",Lb="[object Array]",Mb="[object Boolean]",Nb="[object Date]",Ob="[object Error]",Pb="[object Function]",Qb="[object Number]",Rb="[object Object]",Sb="[object RegExp]",Tb="[object String]",Ub=Object.prototype.toString,Vb=Object.prototype.hasOwnProperty,Wb=Ub.call(arguments)==Kb,Xb=Error.prototype,Yb=Object.prototype,Zb=String.prototype,$b=Yb.propertyIsEnumerable;try{Gb=!(Ub.call(document)==Rb&&!({toString:0}+""))}catch(_b){Gb=!0}var ac={};ac[Lb]=ac[Nb]=ac[Qb]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},ac[Mb]=ac[Tb]={constructor:!0,toString:!0,valueOf:!0},ac[Ob]=ac[Pb]=ac[Sb]={constructor:!0,toString:!0},ac[Rb]={constructor:!0};var bc={};!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);bc.enumErrorProps=$b.call(Xb,"message")||$b.call(Xb,"name"),bc.enumPrototypes=$b.call(a,"prototype"),bc.nonEnumArgs=0!=c,bc.nonEnumShadows=!/valueOf/.test(b)}(1);var cc=gb.internals.isObject=function(a){var b=typeof a;return a&&("function"==b||"object"==b)||!1},dc=function(a){return a&&"object"==typeof a?Ub.call(a)==Kb:!1};Wb||(dc=function(a){return a&&"object"==typeof a?Vb.call(a,"callee"):!1});var ec=gb.internals.isEqual=function(a,b){return p(a,b,[],[])},fc=({}.hasOwnProperty,Array.prototype.slice),gc=gb.internals.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c},hc=gb.internals.addProperties=function(a){for(var b=[],c=1,d=arguments.length;d>c;c++)b.push(arguments[c]);for(var e=0,f=b.length;f>e;e++){var g=b[e];for(var h in g)a[h]=g[h]}},ic=(gb.internals.addRef=function(a,b){return new Sd(function(c){return new ic(b.getDisposable(),a.subscribe(c))})},gb.CompositeDisposable=function(){var a,b,c=[];if(Array.isArray(arguments[0]))c=arguments[0],b=c.length;else for(b=arguments.length,c=new Array(b),a=0;b>a;a++)c[a]=arguments[a];for(a=0;b>a;a++)if(!nc(c[a]))throw new TypeError("Not a disposable");this.disposables=c,this.isDisposed=!1,this.length=c.length}),jc=ic.prototype;jc.add=function(a){this.isDisposed?a.dispose():(this.disposables.push(a),this.length++)},jc.remove=function(a){var b=!1;if(!this.isDisposed){var c=this.disposables.indexOf(a);-1!==c&&(b=!0,this.disposables.splice(c,1),this.length--,a.dispose())}return b},jc.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;for(var a=this.disposables.length,b=new Array(a),c=0;a>c;c++)b[c]=this.disposables[c];for(this.disposables=[],this.length=0,c=0;a>c;c++)b[c].dispose()}};var kc=gb.Disposable=function(a){this.isDisposed=!1,this.action=a||hb};kc.prototype.dispose=function(){this.isDisposed||(this.action(),this.isDisposed=!0)};var lc=kc.create=function(a){return new kc(a)},mc=kc.empty={dispose:hb},nc=kc.isDisposable=function(a){return a&&ob(a.dispose)},oc=kc.checkDisposed=function(a){if(a.isDisposed)throw new wb},pc=gb.SingleAssignmentDisposable=function(){this.isDisposed=!1,this.current=null};pc.prototype.getDisposable=function(){return this.current},pc.prototype.setDisposable=function(a){if(this.current)throw new Error("Disposable has already been assigned");var b=this.isDisposed;!b&&(this.current=a),b&&a&&a.dispose()},pc.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var qc=gb.SerialDisposable=function(){this.isDisposed=!1,this.current=null};qc.prototype.getDisposable=function(){return this.current},qc.prototype.setDisposable=function(a){var b=this.isDisposed;if(!b){var c=this.current;this.current=a}c&&c.dispose(),b&&a&&a.dispose()},qc.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var rc=(gb.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?mc:new a(this)},b}(),gb.internals.ScheduledItem=function(a,b,c,d,e){this.scheduler=a,this.state=b,this.action=c,this.dueTime=d,this.comparer=e||lb,this.disposable=new pc});rc.prototype.invoke=function(){this.disposable.setDisposable(this.invokeCore())},rc.prototype.compareTo=function(a){return this.comparer(this.dueTime,a.dueTime)},rc.prototype.isCancelled=function(){return this.disposable.isDisposed},rc.prototype.invokeCore=function(){return this.action(this.scheduler,this.state)};var sc=gb.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(),mc}a.isScheduler=function(b){return b instanceof a};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=jb,a.normalize=function(a){return 0>a&&(a=0),a},a}(),tc=sc.normalize,uc=sc.isScheduler;!function(a){function b(a,b){function c(b){function d(a,b){return g?f.remove(i):h=!0,e(b,c),mc}var g=!1,h=!1,i=a.scheduleWithState(b,d);h||(f.add(i),g=!0)}var d=b[0],e=b[1],f=new ic;return e(d,c),f}function c(a,b,c){function d(b,e){function h(a,b){return i?g.remove(k):j=!0,f(b,d),mc}var i=!1,j=!1,k=a[c](b,e,h);j||(g.add(k),i=!0)}var e=b[0],f=b[1],g=new ic;return f(e,d),g}function d(a,b){return c(a,b,"scheduleWithRelativeAndState")}function e(a,b){return c(a,b,"scheduleWithAbsoluteAndState")}function f(a,b){a(function(c){b(a,c)})}a.scheduleRecursive=function(a){return this.scheduleRecursiveWithState(a,f)},a.scheduleRecursiveWithState=function(a,c){return this.scheduleWithState([a,c],b)},a.scheduleRecursiveWithRelative=function(a,b){return this.scheduleRecursiveWithRelativeAndState(b,a,f)},a.scheduleRecursiveWithRelativeAndState=function(a,b,c){return this._scheduleRelative([a,c],b,d)},a.scheduleRecursiveWithAbsolute=function(a,b){return this.scheduleRecursiveWithAbsoluteAndState(b,a,f)},a.scheduleRecursiveWithAbsoluteAndState=function(a,b,c){return this._scheduleAbsolute([a,c],b,e)}}(sc.prototype),function(){sc.prototype.schedulePeriodic=function(a,b){return this.schedulePeriodicWithState(null,a,b)},sc.prototype.schedulePeriodicWithState=function(a,b,c){if("undefined"==typeof fb.setInterval)throw new yb;b=tc(b);var d=a,e=fb.setInterval(function(){d=c(d)},b);return lc(function(){fb.clearInterval(e)})}}(sc.prototype);var vc,wc,xc=sc.immediate=function(){function a(a,b){return b(this,a)}return new sc(jb,a,Bb,Bb)}(),yc=sc.currentThread=function(){function a(){for(;c.length>0;){var a=c.shift();!a.isCancelled()&&a.invoke()}}function b(b,f){var g=new rc(this,b,f,this.now());if(c)c.push(g);else{c=[g];var h=d(a)();if(c=null,h===pb)return e(h.e)}return g.disposable}var c,f=new sc(jb,b,Bb,Bb);return f.scheduleRequired=function(){return!c},f}(),zc=(gb.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 pc;return this._cancel=b,b.setDisposable(this._scheduler.scheduleRecursiveWithRelativeAndState(0,this._period,a.bind(this))),b},b}(),function(){var a,b=hb;if(fb.setTimeout)a=fb.setTimeout,b=fb.clearTimeout;else{if(!fb.WScript)throw new yb;a=function(a,b){fb.WScript.Sleep(b),a()}}return{setTimeout:a,clearTimeout:b}}()),Ac=zc.setTimeout,Bc=zc.clearTimeout;!function(){function a(b){if(h)Ac(function(){a(b)},0);else{var c=g[b];if(c){h=!0;var f=d(c)();if(wc(b),h=!1,f===pb)return e(f.e)}}}function b(){if(!fb.postMessage||fb.importScripts)return!1;var a=!1,b=fb.onmessage;return fb.onmessage=function(){a=!0},fb.postMessage("","*"),fb.onmessage=b,a}function c(b){"string"==typeof b.data&&b.data.substring(0,k.length)===k&&a(b.data.substring(k.length))}var f=1,g={},h=!1;wc=function(a){delete g[a]};var i=RegExp("^"+String(Ub).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),j="function"==typeof(j=eb&&db&&eb.setImmediate)&&!i.test(j)&&j;if(ob(j))vc=function(b){var c=f++;return g[c]=b,j(function(){a(c)}),c};else if("undefined"!=typeof process&&"[object process]"==={}.toString.call(process))vc=function(b){var c=f++;return g[c]=b,process.nextTick(function(){a(c)}),c};else if(b()){var k="ms.rx.schedule"+Math.random();fb.addEventListener?fb.addEventListener("message",c,!1):fb.attachEvent?fb.attachEvent("onmessage",c):fb.onmessage=c,vc=function(a){var b=f++;return g[b]=a,fb.postMessage(k+currentId,"*"),b}}else if(fb.MessageChannel){var l=new fb.MessageChannel;l.port1.onmessage=function(b){a(b.data)},vc=function(a){var b=f++;return g[b]=a,l.port2.postMessage(b),b}}else vc="document"in fb&&"onreadystatechange"in fb.document.createElement("script")?function(b){var c=fb.document.createElement("script"),d=f++;return g[d]=b,c.onreadystatechange=function(){a(d),c.onreadystatechange=null,c.parentNode.removeChild(c),c=null},fb.document.documentElement.appendChild(c),d}:function(b){var c=f++;return g[c]=b,Ac(function(){a(c)},0),c}}();var Cc,Dc=sc.timeout=sc["default"]=function(){function a(a,b){var c=this,d=new pc,e=vc(function(){!d.isDisposed&&d.setDisposable(b(c,a))});return new ic(d,lc(function(){wc(e)}))}function b(a,b,c){var d=this,e=sc.normalize(b),f=new pc;if(0===e)return d.scheduleWithState(a,c);var g=Ac(function(){!f.isDisposed&&f.setDisposable(c(d,a))},e);return new ic(f,lc(function(){Bc(g)}))}function c(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}return new sc(jb,a,b,c)}(),Ec=gb.Notification=function(){function a(a,b,c,d,e,f){this.kind=a,this.value=b,this.exception=c,this._accept=d,this._acceptObservable=e,this.toString=f}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 uc(a)||(a=xc),new Sd(function(c){return a.scheduleWithState(b,function(a,b){b._acceptObservable(c),"N"===b.kind&&c.onCompleted()})})},a}(),Fc=Ec.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){return new Ec("N",d,null,a,b,c)}}(),Gc=Ec.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){return new Ec("E",null,d,a,b,c)}}(),Hc=Ec.createOnCompleted=function(){function a(a,b,c){return c()}function b(a){return a.onCompleted()}function c(){return"OnCompleted()"}return function(){return new Ec("C",null,null,a,b,c)}}(),Ic=gb.Observer=function(){},Jc=Ic.create=function(a,b,c){return a||(a=hb),b||(b=mb),c||(c=hb),new Lc(a,b,c)},Kc=gb.internals.AbstractObserver=function(a){function b(){this.isStopped=!1}return gc(b,a),b.prototype.next=Ab,b.prototype.error=Ab,b.prototype.completed=Ab,b.prototype.onNext=function(a){!this.isStopped&&this.next(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.error(a))},b.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.completed())},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.error(a),!0)},b}(Ic),Lc=gb.AnonymousObserver=function(a){function b(b,c,d){a.call(this),this._onNext=b,this._onError=c,this._onCompleted=d}return gc(b,a),b.prototype.next=function(a){this._onNext(a)},b.prototype.error=function(a){this._onError(a)},b.prototype.completed=function(){this._onCompleted()},b}(Kc),Mc=gb.Observable=function(){function a(a,b){return function(c){var d=c.onError;return c.onError=function(b){f(b,a),d.call(c,b)},b.call(a,c)}}function b(b){if(gb.config.longStackSupport&&qb){var c=d(e)(new Error).e;this.stack=c.stack.substring(c.stack.indexOf("\n")+1),this._subscribe=a(this,b)}else this._subscribe=b}return Cc=b.prototype,b.isObservable=function(a){return a&&ob(a.subscribe)},Cc.subscribe=Cc.forEach=function(a,b,c){return this._subscribe("object"==typeof a?a:Jc(a,b,c))},Cc.subscribeOnNext=function(a,b){return this._subscribe(Jc("undefined"!=typeof b?function(c){a.call(b,c)}:a))},Cc.subscribeOnError=function(a,b){return this._subscribe(Jc(null,"undefined"!=typeof b?function(c){a.call(b,c)}:a))},Cc.subscribeOnCompleted=function(a,b){return this._subscribe(Jc(null,null,"undefined"!=typeof b?function(){a.call(b)}:a))},b}(),Nc=gb.internals.ScheduledObserver=function(a){function b(b,c){a.call(this),this.scheduler=b,this.observer=c,this.isAcquired=!1,this.hasFaulted=!1,this.queue=[],this.disposable=new qc}return gc(b,a),b.prototype.next=function(a){var b=this;this.queue.push(function(){b.observer.onNext(a)})},b.prototype.error=function(a){var b=this;this.queue.push(function(){b.observer.onError(a)})},b.prototype.completed=function(){var a=this;this.queue.push(function(){a.observer.onCompleted()})},b.prototype.ensureActive=function(){var a=!1;!this.hasFaulted&&this.queue.length>0&&(a=!this.isAcquired,this.isAcquired=!0),a&&this.disposable.setDisposable(this.scheduler.scheduleRecursiveWithState(this,function(a,b){var c;if(!(a.queue.length>0))return void(a.isAcquired=!1);c=a.queue.shift();var f=d(c)();return f===pb?(a.queue=[],a.hasFaulted=!0,e(f.e)):void b(a)}))},b.prototype.dispose=function(){a.prototype.dispose.call(this),this.disposable.dispose()},b}(Kc),Oc=gb.ObservableBase=function(a){function b(a){return a&&ob(a.dispose)?a:ob(a)?lc(a):mc}function c(a,c){var f=c[0],g=c[1],h=d(g.subscribeCore).call(g,f);return h!==pb||f.fail(pb.e)?void f.setDisposable(b(h)):e(pb.e)}function f(a){var b=new Td(a),d=[b,this];return yc.scheduleRequired()?yc.scheduleWithState(d,c):c(null,d),b}function g(){a.call(this,f)}return gc(g,a),g.prototype.subscribeCore=Ab,g}(Mc),Pc=function(a){function b(b,c,d,e){this.resultSelector=gb.helpers.isFunction(d)?d:null,this.selector=gb.internals.bindCallback(gb.helpers.isFunction(c)?c:function(){return c},e,3),this.source=b,a.call(this)}function c(a,b,c,d){this.i=0,this.selector=b,this.resultSelector=c,this.source=d,this.isStopped=!1,this.o=a}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a,this.selector,this.resultSelector,this))},c.prototype._wrapResult=function(a,b,c){return this.resultSelector?a.map(function(a,d){return this.resultSelector(b,a,c,d)},this):a},c.prototype.onNext=function(a){if(!this.isStopped){var b=this.i++,c=d(this.selector)(a,b,this.source);if(c===pb)return this.o.onError(c.e);gb.helpers.isPromise(c)&&(c=gb.Observable.fromPromise(c)),(gb.helpers.isArrayLike(c)||gb.helpers.isIterable(c))&&(c=gb.Observable.from(c)),this.o.onNext(this._wrapResult(c,a,b))}},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},b}(Oc),Qc=gb.internals.Enumerable=function(){},Rc=function(a){function b(b){this.sources=b,a.call(this)}function c(a,b,c){this.o=a,this.s=b,this.e=c,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){var b,e=new qc,f=xc.scheduleRecursiveWithState(this.sources[Cb](),function(f,g){if(!b){var h=d(f.next).call(f);if(h===pb)return a.onError(h.e);if(h.done)return a.onCompleted();var i=h.value;nb(i)&&(i=Ld(i));var j=new pc;e.setDisposable(j),j.setDisposable(i.subscribe(new c(a,g,f)))}});return new ic(e,f,lc(function(){b=!0}))},c.prototype.onNext=function(a){this.isStopped||this.o.onNext(a)},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.s(this.e))},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Qc.prototype.concat=function(){return new Rc(this)};var Sc=function(a){function b(b){this.sources=b,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b,c=this.sources[Cb](),e=new qc,f=xc.scheduleRecursiveWithState(null,function(f,g){if(!b){var h=d(c.next).call(c);if(h===pb)return a.onError(h.e);if(h.done)return null!==f?a.onError(f):a.onCompleted();var i=h.value;nb(i)&&(i=Ld(i));var j=new pc;e.setDisposable(j),j.setDisposable(i.subscribe(function(b){a.onNext(b)},g,function(){a.onCompleted()}))}});return new ic(e,f,lc(function(){b=!0}))},b}(Oc);Qc.prototype.catchError=function(){return new Sc(this)},Qc.prototype.catchErrorWhen=function(a){var b=this;return new Sd(function(c){var e,f,g=new Vd,h=new Vd,i=a(g),j=i.subscribe(h),k=b[Cb](),l=new qc,m=xc.scheduleRecursive(function(a){if(!e){var b=d(k.next).call(k);if(b===pb)return c.onError(b.e);if(b.done)return void(f?c.onError(f):c.onCompleted());var i=b.value;nb(i)&&(i=Ld(i));var j=new pc,m=new pc;l.setDisposable(new ic(m,j)),j.setDisposable(i.subscribe(function(a){c.onNext(a)},function(b){m.setDisposable(h.subscribe(a,function(a){c.onError(a)},function(){c.onCompleted()})),g.onNext(b)},function(){c.onCompleted()}))}});return new ic(j,l,m,lc(function(){e=!0}))})};var Tc=function(a){function b(a,b){this.v=a,this.c=null==b?-1:b}function c(a){this.v=a.v,this.l=a.c}return gc(b,a),b.prototype[Cb]=function(){return new c(this)},c.prototype.next=function(){return 0===this.l?Db:(this.l>0&&this.l--,{done:!1,value:this.v})},b}(Qc),Uc=Qc.repeat=function(a,b){return new Tc(a,b)},Vc=function(a){function b(a,b,c){this.s=a,this.fn=b?Hb(b,c,3):null}function c(a){this.i=-1,this.s=a.s,this.l=this.s.length,this.fn=a.fn}return gc(b,a),b.prototype[Cb]=function(){return new c(this)},c.prototype.next=function(){return++this.i<this.l?{done:!1,value:this.fn?this.fn(this.s[this.i],this.i,this.s):this.s[this.i]}:Db},b}(Qc),Wc=Qc.of=function(a,b,c){return new Vc(a,b,c)},Xc=function(a){function b(b){this.source=b,a.call(this)}function c(a){this.o=a,this.a=[],this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a))},c.prototype.onNext=function(a){this.isStopped||this.a.push(a)},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onNext(this.a),this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Cc.toArray=function(){return new Xc(this)},Mc.create=function(a,b){return new Sd(a,b)};var Yc=Mc.defer=function(a){return new Sd(function(b){var c;try{c=a()}catch(d){return od(d).subscribe(b)}return nb(c)&&(c=Ld(c)),c.subscribe(b)})},Zc=function(a){function b(b){this.scheduler=b,a.call(this)}function c(a,b){this.observer=a,this.scheduler=b}function d(a,b){return b.onCompleted(),mc}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this.scheduler);return b.run()},c.prototype.run=function(){return this.scheduler.scheduleWithState(this.observer,d)},b}(Oc),$c=new Zc(xc),_c=Mc.empty=function(a){return uc(a)||(a=xc),a===xc?$c:new Zc(a)},ad=function(a){function b(b,c,d){this.iterable=b,this.mapper=c,this.scheduler=d,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new bd(a,this);return b.run()},b}(Oc),bd=function(){function a(a,b){this.o=a,this.parent=b}return a.prototype.run=function(){function a(a,b){var g=d(c.next).call(c);if(g===pb)return e.onError(g.e);if(g.done)return e.onCompleted();var h=g.value;return ob(f)&&(h=d(f)(h,a),h===pb)?e.onError(h.e):(e.onNext(h),void b(a+1))}var b=Object(this.parent.iterable),c=w(b),e=this.o,f=this.parent.mapper;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}(),cd=Math.pow(2,53)-1;r.prototype[Cb]=function(){return new s(this._s)},s.prototype[Cb]=function(){return this},s.prototype.next=function(){return this._i<this._l?{done:!1,value:this._s.charAt(this._i++)}:Db},t.prototype[Cb]=function(){return new u(this._a)},u.prototype[Cb]=function(){return this},u.prototype.next=function(){return this._i<this._l?{done:!1,value:this._a[this._i++]}:Db};var dd=Mc.from=function(a,b,c,d){if(null==a)throw new Error("iterable cannot be null.");if(b&&!ob(b))throw new Error("mapFn when provided must be a function");if(b)var e=Hb(b,c,2);return uc(d)||(d=yc),new ad(a,e,d)},ed=function(a){function b(b,c){this.args=b,this.scheduler=c,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new z(a,this);return b.run()},b}(Oc);z.prototype.run=function(){function a(a,e){d>a?(b.onNext(c[a]),e(a+1)):b.onCompleted()}var b=this.observer,c=this.parent.args,d=c.length;
3
+ return this.parent.scheduler.scheduleRecursiveWithState(0,a)};{var fd=Mc.fromArray=function(a,b){return uc(b)||(b=yc),new ed(a,b)},gd=function(a){function b(){a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(){return mc},b}(Oc),hd=new gd;Mc.never=function(){return hd}}Mc.of=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return new ed(b,yc)},Mc.ofWithScheduler=function(a){for(var b=arguments.length,c=new Array(b-1),d=1;b>d;d++)c[d-1]=arguments[d];return new ed(c,a)};var id=function(a){function b(b,c){this.obj=b,this.keys=Object.keys(b),this.scheduler=c,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new B(a,this);return b.run()},b}(Oc);B.prototype.run=function(){function a(a,f){if(e>a){var g=d[a];b.onNext([g,c[g]]),f(a+1)}else b.onCompleted()}var b=this.observer,c=this.parent.obj,d=this.parent.keys,e=d.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},Mc.pairs=function(a,b){return b||(b=yc),new id(a,b)};var jd=function(a){function b(b,c,d){this.start=b,this.rangeCount=c,this.scheduler=d,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new kd(a,this);return b.run()},b}(Oc),kd=function(){function a(a,b){this.observer=a,this.parent=b}return a.prototype.run=function(){function a(a,e){c>a?(d.onNext(b+a),e(a+1)):d.onCompleted()}var b=this.parent.start,c=this.parent.rangeCount,d=this.observer;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}();Mc.range=function(a,b,c){return uc(c)||(c=yc),new jd(a,b,c)};var ld=function(a){function b(b,c,d){this.value=b,this.repeatCount=null==c?-1:c,this.scheduler=d,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new C(a,this);return b.run()},b}(Oc);C.prototype.run=function(){function a(a,d){return(-1===a||a>0)&&(b.onNext(c),a>0&&a--),0===a?b.onCompleted():void d(a)}var b=this.observer,c=this.parent.value;return this.parent.scheduler.scheduleRecursiveWithState(this.parent.repeatCount,a)},Mc.repeat=function(a,b,c){return uc(c)||(c=yc),new ld(a,b,c)};var md=function(a){function b(b,c){this.value=b,this.scheduler=c,a.call(this)}function c(a,b,c){this.observer=a,this.value=b,this.scheduler=c}function d(a,b){var c=b[0],d=b[1];return d.onNext(c),d.onCompleted(),mc}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this.value,this.scheduler);return b.run()},c.prototype.run=function(){var a=[this.value,this.observer];return this.scheduler===xc?d(null,a):this.scheduler.scheduleWithState(a,d)},b}(Oc),nd=(Mc["return"]=Mc.just=function(a,b){return uc(b)||(b=xc),new md(a,b)},function(a){function b(b,c){this.error=b,this.scheduler=c,a.call(this)}function c(a,b){this.o=a,this.p=b}function d(a,b){var c=b[0],d=b[1];d.onError(c)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.p.scheduler.scheduleWithState([this.p.error,this.o],d)},b}(Oc)),od=Mc["throw"]=function(a,b){return uc(b)||(b=xc),new nd(a,b)},pd=function(a){function b(b,c,d){this._o=b,this._s=c,this._fn=d,a.call(this)}return gc(b,a),b.prototype.next=function(a){this._o.onNext(a)},b.prototype.completed=function(){return this._o.onCompleted()},b.prototype.error=function(a){var b=d(this._fn)(a);if(b===pb)return this._o.onError(b.e);nb(b)&&(b=Ld(b));var c=new pc;this._s.setDisposable(c),c.setDisposable(b.subscribe(this._o))},b}(Kc);Cc["catch"]=function(a){return ob(a)?D(this,a):qd([this,a])};var qd=Mc["catch"]=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return Wc(a).catchError()};Cc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return Array.isArray(b[0])?b[0].unshift(this):b.unshift(this),rd.apply(this,b)};var rd=Mc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=ob(b[a-1])?b.pop():F;return Array.isArray(b[0])&&(b=b[0]),new Sd(function(a){function c(b){if(g[b]=!0,h||(h=g.every(ib))){try{var c=d.apply(null,j)}catch(e){return a.onError(e)}a.onNext(c)}else i.filter(function(a,c){return c!==b}).every(ib)&&a.onCompleted()}function e(b){i[b]=!0,i.every(ib)&&a.onCompleted()}for(var f=b.length,g=q(f,E),h=!1,i=q(f,E),j=new Array(f),k=new Array(f),l=0;f>l;l++)!function(d){var f=b[d],g=new pc;nb(f)&&(f=Ld(f)),g.setDisposable(f.subscribe(function(a){j[d]=a,c(d)},function(b){a.onError(b)},function(){e(d)})),k[d]=g}(l);return new ic(k)},this)};Cc.concat=function(){for(var a=[],b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return a.unshift(this),td.apply(null,a)};var sd=function(a){function b(b){this.sources=b,a.call(this)}function c(a,b){this.sources=a,this.o=b}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new c(this.sources,a);return b.run()},c.prototype.run=function(){var a,b=new qc,c=this.sources,d=c.length,e=this.o,f=xc.scheduleRecursiveWithState(0,function(f,g){if(!a){if(f===d)return e.onCompleted();var h=c[f];nb(h)&&(h=Ld(h));var i=new pc;b.setDisposable(i),i.setDisposable(h.subscribe(function(a){e.onNext(a)},function(a){e.onError(a)},function(){g(f+1)}))}});return new ic(b,f,lc(function(){a=!0}))},b}(Oc),td=Mc.concat=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(arguments.length);for(var b=0,c=arguments.length;c>b;b++)a[b]=arguments[b]}return new sd(a)};Cc.concatAll=function(){return this.merge(1)};var ud=function(a){function b(b,c){this.source=b,this.maxConcurrent=c,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new ic;return b.add(this.source.subscribe(new vd(a,this.maxConcurrent,b))),b},b}(Oc),vd=function(){function a(a,b,c){this.o=a,this.max=b,this.g=c,this.done=!1,this.q=[],this.activeCount=0,this.isStopped=!1}function b(a,b){this.parent=a,this.sad=b,this.isStopped=!1}return a.prototype.handleSubscribe=function(a){var c=new pc;this.g.add(c),nb(a)&&(a=Ld(a)),c.setDisposable(a.subscribe(new b(this,c)))},a.prototype.onNext=function(a){this.isStopped||(this.activeCount<this.max?(this.activeCount++,this.handleSubscribe(a)):this.q.push(a))},a.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},a.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,0===this.activeCount&&this.o.onCompleted())},a.prototype.dispose=function(){this.isStopped=!0},a.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},b.prototype.onCompleted=function(){if(!this.isStopped){this.isStopped=!0;var a=this.parent;a.g.remove(this.sad),a.q.length>0?a.handleSubscribe(a.q.shift()):(a.activeCount--,a.done&&0===a.activeCount&&a.o.onCompleted())}},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},a}();Cc.merge=function(a){return"number"!=typeof a?wd(this,a):new ud(this,a)};var wd=Mc.merge=function(){var a,b,c=[],d=arguments.length;if(arguments[0])if(uc(arguments[0]))for(a=arguments[0],b=1;d>b;b++)c.push(arguments[b]);else for(a=xc,b=0;d>b;b++)c.push(arguments[b]);else for(a=xc,b=1;d>b;b++)c.push(arguments[b]);return Array.isArray(c[0])&&(c=c[0]),A(a,c).mergeAll()},xd=gb.CompositeError=function(a){this.name="NotImplementedError",this.innerErrors=a,this.message="This contains multiple errors. Check the innerErrors",Error.call(this)};xd.prototype=Error.prototype,Mc.mergeDelayError=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}var d=A(null,a);return new Sd(function(a){function b(){0===g.length?a.onCompleted():a.onError(1===g.length?g[0]:new xd(g))}var c=new ic,e=new pc,f=!1,g=[];return c.add(e),e.setDisposable(d.subscribe(function(d){var e=new pc;c.add(e),nb(d)&&(d=Ld(d)),e.setDisposable(d.subscribe(function(b){a.onNext(b)},function(a){g.push(a),c.remove(e),f&&1===c.length&&b()},function(){c.remove(e),f&&1===c.length&&b()}))},function(a){g.push(a),f=!0,1===c.length&&b()},function(){f=!0,1===c.length&&b()})),c})};var yd=function(a){function b(b){this.source=b,a.call(this)}function c(a,b){this.o=a,this.g=b,this.isStopped=!1,this.done=!1}function d(a,b){this.parent=a,this.sad=b,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new ic,d=new pc;return b.add(d),d.setDisposable(this.source.subscribe(new c(a,b))),b},c.prototype.onNext=function(a){if(!this.isStopped){var b=new pc;this.g.add(b),nb(a)&&(a=Ld(a)),b.setDisposable(a.subscribe(new d(this,b)))}},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,1===this.g.length&&this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},d.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},d.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},d.prototype.onCompleted=function(){if(!this.isStopped){var a=this.parent;this.isStopped=!0,a.g.remove(this.sad),a.done&&1===a.g.length&&a.o.onCompleted()}},d.prototype.dispose=function(){this.isStopped=!0},d.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},b}(Oc);Cc.mergeAll=function(){return new yd(this)},Cc.skipUntil=function(a){var b=this;return new Sd(function(c){var d=!1,e=new ic(b.subscribe(function(a){d&&c.onNext(a)},function(a){c.onError(a)},function(){d&&c.onCompleted()}));nb(a)&&(a=Ld(a));var f=new pc;return e.add(f),f.setDisposable(a.subscribe(function(){d=!0,f.dispose()},function(a){c.onError(a)},function(){f.dispose()})),e},b)};var zd=function(a){function b(b){this.source=b,a.call(this)}function c(a,b){this.o=a,this.inner=b,this.stopped=!1,this.latest=0,this.hasLatest=!1,this.isStopped=!1}function d(a,b){this.parent=a,this.id=b,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){var b=new qc,d=this.source.subscribe(new c(a,b));return new ic(d,b)},c.prototype.onNext=function(a){if(!this.isStopped){var b=new pc,c=++this.latest;this.hasLatest=!0,this.inner.setDisposable(b),nb(a)&&(a=Ld(a)),b.setDisposable(a.subscribe(new d(this,c)))}},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.stopped=!0,!this.hasLatest&&this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},d.prototype.onNext=function(a){this.isStopped||this.parent.latest===this.id&&this.parent.o.onNext(a)},d.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.latest===this.id&&this.parent.o.onError(a))},d.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.parent.latest===this.id&&(this.parent.hasLatest=!1,this.parent.isStopped&&this.parent.o.onCompleted()))},d.prototype.dispose=function(){this.isStopped=!0},d.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},b}(Oc);Cc["switch"]=Cc.switchLatest=function(){return new zd(this)};var Ad=function(a){function b(b,c){this.source=b,this.other=nb(c)?Ld(c):c,a.call(this)}function c(a){this.o=a,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){return new ic(this.source.subscribe(a),this.other.subscribe(new c(a)))},c.prototype.onNext=function(){this.isStopped||this.o.onCompleted()},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){!this.isStopped&&(this.isStopped=!0)},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Cc.takeUntil=function(a){return new Ad(this,a)},Cc.withLatestFrom=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var e=b.pop(),f=this;return Array.isArray(b[0])&&(b=b[0]),new Sd(function(a){for(var c=b.length,g=q(c,E),h=!1,i=new Array(c),j=new Array(c+1),k=0;c>k;k++)!function(c){var d=b[c],e=new pc;nb(d)&&(d=Ld(d)),e.setDisposable(d.subscribe(function(a){i[c]=a,g[c]=!0,h=g.every(ib)},function(b){a.onError(b)},hb)),j[c]=e}(k);var l=new pc;return l.setDisposable(f.subscribe(function(b){var c=[b].concat(i);if(h){var f=d(e).apply(null,c);return f===pb?a.onError(f.e):void a.onNext(f)}},function(b){a.onError(b)},function(){a.onCompleted()})),j[c]=l,new ic(j)},this)},Cc.zip=function(){if(0===arguments.length)throw new Error("invalid arguments");for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var e=ob(b[a-1])?b.pop():F;Array.isArray(b[0])&&(b=b[0]);var f=this;return b.unshift(f),new Sd(function(a){for(var c=b.length,g=q(c,G),h=q(c,E),i=new Array(c),j=0;c>j;j++)!function(c){var j=b[c],k=new pc;nb(j)&&(j=Ld(j)),k.setDisposable(j.subscribe(function(b){if(g[c].push(b),g.every(function(a){return a.length>0})){var i=g.map(function(a){return a.shift()}),j=d(e).apply(f,i);if(j===pb)return a.onError(j.e);a.onNext(j)}else h.filter(function(a,b){return b!==c}).every(ib)&&a.onCompleted()},function(b){a.onError(b)},function(){h[c]=!0,h.every(ib)&&a.onCompleted()})),i[c]=k}(j);return new ic(i)},f)},Mc.zip=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.shift();return d.zip.apply(d,b)},Cc.zipIterable=function(){if(0===arguments.length)throw new Error("invalid arguments");for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var e=ob(b[a-1])?b.pop():F,f=this;return b.unshift(f),new Sd(function(a){for(var c=b.length,g=q(c,G),h=q(c,E),i=new Array(c),j=0;c>j;j++)!function(c){var j=b[c],k=new pc;(Fb(j)||Eb(j))&&(j=dd(j)),k.setDisposable(j.subscribe(function(b){if(g[c].push(b),g.every(function(a){return a.length>0})){var i=g.map(function(a){return a.shift()}),j=d(e).apply(f,i);if(j===pb)return a.onError(j.e);a.onNext(j)}else h.filter(function(a,b){return b!==c}).every(ib)&&a.onCompleted()},function(b){a.onError(b)},function(){h[c]=!0,h.every(ib)&&a.onCompleted()})),i[c]=k}(j);return new ic(i)},f)},Cc.asObservable=function(){return new Sd(H(this),this)},Cc.dematerialize=function(){var a=this;return new Sd(function(b){return a.subscribe(function(a){return a.accept(b)},function(a){b.onError(a)},function(){b.onCompleted()})},this)};var Bd=function(a){function b(b,c,d){this.source=b,this.keyFn=c,this.comparer=d,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new Cd(a,this.keyFn,this.comparer))},b}(Oc),Cd=function(a){function b(b,c,d){this.o=b,this.keyFn=c,this.comparer=d,this.hasCurrentKey=!1,this.currentKey=null,a.call(this)}return gc(b,a),b.prototype.next=function(a){var b,c=a;return ob(this.keyFn)&&(c=d(this.keyFn)(a),c===pb)?this.o.onError(c.e):this.hasCurrentKey&&(b=d(this.comparer)(this.currentKey,c),b===pb)?this.o.onError(b.e):void(this.hasCurrentKey&&b||(this.hasCurrentKey=!0,this.currentKey=c,this.o.onNext(a)))},b.prototype.error=function(a){this.o.onError(a)},b.prototype.completed=function(){this.o.onCompleted()},b}(Kc);Cc.distinctUntilChanged=function(a,b){return b||(b=kb),new Bd(this,a,b)};var Dd=function(a){function b(b,c,d,e){this.source=b,this._oN=c,this._oE=d,this._oC=e,a.call(this)}function c(a,b){this.o=a,this.t=!b._oN||ob(b._oN)?Jc(b._oN||hb,b._oE||hb,b._oC||hb):b._oN,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a,this))},c.prototype.onNext=function(a){if(!this.isStopped){var b=d(this.t.onNext).call(this.t,a);b===pb&&this.o.onError(b.e),this.o.onNext(a)}},c.prototype.onError=function(a){if(!this.isStopped){this.isStopped=!0;var b=d(this.t.onError).call(this.t,a);if(b===pb)return this.o.onError(b.e);this.o.onError(a)}},c.prototype.onCompleted=function(){if(!this.isStopped){this.isStopped=!0;var a=d(this.t.onCompleted).call(this.t);if(a===pb)return this.o.onError(a.e);this.o.onCompleted()}},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Cc["do"]=Cc.tap=Cc.doAction=function(a,b,c){return new Dd(this,a,b,c)},Cc.doOnNext=Cc.tapOnNext=function(a,b){return this.tap("undefined"!=typeof b?function(c){a.call(b,c)}:a)},Cc.doOnError=Cc.tapOnError=function(a,b){return this.tap(hb,"undefined"!=typeof b?function(c){a.call(b,c)}:a)},Cc.doOnCompleted=Cc.tapOnCompleted=function(a,b){return this.tap(hb,null,"undefined"!=typeof b?function(){a.call(b)}:a)},Cc["finally"]=function(a){var b=this;return new Sd(function(c){var f=d(b.subscribe).call(b,c);return f===pb?(a(),e(f.e)):lc(function(){var b=d(f.dispose).call(f);a(),b===pb&&e(b.e)})},this)};var Ed=function(a){function b(b){this.source=b,a.call(this)}function c(a){this.o=a,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a))},c.prototype.onNext=hb,c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},b}(Oc);Cc.ignoreElements=function(){return new Ed(this)},Cc.materialize=function(){var a=this;return new Sd(function(b){return a.subscribe(function(a){b.onNext(Fc(a))},function(a){b.onNext(Gc(a)),b.onCompleted()},function(){b.onNext(Hc()),b.onCompleted()})},a)},Cc.repeat=function(a){return Uc(this,a).concat()},Cc.retry=function(a){return Uc(this,a).catchError()},Cc.retryWhen=function(a){return Uc(this).catchErrorWhen(a)};var Fd=function(a){function b(b,c,d,e){this.source=b,this.accumulator=c,this.hasSeed=d,this.seed=e,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new I(a,this))},b}(Oc);I.prototype={onNext:function(a){return this.isStopped?void 0:(!this.hasValue&&(this.hasValue=!0),this.hasAccumulation?this.accumulation=d(this.accumulator)(this.accumulation,a):(this.accumulation=this.hasSeed?d(this.accumulator)(this.seed,a):a,this.hasAccumulation=!0),this.accumulation===pb?this.o.onError(this.accumulation.e):void this.o.onNext(this.accumulation))},onError:function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},onCompleted:function(){this.isStopped||(this.isStopped=!0,!this.hasValue&&this.hasSeed&&this.o.onNext(this.seed),this.o.onCompleted())},dispose:function(){this.isStopped=!0},fail:function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)}},Cc.scan=function(){var a,b=!1,c=arguments[0];return 2===arguments.length&&(b=!0,a=arguments[1]),new Fd(this,c,b,a)},Cc.skipLast=function(a){if(0>a)throw new xb;var b=this;return new Sd(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)},Cc.startWith=function(){var a,b=0;arguments.length&&uc(arguments[0])?(a=arguments[0],b=1):a=xc;for(var c=[],d=b,e=arguments.length;e>d;d++)c.push(arguments[d]);return Wc([fd(c,a),this]).concat()},Cc.takeLast=function(a){if(0>a)throw new xb;var b=this;return new Sd(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)},Cc.flatMapConcat=Cc.concatMap=function(a,b,c){return new Pc(this,a,b,c).merge(1)};var Gd=function(a){function b(b,c,d){this.source=b,this.selector=Hb(c,d,3),a.call(this)}function c(a,b){return function(c,d,e){return a.call(this,b.selector(c,d,e),d,e)}}function e(a,b,c){this.o=a,this.selector=b,this.source=c,this.i=0,this.isStopped=!1}return gc(b,a),b.prototype.internalMap=function(a,d){return new b(this.source,c(a,this),d)},b.prototype.subscribeCore=function(a){return this.source.subscribe(new e(a,this.selector,this))},e.prototype.onNext=function(a){if(!this.isStopped){var b=d(this.selector)(a,this.i++,this.source);return b===pb?this.o.onError(b.e):void this.o.onNext(b)}},e.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},e.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},e.prototype.dispose=function(){this.isStopped=!0},e.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Cc.map=Cc.select=function(a,b){var c="function"==typeof a?a:function(){return a};return this instanceof Gd?this.internalMap(c,b):new Gd(this,c,b)},Cc.pluck=function(){var a=arguments.length,b=new Array(a);if(0===a)throw new Error("List of properties cannot be empty.");for(var c=0;a>c;c++)b[c]=arguments[c];return this.map(J(b,a))},Cc.flatMap=Cc.selectMany=function(a,b,c){return new Pc(this,a,b,c).mergeAll()},gb.Observable.prototype.flatMapLatest=function(a,b,c){return new Pc(this,a,b,c).switchLatest()};var Hd=function(a){function b(b,c){this.source=b,this.skipCount=c,a.call(this)}function c(a,b){this.c=b,this.r=b,this.o=a,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a,this.skipCount))},c.prototype.onNext=function(a){this.isStopped||(this.r<=0?this.o.onNext(a):this.r--)},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Cc.skip=function(a){if(0>a)throw new xb;return new Hd(this,a)},Cc.skipWhile=function(a,b){var c=this,d=Hb(a,b,3);return new Sd(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)},Cc.take=function(a,b){if(0>a)throw new xb;if(0===a)return _c(b);var c=this;return new Sd(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)},Cc.takeWhile=function(a,b){var c=this,d=Hb(a,b,3);return new Sd(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)};var Id=function(a){function b(b,c,d){this.source=b,this.predicate=Hb(c,d,3),a.call(this)}function c(a,b){return function(c,d,e){return b.predicate(c,d,e)&&a.call(this,c,d,e)}}function e(a,b,c){this.o=a,this.predicate=b,this.source=c,this.i=0,this.isStopped=!1}return gc(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new e(a,this.predicate,this))},b.prototype.internalFilter=function(a,d){return new b(this.source,c(a,this),d)},e.prototype.onNext=function(a){if(!this.isStopped){var b=d(this.predicate)(a,this.i++,this.source);return b===pb?this.o.onError(b.e):void(b&&this.o.onNext(a))}},e.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},e.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},e.prototype.dispose=function(){this.isStopped=!0},e.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Oc);Cc.filter=Cc.where=function(a,b){return this instanceof Id?this.internalFilter(a,b):new Id(this,a,b)},Mc.fromCallback=function(a,b,c){return function(){"undefined"==typeof b&&(b=this);for(var d=arguments.length,e=new Array(d),f=0;d>f;f++)e[f]=arguments[f];return K(a,b,c,e)}},Mc.fromNodeCallback=function(a,b,c){return function(){"undefined"==typeof b&&(b=this);for(var d=arguments.length,e=new Array(d),f=0;d>f;f++)e[f]=arguments[f];return M(a,b,c,e)}},O.prototype.dispose=function(){this.isDisposed||(this._e.removeEventListener(this._n,this._fn,!1),this.isDisposed=!0)},gb.config.useNativeEvents=!1,Mc.fromEvent=function(a,b,c){return a.addListener?Jd(function(c){a.addListener(b,c)},function(c){a.removeListener(b,c)},c):gb.config.useNativeEvents||"function"!=typeof a.on||"function"!=typeof a.off?new Sd(function(d){return P(a,b,Q(d,c))}).publish().refCount():Jd(function(c){a.on(b,c)},function(c){a.off(b,c)},c)};var Jd=Mc.fromEventPattern=function(a,b,c,e){return uc(e)||(e=xc),new Sd(function(e){function f(){var a=arguments[0];return ob(c)&&(a=d(c).apply(null,arguments),a===pb)?e.onError(a.e):void e.onNext(a)}var g=a(f);return lc(function(){ob(b)&&b(f,g)})}).publish().refCount()},Kd=function(a){function b(b){this.p=b,a.call(this)}return gc(b,a),b.prototype.subscribeCore=function(a){return this.p.then(function(b){a.onNext(b),a.onCompleted()},function(b){a.onError(b)}),mc},b}(Oc),Ld=Mc.fromPromise=function(a){return new Kd(a)};Cc.toPromise=function(a){if(a||(a=gb.config.Promise),!a)throw new yb("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)})})},Mc.startAsync=function(a){var b;try{b=a()}catch(c){return od(c)}return Ld(b)},Cc.multicast=function(a,b){var c=this;return"function"==typeof a?new Sd(function(d){var e=c.multicast(a());return new ic(b(e).subscribe(d),e.connect())},c):new Md(c,a)},Cc.publish=function(a){return a&&ob(a)?this.multicast(function(){return new Vd},a):this.multicast(new Vd)},Cc.share=function(){return this.publish().refCount()},Cc.publishLast=function(a){return a&&ob(a)?this.multicast(function(){return new Wd},a):this.multicast(new Wd)},Cc.publishValue=function(a,b){return 2===arguments.length?this.multicast(function(){return new Yd(b)},a):this.multicast(new Yd(a))},Cc.shareValue=function(a){return this.publishValue(a).refCount()},Cc.replay=function(a,b,c,d){return a&&ob(a)?this.multicast(function(){return new Zd(b,c,d)},a):this.multicast(new Zd(b,c,d))},Cc.shareReplay=function(a,b,c){return this.replay(null,a,b,c).refCount()};{var Md=gb.ConnectableObservable=function(a){function b(b,c){var d,e=!1,f=b.asObservable();this.connect=function(){return e||(e=!0,d=new ic(f.subscribe(c),lc(function(){e=!1}))),d},a.call(this,function(a){return c.subscribe(a)})}return gc(b,a),b.prototype.refCount=function(){var a,b=0,c=this;return new Sd(function(d){var e=1===++b,f=c.subscribe(d);return e&&(a=c.connect()),function(){f.dispose(),0===--b&&a.dispose()}})},b}(Mc),Nd=Mc.interval=function(a,b){return U(a,a,uc(b)?b:Dc)};Mc.timer=function(b,c,d){var e;return uc(d)||(d=Dc),null!=c&&"number"==typeof c?e=c:uc(c)&&(d=c),b instanceof Date&&e===a?R(b.getTime(),d):b instanceof Date&&e!==a?S(b.getTime(),c,d):e===a?T(b,d):U(b,e,d)}}Cc.delay=function(a,b){return uc(b)||(b=Dc),a instanceof Date?W(this,a.getTime(),b):V(this,a,b)},Cc.debounce=function(a,b){uc(b)||(b=Dc);var c=this;return new Sd(function(d){var e,f=new qc,g=!1,h=0,i=c.subscribe(function(c){g=!0,e=c,h++;var i=h,j=new pc;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 ic(i,f)},this)},Cc.throttle=function(a,b){return this.debounce(a,b)},Cc.timestamp=function(a){return uc(a)||(a=Dc),this.map(function(b){return{value:b,timestamp:a.now()}})},Cc.sample=Cc.throttleLatest=function(a,b){return uc(b)||(b=Dc),"number"==typeof a?X(this,Nd(a,b)):X(this,a)},Cc.timeout=function(a,b,c){(null==b||"string"==typeof b)&&(b=od(new Error(b||"Timeout"))),uc(c)||(c=Dc);var d=this,e=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new Sd(function(f){function g(){var d=h;l.setDisposable(c[e](a,function(){h===d&&(nb(b)&&(b=Ld(b)),j.setDisposable(b.subscribe(f)))}))}var h=0,i=new pc,j=new qc,k=!1,l=new qc;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 ic(j,l)},d)},Cc.throttleFirst=function(a,b){uc(b)||(b=Dc);var c=+a||0;if(0>=c)throw new RangeError("windowDuration cannot be less or equal zero.");var d=this;return new Sd(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)};var Od=function(a){function b(a){var b=this.source.publish(),c=b.subscribe(a),d=mc,e=this.pauser.distinctUntilChanged().subscribe(function(a){a?d=b.connect():(d.dispose(),d=mc)});return new ic(c,d,e)}function c(c,d){this.source=c,this.controller=new Vd,this.pauser=d&&d.subscribe?this.controller.merge(d):this.controller,a.call(this,b,c)}return gc(c,a),c.prototype.pause=function(){this.controller.onNext(!1)},c.prototype.resume=function(){this.controller.onNext(!0)},c}(Mc);Cc.pausable=function(a){return new Od(this,a)};var Pd=function(b){function c(b){function c(){for(;e.length>0;)b.onNext(e.shift())}var d,e=[],f=Y(this.source,this.pauser.startWith(!1).distinctUntilChanged(),function(a,b){return{data:a,shouldFire:b}}).subscribe(function(f){d!==a&&f.shouldFire!=d?(d=f.shouldFire,f.shouldFire&&c()):(d=f.shouldFire,f.shouldFire?b.onNext(f.data):e.push(f.data))},function(a){c(),b.onError(a)},function(){c(),b.onCompleted()});return f}function d(a,d){this.source=a,this.controller=new Vd,this.pauser=d&&d.subscribe?this.controller.merge(d):this.controller,b.call(this,c,a)}return gc(d,b),d.prototype.pause=function(){this.controller.onNext(!1)},d.prototype.resume=function(){this.controller.onNext(!0)},d}(Mc);Cc.pausableBuffered=function(a){return new Pd(this,a)};var Qd=function(a){function b(a){return this.source.subscribe(a)}function c(c,d,e){a.call(this,b,c),this.subject=new Rd(d,e),this.source=c.multicast(this.subject).refCount()}return gc(c,a),c.prototype.request=function(a){return this.subject.request(null==a?-1:a)},c}(Mc),Rd=function(a){function b(a){return this.subject.subscribe(a)}function c(c,d){null==c&&(c=!0),a.call(this,b),this.subject=new Vd,this.enableQueue=c,this.queue=c?[]:null,this.requestedCount=0,this.requestedDisposable=null,this.error=null,this.hasFailed=!1,this.hasCompleted=!1,this.scheduler=d||yc}return gc(c,a),hc(c.prototype,Ic,{onCompleted:function(){this.hasCompleted=!0,this.enableQueue&&0!==this.queue.length?this.queue.push(Ec.createOnCompleted()):(this.subject.onCompleted(),this.disposeCurrentRequest())},onError:function(a){this.hasFailed=!0,this.error=a,this.enableQueue&&0!==this.queue.length?this.queue.push(Ec.createOnError(a)):(this.subject.onError(a),this.disposeCurrentRequest())},onNext:function(a){this.requestedCount<=0?this.enableQueue&&this.queue.push(Ec.createOnNext(a)):(0===this.requestedCount--&&this.disposeCurrentRequest(),this.subject.onNext(a))},_processRequest:function(a){if(this.enableQueue)for(;this.queue.length>0&&(a>0||"N"!==this.queue[0].kind);){var b=this.queue.shift();b.accept(this.subject),"N"===b.kind?a--:(this.disposeCurrentRequest(),this.queue=[])}return a},request:function(a){this.disposeCurrentRequest();var b=this;return this.requestedDisposable=this.scheduler.scheduleWithState(a,function(a,c){var d=b._processRequest(c),e=b.hasCompleted||b.hasFailed;return!e&&d>0?(b.requestedCount=d,lc(function(){b.requestedCount=0})):void 0}),this.requestedDisposable},disposeCurrentRequest:function(){this.requestedDisposable&&(this.requestedDisposable.dispose(),this.requestedDisposable=null)}}),c}(Mc);Cc.controlled=function(a,b){return a&&uc(a)&&(b=a,a=!0),null==a&&(a=!0),new Qd(this,a,b)},Cc.pipe=function(a){function b(){c.resume()}var c=this.pausableBuffered();return a.addListener("drain",b),c.subscribe(function(b){!a.write(String(b))&&c.pause()},function(b){a.emit("error",b)},function(){!a._isStdio&&a.end(),a.removeListener("drain",b)
4
+ }),c.resume(),a},Cc.transduce=function(a){function b(a){return{"@@transducer/init":function(){return a},"@@transducer/step":function(a,b){return a.onNext(b)},"@@transducer/result":function(a){return a.onCompleted()}}}var c=this;return new Sd(function(e){var f=a(b(e));return c.subscribe(function(a){var b=d(f["@@transducer/step"]).call(f,e,a);b===pb&&e.onError(b.e)},function(a){e.onError(a)},function(){f["@@transducer/result"](e)})},c)};var Sd=gb.AnonymousObservable=function(a){function b(a){return a&&ob(a.dispose)?a:ob(a)?lc(a):mc}function c(a,c){var f=c[0],g=c[1],h=d(g.__subscribe).call(g,f);return h!==pb||f.fail(pb.e)?void f.setDisposable(b(h)):e(pb.e)}function f(a){var b=new Td(a),d=[b,this];return yc.scheduleRequired()?yc.scheduleWithState(d,c):c(null,d),b}function g(b,c){this.source=c,this.__subscribe=b,a.call(this,f)}return gc(g,a),g}(Mc),Td=function(a){function b(b){a.call(this),this.observer=b,this.m=new pc}gc(b,a);var c=b.prototype;return c.next=function(a){var b=d(this.observer.onNext).call(this.observer,a);b===pb&&(this.dispose(),e(b.e))},c.error=function(a){var b=d(this.observer.onError).call(this.observer,a);this.dispose(),b===pb&&e(b.e)},c.completed=function(){var a=d(this.observer.onCompleted).call(this.observer);this.dispose(),a===pb&&e(a.e)},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}(Kc),Ud=function(a,b){this.subject=a,this.observer=b};Ud.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 Vd=gb.Subject=function(a){function c(a){return oc(this),this.isStopped?this.hasError?(a.onError(this.error),mc):(a.onCompleted(),mc):(this.observers.push(a),new Ud(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.observers=[],this.hasError=!1}return gc(d,a),hc(d.prototype,Ic.prototype,{hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(oc(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=b(this.observers),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(oc(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(oc(this),!this.isStopped)for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onNext(a)},dispose:function(){this.isDisposed=!0,this.observers=null}}),d.create=function(a,b){return new Xd(a,b)},d}(Mc),Wd=gb.AsyncSubject=function(a){function c(a){return oc(this),this.isStopped?(this.hasError?a.onError(this.error):this.hasValue?(a.onNext(this.value),a.onCompleted()):a.onCompleted(),mc):(this.observers.push(a),new Ud(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.hasValue=!1,this.observers=[],this.hasError=!1}return gc(d,a),hc(d.prototype,Ic,{hasObservers:function(){return oc(this),this.observers.length>0},onCompleted:function(){var a,c;if(oc(this),!this.isStopped){this.isStopped=!0;var d=b(this.observers),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(oc(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){oc(this),this.isStopped||(this.value=a,this.hasValue=!0)},dispose:function(){this.isDisposed=!0,this.observers=null,this.exception=null,this.value=null}}),d}(Mc),Xd=gb.AnonymousSubject=function(a){function b(a){return this.observable.subscribe(a)}function c(c,d){this.observer=c,this.observable=d,a.call(this,b)}return gc(c,a),hc(c.prototype,Ic.prototype,{onCompleted:function(){this.observer.onCompleted()},onError:function(a){this.observer.onError(a)},onNext:function(a){this.observer.onNext(a)}}),c}(Mc),Yd=gb.BehaviorSubject=function(a){function c(a){return oc(this),this.isStopped?(this.hasError?a.onError(this.error):a.onCompleted(),mc):(this.observers.push(a),a.onNext(this.value),new Ud(this,a))}function d(b){a.call(this,c),this.value=b,this.observers=[],this.isDisposed=!1,this.isStopped=!1,this.hasError=!1}return gc(d,a),hc(d.prototype,Ic,{getValue:function(){if(oc(this),this.hasError)throw this.error;return this.value},hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(oc(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=b(this.observers),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(oc(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(oc(this),!this.isStopped){this.value=a;for(var c=0,d=b(this.observers),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}(Mc),Zd=gb.ReplaySubject=function(a){function c(a,b){return lc(function(){b.dispose(),!a.isDisposed&&a.observers.splice(a.observers.indexOf(b),1)})}function d(a){var b=new Nc(this.scheduler,a),d=c(this,b);oc(this),this._trim(this.scheduler.now()),this.observers.push(b);for(var e=0,f=this.q.length;f>e;e++)b.onNext(this.q[e].value);return this.hasError?b.onError(this.error):this.isStopped&&b.onCompleted(),b.ensureActive(),d}function e(b,c,e){this.bufferSize=null==b?f:b,this.windowSize=null==c?f:c,this.scheduler=e||yc,this.q=[],this.observers=[],this.isStopped=!1,this.isDisposed=!1,this.hasError=!1,this.error=null,a.call(this,d)}var f=Math.pow(2,53)-1;return gc(e,a),hc(e.prototype,Ic.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(oc(this),!this.isStopped){var c=this.scheduler.now();this.q.push({interval:c,value:a}),this._trim(c);for(var d=0,e=b(this.observers),f=e.length;f>d;d++){var g=e[d];g.onNext(a),g.ensureActive()}}},onError:function(a){if(oc(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;var c=this.scheduler.now();this._trim(c);for(var d=0,e=b(this.observers),f=e.length;f>d;d++){var g=e[d];g.onError(a),g.ensureActive()}this.observers.length=0}},onCompleted:function(){if(oc(this),!this.isStopped){this.isStopped=!0;var a=this.scheduler.now();this._trim(a);for(var c=0,d=b(this.observers),e=d.length;e>c;c++){var f=d[c];f.onCompleted(),f.ensureActive()}this.observers.length=0}},dispose:function(){this.isDisposed=!0,this.observers=null}}),e}(Mc);gb.Pauser=function(a){function b(){a.call(this)}return gc(b,a),b.prototype.pause=function(){this.onNext(!1)},b.prototype.resume=function(){this.onNext(!0)},b}(Vd),"function"==typeof define&&"object"==typeof define.amd&&define.amd?(fb.Rx=gb,define(function(){return gb})):_&&cb?db?(cb.exports=gb).Rx=gb:_.Rx=gb:fb.Rx=gb;var $d=j()}).call(this);
5
5
  //# sourceMappingURL=rx.lite.map
@@ -1 +1 @@
1
- {"version":3,"file":"rx.min.js","sources":["rx.js"],"names":["undefined","cloneArray","arr","a","i","len","length","push","makeStackTraceLong","error","observable","hasStacks","stack","indexOf","STACK_JUMP_SEPARATOR","stacks","o","source","unshift","concatedStacks","join","filterStackString","stackString","lines","split","desiredLines","line","isInternalFrame","isNodeFrame","stackLine","fileNameAndLineNumber","getFileNameAndLineNumber","fileName","lineNumber","rFileName","rStartingLine","rEndingLine","captureLine","Error","e","firstLine","attempt1","exec","Number","attempt2","attempt3","keysIn","object","result","isObject","support","nonEnumArgs","isArguments","slice","call","skipProto","enumPrototypes","skipErrorProps","enumErrorProps","errorProto","key","nonEnumShadows","objectProto","ctor","constructor","index","dontEnumsLength","prototype","className","stringProto","stringClass","errorClass","toString","nonEnum","nonEnumProps","dontEnums","hasOwnProperty","internalFor","callback","keysFunc","props","internalForIn","isNode","value","deepEquals","b","stackA","stackB","type","otherType","otherClass","argsClass","objectClass","boolClass","dateClass","numberClass","regexpClass","String","isArr","arrayClass","nodeClass","ctorA","argsObject","Object","ctorB","isFunction","size","pop","arrayInitialize","count","factory","Array","tryCatcher","tryCatchTarget","apply","this","arguments","errorObj","tryCatch","fn","TypeError","thrower","IndexedItem","id","ScheduledDisposable","scheduler","disposable","isDisposed","scheduleItem","s","self","dispose","ToArrayObserver","observer","isStopped","StringIterable","_s","StringIterator","_l","_i","ArrayIterable","_a","ArrayIterator","toLength","numberIsFinite","root","isFinite","getIterable","it","$iterator$","sign","number","isNaN","Math","floor","abs","maxSafeInteger","FromArraySink","parent","observableOf","array","isScheduler","currentThreadScheduler","FromArrayObservable","PairsSink","RepeatSink","observableCatchHandler","handler","AnonymousObservable","d1","SingleAssignmentDisposable","subscription","SerialDisposable","setDisposable","subscribe","x","onNext","ex","onError","isPromise","observableFromPromise","d","onCompleted","zipArray","second","resultSelector","first","left","right","falseFactory","emptyArrayFactory","concatMap","selector","thisArg","selectorFunc","bindCallback","map","isArrayLike","isIterable","observableFrom","concatAll","arrayIndexOfComparer","item","comparer","HashSet","set","MapObserver","flatMap","mergeAll","FilterObserver","predicate","objectTypes","boolean","function","string","window","freeExports","exports","nodeType","freeModule","module","moduleExports","freeGlobal","global","Rx","internals","config","Promise","helpers","noop","identity","notDefined","defaultNow","pluck","property","just","Date","now","defaultComparer","y","isEqual","defaultSubComparer","defaultError","defaultKeySerializer","err","p","then","asArray","not","isFn","longStackSupport","EmptyError","message","ObjectDisposedError","ArgumentOutOfRangeError","NotSupportedError","NotImplementedError","notImplemented","notSupported","Symbol","iterator","Set","doneEnumerator","done","supportNodeClass","func","argCount","arg","collection","funcClass","supportsArgsClass","propertyIsEnumerable","document","toLocaleString","valueOf","test","inherits","child","__","addProperties","obj","sources","idx","ln","prop","addRef","xs","r","CompositeDisposable","getDisposable","compareTo","other","c","PriorityQueue","capacity","items","priorityProto","isHigherPriority","percolate","temp","heapify","peek","removeAt","dequeue","enqueue","remove","args","isArray","isDisposable","disposables","CompositeDisposablePrototype","add","shouldDispose","splice","currentDisposables","Disposable","action","disposableCreate","create","disposableEmpty","empty","checkDisposed","current","old","RefCountDisposable","InnerDisposable","isInnerDisposed","underlyingDisposable","isPrimaryDisposed","scheduleWithState","ScheduledItem","state","dueTime","invoke","invokeCore","isCancelled","Scheduler","schedule","scheduleRelative","scheduleAbsolute","_schedule","_scheduleRelative","_scheduleAbsolute","invokeAction","schedulerProto","scheduleWithRelative","scheduleWithRelativeAndState","scheduleWithAbsolute","scheduleWithAbsoluteAndState","normalize","timeSpan","normalizeTime","invokeRecImmediate","pair","recursiveAction","state1","state2","isAdded","isDone","scheduler1","state3","group","invokeRecDate","method","dueTime1","scheduleInnerRecursive","dt","scheduleRecursive","scheduleRecursiveWithState","_action","scheduleRecursiveWithRelative","scheduleRecursiveWithRelativeAndState","scheduleRecursiveWithAbsolute","scheduleRecursiveWithAbsoluteAndState","schedulePeriodic","period","schedulePeriodicWithState","setInterval","clearInterval","catchError","CatchScheduler","scheduleMethod","clearMethod","immediateScheduler","SchedulePeriodicRecursive","tick","command","recurse","_period","_state","_cancel","_scheduler","start","bind","immediate","scheduleNow","currentThread","runTrampoline","queue","si","currentScheduler","scheduleRequired","localTimer","localSetTimeout","localClearTimeout","setTimeout","clearTimeout","WScript","time","Sleep","runTask","handle","currentlyRunning","task","tasksByHandle","postMessageSupported","postMessage","importScripts","isAsync","oldHandler","onmessage","onGlobalPostMessage","event","data","substring","MSG_PREFIX","nextHandle","reNative","RegExp","replace","setImmediate","process","nextTick","random","addEventListener","attachEvent","currentId","MessageChannel","channel","port1","port2","createElement","scriptElement","onreadystatechange","parentNode","removeChild","documentElement","appendChild","timeout","__super__","_wrap","_handler","_recursiveOriginal","_recursiveWrapper","_clone","_getRecursiveWrapper","wrapper","failed","Notification","kind","exception","accept","acceptObservable","_accept","_acceptObservable","observerOrOnNext","toObservable","_","notification","notificationCreateOnNext","createOnNext","notificationCreateOnError","createOnError","notificationCreateOnCompleted","createOnCompleted","Enumerator","next","_next","Enumerable","_iterator","concat","cancelable","currentItem","currentValue","lastException","catchErrorWhen","notificationHandler","exceptions","Subject","notifier","handled","notificationDisposable","outer","inner","exn","enumerableRepeat","repeat","repeatCount","enumerableOf","of","selectorFn","Observer","toNotifier","n","asObserver","AnonymousObserver","checked","CheckedObserver","observerCreate","fromNotifier","notifyOn","ObserveOnObserver","makeSafe","AnonymousSafeObserver","_onNext","_onError","_onCompleted","observableProto","AbstractObserver","completed","fail","_observer","CheckedObserverPrototype","checkAccess","res","ScheduledObserver","isAcquired","hasFaulted","ensureActive","isOwner","work","shift","cancel","Observable","_subscribe","oldOnError","forEach","subscribeOnNext","subscribeOnError","subscribeOnCompleted","ObservableBase","fixSubscriber","subscriber","ado","sub","subscribeCore","AutoDetachObserver","observeOn","subscribeOn","m","fromPromise","promise","observableDefer","subject","AsyncSubject","toPromise","promiseCtor","resolve","reject","hasValue","v","ToArrayObservable","toArray","createWithDisposable","defer","observableFactory","observableThrow","EmptyObservable","EmptySink","sink","run","observableEmpty","FromObservable","iterable","mapper","FromSink","loopRecursive","list","pow","charAt","from","mapFn","observableFromArray","fromArray","generate","initialState","condition","iterate","hasResult","NeverObservable","observableNever","never","ofWithScheduler","PairsObservable","keys","pairs","RangeObservable","RangeSink","range","RepeatObservable","JustObservable","JustSink","ThrowObservable","returnValue","ThrowSink","throwError","throwException","using","resourceFactory","resource","amb","rightSource","leftSource","choiceL","choice","leftChoice","rightSubscription","choiceR","rightChoice","leftSubscription","previous","acc","catchException","handlerOrSecond","observableCatch","combineLatest","hasValueAll","every","values","filter","j","subscriptions","sad","observableConcat","concatObservable","merge","MergeObservable","maxConcurrent","g","MergeObserver","max","q","activeCount","InnerObserver","handleSubscribe","innerSource","maxConcurrentOrOther","observableMerge","CompositeError","errors","name","innerErrors","mergeDelayError","setCompletion","innerSubscription","MergeAllObservable","MergeAllObserver","mergeObservable","onErrorResumeNext","pos","skipUntil","isOpen","switchLatest","hasLatest","latest","takeUntil","withLatestFrom","allValues","zip","queuedValues","queues","asObservable","bufferWithCount","skip","windowWithCount","selectMany","where","dematerialize","distinctUntilChanged","keySelector","currentKey","hasCurrentKey","comparerEquals","tap","doAction","tapObserver","doOnNext","tapOnNext","doOnError","tapOnError","doOnCompleted","tapOnCompleted","ensure","finallyAction","ignoreElements","materialize","retry","retryCount","retryWhen","scan","seed","accumulator","hasSeed","hasAccumulation","accumulation","skipLast","startWith","takeLast","takeLastBuffer","Infinity","createWindow","refCountDisposable","selectConcat","selectorResult","i2","concatMapObserver","selectConcatObserver","onNextFunc","onErrorFunc","onCompletedFunc","defaultIfEmpty","defaultValue","found","retValue","distinct","hashSet","MapObservable","internalMap","select","currentProp","flatMapObserver","selectManyObserver","selectSwitch","flatMapLatest","switchMap","remaining","skipWhile","running","take","takeWhile","FilterObservable","internalFilter","shouldYield","transduce","transducer","transformForObserver","@@transducer/init","@@transducer/step","obs","input","@@transducer/result","xform","AutoDetachObserverPrototype","InnerSubscription","observers","hasError","hasObservers","os","AnonymousSubject","define","amd"],"mappings":"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"}
1
+ {"version":3,"file":"rx.min.js","sources":["rx.js"],"names":["undefined","cloneArray","arr","a","i","len","length","push","tryCatcher","tryCatchTarget","apply","this","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","thrower","makeStackTraceLong","error","observable","hasStacks","stack","indexOf","STACK_JUMP_SEPARATOR","stacks","o","source","unshift","concatedStacks","join","filterStackString","stackString","lines","split","desiredLines","line","isInternalFrame","isNodeFrame","stackLine","fileNameAndLineNumber","getFileNameAndLineNumber","fileName","lineNumber","rFileName","rStartingLine","rEndingLine","captureLine","Error","firstLine","attempt1","exec","Number","attempt2","attempt3","keysIn","object","result","isObject","support","nonEnumArgs","isArguments","slice","call","skipProto","enumPrototypes","skipErrorProps","enumErrorProps","errorProto","key","nonEnumShadows","objectProto","ctor","constructor","index","dontEnumsLength","prototype","className","stringProto","stringClass","errorClass","toString","nonEnum","nonEnumProps","dontEnums","hasOwnProperty","internalFor","callback","keysFunc","props","internalForIn","isNode","value","deepEquals","b","stackA","stackB","type","otherType","otherClass","argsClass","objectClass","boolClass","dateClass","numberClass","regexpClass","String","isArr","arrayClass","nodeClass","ctorA","argsObject","Object","ctorB","size","pop","arrayInitialize","count","factory","Array","ScheduledDisposable","scheduler","disposable","isDisposed","scheduleItem","s","self","dispose","StringIterable","_s","StringIterator","_l","_i","ArrayIterable","_a","ArrayIterator","toLength","numberIsFinite","root","isFinite","getIterable","it","$iterator$","sign","number","isNaN","Math","floor","abs","maxSafeInteger","FromArraySink","observer","parent","observableOf","array","isScheduler","currentThreadScheduler","FromArrayObservable","PairsSink","RepeatSink","amb","p","c","observableCatchHandler","handler","AnonymousObservable","d1","SingleAssignmentDisposable","subscription","SerialDisposable","setDisposable","subscribe","CatchObserver","falseFactory","argumentsToArray","args","emptyArrayFactory","asObservable","toArray","x","notEmpty","InnerObserver","accumulator","hasSeed","seed","hasAccumulation","accumulation","hasValue","isStopped","arrayIndexOfComparer","item","comparer","HashSet","set","plucker","currentProp","objectTypes","function","freeExports","exports","nodeType","freeSelf","freeWindow","window","freeModule","module","moduleExports","freeGlobal","global","Rx","internals","config","Promise","helpers","noop","identity","defaultNow","Date","now","defaultComparer","y","isEqual","defaultSubComparer","defaultError","defaultKeySerializer","err","isPromise","then","isFn","longStackSupport","EmptyError","message","name","ObjectDisposedError","ArgumentOutOfRangeError","NotSupportedError","NotImplementedError","notImplemented","notSupported","Symbol","iterator","Set","doneEnumerator","done","isIterable","isArrayLike","supportNodeClass","bindCallback","func","thisArg","argCount","arg","collection","funcClass","supportsArgsClass","propertyIsEnumerable","document","toLocaleString","valueOf","test","inherits","child","__","addProperties","obj","sources","idx","ln","prop","addRef","xs","r","CompositeDisposable","getDisposable","isArray","isDisposable","disposables","CompositeDisposablePrototype","add","remove","shouldDispose","splice","currentDisposables","Disposable","action","disposableCreate","create","disposableEmpty","empty","d","checkDisposed","current","old","RefCountDisposable","InnerDisposable","isInnerDisposed","underlyingDisposable","isPrimaryDisposed","scheduleWithState","ScheduledItem","state","dueTime","invoke","invokeCore","compareTo","other","isCancelled","Scheduler","schedule","scheduleRelative","scheduleAbsolute","_schedule","_scheduleRelative","_scheduleAbsolute","invokeAction","schedulerProto","scheduleWithRelative","scheduleWithRelativeAndState","scheduleWithAbsolute","scheduleWithAbsoluteAndState","normalize","timeSpan","normalizeTime","invokeRecImmediate","pair","innerAction","state2","scheduleWork","_","state3","isAdded","group","isDone","invokeRecDate","method","dueTime1","invokeRecDateRelative","invokeRecDateAbsolute","scheduleInnerRecursive","dt","scheduleRecursive","scheduleRecursiveWithState","scheduleRecursiveWithRelative","scheduleRecursiveWithRelativeAndState","scheduleRecursiveWithAbsolute","scheduleRecursiveWithAbsoluteAndState","schedulePeriodic","period","schedulePeriodicWithState","setInterval","id","clearInterval","catchError","CatchScheduler","scheduleMethod","clearMethod","immediateScheduler","SchedulePeriodicRecursive","tick","command","recurse","_period","_state","_action","_cancel","_scheduler","start","bind","immediate","scheduleNow","currentThread","runTrampoline","queue","shift","si","currentScheduler","scheduleRequired","localTimer","localSetTimeout","localClearTimeout","setTimeout","clearTimeout","WScript","time","Sleep","runTask","handle","currentlyRunning","task","tasksByHandle","postMessageSupported","postMessage","importScripts","isAsync","oldHandler","onmessage","onGlobalPostMessage","event","data","substring","MSG_PREFIX","nextHandle","reNative","RegExp","replace","setImmediate","process","nextTick","random","addEventListener","attachEvent","currentId","MessageChannel","channel","port1","port2","createElement","scriptElement","onreadystatechange","parentNode","removeChild","documentElement","appendChild","timeout","__super__","_wrap","_handler","_recursiveOriginal","_recursiveWrapper","_clone","_getRecursiveWrapper","wrapper","failed","state1","Notification","kind","exception","accept","acceptObservable","_accept","_acceptObservable","observerOrOnNext","onError","onCompleted","toObservable","notification","notificationCreateOnNext","createOnNext","onNext","notificationCreateOnError","createOnError","notificationCreateOnCompleted","createOnCompleted","Observer","toNotifier","n","asObserver","AnonymousObserver","checked","CheckedObserver","observerCreate","fromNotifier","cb","notifyOn","ObserveOnObserver","makeSafe","AnonymousSafeObserver","_onNext","_onError","_onCompleted","observableProto","AbstractObserver","next","completed","fail","_observer","CheckedObserverPrototype","checkAccess","res","ScheduledObserver","isAcquired","hasFaulted","ensureActive","isOwner","work","cancel","Observable","makeSubscribe","oldOnError","_subscribe","isObservable","forEach","oOrOnNext","subscribeOnNext","subscribeOnError","subscribeOnCompleted","ObservableBase","fixSubscriber","subscriber","ado","sub","subscribeCore","AutoDetachObserver","FlatMapObservable","selector","resultSelector","_wrapResult","map","i2","fromPromise","from","Enumerable","ConcatEnumerableObservable","cancelable","currentItem","currentValue","observableFromPromise","concat","CatchErrorObservable","lastException","catchErrorWhen","notificationHandler","exceptions","Subject","notifier","handled","notificationDisposable","outer","inner","exn","ex","RepeatEnumerable","v","RepeatEnumerator","l","enumerableRepeat","repeat","repeatCount","OfEnumerable","OfEnumerator","enumerableOf","of","observeOn","subscribeOn","m","FromPromiseObservable","promise","toPromise","promiseCtor","resolve","reject","ToArrayObservable","EmptyObservable","defer","observableFactory","observableThrow","EmptySink","sink","run","EMPTY_OBSERVABLE","observableEmpty","FromObservable","iterable","mapper","FromSink","loopRecursive","list","pow","charAt","observableFrom","mapFn","observableFromArray","fromArray","generate","initialState","condition","iterate","first","hasResult","NeverObservable","NEVER_OBSERVABLE","observableNever","never","ofWithScheduler","PairsObservable","keys","pairs","RangeObservable","rangeCount","RangeSink","range","RepeatObservable","JustObservable","JustSink","ThrowObservable","just","ThrowSink","using","resourceFactory","resource","rightSource","leftSource","choiceL","choice","leftChoice","rightSubscription","choiceR","rightChoice","leftSubscription","leftSubscribe","left","rightSubscribe","right","items","acc","_o","_fn","handlerOrSecond","observableCatch","combineLatest","hasValueAll","every","values","filter","j","subscriptions","sad","observableConcat","ConcatObservable","ConcatSink","concatAll","merge","MergeObservable","maxConcurrent","g","MergeObserver","max","q","activeCount","handleSubscribe","innerSource","maxConcurrentOrOther","observableMerge","mergeAll","CompositeError","errors","innerErrors","mergeDelayError","setCompletion","innerSubscription","MergeAllObservable","MergeAllObserver","onErrorResumeNext","second","pos","skipUntil","isOpen","SwitchObservable","SwitchObserver","stopped","latest","hasLatest","switchLatest","TakeUntilObservable","takeUntil","withLatestFrom","allValues","zip","queues","queuedValues","zipIterable","bufferWithCount","skip","windowWithCount","flatMap","dematerialize","DistinctUntilChangedObservable","keyFn","DistinctUntilChangedObserver","hasCurrentKey","currentKey","comparerEquals","distinctUntilChanged","TapObservable","_oN","_oE","_oC","t","tap","doAction","doOnNext","tapOnNext","doOnError","tapOnError","doOnCompleted","tapOnCompleted","IgnoreElementsObservable","ignoreElements","materialize","retry","retryCount","retryWhen","ScanObservable","scan","skipLast","startWith","takeLast","takeLastBuffer","Infinity","createWindow","refCountDisposable","flatMapConcat","concatMap","concatMapObserver","selectConcatObserver","onNextFunc","onErrorFunc","onCompletedFunc","defaultIfEmpty","defaultValue","found","retValue","distinct","keySelector","hashSet","MapObservable","innerMap","internalMap","select","selectorFn","pluck","flatMapObserver","selectManyObserver","selectMany","flatMapLatest","SkipObservable","skipCount","skipWhile","predicate","running","take","remaining","takeWhile","FilterObservable","innerPredicate","internalFilter","shouldYield","where","transduce","transducer","transformForObserver","@@transducer/init","@@transducer/step","obs","input","@@transducer/result","xform","__subscribe","innerSubscribe","AutoDetachObserverPrototype","InnerSubscription","subject","observers","hasError","hasObservers","os","AnonymousSubject","AsyncSubject","define","amd"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  /* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/
2
- (function(a){function b(a){for(var b=[],c=0,d=a.length;d>c;c++)b.push(a[c]);return b}function c(a,b){if(fb&&b.stack&&"object"==typeof a&&null!==a&&a.stack&&-1===a.stack.indexOf(jb)){for(var c=[],e=b;e;e=e.source)e.stack&&c.unshift(e.stack);c.unshift(a.stack);var f=c.join("\n"+jb+"\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===hb&&d>=ib&&yd>=d}function f(a){return-1!==a.indexOf("(module.js:")||-1!==a.indexOf("(node.js:")}function g(){if(fb)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 hb=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(!Sb(a))return b;Rb.nonEnumArgs&&a.length&&Tb(a)&&(a=Wb.call(a));var c=Rb.enumPrototypes&&"function"==typeof a,d=Rb.enumErrorProps&&(a===Mb||a instanceof Error);for(var e in a)c&&"prototype"==e||d&&("message"==e||"name"==e)||b.push(e);if(Rb.nonEnumShadows&&a!==Nb){var f=a.constructor,g=-1,h=yb;if(a===(f&&f.prototype))var i=a===Ob?Ib:a===Mb?Db:Jb.call(a),j=Qb[i];for(;++g<h;)e=xb[g],j&&j[e]||!Kb.call(a,e)||b.push(e)}return b}function j(a,b,c){for(var d=-1,e=c(a),f=e.length;++d<f;){var g=e[d];if(b(a[g],g,a)===!1)break}return a}function k(a,b){return j(a,b,i)}function l(a){return"function"!=typeof a.toString&&"string"==typeof(a+"")}function m(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;var e=typeof a,f=typeof b;if(a===a&&(null==a||null==b||"function"!=e&&"object"!=e&&"function"!=f&&"object"!=f))return!1;var g=Jb.call(a),h=Jb.call(b);if(g==zb&&(g=Gb),h==zb&&(h=Gb),g!=h)return!1;switch(g){case Bb:case Cb:return+a==+b;case Fb:return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case Hb:case Ib:return a==String(b)}var i=g==Ab;if(!i){if(g!=Gb||!Rb.nodeClass&&(l(a)||l(b)))return!1;var j=!Rb.argsObject&&Tb(a)?Object:a.constructor,n=!Rb.argsObject&&Tb(b)?Object:b.constructor;if(!(j==n||Kb.call(a,"constructor")&&Kb.call(b,"constructor")||eb(j)&&j instanceof j&&eb(n)&&n instanceof n||!("constructor"in a&&"constructor"in b)))return!1}c||(c=[]),d||(d=[]);for(var o=c.length;o--;)if(c[o]==a)return d[o]==b;var p=0,q=!0;if(c.push(a),d.push(b),i){if(o=a.length,p=b.length,q=p==o)for(;p--;){var r=b[p];if(!(q=m(a[p],r,c,d)))break}}else k(b,function(b,e,f){return Kb.call(f,e)?(p++,q=Kb.call(a,e)&&m(a[e],b,c,d)):void 0}),q&&k(a,function(a,b,c){return Kb.call(c,b)?q=--p>-1:void 0});return c.pop(),d.pop(),q}function n(a,b){for(var c=new Array(a),d=0;a>d;d++)c[d]=b();return c}function o(){try{return Ub.apply(this,arguments)}catch(a){return $b.e=a,$b}}function p(a){if(!eb(a))throw new TypeError("fn must be a function");return Ub=a,o}function q(a){throw a}function r(a,b){this.id=a,this.value=b}function t(a,b){this.scheduler=a,this.disposable=b,this.isDisposed=!1}function u(a,b){b.isDisposed||(b.isDisposed=!0,b.disposable.dispose())}function v(a){this.observer=a,this.a=[],this.isStopped=!1}function w(){this._s=s}function x(){this._s=s,this._l=s.length,this._i=0}function y(a){this._a=a}function z(a){this._a=a,this._l=D(a),this._i=0}function A(a){return"number"==typeof a&&T.isFinite(a)}function B(b){var c,d=b[rb];if(!d&&"string"==typeof b)return c=new w(b),c[rb]();if(!d&&b.length!==a)return c=new y(b),c[rb]();if(!d)throw new TypeError("Object is not iterable");return b[rb]()}function C(a){var b=+a;return 0===b?b:isNaN(b)?b:0>b?-1:1}function D(a){var b=+a.length;return isNaN(b)?0:0!==b&&A(b)?(b=C(b)*Math.floor(Math.abs(b)),0>=b?0:b>Wc?Wc:b):b}function E(a,b){this.observer=a,this.parent=b}function F(a,b){return oc(a)||(a=sc),new Yc(b,a)}function G(a,b){this.observer=a,this.parent=b}function H(a,b){this.observer=a,this.parent=b}function I(a,b){return new td(function(c){var d=new ic,e=new jc;return e.setDisposable(d),d.setDisposable(a.subscribe(function(a){c.onNext(a)},function(a){try{var d=b(a)}catch(f){return c.onError(f)}db(d)&&(d=Pc(d));var g=new ic;e.setDisposable(g),g.setDisposable(d.subscribe(c))},function(a){c.onCompleted(a)})),e},a)}function J(a,b){var c=this;return new td(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 d.onError(i)}d.onNext(g)}else d.onCompleted()},function(a){d.onError(a)},function(){d.onCompleted()})},c)}function K(){return!1}function L(){return[]}function M(a,b,c){var d=wb(b,c,3);return a.map(function(b,c){var e=d(b,c,a);return db(e)&&(e=Pc(e)),(ub(e)||tb(e))&&(e=Xc(e)),e}).concatAll()}function N(a,b,c){for(var d=0,e=a.length;e>d;d++)if(c(a[d],b))return d;return-1}function O(a){this.comparer=a,this.set=[]}function P(a,b,c){this.observer=a,this.selector=b,this.source=c,this.i=0,this.isStopped=!1}function Q(a,b,c){var d=wb(b,c,3);return a.map(function(b,c){var e=d(b,c,a);return db(e)&&(e=Pc(e)),(ub(e)||tb(e))&&(e=Xc(e)),e}).mergeAll()}function R(a,b,c){this.observer=a,this.predicate=b,this.source=c,this.i=0,this.isStopped=!1}var S={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},T=S[typeof window]&&window||this,U=S[typeof exports]&&exports&&!exports.nodeType&&exports,V=S[typeof module]&&module&&!module.nodeType&&module,W=V&&V.exports===U&&U,X=S[typeof global]&&global;!X||X.global!==X&&X.window!==X||(T=X);var Y={internals:{},config:{Promise:T.Promise},helpers:{}},Z=Y.helpers.noop=function(){},$=(Y.helpers.notDefined=function(a){return"undefined"==typeof a},Y.helpers.identity=function(a){return a}),_=(Y.helpers.pluck=function(a){return function(b){return b[a]}},Y.helpers.just=function(a){return function(){return a}},Y.helpers.defaultNow=Date.now),ab=Y.helpers.defaultComparer=function(a,b){return Vb(a,b)},bb=Y.helpers.defaultSubComparer=function(a,b){return a>b?1:b>a?-1:0},cb=(Y.helpers.defaultKeySerializer=function(a){return a.toString()},Y.helpers.defaultError=function(a){throw a}),db=Y.helpers.isPromise=function(a){return!!a&&"function"==typeof a.then},eb=(Y.helpers.asArray=function(){return Array.prototype.slice.call(arguments)},Y.helpers.not=function(a){return!a},Y.helpers.isFunction=function(){var a=function(a){return"function"==typeof a||!1};return a(/x/)&&(a=function(a){return"function"==typeof a&&"[object Function]"==Jb.call(a)}),a}());Y.config.longStackSupport=!1;var fb=!1;try{throw new Error}catch(gb){fb=!!gb.stack}var hb,ib=g(),jb="From previous event:",kb=Y.EmptyError=function(){this.message="Sequence contains no elements.",Error.call(this)};kb.prototype=Error.prototype;var lb=Y.ObjectDisposedError=function(){this.message="Object has been disposed",Error.call(this)};lb.prototype=Error.prototype;var mb=Y.ArgumentOutOfRangeError=function(){this.message="Argument out of range",Error.call(this)};mb.prototype=Error.prototype;var nb=Y.NotSupportedError=function(a){this.message=a||"This operation is not supported",Error.call(this)};nb.prototype=Error.prototype;var ob=Y.NotImplementedError=function(a){this.message=a||"This operation is not implemented",Error.call(this)};ob.prototype=Error.prototype;var pb=Y.helpers.notImplemented=function(){throw new ob},qb=Y.helpers.notSupported=function(){throw new nb},rb="function"==typeof Symbol&&Symbol.iterator||"_es6shim_iterator_";T.Set&&"function"==typeof(new T.Set)["@@iterator"]&&(rb="@@iterator");var sb=Y.doneEnumerator={done:!0,value:a},tb=Y.helpers.isIterable=function(b){return b[rb]!==a},ub=Y.helpers.isArrayLike=function(b){return b&&b.length!==a};Y.helpers.iterator=rb;var vb,wb=Y.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)}},xb=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],yb=xb.length,zb="[object Arguments]",Ab="[object Array]",Bb="[object Boolean]",Cb="[object Date]",Db="[object Error]",Eb="[object Function]",Fb="[object Number]",Gb="[object Object]",Hb="[object RegExp]",Ib="[object String]",Jb=Object.prototype.toString,Kb=Object.prototype.hasOwnProperty,Lb=Jb.call(arguments)==zb,Mb=Error.prototype,Nb=Object.prototype,Ob=String.prototype,Pb=Nb.propertyIsEnumerable;try{vb=!(Jb.call(document)==Gb&&!({toString:0}+""))}catch(gb){vb=!0}var Qb={};Qb[Ab]=Qb[Cb]=Qb[Fb]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},Qb[Bb]=Qb[Ib]={constructor:!0,toString:!0,valueOf:!0},Qb[Db]=Qb[Eb]=Qb[Hb]={constructor:!0,toString:!0},Qb[Gb]={constructor:!0};var Rb={};!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);Rb.enumErrorProps=Pb.call(Mb,"message")||Pb.call(Mb,"name"),Rb.enumPrototypes=Pb.call(a,"prototype"),Rb.nonEnumArgs=0!=c,Rb.nonEnumShadows=!/valueOf/.test(b)}(1);var Sb=Y.internals.isObject=function(a){var b=typeof a;return a&&("function"==b||"object"==b)||!1},Tb=function(a){return a&&"object"==typeof a?Jb.call(a)==zb:!1};Lb||(Tb=function(a){return a&&"object"==typeof a?Kb.call(a,"callee"):!1});var Ub,Vb=Y.internals.isEqual=function(a,b){return m(a,b,[],[])},Wb=({}.hasOwnProperty,Array.prototype.slice),Xb=this.inherits=Y.internals.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c},Yb=Y.internals.addProperties=function(a){for(var b=[],c=1,d=arguments.length;d>c;c++)b.push(arguments[c]);for(var e=0,f=b.length;f>e;e++){var g=b[e];for(var h in g)a[h]=g[h]}},Zb=Y.internals.addRef=function(a,b){return new td(function(c){return new bc(b.getDisposable(),a.subscribe(c))})},$b={e:{}};r.prototype.compareTo=function(a){var b=this.value.compareTo(a.value);return 0===b&&(b=this.id-a.id),b};var _b=Y.internals.PriorityQueue=function(a){this.items=new Array(a),this.length=0},ac=_b.prototype;ac.isHigherPriority=function(a,b){return this.items[a].compareTo(this.items[b])<0},ac.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)}}},ac.heapify=function(a){if(+a||(a=0),!(a>=this.length||0>a)){var b=2*a+1,c=2*a+2,d=a;if(b<this.length&&this.isHigherPriority(b,d)&&(d=b),c<this.length&&this.isHigherPriority(c,d)&&(d=c),d!==a){var e=this.items[a];this.items[a]=this.items[d],this.items[d]=e,this.heapify(d)}}},ac.peek=function(){return this.items[0].value},ac.removeAt=function(b){this.items[b]=this.items[--this.length],this.items[this.length]=a,this.heapify()},ac.dequeue=function(){var a=this.peek();return this.removeAt(0),a},ac.enqueue=function(a){var b=this.length++;this.items[b]=new r(_b.count++,a),this.percolate(b)},ac.remove=function(a){for(var b=0;b<this.length;b++)if(this.items[b].value===a)return this.removeAt(b),!0;return!1},_b.count=0;var bc=Y.CompositeDisposable=function(){var a,b,c=[];if(Array.isArray(arguments[0]))c=arguments[0],b=c.length;else for(b=arguments.length,c=new Array(b),a=0;b>a;a++)c[a]=arguments[a];for(a=0;b>a;a++)if(!gc(c[a]))throw new TypeError("Not a disposable");this.disposables=c,this.isDisposed=!1,this.length=c.length},cc=bc.prototype;cc.add=function(a){this.isDisposed?a.dispose():(this.disposables.push(a),this.length++)},cc.remove=function(a){var b=!1;if(!this.isDisposed){var c=this.disposables.indexOf(a);-1!==c&&(b=!0,this.disposables.splice(c,1),this.length--,a.dispose())}return b},cc.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;for(var a=this.disposables.length,b=new Array(a),c=0;a>c;c++)b[c]=this.disposables[c];for(this.disposables=[],this.length=0,c=0;a>c;c++)b[c].dispose()}};var dc=Y.Disposable=function(a){this.isDisposed=!1,this.action=a||Z};dc.prototype.dispose=function(){this.isDisposed||(this.action(),this.isDisposed=!0)};var ec=dc.create=function(a){return new dc(a)},fc=dc.empty={dispose:Z},gc=dc.isDisposable=function(a){return a&&eb(a.dispose)},hc=dc.checkDisposed=function(a){if(a.isDisposed)throw new lb},ic=Y.SingleAssignmentDisposable=function(){this.isDisposed=!1,this.current=null};ic.prototype.getDisposable=function(){return this.current},ic.prototype.setDisposable=function(a){if(this.current)throw new Error("Disposable has already been assigned");var b=this.isDisposed;!b&&(this.current=a),b&&a&&a.dispose()},ic.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var jc=Y.SerialDisposable=function(){this.isDisposed=!1,this.current=null};jc.prototype.getDisposable=function(){return this.current},jc.prototype.setDisposable=function(a){var b=this.isDisposed;if(!b){var c=this.current;this.current=a}c&&c.dispose(),b&&a&&a.dispose()},jc.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var kc=Y.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?fc:new a(this)},b}();t.prototype.dispose=function(){this.scheduler.scheduleWithState(this,u)};var lc=Y.internals.ScheduledItem=function(a,b,c,d,e){this.scheduler=a,this.state=b,this.action=c,this.dueTime=d,this.comparer=e||bb,this.disposable=new ic};lc.prototype.invoke=function(){this.disposable.setDisposable(this.invokeCore())},lc.prototype.compareTo=function(a){return this.comparer(this.dueTime,a.dueTime)},lc.prototype.isCancelled=function(){return this.disposable.isDisposed},lc.prototype.invokeCore=function(){return this.action(this.scheduler,this.state)};var mc=Y.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(),fc}a.isScheduler=function(b){return b instanceof a};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=_,a.normalize=function(a){return 0>a&&(a=0),a},a}(),nc=mc.normalize,oc=mc.isScheduler;!function(a){function b(a,b){function c(b){e(b,function(b){var d=!1,e=!1,g=a.scheduleWithState(b,function(a,b){return d?f.remove(g):e=!0,c(b),fc});e||(f.add(g),d=!0)})}var d=b[0],e=b[1],f=new bc;return c(d),f}function c(a,b,c){function d(b){f(b,function(b,e){var f=!1,h=!1,i=a[c](b,e,function(a,b){return f?g.remove(i):h=!0,d(b),fc});h||(g.add(i),f=!0)})}var e=b[0],f=b[1],g=new bc;return d(e),g}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([a,c],b)},a.scheduleRecursiveWithRelative=function(a,b){return this.scheduleRecursiveWithRelativeAndState(b,a,d)},a.scheduleRecursiveWithRelativeAndState=function(a,b,d){return this._scheduleRelative([a,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([a,d],b,function(a,b){return c(a,b,"scheduleWithAbsoluteAndState")})}}(mc.prototype),function(){mc.prototype.schedulePeriodic=function(a,b){return this.schedulePeriodicWithState(null,a,b)},mc.prototype.schedulePeriodicWithState=function(a,b,c){if("undefined"==typeof T.setInterval)throw new nb;b=nc(b);var d=a,e=T.setInterval(function(){d=c(d)},b);return ec(function(){T.clearInterval(e)})}}(mc.prototype),function(a){a.catchError=a["catch"]=function(a){return new wc(this,a)}}(mc.prototype);var pc,qc,rc=(Y.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 ic;return this._cancel=b,b.setDisposable(this._scheduler.scheduleRecursiveWithRelativeAndState(0,this._period,a.bind(this))),b},b}(),mc.immediate=function(){function a(a,b){return b(this,a)}return new mc(_,a,qb,qb)}()),sc=mc.currentThread=function(){function a(){for(;c.length>0;){var a=c.dequeue();!a.isCancelled()&&a.invoke()}}function b(b,d){var e=new lc(this,b,d,this.now());if(c)c.enqueue(e);else{c=new _b(4),c.enqueue(e);var f=p(a)();if(c=null,f===$b)return q(f.e)}return e.disposable}var c,d=new mc(_,b,qb,qb);return d.scheduleRequired=function(){return!c},d}(),tc=function(){var a,b=Z;if(T.setTimeout)a=T.setTimeout,b=T.clearTimeout;else{if(!T.WScript)throw new nb;a=function(a,b){T.WScript.Sleep(b),a()}}return{setTimeout:a,clearTimeout:b}}(),uc=tc.setTimeout,vc=tc.clearTimeout;!function(){function a(b){if(f)uc(function(){a(b)},0);else{var c=e[b];if(c){f=!0;var d=p(c)();if(qc(b),f=!1,d===$b)return q(d.e)}}}function b(){if(!T.postMessage||T.importScripts)return!1;var a=!1,b=T.onmessage;return T.onmessage=function(){a=!0},T.postMessage("","*"),T.onmessage=b,a}function c(b){"string"==typeof b.data&&b.data.substring(0,i.length)===i&&a(b.data.substring(i.length))}var d=1,e={},f=!1;qc=function(a){delete e[a]};var g=RegExp("^"+String(Jb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),h="function"==typeof(h=X&&W&&X.setImmediate)&&!g.test(h)&&h;if(eb(h))pc=function(b){var c=d++;return e[c]=b,h(function(){a(c)}),c};else if("undefined"!=typeof process&&"[object process]"==={}.toString.call(process))pc=function(b){var c=d++;return e[c]=b,process.nextTick(function(){a(c)}),c};else if(b()){var i="ms.rx.schedule"+Math.random();T.addEventListener?T.addEventListener("message",c,!1):T.attachEvent?T.attachEvent("onmessage",c):T.onmessage=c,pc=function(a){var b=d++;return e[b]=a,T.postMessage(i+currentId,"*"),b}}else if(T.MessageChannel){var j=new T.MessageChannel;j.port1.onmessage=function(b){a(b.data)},pc=function(a){var b=d++;return e[b]=a,j.port2.postMessage(b),b}}else pc="document"in T&&"onreadystatechange"in T.document.createElement("script")?function(b){var c=T.document.createElement("script"),f=d++;return e[f]=b,c.onreadystatechange=function(){a(f),c.onreadystatechange=null,c.parentNode.removeChild(c),c=null},T.document.documentElement.appendChild(c),f}:function(b){var c=d++;return e[c]=b,uc(function(){a(c)},0),c}}();var wc=(mc.timeout=mc["default"]=function(){function a(a,b){var c=this,d=new ic,e=pc(function(){!d.isDisposed&&d.setDisposable(b(c,a))});return new bc(d,ec(function(){qc(e)}))}function b(a,b,c){var d=this,e=mc.normalize(b),f=new ic;if(0===e)return d.scheduleWithState(a,c);var g=uc(function(){!f.isDisposed&&f.setDisposable(c(d,a))},e);return new bc(f,ec(function(){vc(g)}))}function c(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}return new mc(_,a,b,c)}(),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 Xb(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 fc}}},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 ic;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}(mc)),xc=Y.Notification=function(){function a(a,b,c,d,e,f){this.kind=a,this.value=b,this.exception=c,this._accept=d,this._acceptObservable=e,this.toString=f}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 oc(a)||(a=rc),new td(function(c){return a.scheduleWithState(b,function(a,b){b._acceptObservable(c),"N"===b.kind&&c.onCompleted()})})},a}(),yc=xc.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){return new xc("N",d,null,a,b,c)}}(),zc=xc.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){return new xc("E",null,d,a,b,c)}}(),Ac=xc.createOnCompleted=function(){function a(a,b,c){return c()}function b(a){return a.onCompleted()}function c(){return"OnCompleted()"}return function(){return new xc("C",null,null,a,b,c)}}(),Bc=Y.internals.Enumerator=function(a){this._next=a};Bc.prototype.next=function(){return this._next()},Bc.prototype[rb]=function(){return this};var Cc=Y.internals.Enumerable=function(a){this._iterator=a};Cc.prototype[rb]=function(){return this._iterator()},Cc.prototype.concat=function(){var a=this;return new td(function(b){var c,d=a[rb](),e=new jc,f=rc.scheduleRecursive(function(a){if(!c){try{var f=d.next()}catch(g){return b.onError(g)}if(f.done)return b.onCompleted();var h=f.value;db(h)&&(h=Pc(h));var i=new ic;e.setDisposable(i),i.setDisposable(h.subscribe(function(a){b.onNext(a)},function(a){b.onError(a)},a))}});return new bc(e,f,ec(function(){c=!0}))})},Cc.prototype.catchError=function(){var a=this;return new td(function(b){var c,d=a[rb](),e=new jc,f=rc.scheduleRecursiveWithState(null,function(a,f){if(!c){try{var g=d.next()}catch(h){return observer.onError(h)}if(g.done)return void(null!==a?b.onError(a):b.onCompleted());var i=g.value;db(i)&&(i=Pc(i));var j=new ic;e.setDisposable(j),j.setDisposable(i.subscribe(function(a){b.onNext(a)},f,function(){b.onCompleted()}))}});return new bc(e,f,ec(function(){c=!0}))})},Cc.prototype.catchErrorWhen=function(a){var b=this;return new td(function(c){var d,e,f=new wd,g=new wd,h=a(f),i=h.subscribe(g),j=b[rb](),k=new jc,l=rc.scheduleRecursive(function(a){if(!d){try{var b=j.next()}catch(h){return c.onError(h)}if(b.done)return void(e?c.onError(e):c.onCompleted());var i=b.value;db(i)&&(i=Pc(i));var l=new ic,m=new ic;k.setDisposable(new bc(m,l)),l.setDisposable(i.subscribe(function(a){c.onNext(a)},function(b){m.setDisposable(g.subscribe(a,function(a){c.onError(a)},function(){c.onCompleted()})),f.onNext(b)},function(){c.onCompleted()}))}});return new bc(i,k,l,ec(function(){d=!0}))})};var Dc=Cc.repeat=function(a,b){return null==b&&(b=-1),new Cc(function(){var c=b;return new Bc(function(){return 0===c?sb:(c>0&&c--,{done:!1,value:a})})})},Ec=Cc.of=function(a,b,c){if(b)var d=wb(b,c,3);return new Cc(function(){var c=-1;return new Bc(function(){return++c<a.length?{done:!1,value:b?d(a[c],c,a):a[c]}:sb})})},Fc=Y.Observer=function(){};Fc.prototype.toNotifier=function(){var a=this;return function(b){return b.accept(a)}},Fc.prototype.asObserver=function(){return new Jc(this.onNext.bind(this),this.onError.bind(this),this.onCompleted.bind(this))},Fc.prototype.checked=function(){return new Kc(this)};var Gc=Fc.create=function(a,b,c){return a||(a=Z),b||(b=cb),c||(c=Z),new Jc(a,b,c)};Fc.fromNotifier=function(a,b){return new Jc(function(c){return a.call(b,yc(c))},function(c){return a.call(b,zc(c))},function(){return a.call(b,Ac())})},Fc.prototype.notifyOn=function(a){return new Mc(a,this)},Fc.prototype.makeSafe=function(a){return new AnonymousSafeObserver(this._onNext,this._onError,this._onCompleted,a)};var Hc,Ic=Y.internals.AbstractObserver=function(a){function b(){this.isStopped=!1,a.call(this)}return Xb(b,a),b.prototype.next=pb,b.prototype.error=pb,b.prototype.completed=pb,b.prototype.onNext=function(a){this.isStopped||this.next(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.error(a))},b.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.completed())},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.error(a),!0)},b}(Fc),Jc=Y.AnonymousObserver=function(a){function b(b,c,d){a.call(this),this._onNext=b,this._onError=c,this._onCompleted=d}return Xb(b,a),b.prototype.next=function(a){this._onNext(a)},b.prototype.error=function(a){this._onError(a)},b.prototype.completed=function(){this._onCompleted()},b}(Ic),Kc=function(a){function b(b){a.call(this),this._observer=b,this._state=0}Xb(b,a);var c=b.prototype;return c.onNext=function(a){this.checkAccess();var b=p(this._observer.onNext).call(this._observer,a);this._state=0,b===$b&&q(b.e)},c.onError=function(a){this.checkAccess();var b=p(this._observer.onError).call(this._observer,a);this._state=2,b===$b&&q(b.e)},c.onCompleted=function(){this.checkAccess();var a=p(this._observer.onCompleted).call(this._observer);this._state=2,a===$b&&q(a.e)},c.checkAccess=function(){if(1===this._state)throw new Error("Re-entrancy detected");if(2===this._state)throw new Error("Observer completed");0===this._state&&(this._state=1)},b}(Fc),Lc=Y.internals.ScheduledObserver=function(a){function b(b,c){a.call(this),this.scheduler=b,this.observer=c,this.isAcquired=!1,this.hasFaulted=!1,this.queue=[],this.disposable=new jc}return Xb(b,a),b.prototype.next=function(a){var b=this;this.queue.push(function(){b.observer.onNext(a)})},b.prototype.error=function(a){var b=this;this.queue.push(function(){b.observer.onError(a)})},b.prototype.completed=function(){var a=this;this.queue.push(function(){a.observer.onCompleted()})},b.prototype.ensureActive=function(){var a=!1,b=this;!this.hasFaulted&&this.queue.length>0&&(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}(Ic),Mc=function(a){function b(b,c,d){a.call(this,b,c),this._cancel=d}return Xb(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}(Lc),Nc=Y.Observable=function(){function a(a){if(Y.config.longStackSupport&&fb){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 Hc=a.prototype,Hc.subscribe=Hc.forEach=function(a,b,c){return this._subscribe("object"==typeof a?a:Gc(a,b,c))},Hc.subscribeOnNext=function(a,b){return this._subscribe(Gc("undefined"!=typeof b?function(c){a.call(b,c)}:a))},Hc.subscribeOnError=function(a,b){return this._subscribe(Gc(null,"undefined"!=typeof b?function(c){a.call(b,c)}:a))},Hc.subscribeOnCompleted=function(a,b){return this._subscribe(Gc(null,null,"undefined"!=typeof b?function(){a.call(b)}:a))},a}(),Oc=Y.ObservableBase=function(a){function b(a){return a&&eb(a.dispose)?a:eb(a)?ec(a):fc}function c(a,c){var d=c[0],e=c[1],f=p(e.subscribeCore).call(e,d);return f!==$b||d.fail($b.e)?void d.setDisposable(b(f)):q($b.e)}function d(a){var b=new ud(a),d=[b,this];return sc.scheduleRequired()?sc.scheduleWithState(d,c):c(null,d),b}function e(){a.call(this,d)}return Xb(e,a),e.prototype.subscribeCore=pb,e}(Nc);Hc.observeOn=function(a){var b=this;return new td(function(c){return b.subscribe(new Mc(a,c))},b)},Hc.subscribeOn=function(a){var b=this;return new td(function(c){var d=new ic,e=new jc;return e.setDisposable(d),d.setDisposable(a.schedule(function(){e.setDisposable(new t(a,b.subscribe(c)))})),e},b)};var Pc=Nc.fromPromise=function(a){return Rc(function(){var b=new Y.AsyncSubject;return a.then(function(a){b.onNext(a),b.onCompleted()},b.onError.bind(b)),b})};Hc.toPromise=function(a){if(a||(a=Y.config.Promise),!a)throw new nb("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)})})};var Qc=function(a){function b(b){this.source=b,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new v(a))},b}(Oc);v.prototype.onNext=function(a){this.isStopped||this.a.push(a)},v.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.observer.onError(a))},v.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.observer.onNext(this.a),this.observer.onCompleted())},v.prototype.dispose=function(){this.isStopped=!0},v.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},Hc.toArray=function(){return new Qc(this)},Nc.create=Nc.createWithDisposable=function(a,b){return new td(a,b)};var Rc=Nc.defer=function(a){return new td(function(b){var c;try{c=a()}catch(d){return gd(d).subscribe(b)}return db(c)&&(c=Pc(c)),c.subscribe(b)})},Sc=function(a){function b(b){this.scheduler=b,a.call(this)}function c(a,b){this.observer=a,this.parent=b}function d(a,b){b.onCompleted()}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.parent.scheduler.scheduleWithState(this.observer,d)},b}(Oc),Tc=Nc.empty=function(a){return oc(a)||(a=rc),new Sc(a)},Uc=function(a){function b(b,c,d){this.iterable=b,this.mapper=c,this.scheduler=d,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new Vc(a,this);return b.run()},b}(Oc),Vc=function(){function a(a,b){this.observer=a,this.parent=b}return a.prototype.run=function(){function a(a,b){try{var f=c.next()}catch(g){return d.onError(g)}if(f.done)return d.onCompleted();var h=f.value;if(e)try{h=e(h,a)}catch(g){return d.onError(g)}d.onNext(h),b(a+1)}var b=Object(this.parent.iterable),c=B(b),d=this.observer,e=this.parent.mapper;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}(),Wc=Math.pow(2,53)-1;w.prototype[rb]=function(){return new x(this._s)},x.prototype[rb]=function(){return this},x.prototype.next=function(){return this._i<this._l?{done:!1,value:this._s.charAt(this._i++)}:sb},y.prototype[rb]=function(){return new z(this._a)},z.prototype[rb]=function(){return this},z.prototype.next=function(){return this._i<this._l?{done:!1,value:this._a[this._i++]}:sb};var Xc=Nc.from=function(a,b,c,d){if(null==a)throw new Error("iterable cannot be null.");if(b&&!eb(b))throw new Error("mapFn when provided must be a function");if(b)var e=wb(b,c,2);return oc(d)||(d=sc),new Uc(a,e,d)},Yc=function(a){function b(b,c){this.args=b,this.scheduler=c,a.call(this)
3
- }return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new E(a,this);return b.run()},b}(Oc);E.prototype.run=function(){function a(a,e){d>a?(b.onNext(c[a]),e(a+1)):b.onCompleted()}var b=this.observer,c=this.parent.args,d=c.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)};var Zc=Nc.fromArray=function(a,b){return oc(b)||(b=sc),new Yc(a,b)};Nc.generate=function(a,b,c,d,e){return oc(e)||(e=sc),new td(function(f){var g=!0;return e.scheduleRecursiveWithState(a,function(a,e){var h,i;try{g?g=!1:a=c(a),h=b(a),h&&(i=d(a))}catch(j){return f.onError(j)}h?(f.onNext(i),e(a)):f.onCompleted()})})};var $c=function(a){function b(){a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(){return fc},b}(Oc),_c=Nc.never=function(){return new $c};Nc.of=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return new Yc(b,sc)},Nc.ofWithScheduler=function(a){for(var b=arguments.length,c=new Array(b-1),d=1;b>d;d++)c[d-1]=arguments[d];return new Yc(c,a)};var ad=function(a){function b(b,c){this.obj=b,this.keys=Object.keys(b),this.scheduler=c,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new G(a,this);return b.run()},b}(Oc);G.prototype.run=function(){function a(a,f){if(e>a){var g=d[a];b.onNext([g,c[g]]),f(a+1)}else b.onCompleted()}var b=this.observer,c=this.parent.obj,d=this.parent.keys,e=d.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},Nc.pairs=function(a,b){return b||(b=sc),new ad(a,b)};var bd=function(a){function b(b,c,d){this.start=b,this.count=c,this.scheduler=d,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new cd(a,this);return b.run()},b}(Oc),cd=function(){function a(a,b){this.observer=a,this.parent=b}return a.prototype.run=function(){function a(a,e){c>a?(d.onNext(b+a),e(a+1)):d.onCompleted()}var b=this.parent.start,c=this.parent.count,d=this.observer;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}();Nc.range=function(a,b,c){return oc(c)||(c=sc),new bd(a,b,c)};var dd=function(a){function b(b,c,d){this.value=b,this.repeatCount=null==c?-1:c,this.scheduler=d,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new H(a,this);return b.run()},b}(Oc);H.prototype.run=function(){function a(a,d){return(-1===a||a>0)&&(b.onNext(c),a>0&&a--),0===a?b.onCompleted():void d(a)}var b=this.observer,c=this.parent.value;return this.parent.scheduler.scheduleRecursiveWithState(this.parent.repeatCount,a)},Nc.repeat=function(a,b,c){return oc(c)||(c=sc),new dd(a,b,c)};var ed=function(a){function b(b,c){this.value=b,this.scheduler=c,a.call(this)}function c(a,b){this.observer=a,this.parent=b}function d(a,b){var c=b[0],d=b[1];d.onNext(c),d.onCompleted()}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.parent.scheduler.scheduleWithState([this.parent.value,this.observer],d)},b}(Oc),fd=(Nc["return"]=Nc.just=Nc.returnValue=function(a,b){return oc(b)||(b=rc),new ed(a,b)},function(a){function b(b,c){this.error=b,this.scheduler=c,a.call(this)}function c(a,b){this.observer=a,this.parent=b}function d(a,b){var c=b[0],d=b[1];d.onError(c)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.parent.scheduler.scheduleWithState([this.parent.error,this.observer],d)},b}(Oc)),gd=Nc["throw"]=Nc.throwError=Nc.throwException=function(a,b){return oc(b)||(b=rc),new fd(a,b)};Nc.using=function(a,b){return new td(function(c){var d,e,f=fc;try{d=a(),d&&(f=d),e=b(d)}catch(g){return new bc(gd(g).subscribe(c),f)}return new bc(e.subscribe(c),f)})},Hc.amb=function(a){var b=this;return new td(function(c){function d(){f||(f=g,j.dispose())}function e(){f||(f=h,i.dispose())}var f,g="L",h="R",i=new ic,j=new ic;return db(a)&&(a=Pc(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 bc(i,j)})},Nc.amb=function(){function a(a,b){return a.amb(b)}var b=_c(),c=[];if(Array.isArray(arguments[0]))c=arguments[0];else for(var d=0,e=arguments.length;e>d;d++)c.push(arguments[d]);for(var d=0,e=c.length;e>d;d++)b=a(b,c[d]);return b},Hc["catch"]=Hc.catchError=Hc.catchException=function(a){return"function"==typeof a?I(this,a):hd([this,a])};var hd=Nc.catchError=Nc["catch"]=Nc.catchException=function(){var a=[];if(Array.isArray(arguments[0]))a=arguments[0];else for(var b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return Ec(a).catchError()};Hc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return Array.isArray(b[0])?b[0].unshift(this):b.unshift(this),id.apply(this,b)};var id=Nc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.pop();return Array.isArray(b[0])&&(b=b[0]),new td(function(a){function c(b){if(h[b]=!0,i||(i=h.every($))){try{var c=d.apply(null,k)}catch(e){return a.onError(e)}a.onNext(c)}else j.filter(function(a,c){return c!==b}).every($)&&a.onCompleted()}function e(b){j[b]=!0,j.every($)&&a.onCompleted()}for(var f=b.length,g=function(){return!1},h=n(f,g),i=!1,j=n(f,g),k=new Array(f),l=new Array(f),m=0;f>m;m++)!function(d){var f=b[d],g=new ic;db(f)&&(f=Pc(f)),g.setDisposable(f.subscribe(function(a){k[d]=a,c(d)},function(b){a.onError(b)},function(){e(d)})),l[d]=g}(m);return new bc(l)},this)};Hc.concat=function(){for(var a=[],b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return a.unshift(this),jd.apply(null,a)};var jd=Nc.concat=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(arguments.length);for(var b=0,c=arguments.length;c>b;b++)a[b]=arguments[b]}return Ec(a).concat()};Hc.concatAll=Hc.concatObservable=function(){return this.merge(1)};var kd=function(a){function b(b,c){this.source=b,this.maxConcurrent=c,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new bc;return b.add(this.source.subscribe(new ld(a,this.maxConcurrent,b))),b},b}(Oc),ld=function(){function a(a,b,c){this.o=a,this.max=b,this.g=c,this.done=!1,this.q=[],this.activeCount=0,this.isStopped=!1}function b(a,b){this.parent=a,this.sad=b,this.isStopped=!1}return a.prototype.handleSubscribe=function(a){var c=new ic;this.g.add(c),db(a)&&(a=Pc(a)),c.setDisposable(a.subscribe(new b(this,c)))},a.prototype.onNext=function(a){this.isStopped||(this.activeCount<this.max?(this.activeCount++,this.handleSubscribe(a)):this.q.push(a))},a.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},a.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,0===this.activeCount&&this.o.onCompleted())},a.prototype.dispose=function(){this.isStopped=!0},a.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},b.prototype.onCompleted=function(){if(!this.isStopped){this.isStopped=!0;var a=this.parent;a.g.remove(this.sad),a.q.length>0?a.handleSubscribe(a.q.shift()):(a.activeCount--,a.done&&0===a.activeCount&&a.o.onCompleted())}},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},a}();Hc.merge=function(a){return"number"!=typeof a?md(this,a):new kd(this,a)};var md=Nc.merge=function(){var a,b,c=[],d=arguments.length;if(arguments[0])if(oc(arguments[0]))for(a=arguments[0],b=1;d>b;b++)c.push(arguments[b]);else for(a=rc,b=0;d>b;b++)c.push(arguments[b]);else for(a=rc,b=1;d>b;b++)c.push(arguments[b]);return Array.isArray(c[0])&&(c=c[0]),F(a,c).mergeAll()},nd=Y.CompositeError=function(a){this.name="NotImplementedError",this.innerErrors=a,this.message="This contains multiple errors. Check the innerErrors",Error.call(this)};nd.prototype=Error.prototype,Nc.mergeDelayError=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}var d=F(null,a);return new td(function(a){function b(){0===g.length?a.onCompleted():a.onError(1===g.length?g[0]:new nd(g))}var c=new bc,e=new ic,f=!1,g=[];return c.add(e),e.setDisposable(d.subscribe(function(d){var e=new ic;c.add(e),db(d)&&(d=Pc(d)),e.setDisposable(d.subscribe(function(b){a.onNext(b)},function(a){g.push(a),c.remove(e),f&&1===c.length&&b()},function(){c.remove(e),f&&1===c.length&&b()}))},function(a){g.push(a),f=!0,1===c.length&&b()},function(){f=!0,1===c.length&&b()})),c})};var od=function(a){function b(b){this.source=b,a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){var b=new bc,c=new ic;return b.add(c),c.setDisposable(this.source.subscribe(new pd(a,b))),b},b}(Oc),pd=function(){function a(a,b){this.o=a,this.g=b,this.isStopped=!1,this.done=!1}function b(a,b,c){this.parent=a,this.g=b,this.sad=c,this.isStopped=!1}return a.prototype.onNext=function(a){if(!this.isStopped){var c=new ic;this.g.add(c),db(a)&&(a=Pc(a)),c.setDisposable(a.subscribe(new b(this,this.g,c)))}},a.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},a.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,1===this.g.length&&this.o.onCompleted())},a.prototype.dispose=function(){this.isStopped=!0},a.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},b.prototype.onCompleted=function(){if(!this.isStopped){var a=this.parent;this.isStopped=!0,a.g.remove(this.sad),a.done&&1===a.g.length&&a.o.onCompleted()}},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},a}();Hc.mergeAll=Hc.mergeObservable=function(){return new od(this)},Hc.onErrorResumeNext=function(a){if(!a)throw new Error("Second observable is required");return qd([this,a])};var qd=Nc.onErrorResumeNext=function(){var a=[];if(Array.isArray(arguments[0]))a=arguments[0];else for(var b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return new td(function(b){var c=0,d=new jc,e=rc.scheduleRecursive(function(e){var f,g;c<a.length?(f=a[c++],db(f)&&(f=Pc(f)),g=new ic,d.setDisposable(g),g.setDisposable(f.subscribe(b.onNext.bind(b),e,e))):b.onCompleted()});return new bc(d,e)})};Hc.skipUntil=function(a){var b=this;return new td(function(c){var d=!1,e=new bc(b.subscribe(function(a){d&&c.onNext(a)},function(a){c.onError(a)},function(){d&&c.onCompleted()}));db(a)&&(a=Pc(a));var f=new ic;return e.add(f),f.setDisposable(a.subscribe(function(){d=!0,f.dispose()},function(a){c.onError(a)},function(){f.dispose()})),e},b)},Hc["switch"]=Hc.switchLatest=function(){var a=this;return new td(function(b){var c=!1,d=new jc,e=!1,f=0,g=a.subscribe(function(a){var g=new ic,h=++f;c=!0,d.setDisposable(g),db(a)&&(a=Pc(a)),g.setDisposable(a.subscribe(function(a){f===h&&b.onNext(a)},function(a){f===h&&b.onError(a)},function(){f===h&&(c=!1,e&&b.onCompleted())}))},function(a){b.onError(a)},function(){e=!0,!c&&b.onCompleted()});return new bc(g,d)},a)},Hc.takeUntil=function(a){var b=this;return new td(function(c){return db(a)&&(a=Pc(a)),new bc(b.subscribe(c),a.subscribe(function(){c.onCompleted()},function(a){c.onError(a)},Z))},b)},Hc.withLatestFrom=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.pop(),e=this;if("undefined"==typeof e)throw new Error("Source observable not found for withLatestFrom().");if("function"!=typeof d)throw new Error("withLatestFrom() expects a resultSelector function.");return Array.isArray(b[0])&&(b=b[0]),new td(function(a){for(var c=function(){return!1},f=b.length,g=n(f,c),h=!1,i=new Array(f),j=new Array(f+1),k=0;f>k;k++)!function(c){var d=b[c],e=new ic;db(d)&&(d=Pc(d)),e.setDisposable(d.subscribe(function(a){i[c]=a,g[c]=!0,h=g.every($)},a.onError.bind(a),function(){})),j[c]=e}(k);var l=new ic;return l.setDisposable(e.subscribe(function(b){var c,e=[b].concat(i);if(h){try{c=d.apply(null,e)}catch(f){return void a.onError(f)}a.onNext(c)}},a.onError.bind(a),function(){a.onCompleted()})),j[f]=l,new bc(j)},this)},Hc.zip=function(){if(Array.isArray(arguments[0]))return J.apply(this,arguments);for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=this,e=b.pop();return b.unshift(d),new td(function(a){function c(b){var c,f;if(h.every(function(a){return a.length>0})){try{f=h.map(function(a){return a.shift()}),c=e.apply(d,f)}catch(g){return void a.onError(g)}a.onNext(c)}else i.filter(function(a,c){return c!==b}).every($)&&a.onCompleted()}function f(b){i[b]=!0,i.every(function(a){return a})&&a.onCompleted()}for(var g=b.length,h=n(g,L),i=n(g,K),j=new Array(g),k=0;g>k;k++)!function(d){var e=b[d],g=new ic;db(e)&&(e=Pc(e)),g.setDisposable(e.subscribe(function(a){h[d].push(a),c(d)},function(b){a.onError(b)},function(){f(d)})),j[d]=g}(k);return new bc(j)},d)},Nc.zip=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.shift();return d.zip.apply(d,b)},Nc.zipArray=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return new td(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($))return void b.onCompleted()}function d(a){return g[a]=!0,g.every($)?void b.onCompleted():void 0}for(var e=a.length,f=n(e,function(){return[]}),g=n(e,function(){return!1}),h=new Array(e),i=0;e>i;i++)!function(e){h[e]=new ic,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 bc(h)})},Hc.asObservable=function(){var a=this;return new td(function(b){return a.subscribe(b)},this)},Hc.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})},Hc.dematerialize=function(){var a=this;return new td(function(b){return a.subscribe(function(a){return a.accept(b)},function(a){b.onError(a)},function(){b.onCompleted()})},this)},Hc.distinctUntilChanged=function(a,b){var c=this;return b||(b=ab),new td(function(d){var e,f=!1;return c.subscribe(function(c){var g=c;if(a)try{g=a(c)}catch(h){return void d.onError(h)}if(f)try{var i=b(e,g)}catch(h){return void d.onError(h)}f&&i||(f=!0,e=g,d.onNext(c))},function(a){d.onError(a)},function(){d.onCompleted()})},this)},Hc["do"]=Hc.tap=Hc.doAction=function(a,b,c){var d=this;return new td(function(e){var f=!a||eb(a)?Gc(a||Z,b||Z,c||Z):a;return d.subscribe(function(a){try{f.onNext(a)}catch(b){e.onError(b)}e.onNext(a)},function(a){try{f.onError(a)}catch(b){e.onError(b)}e.onError(a)},function(){try{f.onCompleted()}catch(a){e.onError(a)}e.onCompleted()})},this)},Hc.doOnNext=Hc.tapOnNext=function(a,b){return this.tap("undefined"!=typeof b?function(c){a.call(b,c)}:a)},Hc.doOnError=Hc.tapOnError=function(a,b){return this.tap(Z,"undefined"!=typeof b?function(c){a.call(b,c)}:a)},Hc.doOnCompleted=Hc.tapOnCompleted=function(a,b){return this.tap(Z,null,"undefined"!=typeof b?function(){a.call(b)}:a)},Hc["finally"]=Hc.ensure=function(a){var b=this;return new td(function(c){var d;try{d=b.subscribe(c)}catch(e){throw a(),e}return ec(function(){try{d.dispose()}catch(b){throw b}finally{a()}})},this)},Hc.finallyAction=function(a){return this.ensure(a)},Hc.ignoreElements=function(){var a=this;return new td(function(b){return a.subscribe(Z,function(a){b.onError(a)},function(){b.onCompleted()})},a)},Hc.materialize=function(){var a=this;return new td(function(b){return a.subscribe(function(a){b.onNext(yc(a))},function(a){b.onNext(zc(a)),b.onCompleted()},function(){b.onNext(Ac()),b.onCompleted()})},a)},Hc.repeat=function(a){return Dc(this,a).concat()},Hc.retry=function(a){return Dc(this,a).catchError()},Hc.retryWhen=function(a){return Dc(this).catchErrorWhen(a)},Hc.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 td(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)},Hc.skipLast=function(a){if(0>a)throw new mb;var b=this;return new td(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)},Hc.startWith=function(){var a,b=0;arguments.length&&oc(arguments[0])?(a=arguments[0],b=1):a=rc;for(var c=[],d=b,e=arguments.length;e>d;d++)c.push(arguments[d]);return Ec([Zc(c,a),this]).concat()},Hc.takeLast=function(a){if(0>a)throw new mb;var b=this;return new td(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)},Hc.takeLastBuffer=function(a){var b=this;return new td(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)},Hc.windowWithCount=function(a,b){var c=this;if(+a||(a=0),1/0===Math.abs(a)&&(a=0),0>=a)throw new mb;if(null==b&&(b=a),+b||(b=0),1/0===Math.abs(b)&&(b=0),0>=b)throw new mb;return new td(function(d){function e(){var a=new wd;i.push(a),d.onNext(Zb(a,g))}var f=new ic,g=new kc(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)},Hc.selectConcat=Hc.concatMap=function(a,b,c){return eb(a)&&eb(b)?this.concatMap(function(c,d){var e=a(c,d);return db(e)&&(e=Pc(e)),(ub(e)||tb(e))&&(e=Xc(e)),e.map(function(a,e){return b(c,a,d,e)})}):eb(a)?M(this,a,c):M(this,function(){return a})},Hc.concatMapObserver=Hc.selectConcatObserver=function(a,b,c,d){var e=this,f=wb(a,d,2),g=wb(b,d,1),h=wb(c,d,0);return new td(function(a){var b=0;return e.subscribe(function(c){var d;try{d=f(c,b++)}catch(e){return void a.onError(e)}db(d)&&(d=Pc(d)),a.onNext(d)},function(b){var c;try{c=g(b)}catch(d){return void a.onError(d)}db(c)&&(c=Pc(c)),a.onNext(c),a.onCompleted()},function(){var b;try{b=h()}catch(c){return void a.onError(c)}db(b)&&(b=Pc(b)),a.onNext(b),a.onCompleted()})},this).concatAll()},Hc.defaultIfEmpty=function(b){var c=this;return b===a&&(b=null),new td(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)},O.prototype.push=function(a){var b=-1===N(this.set,a,this.comparer);return b&&this.set.push(a),b},Hc.distinct=function(a,b){var c=this;return b||(b=ab),new td(function(d){var e=new O(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)};var rd=function(a){function b(b,c,d){this.source=b,this.selector=wb(c,d,3),a.call(this)}return Xb(b,a),b.prototype.internalMap=function(a,c){var d=this;return new b(this.source,function(b,c,e){return a.call(this,d.selector(b,c,e),c,e)},c)},b.prototype.subscribeCore=function(a){return this.source.subscribe(new P(a,this.selector,this))},b}(Oc);P.prototype.onNext=function(a){if(!this.isStopped){var b=p(this.selector).call(this,a,this.i++,this.source);return b===$b?this.observer.onError(b.e):void this.observer.onNext(b)}},P.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.observer.onError(a))},P.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.observer.onCompleted())},P.prototype.dispose=function(){this.isStopped=!0},P.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},Hc.map=Hc.select=function(a,b){var c="function"==typeof a?a:function(){return a};return this instanceof rd?this.internalMap(c,b):new rd(this,c,b)},Hc.pluck=function(){var b=arguments,c=arguments.length;if(0===c)throw new Error("List of properties cannot be empty.");return this.map(function(d){for(var e=d,f=0;c>f;f++){var g=e[b[f]];if("undefined"==typeof g)return a;e=g}return e})},Hc.flatMapObserver=Hc.selectManyObserver=function(a,b,c,d){var e=this;return new td(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)}db(c)&&(c=Pc(c)),f.onNext(c)},function(a){var c;try{c=b.call(d,a)}catch(e){return void f.onError(e)}db(c)&&(c=Pc(c)),f.onNext(c),f.onCompleted()},function(){var a;try{a=c.call(d)}catch(b){return void f.onError(b)}db(a)&&(a=Pc(a)),f.onNext(a),f.onCompleted()})},e).mergeAll()},Hc.selectMany=Hc.flatMap=function(a,b,c){return eb(a)&&eb(b)?this.flatMap(function(c,d){var e=a(c,d);return db(e)&&(e=Pc(e)),(ub(e)||tb(e))&&(e=Xc(e)),e.map(function(a,e){return b(c,a,d,e)})},c):eb(a)?Q(this,a,c):Q(this,function(){return a})},Hc.selectSwitch=Hc.flatMapLatest=Hc.switchMap=function(a,b){return this.select(a,b).switchLatest()},Hc.skip=function(a){if(0>a)throw new mb;var b=this;return new td(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)},Hc.skipWhile=function(a,b){var c=this,d=wb(a,b,3);return new td(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)},Hc.take=function(a,b){if(0>a)throw new mb;if(0===a)return Tc(b);var c=this;return new td(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)},Hc.takeWhile=function(a,b){var c=this,d=wb(a,b,3);return new td(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)};var sd=function(a){function b(b,c,d){this.source=b,this.predicate=wb(c,d,3),a.call(this)}return Xb(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new R(a,this.predicate,this))},b.prototype.internalFilter=function(a,c){var d=this;return new b(this.source,function(b,c,e){return d.predicate(b,c,e)&&a.call(this,b,c,e)},c)},b}(Oc);R.prototype.onNext=function(a){if(!this.isStopped){var b=p(this.predicate).call(this,a,this.i++,this.source);return b===$b?this.observer.onError(b.e):void(b&&this.observer.onNext(a))}},R.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.observer.onError(a))},R.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.observer.onCompleted())},R.prototype.dispose=function(){this.isStopped=!0},R.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},Hc.filter=Hc.where=function(a,b){return this instanceof sd?this.internalFilter(a,b):new sd(this,a,b)},Hc.transduce=function(a){function b(a){return{"@@transducer/init":function(){return a},"@@transducer/step":function(a,b){return a.onNext(b)},"@@transducer/result":function(a){return a.onCompleted()}}}var c=this;return new td(function(d){var e=a(b(d));return c.subscribe(function(a){try{e["@@transducer/step"](d,a)}catch(b){d.onError(b)}},function(a){d.onError(a)},function(){e["@@transducer/result"](d)})},c)};var td=Y.AnonymousObservable=function(a){function b(a){return a&&eb(a.dispose)?a:eb(a)?ec(a):fc}function c(a,c){var d=c[0],e=c[1],f=p(e)(d);return f!==$b||d.fail($b.e)?void d.setDisposable(b(f)):q($b.e)}function d(b,d){function e(a){var d=new ud(a),e=[d,b];return sc.scheduleRequired()?sc.scheduleWithState(e,c):c(null,e),d}this.source=d,a.call(this,e)}return Xb(d,a),d}(Nc),ud=function(a){function b(b){a.call(this),this.observer=b,this.m=new ic}Xb(b,a);var c=b.prototype;return c.next=function(a){var b=p(this.observer.onNext).call(this.observer,a);b===$b&&(this.dispose(),q(b.e))},c.error=function(a){var b=p(this.observer.onError).call(this.observer,a);this.dispose(),b===$b&&q(b.e)},c.completed=function(){var a=p(this.observer.onCompleted).call(this.observer);this.dispose(),a===$b&&q(a.e)},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}(Ic),vd=function(a,b){this.subject=a,this.observer=b};vd.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 wd=Y.Subject=function(a){function c(a){return hc(this),this.isStopped?this.hasError?(a.onError(this.error),fc):(a.onCompleted(),fc):(this.observers.push(a),new vd(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.observers=[],this.hasError=!1}return Xb(d,a),Yb(d.prototype,Fc.prototype,{hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(hc(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=b(this.observers),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(hc(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(hc(this),!this.isStopped)for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onNext(a)},dispose:function(){this.isDisposed=!0,this.observers=null}}),d.create=function(a,b){return new xd(a,b)},d}(Nc),xd=(Y.AsyncSubject=function(a){function c(a){return hc(this),this.isStopped?(this.hasError?a.onError(this.error):this.hasValue?(a.onNext(this.value),a.onCompleted()):a.onCompleted(),fc):(this.observers.push(a),new vd(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.hasValue=!1,this.observers=[],this.hasError=!1}return Xb(d,a),Yb(d.prototype,Fc,{hasObservers:function(){return hc(this),this.observers.length>0},onCompleted:function(){var a,c;if(hc(this),!this.isStopped){this.isStopped=!0;var d=b(this.observers),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(hc(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){hc(this),this.isStopped||(this.value=a,this.hasValue=!0)},dispose:function(){this.isDisposed=!0,this.observers=null,this.exception=null,this.value=null}}),d}(Nc),Y.AnonymousSubject=function(a){function b(a){return this.observable.subscribe(a)}function c(c,d){this.observer=c,this.observable=d,a.call(this,b)}return Xb(c,a),Yb(c.prototype,Fc.prototype,{onCompleted:function(){this.observer.onCompleted()},onError:function(a){this.observer.onError(a)},onNext:function(a){this.observer.onNext(a)}}),c}(Nc));"function"==typeof define&&"object"==typeof define.amd&&define.amd?(T.Rx=Y,define(function(){return Y})):U&&V?W?(V.exports=Y).Rx=Y:U.Rx=Y:T.Rx=Y;var yd=g()}).call(this);
2
+ (function(a){function b(a){for(var b=[],c=0,d=a.length;d>c;c++)b.push(a[c]);return b}function c(){try{return R.apply(this,arguments)}catch(a){return hb.e=a,hb}}function d(a){if(!gb(a))throw new TypeError("fn must be a function");return R=a,c}function e(a){throw a}function f(a,b){if(ib&&b.stack&&"object"==typeof a&&null!==a&&a.stack&&-1===a.stack.indexOf(mb)){for(var c=[],d=b;d;d=d.source)d.stack&&c.unshift(d.stack);c.unshift(a.stack);var e=c.join("\n"+mb+"\n");a.stack=g(e)}}function g(a){for(var b=a.split("\n"),c=[],d=0,e=b.length;e>d;d++){var f=b[d];h(f)||i(f)||!f||c.push(f)}return c.join("\n")}function h(a){var b=k(a);if(!b)return!1;var c=b[0],d=b[1];return c===kb&&d>=lb&&Nd>=d}function i(a){return-1!==a.indexOf("(module.js:")||-1!==a.indexOf("(node.js:")}function j(){if(ib)try{throw new Error}catch(a){var b=a.stack.split("\n"),c=b[0].indexOf("@")>0?b[1]:b[2],d=k(c);if(!d)return;return kb=d[0],d[1]}}function k(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 l(a){var b=[];if(!Wb(a))return b;Vb.nonEnumArgs&&a.length&&Xb(a)&&(a=Zb.call(a));var c=Vb.enumPrototypes&&"function"==typeof a,d=Vb.enumErrorProps&&(a===Pb||a instanceof Error);for(var e in a)c&&"prototype"==e||d&&("message"==e||"name"==e)||b.push(e);if(Vb.nonEnumShadows&&a!==Qb){var f=a.constructor,g=-1,h=Bb;if(a===(f&&f.prototype))var i=a===Rb?Lb:a===Pb?Gb:Mb.call(a),j=Ub[i];for(;++g<h;)e=Ab[g],j&&j[e]||!Nb.call(a,e)||b.push(e)}return b}function m(a,b,c){for(var d=-1,e=c(a),f=e.length;++d<f;){var g=e[d];if(b(a[g],g,a)===!1)break}return a}function n(a,b){return m(a,b,l)}function o(a){return"function"!=typeof a.toString&&"string"==typeof(a+"")}function p(a,b,c,d){if(a===b)return 0!==a||1/a==1/b;var e=typeof a,f=typeof b;if(a===a&&(null==a||null==b||"function"!=e&&"object"!=e&&"function"!=f&&"object"!=f))return!1;var g=Mb.call(a),h=Mb.call(b);if(g==Cb&&(g=Jb),h==Cb&&(h=Jb),g!=h)return!1;switch(g){case Eb:case Fb:return+a==+b;case Ib:return a!=+a?b!=+b:0==a?1/a==1/b:a==+b;case Kb:case Lb:return a==String(b)}var i=g==Db;if(!i){if(g!=Jb||!Vb.nodeClass&&(o(a)||o(b)))return!1;var j=!Vb.argsObject&&Xb(a)?Object:a.constructor,k=!Vb.argsObject&&Xb(b)?Object:b.constructor;if(!(j==k||Nb.call(a,"constructor")&&Nb.call(b,"constructor")||gb(j)&&j instanceof j&&gb(k)&&k instanceof k||!("constructor"in a&&"constructor"in b)))return!1}c||(c=[]),d||(d=[]);for(var l=c.length;l--;)if(c[l]==a)return d[l]==b;var m=0,q=!0;if(c.push(a),d.push(b),i){if(l=a.length,m=b.length,q=m==l)for(;m--;){var r=b[m];if(!(q=p(a[m],r,c,d)))break}}else n(b,function(b,e,f){return Nb.call(f,e)?(m++,q=Nb.call(a,e)&&p(a[e],b,c,d)):void 0}),q&&n(a,function(a,b,c){return Nb.call(c,b)?q=--m>-1:void 0});return c.pop(),d.pop(),q}function q(a,b){for(var c=new Array(a),d=0;a>d;d++)c[d]=b();return c}function r(a,b){this.scheduler=a,this.disposable=b,this.isDisposed=!1}function s(a,b){b.isDisposed||(b.isDisposed=!0,b.disposable.dispose())}function t(a){this._s=a}function u(a){this._s=a,this._l=a.length,this._i=0}function v(a){this._a=a}function w(a){this._a=a,this._l=A(a),this._i=0}function x(a){return"number"==typeof a&&Z.isFinite(a)}function y(b){var c,d=b[ub];if(!d&&"string"==typeof b)return c=new t(b),c[ub]();if(!d&&b.length!==a)return c=new v(b),c[ub]();if(!d)throw new TypeError("Object is not iterable");return b[ub]()}function z(a){var b=+a;return 0===b?b:isNaN(b)?b:0>b?-1:1}function A(a){var b=+a.length;return isNaN(b)?0:0!==b&&x(b)?(b=z(b)*Math.floor(Math.abs(b)),0>=b?0:b>_c?_c:b):b}function B(a,b){this.observer=a,this.parent=b}function C(a,b){return oc(a)||(a=sc),new bd(b,a)}function D(a,b){this.observer=a,this.parent=b}function E(a,b){this.observer=a,this.parent=b}function F(a,b){return a.amb(b)}function G(a,b){return new Id(function(c){var d=new ic,e=new jc;return e.setDisposable(d),d.setDisposable(a.subscribe(new nd(c,e,b))),e},a)}function H(){return!1}function I(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return b}function H(){return!1}function H(){return!1}function J(){return[]}function I(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return b}function H(){return!1}function J(){return[]}function I(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return b}function K(a){return function(b){return a.subscribe(b)}}function L(a){return a.toArray()}function M(a){return a.length>0}function N(a,b){this.o=a,this.accumulator=b.accumulator,this.hasSeed=b.hasSeed,this.seed=b.seed,this.hasAccumulation=!1,this.accumulation=null,this.hasValue=!1,this.isStopped=!1}function O(a,b,c){for(var d=0,e=a.length;e>d;d++)if(c(a[d],b))return d;return-1}function P(a){this.comparer=a,this.set=[]}function Q(b,c){return function(d){for(var e=d,f=0;c>f;f++){var g=e[b[f]];if("undefined"==typeof g)return a;e=g}return e}}var R,S={"function":!0,object:!0},T=S[typeof exports]&&exports&&!exports.nodeType&&exports,U=S[typeof self]&&self.Object&&self,V=S[typeof window]&&window&&window.Object&&window,W=S[typeof module]&&module&&!module.nodeType&&module,X=W&&W.exports===T&&T,Y=T&&W&&"object"==typeof global&&global&&global.Object&&global,Z=Z=Y||V!==(this&&this.window)&&V||U||this,$={internals:{},config:{Promise:Z.Promise},helpers:{}},_=$.helpers.noop=function(){},ab=$.helpers.identity=function(a){return a},bb=$.helpers.defaultNow=Date.now,cb=$.helpers.defaultComparer=function(a,b){return Yb(a,b)},db=$.helpers.defaultSubComparer=function(a,b){return a>b?1:b>a?-1:0},eb=($.helpers.defaultKeySerializer=function(a){return a.toString()},$.helpers.defaultError=function(a){throw a}),fb=$.helpers.isPromise=function(a){return!!a&&"function"!=typeof a.subscribe&&"function"==typeof a.then},gb=$.helpers.isFunction=function(){var a=function(a){return"function"==typeof a||!1};return a(/x/)&&(a=function(a){return"function"==typeof a&&"[object Function]"==Mb.call(a)}),a}(),hb={e:{}};$.config.longStackSupport=!1;var ib=!1,jb=d(function(){throw new Error})();ib=!!jb.e&&!!jb.e.stack;var kb,lb=j(),mb="From previous event:",nb=$.EmptyError=function(){this.message="Sequence contains no elements.",this.name="EmptyError",Error.call(this)};nb.prototype=Error.prototype;var ob=$.ObjectDisposedError=function(){this.message="Object has been disposed",this.name="ObjectDisposedError",Error.call(this)};ob.prototype=Error.prototype;var pb=$.ArgumentOutOfRangeError=function(){this.message="Argument out of range",this.name="ArgumentOutOfRangeError",Error.call(this)};pb.prototype=Error.prototype;var qb=$.NotSupportedError=function(a){this.message=a||"This operation is not supported",this.name="NotSupportedError",Error.call(this)};qb.prototype=Error.prototype;var rb=$.NotImplementedError=function(a){this.message=a||"This operation is not implemented",this.name="NotImplementedError",Error.call(this)};rb.prototype=Error.prototype;var sb=$.helpers.notImplemented=function(){throw new rb},tb=$.helpers.notSupported=function(){throw new qb},ub="function"==typeof Symbol&&Symbol.iterator||"_es6shim_iterator_";Z.Set&&"function"==typeof(new Z.Set)["@@iterator"]&&(ub="@@iterator");var vb=$.doneEnumerator={done:!0,value:a},wb=$.helpers.isIterable=function(b){return b[ub]!==a},xb=$.helpers.isArrayLike=function(b){return b&&b.length!==a};$.helpers.iterator=ub;var yb,zb=$.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)}},Ab=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],Bb=Ab.length,Cb="[object Arguments]",Db="[object Array]",Eb="[object Boolean]",Fb="[object Date]",Gb="[object Error]",Hb="[object Function]",Ib="[object Number]",Jb="[object Object]",Kb="[object RegExp]",Lb="[object String]",Mb=Object.prototype.toString,Nb=Object.prototype.hasOwnProperty,Ob=Mb.call(arguments)==Cb,Pb=Error.prototype,Qb=Object.prototype,Rb=String.prototype,Sb=Qb.propertyIsEnumerable;try{yb=!(Mb.call(document)==Jb&&!({toString:0}+""))}catch(Tb){yb=!0}var Ub={};Ub[Db]=Ub[Fb]=Ub[Ib]={constructor:!0,toLocaleString:!0,toString:!0,valueOf:!0},Ub[Eb]=Ub[Lb]={constructor:!0,toString:!0,valueOf:!0},Ub[Gb]=Ub[Hb]=Ub[Kb]={constructor:!0,toString:!0},Ub[Jb]={constructor:!0};var Vb={};!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);Vb.enumErrorProps=Sb.call(Pb,"message")||Sb.call(Pb,"name"),Vb.enumPrototypes=Sb.call(a,"prototype"),Vb.nonEnumArgs=0!=c,Vb.nonEnumShadows=!/valueOf/.test(b)}(1);var Wb=$.internals.isObject=function(a){var b=typeof a;return a&&("function"==b||"object"==b)||!1},Xb=function(a){return a&&"object"==typeof a?Mb.call(a)==Cb:!1};Ob||(Xb=function(a){return a&&"object"==typeof a?Nb.call(a,"callee"):!1});var Yb=$.internals.isEqual=function(a,b){return p(a,b,[],[])},Zb=({}.hasOwnProperty,Array.prototype.slice),$b=$.internals.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c},_b=$.internals.addProperties=function(a){for(var b=[],c=1,d=arguments.length;d>c;c++)b.push(arguments[c]);for(var e=0,f=b.length;f>e;e++){var g=b[e];for(var h in g)a[h]=g[h]}},ac=$.internals.addRef=function(a,b){return new Id(function(c){return new bc(b.getDisposable(),a.subscribe(c))})},bc=$.CompositeDisposable=function(){var a,b,c=[];if(Array.isArray(arguments[0]))c=arguments[0],b=c.length;else for(b=arguments.length,c=new Array(b),a=0;b>a;a++)c[a]=arguments[a];for(a=0;b>a;a++)if(!gc(c[a]))throw new TypeError("Not a disposable");this.disposables=c,this.isDisposed=!1,this.length=c.length},cc=bc.prototype;cc.add=function(a){this.isDisposed?a.dispose():(this.disposables.push(a),this.length++)},cc.remove=function(a){var b=!1;if(!this.isDisposed){var c=this.disposables.indexOf(a);-1!==c&&(b=!0,this.disposables.splice(c,1),this.length--,a.dispose())}return b},cc.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;for(var a=this.disposables.length,b=new Array(a),c=0;a>c;c++)b[c]=this.disposables[c];for(this.disposables=[],this.length=0,c=0;a>c;c++)b[c].dispose()}};var dc=$.Disposable=function(a){this.isDisposed=!1,this.action=a||_};dc.prototype.dispose=function(){this.isDisposed||(this.action(),this.isDisposed=!0)};var ec=dc.create=function(a){return new dc(a)},fc=dc.empty={dispose:_},gc=dc.isDisposable=function(a){return a&&gb(a.dispose)},hc=dc.checkDisposed=function(a){if(a.isDisposed)throw new ob},ic=$.SingleAssignmentDisposable=function(){this.isDisposed=!1,this.current=null};ic.prototype.getDisposable=function(){return this.current},ic.prototype.setDisposable=function(a){if(this.current)throw new Error("Disposable has already been assigned");var b=this.isDisposed;!b&&(this.current=a),b&&a&&a.dispose()},ic.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var jc=$.SerialDisposable=function(){this.isDisposed=!1,this.current=null};jc.prototype.getDisposable=function(){return this.current},jc.prototype.setDisposable=function(a){var b=this.isDisposed;if(!b){var c=this.current;this.current=a}c&&c.dispose(),b&&a&&a.dispose()},jc.prototype.dispose=function(){if(!this.isDisposed){this.isDisposed=!0;var a=this.current;this.current=null}a&&a.dispose()};var kc=$.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?fc:new a(this)},b}();r.prototype.dispose=function(){this.scheduler.scheduleWithState(this,s)};var lc=$.internals.ScheduledItem=function(a,b,c,d,e){this.scheduler=a,this.state=b,this.action=c,this.dueTime=d,this.comparer=e||db,this.disposable=new ic};lc.prototype.invoke=function(){this.disposable.setDisposable(this.invokeCore())},lc.prototype.compareTo=function(a){return this.comparer(this.dueTime,a.dueTime)},lc.prototype.isCancelled=function(){return this.disposable.isDisposed},lc.prototype.invokeCore=function(){return this.action(this.scheduler,this.state)};var mc=$.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(),fc}a.isScheduler=function(b){return b instanceof a};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=bb,a.normalize=function(a){return 0>a&&(a=0),a},a}(),nc=mc.normalize,oc=mc.isScheduler;!function(a){function b(a,b){function c(b){function d(a,b){return g?f.remove(i):h=!0,e(b,c),fc}var g=!1,h=!1,i=a.scheduleWithState(b,d);h||(f.add(i),g=!0)}var d=b[0],e=b[1],f=new bc;return e(d,c),f}function c(a,b,c){function d(b,e){function h(a,b){return i?g.remove(k):j=!0,f(b,d),fc}var i=!1,j=!1,k=a[c](b,e,h);j||(g.add(k),i=!0)}var e=b[0],f=b[1],g=new bc;return f(e,d),g}function d(a,b){return c(a,b,"scheduleWithRelativeAndState")}function e(a,b){return c(a,b,"scheduleWithAbsoluteAndState")}function f(a,b){a(function(c){b(a,c)})}a.scheduleRecursive=function(a){return this.scheduleRecursiveWithState(a,f)},a.scheduleRecursiveWithState=function(a,c){return this.scheduleWithState([a,c],b)},a.scheduleRecursiveWithRelative=function(a,b){return this.scheduleRecursiveWithRelativeAndState(b,a,f)},a.scheduleRecursiveWithRelativeAndState=function(a,b,c){return this._scheduleRelative([a,c],b,d)},a.scheduleRecursiveWithAbsolute=function(a,b){return this.scheduleRecursiveWithAbsoluteAndState(b,a,f)},a.scheduleRecursiveWithAbsoluteAndState=function(a,b,c){return this._scheduleAbsolute([a,c],b,e)}}(mc.prototype),function(){mc.prototype.schedulePeriodic=function(a,b){return this.schedulePeriodicWithState(null,a,b)},mc.prototype.schedulePeriodicWithState=function(a,b,c){if("undefined"==typeof Z.setInterval)throw new qb;b=nc(b);var d=a,e=Z.setInterval(function(){d=c(d)},b);return ec(function(){Z.clearInterval(e)})}}(mc.prototype),function(a){a.catchError=a["catch"]=function(a){return new wc(this,a)}}(mc.prototype);var pc,qc,rc=($.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 ic;return this._cancel=b,b.setDisposable(this._scheduler.scheduleRecursiveWithRelativeAndState(0,this._period,a.bind(this))),b},b}(),mc.immediate=function(){function a(a,b){return b(this,a)}return new mc(bb,a,tb,tb)}()),sc=mc.currentThread=function(){function a(){for(;c.length>0;){var a=c.shift();!a.isCancelled()&&a.invoke()}}function b(b,f){var g=new lc(this,b,f,this.now());if(c)c.push(g);else{c=[g];var h=d(a)();if(c=null,h===hb)return e(h.e)}return g.disposable}var c,f=new mc(bb,b,tb,tb);return f.scheduleRequired=function(){return!c},f}(),tc=function(){var a,b=_;if(Z.setTimeout)a=Z.setTimeout,b=Z.clearTimeout;else{if(!Z.WScript)throw new qb;a=function(a,b){Z.WScript.Sleep(b),a()}}return{setTimeout:a,clearTimeout:b}}(),uc=tc.setTimeout,vc=tc.clearTimeout;!function(){function a(b){if(h)uc(function(){a(b)},0);else{var c=g[b];if(c){h=!0;var f=d(c)();if(qc(b),h=!1,f===hb)return e(f.e)}}}function b(){if(!Z.postMessage||Z.importScripts)return!1;var a=!1,b=Z.onmessage;return Z.onmessage=function(){a=!0},Z.postMessage("","*"),Z.onmessage=b,a}function c(b){"string"==typeof b.data&&b.data.substring(0,k.length)===k&&a(b.data.substring(k.length))}var f=1,g={},h=!1;qc=function(a){delete g[a]};var i=RegExp("^"+String(Mb).replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/toString| for [^\]]+/g,".*?")+"$"),j="function"==typeof(j=Y&&X&&Y.setImmediate)&&!i.test(j)&&j;if(gb(j))pc=function(b){var c=f++;return g[c]=b,j(function(){a(c)}),c};else if("undefined"!=typeof process&&"[object process]"==={}.toString.call(process))pc=function(b){var c=f++;return g[c]=b,process.nextTick(function(){a(c)}),c};else if(b()){var k="ms.rx.schedule"+Math.random();Z.addEventListener?Z.addEventListener("message",c,!1):Z.attachEvent?Z.attachEvent("onmessage",c):Z.onmessage=c,pc=function(a){var b=f++;return g[b]=a,Z.postMessage(k+currentId,"*"),b}}else if(Z.MessageChannel){var l=new Z.MessageChannel;l.port1.onmessage=function(b){a(b.data)},pc=function(a){var b=f++;return g[b]=a,l.port2.postMessage(b),b}}else pc="document"in Z&&"onreadystatechange"in Z.document.createElement("script")?function(b){var c=Z.document.createElement("script"),d=f++;return g[d]=b,c.onreadystatechange=function(){a(d),c.onreadystatechange=null,c.parentNode.removeChild(c),c=null},Z.document.documentElement.appendChild(c),d}:function(b){var c=f++;return g[c]=b,uc(function(){a(c)},0),c}}();var wc=(mc.timeout=mc["default"]=function(){function a(a,b){var c=this,d=new ic,e=pc(function(){!d.isDisposed&&d.setDisposable(b(c,a))});return new bc(d,ec(function(){qc(e)}))}function b(a,b,c){var d=this,e=mc.normalize(b),f=new ic;if(0===e)return d.scheduleWithState(a,c);var g=uc(function(){!f.isDisposed&&f.setDisposable(c(d,a))},e);return new bc(f,ec(function(){vc(g)}))}function c(a,b,c){return this.scheduleWithRelativeAndState(a,b-this.now(),c)}return new mc(bb,a,b,c)}(),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 $b(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 fc}}},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 ic;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}(mc)),xc=$.Notification=function(){function a(a,b,c,d,e,f){this.kind=a,this.value=b,this.exception=c,this._accept=d,this._acceptObservable=e,this.toString=f}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 oc(a)||(a=rc),new Id(function(c){return a.scheduleWithState(b,function(a,b){b._acceptObservable(c),"N"===b.kind&&c.onCompleted()})})},a}(),yc=xc.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){return new xc("N",d,null,a,b,c)}}(),zc=xc.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){return new xc("E",null,d,a,b,c)}}(),Ac=xc.createOnCompleted=function(){function a(a,b,c){return c()}function b(a){return a.onCompleted()}function c(){return"OnCompleted()"}return function(){return new xc("C",null,null,a,b,c)}}(),Bc=$.Observer=function(){};Bc.prototype.toNotifier=function(){var a=this;return function(b){return b.accept(a)}},Bc.prototype.asObserver=function(){var a=this;return new Fc(function(b){a.onNext(b)},function(b){a.onError(b)},function(){a.onCompleted()})},Bc.prototype.checked=function(){return new Gc(this)};var Cc=Bc.create=function(a,b,c){return a||(a=_),b||(b=eb),c||(c=_),new Fc(a,b,c)};Bc.fromNotifier=function(a,b){var c=zb(a,b,1);return new Fc(function(a){return c(yc(a))},function(a){return c(zc(a))},function(){return c(Ac())})},Bc.prototype.notifyOn=function(a){return new Ic(a,this)},Bc.prototype.makeSafe=function(a){return new AnonymousSafeObserver(this._onNext,this._onError,this._onCompleted,a)};var Dc,Ec=$.internals.AbstractObserver=function(a){function b(){this.isStopped=!1}return $b(b,a),b.prototype.next=sb,b.prototype.error=sb,b.prototype.completed=sb,b.prototype.onNext=function(a){!this.isStopped&&this.next(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.error(a))},b.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.completed())},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.error(a),!0)},b}(Bc),Fc=$.AnonymousObserver=function(a){function b(b,c,d){a.call(this),this._onNext=b,this._onError=c,this._onCompleted=d}return $b(b,a),b.prototype.next=function(a){this._onNext(a)},b.prototype.error=function(a){this._onError(a)},b.prototype.completed=function(){this._onCompleted()},b}(Ec),Gc=function(a){function b(b){a.call(this),this._observer=b,this._state=0}$b(b,a);var c=b.prototype;return c.onNext=function(a){this.checkAccess();var b=d(this._observer.onNext).call(this._observer,a);this._state=0,b===hb&&e(b.e)},c.onError=function(a){this.checkAccess();var b=d(this._observer.onError).call(this._observer,a);this._state=2,b===hb&&e(b.e)},c.onCompleted=function(){this.checkAccess();var a=d(this._observer.onCompleted).call(this._observer);this._state=2,a===hb&&e(a.e)},c.checkAccess=function(){if(1===this._state)throw new Error("Re-entrancy detected");if(2===this._state)throw new Error("Observer completed");0===this._state&&(this._state=1)},b}(Bc),Hc=$.internals.ScheduledObserver=function(a){function b(b,c){a.call(this),this.scheduler=b,this.observer=c,this.isAcquired=!1,this.hasFaulted=!1,this.queue=[],this.disposable=new jc}return $b(b,a),b.prototype.next=function(a){var b=this;this.queue.push(function(){b.observer.onNext(a)})},b.prototype.error=function(a){var b=this;this.queue.push(function(){b.observer.onError(a)})},b.prototype.completed=function(){var a=this;this.queue.push(function(){a.observer.onCompleted()})},b.prototype.ensureActive=function(){var a=!1;!this.hasFaulted&&this.queue.length>0&&(a=!this.isAcquired,this.isAcquired=!0),a&&this.disposable.setDisposable(this.scheduler.scheduleRecursiveWithState(this,function(a,b){var c;if(!(a.queue.length>0))return void(a.isAcquired=!1);c=a.queue.shift();var f=d(c)();return f===hb?(a.queue=[],a.hasFaulted=!0,e(f.e)):void b(a)}))},b.prototype.dispose=function(){a.prototype.dispose.call(this),this.disposable.dispose()},b}(Ec),Ic=function(a){function b(b,c,d){a.call(this,b,c),this._cancel=d}return $b(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}(Hc),Jc=$.Observable=function(){function a(a,b){return function(c){var d=c.onError;return c.onError=function(b){f(b,a),d.call(c,b)},b.call(a,c)}}function b(b){if($.config.longStackSupport&&ib){var c=d(e)(new Error).e;this.stack=c.stack.substring(c.stack.indexOf("\n")+1),this._subscribe=a(this,b)}else this._subscribe=b}return Dc=b.prototype,b.isObservable=function(a){return a&&gb(a.subscribe)},Dc.subscribe=Dc.forEach=function(a,b,c){return this._subscribe("object"==typeof a?a:Cc(a,b,c))},Dc.subscribeOnNext=function(a,b){return this._subscribe(Cc("undefined"!=typeof b?function(c){a.call(b,c)}:a))},Dc.subscribeOnError=function(a,b){return this._subscribe(Cc(null,"undefined"!=typeof b?function(c){a.call(b,c)}:a))},Dc.subscribeOnCompleted=function(a,b){return this._subscribe(Cc(null,null,"undefined"!=typeof b?function(){a.call(b)}:a))},b}(),Kc=$.ObservableBase=function(a){function b(a){return a&&gb(a.dispose)?a:gb(a)?ec(a):fc}function c(a,c){var f=c[0],g=c[1],h=d(g.subscribeCore).call(g,f);return h!==hb||f.fail(hb.e)?void f.setDisposable(b(h)):e(hb.e)}function f(a){var b=new Jd(a),d=[b,this];return sc.scheduleRequired()?sc.scheduleWithState(d,c):c(null,d),b}function g(){a.call(this,f)}return $b(g,a),g.prototype.subscribeCore=sb,g}(Jc),Lc=function(a){function b(b,c,d,e){this.resultSelector=$.helpers.isFunction(d)?d:null,this.selector=$.internals.bindCallback($.helpers.isFunction(c)?c:function(){return c},e,3),this.source=b,a.call(this)}function c(a,b,c,d){this.i=0,this.selector=b,this.resultSelector=c,this.source=d,this.isStopped=!1,this.o=a}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a,this.selector,this.resultSelector,this))},c.prototype._wrapResult=function(a,b,c){return this.resultSelector?a.map(function(a,d){return this.resultSelector(b,a,c,d)},this):a},c.prototype.onNext=function(a){if(!this.isStopped){var b=this.i++,c=d(this.selector)(a,b,this.source);if(c===hb)return this.o.onError(c.e);$.helpers.isPromise(c)&&(c=$.Observable.fromPromise(c)),($.helpers.isArrayLike(c)||$.helpers.isIterable(c))&&(c=$.Observable.from(c)),this.o.onNext(this._wrapResult(c,a,b))}},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},b}(Kc),Mc=$.internals.Enumerable=function(){},Nc=function(a){function b(b){this.sources=b,a.call(this)}function c(a,b,c){this.o=a,this.s=b,this.e=c,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){var b,e=new jc,f=rc.scheduleRecursiveWithState(this.sources[ub](),function(f,g){if(!b){var h=d(f.next).call(f);if(h===hb)return a.onError(h.e);if(h.done)return a.onCompleted();var i=h.value;fb(i)&&(i=Uc(i));var j=new ic;e.setDisposable(j),j.setDisposable(i.subscribe(new c(a,g,f)))}});return new bc(e,f,ec(function(){b=!0}))},c.prototype.onNext=function(a){this.isStopped||this.o.onNext(a)},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.s(this.e))},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Mc.prototype.concat=function(){return new Nc(this)};var Oc=function(a){function b(b){this.sources=b,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b,c=this.sources[ub](),e=new jc,f=rc.scheduleRecursiveWithState(null,function(f,g){if(!b){var h=d(c.next).call(c);if(h===hb)return a.onError(h.e);if(h.done)return null!==f?a.onError(f):a.onCompleted();var i=h.value;fb(i)&&(i=Uc(i));var j=new ic;e.setDisposable(j),j.setDisposable(i.subscribe(function(b){a.onNext(b)},g,function(){a.onCompleted()}))}});return new bc(e,f,ec(function(){b=!0}))},b}(Kc);Mc.prototype.catchError=function(){return new Oc(this)},Mc.prototype.catchErrorWhen=function(a){var b=this;return new Id(function(c){var e,f,g=new Ld,h=new Ld,i=a(g),j=i.subscribe(h),k=b[ub](),l=new jc,m=rc.scheduleRecursive(function(a){if(!e){var b=d(k.next).call(k);if(b===hb)return c.onError(b.e);if(b.done)return void(f?c.onError(f):c.onCompleted());var i=b.value;fb(i)&&(i=Uc(i));var j=new ic,m=new ic;l.setDisposable(new bc(m,j)),j.setDisposable(i.subscribe(function(a){c.onNext(a)},function(b){m.setDisposable(h.subscribe(a,function(a){c.onError(a)},function(){c.onCompleted()})),g.onNext(b)},function(){c.onCompleted()}))}});return new bc(j,l,m,ec(function(){e=!0}))})};var Pc=function(a){function b(a,b){this.v=a,this.c=null==b?-1:b}function c(a){this.v=a.v,this.l=a.c}return $b(b,a),b.prototype[ub]=function(){return new c(this)},c.prototype.next=function(){return 0===this.l?vb:(this.l>0&&this.l--,{done:!1,value:this.v})},b}(Mc),Qc=Mc.repeat=function(a,b){return new Pc(a,b)},Rc=function(a){function b(a,b,c){this.s=a,this.fn=b?zb(b,c,3):null}function c(a){this.i=-1,this.s=a.s,this.l=this.s.length,this.fn=a.fn}return $b(b,a),b.prototype[ub]=function(){return new c(this)},c.prototype.next=function(){return++this.i<this.l?{done:!1,value:this.fn?this.fn(this.s[this.i],this.i,this.s):this.s[this.i]}:vb},b}(Mc),Sc=Mc.of=function(a,b,c){return new Rc(a,b,c)};Dc.observeOn=function(a){var b=this;return new Id(function(c){return b.subscribe(new Ic(a,c))},b)},Dc.subscribeOn=function(a){var b=this;return new Id(function(c){var d=new ic,e=new jc;return e.setDisposable(d),d.setDisposable(a.schedule(function(){e.setDisposable(new r(a,b.subscribe(c)))})),e},b)};var Tc=function(a){function b(b){this.p=b,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){return this.p.then(function(b){a.onNext(b),a.onCompleted()},function(b){a.onError(b)}),fc},b}(Kc),Uc=Jc.fromPromise=function(a){return new Tc(a)};Dc.toPromise=function(a){if(a||(a=$.config.Promise),!a)throw new qb("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)})})};var Vc=function(a){function b(b){this.source=b,a.call(this)}function c(a){this.o=a,this.a=[],this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a))},c.prototype.onNext=function(a){this.isStopped||this.a.push(a)},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onNext(this.a),this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Dc.toArray=function(){return new Vc(this)},Jc.create=function(a,b){return new Id(a,b)};var Wc=(Jc.defer=function(a){return new Id(function(b){var c;try{c=a()}catch(d){return md(d).subscribe(b)}return fb(c)&&(c=Uc(c)),c.subscribe(b)})},function(a){function b(b){this.scheduler=b,a.call(this)}function c(a,b){this.observer=a,this.scheduler=b}function d(a,b){return b.onCompleted(),fc}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this.scheduler);return b.run()},c.prototype.run=function(){return this.scheduler.scheduleWithState(this.observer,d)},b}(Kc)),Xc=new Wc(rc),Yc=Jc.empty=function(a){return oc(a)||(a=rc),a===rc?Xc:new Wc(a)},Zc=function(a){function b(b,c,d){this.iterable=b,this.mapper=c,this.scheduler=d,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new $c(a,this);return b.run()},b}(Kc),$c=function(){function a(a,b){this.o=a,this.parent=b}return a.prototype.run=function(){function a(a,b){var g=d(c.next).call(c);if(g===hb)return e.onError(g.e);if(g.done)return e.onCompleted();var h=g.value;return gb(f)&&(h=d(f)(h,a),h===hb)?e.onError(h.e):(e.onNext(h),void b(a+1))}var b=Object(this.parent.iterable),c=y(b),e=this.o,f=this.parent.mapper;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}(),_c=Math.pow(2,53)-1;t.prototype[ub]=function(){return new u(this._s)
3
+ },u.prototype[ub]=function(){return this},u.prototype.next=function(){return this._i<this._l?{done:!1,value:this._s.charAt(this._i++)}:vb},v.prototype[ub]=function(){return new w(this._a)},w.prototype[ub]=function(){return this},w.prototype.next=function(){return this._i<this._l?{done:!1,value:this._a[this._i++]}:vb};var ad=Jc.from=function(a,b,c,d){if(null==a)throw new Error("iterable cannot be null.");if(b&&!gb(b))throw new Error("mapFn when provided must be a function");if(b)var e=zb(b,c,2);return oc(d)||(d=sc),new Zc(a,e,d)},bd=function(a){function b(b,c){this.args=b,this.scheduler=c,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new B(a,this);return b.run()},b}(Kc);B.prototype.run=function(){function a(a,e){d>a?(b.onNext(c[a]),e(a+1)):b.onCompleted()}var b=this.observer,c=this.parent.args,d=c.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)};var cd=Jc.fromArray=function(a,b){return oc(b)||(b=sc),new bd(a,b)};Jc.generate=function(a,b,c,d,e){return oc(e)||(e=sc),new Id(function(f){var g=!0;return e.scheduleRecursiveWithState(a,function(a,e){var h,i;try{g?g=!1:a=c(a),h=b(a),h&&(i=d(a))}catch(j){return f.onError(j)}h?(f.onNext(i),e(a)):f.onCompleted()})})};var dd=function(a){function b(){a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(){return fc},b}(Kc),ed=new dd,fd=Jc.never=function(){return ed};Jc.of=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return new bd(b,sc)},Jc.ofWithScheduler=function(a){for(var b=arguments.length,c=new Array(b-1),d=1;b>d;d++)c[d-1]=arguments[d];return new bd(c,a)};var gd=function(a){function b(b,c){this.obj=b,this.keys=Object.keys(b),this.scheduler=c,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new D(a,this);return b.run()},b}(Kc);D.prototype.run=function(){function a(a,f){if(e>a){var g=d[a];b.onNext([g,c[g]]),f(a+1)}else b.onCompleted()}var b=this.observer,c=this.parent.obj,d=this.parent.keys,e=d.length;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},Jc.pairs=function(a,b){return b||(b=sc),new gd(a,b)};var hd=function(a){function b(b,c,d){this.start=b,this.rangeCount=c,this.scheduler=d,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new id(a,this);return b.run()},b}(Kc),id=function(){function a(a,b){this.observer=a,this.parent=b}return a.prototype.run=function(){function a(a,e){c>a?(d.onNext(b+a),e(a+1)):d.onCompleted()}var b=this.parent.start,c=this.parent.rangeCount,d=this.observer;return this.parent.scheduler.scheduleRecursiveWithState(0,a)},a}();Jc.range=function(a,b,c){return oc(c)||(c=sc),new hd(a,b,c)};var jd=function(a){function b(b,c,d){this.value=b,this.repeatCount=null==c?-1:c,this.scheduler=d,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new E(a,this);return b.run()},b}(Kc);E.prototype.run=function(){function a(a,d){return(-1===a||a>0)&&(b.onNext(c),a>0&&a--),0===a?b.onCompleted():void d(a)}var b=this.observer,c=this.parent.value;return this.parent.scheduler.scheduleRecursiveWithState(this.parent.repeatCount,a)},Jc.repeat=function(a,b,c){return oc(c)||(c=sc),new jd(a,b,c)};var kd=function(a){function b(b,c){this.value=b,this.scheduler=c,a.call(this)}function c(a,b,c){this.observer=a,this.value=b,this.scheduler=c}function d(a,b){var c=b[0],d=b[1];return d.onNext(c),d.onCompleted(),fc}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this.value,this.scheduler);return b.run()},c.prototype.run=function(){var a=[this.value,this.observer];return this.scheduler===rc?d(null,a):this.scheduler.scheduleWithState(a,d)},b}(Kc),ld=(Jc["return"]=Jc.just=function(a,b){return oc(b)||(b=rc),new kd(a,b)},function(a){function b(b,c){this.error=b,this.scheduler=c,a.call(this)}function c(a,b){this.o=a,this.p=b}function d(a,b){var c=b[0],d=b[1];d.onError(c)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new c(a,this);return b.run()},c.prototype.run=function(){return this.p.scheduler.scheduleWithState([this.p.error,this.o],d)},b}(Kc)),md=Jc["throw"]=function(a,b){return oc(b)||(b=rc),new ld(a,b)};Jc.using=function(a,b){return new Id(function(c){var e=fc,f=d(a)();if(f===hb)return new bc(md(f.e).subscribe(c),e);f&&(e=f);var g=d(b)(f);return g===hb?new bc(md(g.e).subscribe(c),e):new bc(g.subscribe(c),e)})},Dc.amb=function(a){var b=this;return new Id(function(c){function d(){f||(f=g,j.dispose())}function e(){f||(f=h,i.dispose())}var f,g="L",h="R",i=new ic,j=new ic;fb(a)&&(a=Uc(a));var k=Cc(function(a){d(),f===g&&c.onNext(a)},function(a){d(),f===g&&c.onError(a)},function(){d(),f===g&&c.onCompleted()}),l=Cc(function(a){e(),f===h&&c.onNext(a)},function(a){e(),f===h&&c.onError(a)},function(){e(),f===h&&c.onCompleted()});return i.setDisposable(b.subscribe(k)),j.setDisposable(a.subscribe(l)),new bc(i,j)})},Jc.amb=function(){var a,b=fd();if(Array.isArray(arguments[0]))a=arguments[0];else{var c=arguments.length;a=new Array(a);for(var d=0;c>d;d++)a[d]=arguments[d]}for(var d=0,c=a.length;c>d;d++)b=F(b,a[d]);return b};var nd=function(a){function b(b,c,d){this._o=b,this._s=c,this._fn=d,a.call(this)}return $b(b,a),b.prototype.next=function(a){this._o.onNext(a)},b.prototype.completed=function(){return this._o.onCompleted()},b.prototype.error=function(a){var b=d(this._fn)(a);if(b===hb)return this._o.onError(b.e);fb(b)&&(b=Uc(b));var c=new ic;this._s.setDisposable(c),c.setDisposable(b.subscribe(this._o))},b}(Ec);Dc["catch"]=function(a){return gb(a)?G(this,a):od([this,a])};var od=Jc["catch"]=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return Sc(a).catchError()};Dc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];return Array.isArray(b[0])?b[0].unshift(this):b.unshift(this),pd.apply(this,b)};var pd=Jc.combineLatest=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=gb(b[a-1])?b.pop():I;return Array.isArray(b[0])&&(b=b[0]),new Id(function(a){function c(b){if(g[b]=!0,h||(h=g.every(ab))){try{var c=d.apply(null,j)}catch(e){return a.onError(e)}a.onNext(c)}else i.filter(function(a,c){return c!==b}).every(ab)&&a.onCompleted()}function e(b){i[b]=!0,i.every(ab)&&a.onCompleted()}for(var f=b.length,g=q(f,H),h=!1,i=q(f,H),j=new Array(f),k=new Array(f),l=0;f>l;l++)!function(d){var f=b[d],g=new ic;fb(f)&&(f=Uc(f)),g.setDisposable(f.subscribe(function(a){j[d]=a,c(d)},function(b){a.onError(b)},function(){e(d)})),k[d]=g}(l);return new bc(k)},this)};Dc.concat=function(){for(var a=[],b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return a.unshift(this),rd.apply(null,a)};var qd=function(a){function b(b){this.sources=b,a.call(this)}function c(a,b){this.sources=a,this.o=b}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new c(this.sources,a);return b.run()},c.prototype.run=function(){var a,b=new jc,c=this.sources,d=c.length,e=this.o,f=rc.scheduleRecursiveWithState(0,function(f,g){if(!a){if(f===d)return e.onCompleted();var h=c[f];fb(h)&&(h=Uc(h));var i=new ic;b.setDisposable(i),i.setDisposable(h.subscribe(function(a){e.onNext(a)},function(a){e.onError(a)},function(){g(f+1)}))}});return new bc(b,f,ec(function(){a=!0}))},b}(Kc),rd=Jc.concat=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(arguments.length);for(var b=0,c=arguments.length;c>b;b++)a[b]=arguments[b]}return new qd(a)};Dc.concatAll=function(){return this.merge(1)};var sd=function(a){function b(b,c){this.source=b,this.maxConcurrent=c,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new bc;return b.add(this.source.subscribe(new td(a,this.maxConcurrent,b))),b},b}(Kc),td=function(){function a(a,b,c){this.o=a,this.max=b,this.g=c,this.done=!1,this.q=[],this.activeCount=0,this.isStopped=!1}function b(a,b){this.parent=a,this.sad=b,this.isStopped=!1}return a.prototype.handleSubscribe=function(a){var c=new ic;this.g.add(c),fb(a)&&(a=Uc(a)),c.setDisposable(a.subscribe(new b(this,c)))},a.prototype.onNext=function(a){this.isStopped||(this.activeCount<this.max?(this.activeCount++,this.handleSubscribe(a)):this.q.push(a))},a.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},a.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,0===this.activeCount&&this.o.onCompleted())},a.prototype.dispose=function(){this.isStopped=!0},a.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},b.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},b.prototype.onCompleted=function(){if(!this.isStopped){this.isStopped=!0;var a=this.parent;a.g.remove(this.sad),a.q.length>0?a.handleSubscribe(a.q.shift()):(a.activeCount--,a.done&&0===a.activeCount&&a.o.onCompleted())}},b.prototype.dispose=function(){this.isStopped=!0},b.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},a}();Dc.merge=function(a){return"number"!=typeof a?ud(this,a):new sd(this,a)};var ud=Jc.merge=function(){var a,b,c=[],d=arguments.length;if(arguments[0])if(oc(arguments[0]))for(a=arguments[0],b=1;d>b;b++)c.push(arguments[b]);else for(a=rc,b=0;d>b;b++)c.push(arguments[b]);else for(a=rc,b=1;d>b;b++)c.push(arguments[b]);return Array.isArray(c[0])&&(c=c[0]),C(a,c).mergeAll()},vd=$.CompositeError=function(a){this.name="NotImplementedError",this.innerErrors=a,this.message="This contains multiple errors. Check the innerErrors",Error.call(this)};vd.prototype=Error.prototype,Jc.mergeDelayError=function(){var a;if(Array.isArray(arguments[0]))a=arguments[0];else{var b=arguments.length;a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}var d=C(null,a);return new Id(function(a){function b(){0===g.length?a.onCompleted():a.onError(1===g.length?g[0]:new vd(g))}var c=new bc,e=new ic,f=!1,g=[];return c.add(e),e.setDisposable(d.subscribe(function(d){var e=new ic;c.add(e),fb(d)&&(d=Uc(d)),e.setDisposable(d.subscribe(function(b){a.onNext(b)},function(a){g.push(a),c.remove(e),f&&1===c.length&&b()},function(){c.remove(e),f&&1===c.length&&b()}))},function(a){g.push(a),f=!0,1===c.length&&b()},function(){f=!0,1===c.length&&b()})),c})};var wd=function(a){function b(b){this.source=b,a.call(this)}function c(a,b){this.o=a,this.g=b,this.isStopped=!1,this.done=!1}function d(a,b){this.parent=a,this.sad=b,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new bc,d=new ic;return b.add(d),d.setDisposable(this.source.subscribe(new c(a,b))),b},c.prototype.onNext=function(a){if(!this.isStopped){var b=new ic;this.g.add(b),fb(a)&&(a=Uc(a)),b.setDisposable(a.subscribe(new d(this,b)))}},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.done=!0,1===this.g.length&&this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},d.prototype.onNext=function(a){this.isStopped||this.parent.o.onNext(a)},d.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.o.onError(a))},d.prototype.onCompleted=function(){if(!this.isStopped){var a=this.parent;this.isStopped=!0,a.g.remove(this.sad),a.done&&1===a.g.length&&a.o.onCompleted()}},d.prototype.dispose=function(){this.isStopped=!0},d.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},b}(Kc);Dc.mergeAll=function(){return new wd(this)},Dc.onErrorResumeNext=function(a){if(!a)throw new Error("Second observable is required");return xd([this,a])};var xd=Jc.onErrorResumeNext=function(){var a=[];if(Array.isArray(arguments[0]))a=arguments[0];else for(var b=0,c=arguments.length;c>b;b++)a.push(arguments[b]);return new Id(function(b){var c=0,d=new jc,e=rc.scheduleRecursive(function(e){var f,g;c<a.length?(f=a[c++],fb(f)&&(f=Uc(f)),g=new ic,d.setDisposable(g),g.setDisposable(f.subscribe(b.onNext.bind(b),e,e))):b.onCompleted()});return new bc(d,e)})};Dc.skipUntil=function(a){var b=this;return new Id(function(c){var d=!1,e=new bc(b.subscribe(function(a){d&&c.onNext(a)},function(a){c.onError(a)},function(){d&&c.onCompleted()}));fb(a)&&(a=Uc(a));var f=new ic;return e.add(f),f.setDisposable(a.subscribe(function(){d=!0,f.dispose()},function(a){c.onError(a)},function(){f.dispose()})),e},b)};var yd=function(a){function b(b){this.source=b,a.call(this)}function c(a,b){this.o=a,this.inner=b,this.stopped=!1,this.latest=0,this.hasLatest=!1,this.isStopped=!1}function d(a,b){this.parent=a,this.id=b,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){var b=new jc,d=this.source.subscribe(new c(a,b));return new bc(d,b)},c.prototype.onNext=function(a){if(!this.isStopped){var b=new ic,c=++this.latest;this.hasLatest=!0,this.inner.setDisposable(b),fb(a)&&(a=Uc(a)),b.setDisposable(a.subscribe(new d(this,c)))}},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.stopped=!0,!this.hasLatest&&this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},d.prototype.onNext=function(a){this.isStopped||this.parent.latest===this.id&&this.parent.o.onNext(a)},d.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.parent.latest===this.id&&this.parent.o.onError(a))},d.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.parent.latest===this.id&&(this.parent.hasLatest=!1,this.parent.isStopped&&this.parent.o.onCompleted()))},d.prototype.dispose=function(){this.isStopped=!0},d.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.parent.o.onError(a),!0)},b}(Kc);Dc["switch"]=Dc.switchLatest=function(){return new yd(this)};var zd=function(a){function b(b,c){this.source=b,this.other=fb(c)?Uc(c):c,a.call(this)}function c(a){this.o=a,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){return new bc(this.source.subscribe(a),this.other.subscribe(new c(a)))},c.prototype.onNext=function(){this.isStopped||this.o.onCompleted()},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){!this.isStopped&&(this.isStopped=!0)},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Dc.takeUntil=function(a){return new zd(this,a)},Dc.withLatestFrom=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var e=b.pop(),f=this;return Array.isArray(b[0])&&(b=b[0]),new Id(function(a){for(var c=b.length,g=q(c,H),h=!1,i=new Array(c),j=new Array(c+1),k=0;c>k;k++)!function(c){var d=b[c],e=new ic;fb(d)&&(d=Uc(d)),e.setDisposable(d.subscribe(function(a){i[c]=a,g[c]=!0,h=g.every(ab)},function(b){a.onError(b)},_)),j[c]=e}(k);var l=new ic;return l.setDisposable(f.subscribe(function(b){var c=[b].concat(i);if(h){var f=d(e).apply(null,c);return f===hb?a.onError(f.e):void a.onNext(f)}},function(b){a.onError(b)},function(){a.onCompleted()})),j[c]=l,new bc(j)},this)},Dc.zip=function(){if(0===arguments.length)throw new Error("invalid arguments");for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var e=gb(b[a-1])?b.pop():I;Array.isArray(b[0])&&(b=b[0]);var f=this;return b.unshift(f),new Id(function(a){for(var c=b.length,g=q(c,J),h=q(c,H),i=new Array(c),j=0;c>j;j++)!function(c){var j=b[c],k=new ic;fb(j)&&(j=Uc(j)),k.setDisposable(j.subscribe(function(b){if(g[c].push(b),g.every(function(a){return a.length>0})){var i=g.map(function(a){return a.shift()}),j=d(e).apply(f,i);if(j===hb)return a.onError(j.e);a.onNext(j)}else h.filter(function(a,b){return b!==c}).every(ab)&&a.onCompleted()},function(b){a.onError(b)},function(){h[c]=!0,h.every(ab)&&a.onCompleted()})),i[c]=k}(j);return new bc(i)},f)},Jc.zip=function(){for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var d=b.shift();return d.zip.apply(d,b)},Dc.zipIterable=function(){if(0===arguments.length)throw new Error("invalid arguments");for(var a=arguments.length,b=new Array(a),c=0;a>c;c++)b[c]=arguments[c];var e=gb(b[a-1])?b.pop():I,f=this;return b.unshift(f),new Id(function(a){for(var c=b.length,g=q(c,J),h=q(c,H),i=new Array(c),j=0;c>j;j++)!function(c){var j=b[c],k=new ic;(xb(j)||wb(j))&&(j=ad(j)),k.setDisposable(j.subscribe(function(b){if(g[c].push(b),g.every(function(a){return a.length>0})){var i=g.map(function(a){return a.shift()}),j=d(e).apply(f,i);if(j===hb)return a.onError(j.e);a.onNext(j)}else h.filter(function(a,b){return b!==c}).every(ab)&&a.onCompleted()},function(b){a.onError(b)},function(){h[c]=!0,h.every(ab)&&a.onCompleted()})),i[c]=k}(j);return new bc(i)},f)},Dc.asObservable=function(){return new Id(K(this),this)},Dc.bufferWithCount=function(a,b){return"number"!=typeof b&&(b=a),this.windowWithCount(a,b).flatMap(L).filter(M)},Dc.dematerialize=function(){var a=this;return new Id(function(b){return a.subscribe(function(a){return a.accept(b)},function(a){b.onError(a)},function(){b.onCompleted()})},this)};var Ad=function(a){function b(b,c,d){this.source=b,this.keyFn=c,this.comparer=d,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new Bd(a,this.keyFn,this.comparer))},b}(Kc),Bd=function(a){function b(b,c,d){this.o=b,this.keyFn=c,this.comparer=d,this.hasCurrentKey=!1,this.currentKey=null,a.call(this)}return $b(b,a),b.prototype.next=function(a){var b,c=a;return gb(this.keyFn)&&(c=d(this.keyFn)(a),c===hb)?this.o.onError(c.e):this.hasCurrentKey&&(b=d(this.comparer)(this.currentKey,c),b===hb)?this.o.onError(b.e):void(this.hasCurrentKey&&b||(this.hasCurrentKey=!0,this.currentKey=c,this.o.onNext(a)))},b.prototype.error=function(a){this.o.onError(a)},b.prototype.completed=function(){this.o.onCompleted()},b}(Ec);Dc.distinctUntilChanged=function(a,b){return b||(b=cb),new Ad(this,a,b)};var Cd=function(a){function b(b,c,d,e){this.source=b,this._oN=c,this._oE=d,this._oC=e,a.call(this)}function c(a,b){this.o=a,this.t=!b._oN||gb(b._oN)?Cc(b._oN||_,b._oE||_,b._oC||_):b._oN,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a,this))},c.prototype.onNext=function(a){if(!this.isStopped){var b=d(this.t.onNext).call(this.t,a);b===hb&&this.o.onError(b.e),this.o.onNext(a)}},c.prototype.onError=function(a){if(!this.isStopped){this.isStopped=!0;var b=d(this.t.onError).call(this.t,a);if(b===hb)return this.o.onError(b.e);this.o.onError(a)}},c.prototype.onCompleted=function(){if(!this.isStopped){this.isStopped=!0;var a=d(this.t.onCompleted).call(this.t);if(a===hb)return this.o.onError(a.e);this.o.onCompleted()}},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Dc["do"]=Dc.tap=Dc.doAction=function(a,b,c){return new Cd(this,a,b,c)},Dc.doOnNext=Dc.tapOnNext=function(a,b){return this.tap("undefined"!=typeof b?function(c){a.call(b,c)}:a)},Dc.doOnError=Dc.tapOnError=function(a,b){return this.tap(_,"undefined"!=typeof b?function(c){a.call(b,c)}:a)},Dc.doOnCompleted=Dc.tapOnCompleted=function(a,b){return this.tap(_,null,"undefined"!=typeof b?function(){a.call(b)}:a)},Dc["finally"]=function(a){var b=this;return new Id(function(c){var f=d(b.subscribe).call(b,c);return f===hb?(a(),e(f.e)):ec(function(){var b=d(f.dispose).call(f);a(),b===hb&&e(b.e)})},this)};var Dd=function(a){function b(b){this.source=b,a.call(this)}function c(a){this.o=a,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a))},c.prototype.onNext=_,c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.observer.onError(a),!0)},b}(Kc);Dc.ignoreElements=function(){return new Dd(this)},Dc.materialize=function(){var a=this;return new Id(function(b){return a.subscribe(function(a){b.onNext(yc(a))},function(a){b.onNext(zc(a)),b.onCompleted()},function(){b.onNext(Ac()),b.onCompleted()})},a)},Dc.repeat=function(a){return Qc(this,a).concat()},Dc.retry=function(a){return Qc(this,a).catchError()},Dc.retryWhen=function(a){return Qc(this).catchErrorWhen(a)};var Ed=function(a){function b(b,c,d,e){this.source=b,this.accumulator=c,this.hasSeed=d,this.seed=e,a.call(this)}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new N(a,this))},b}(Kc);N.prototype={onNext:function(a){return this.isStopped?void 0:(!this.hasValue&&(this.hasValue=!0),this.hasAccumulation?this.accumulation=d(this.accumulator)(this.accumulation,a):(this.accumulation=this.hasSeed?d(this.accumulator)(this.seed,a):a,this.hasAccumulation=!0),this.accumulation===hb?this.o.onError(this.accumulation.e):void this.o.onNext(this.accumulation))},onError:function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},onCompleted:function(){this.isStopped||(this.isStopped=!0,!this.hasValue&&this.hasSeed&&this.o.onNext(this.seed),this.o.onCompleted())},dispose:function(){this.isStopped=!0},fail:function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)}},Dc.scan=function(){var a,b=!1,c=arguments[0];return 2===arguments.length&&(b=!0,a=arguments[1]),new Ed(this,c,b,a)},Dc.skipLast=function(a){if(0>a)throw new pb;var b=this;return new Id(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)},Dc.startWith=function(){var a,b=0;arguments.length&&oc(arguments[0])?(a=arguments[0],b=1):a=rc;for(var c=[],d=b,e=arguments.length;e>d;d++)c.push(arguments[d]);return Sc([cd(c,a),this]).concat()},Dc.takeLast=function(a){if(0>a)throw new pb;var b=this;return new Id(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)},Dc.takeLastBuffer=function(a){var b=this;return new Id(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)},Dc.windowWithCount=function(a,b){var c=this;if(+a||(a=0),1/0===Math.abs(a)&&(a=0),0>=a)throw new pb;if(null==b&&(b=a),+b||(b=0),1/0===Math.abs(b)&&(b=0),0>=b)throw new pb;return new Id(function(d){function e(){var a=new Ld;i.push(a),d.onNext(ac(a,g))}var f=new ic,g=new kc(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)},Dc.flatMapConcat=Dc.concatMap=function(a,b,c){return new Lc(this,a,b,c).merge(1)},Dc.concatMapObserver=Dc.selectConcatObserver=function(a,b,c,d){var e=this,f=zb(a,d,2),g=zb(b,d,1),h=zb(c,d,0);return new Id(function(a){var b=0;return e.subscribe(function(c){var d;try{d=f(c,b++)}catch(e){return void a.onError(e)}fb(d)&&(d=Uc(d)),a.onNext(d)},function(b){var c;try{c=g(b)}catch(d){return void a.onError(d)}fb(c)&&(c=Uc(c)),a.onNext(c),a.onCompleted()},function(){var b;try{b=h()}catch(c){return void a.onError(c)}fb(b)&&(b=Uc(b)),a.onNext(b),a.onCompleted()})},this).concatAll()},Dc.defaultIfEmpty=function(b){var c=this;return b===a&&(b=null),new Id(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)},P.prototype.push=function(a){var b=-1===O(this.set,a,this.comparer);return b&&this.set.push(a),b},Dc.distinct=function(a,b){var c=this;return b||(b=cb),new Id(function(d){var e=new P(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)};var Fd=function(a){function b(b,c,d){this.source=b,this.selector=zb(c,d,3),a.call(this)}function c(a,b){return function(c,d,e){return a.call(this,b.selector(c,d,e),d,e)}}function e(a,b,c){this.o=a,this.selector=b,this.source=c,this.i=0,this.isStopped=!1}return $b(b,a),b.prototype.internalMap=function(a,d){return new b(this.source,c(a,this),d)},b.prototype.subscribeCore=function(a){return this.source.subscribe(new e(a,this.selector,this))},e.prototype.onNext=function(a){if(!this.isStopped){var b=d(this.selector)(a,this.i++,this.source);return b===hb?this.o.onError(b.e):void this.o.onNext(b)}},e.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},e.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},e.prototype.dispose=function(){this.isStopped=!0},e.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Dc.map=Dc.select=function(a,b){var c="function"==typeof a?a:function(){return a};return this instanceof Fd?this.internalMap(c,b):new Fd(this,c,b)},Dc.pluck=function(){var a=arguments.length,b=new Array(a);if(0===a)throw new Error("List of properties cannot be empty.");for(var c=0;a>c;c++)b[c]=arguments[c];return this.map(Q(b,a))},Dc.flatMapObserver=Dc.selectManyObserver=function(a,b,c,d){var e=this;return new Id(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)}fb(c)&&(c=Uc(c)),f.onNext(c)},function(a){var c;try{c=b.call(d,a)}catch(e){return void f.onError(e)}fb(c)&&(c=Uc(c)),f.onNext(c),f.onCompleted()},function(){var a;try{a=c.call(d)}catch(b){return void f.onError(b)}fb(a)&&(a=Uc(a)),f.onNext(a),f.onCompleted()})},e).mergeAll()},Dc.flatMap=Dc.selectMany=function(a,b,c){return new Lc(this,a,b,c).mergeAll()},$.Observable.prototype.flatMapLatest=function(a,b,c){return new Lc(this,a,b,c).switchLatest()};var Gd=function(a){function b(b,c){this.source=b,this.skipCount=c,a.call(this)}function c(a,b){this.c=b,this.r=b,this.o=a,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new c(a,this.skipCount))},c.prototype.onNext=function(a){this.isStopped||(this.r<=0?this.o.onNext(a):this.r--)},c.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},c.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},c.prototype.dispose=function(){this.isStopped=!0},c.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Dc.skip=function(a){if(0>a)throw new pb;return new Gd(this,a)},Dc.skipWhile=function(a,b){var c=this,d=zb(a,b,3);return new Id(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)},Dc.take=function(a,b){if(0>a)throw new pb;if(0===a)return Yc(b);var c=this;return new Id(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)},Dc.takeWhile=function(a,b){var c=this,d=zb(a,b,3);return new Id(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)};var Hd=function(a){function b(b,c,d){this.source=b,this.predicate=zb(c,d,3),a.call(this)}function c(a,b){return function(c,d,e){return b.predicate(c,d,e)&&a.call(this,c,d,e)}}function e(a,b,c){this.o=a,this.predicate=b,this.source=c,this.i=0,this.isStopped=!1}return $b(b,a),b.prototype.subscribeCore=function(a){return this.source.subscribe(new e(a,this.predicate,this))},b.prototype.internalFilter=function(a,d){return new b(this.source,c(a,this),d)},e.prototype.onNext=function(a){if(!this.isStopped){var b=d(this.predicate)(a,this.i++,this.source);return b===hb?this.o.onError(b.e):void(b&&this.o.onNext(a))}},e.prototype.onError=function(a){this.isStopped||(this.isStopped=!0,this.o.onError(a))},e.prototype.onCompleted=function(){this.isStopped||(this.isStopped=!0,this.o.onCompleted())},e.prototype.dispose=function(){this.isStopped=!0},e.prototype.fail=function(a){return this.isStopped?!1:(this.isStopped=!0,this.o.onError(a),!0)},b}(Kc);Dc.filter=Dc.where=function(a,b){return this instanceof Hd?this.internalFilter(a,b):new Hd(this,a,b)},Dc.transduce=function(a){function b(a){return{"@@transducer/init":function(){return a},"@@transducer/step":function(a,b){return a.onNext(b)},"@@transducer/result":function(a){return a.onCompleted()}}}var c=this;return new Id(function(e){var f=a(b(e));return c.subscribe(function(a){var b=d(f["@@transducer/step"]).call(f,e,a);b===hb&&e.onError(b.e)},function(a){e.onError(a)},function(){f["@@transducer/result"](e)})},c)};var Id=$.AnonymousObservable=function(a){function b(a){return a&&gb(a.dispose)?a:gb(a)?ec(a):fc}function c(a,c){var f=c[0],g=c[1],h=d(g.__subscribe).call(g,f);return h!==hb||f.fail(hb.e)?void f.setDisposable(b(h)):e(hb.e)}function f(a){var b=new Jd(a),d=[b,this];return sc.scheduleRequired()?sc.scheduleWithState(d,c):c(null,d),b}function g(b,c){this.source=c,this.__subscribe=b,a.call(this,f)}return $b(g,a),g}(Jc),Jd=function(a){function b(b){a.call(this),this.observer=b,this.m=new ic}$b(b,a);var c=b.prototype;return c.next=function(a){var b=d(this.observer.onNext).call(this.observer,a);b===hb&&(this.dispose(),e(b.e))},c.error=function(a){var b=d(this.observer.onError).call(this.observer,a);this.dispose(),b===hb&&e(b.e)},c.completed=function(){var a=d(this.observer.onCompleted).call(this.observer);this.dispose(),a===hb&&e(a.e)},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}(Ec),Kd=function(a,b){this.subject=a,this.observer=b};Kd.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 Ld=$.Subject=function(a){function c(a){return hc(this),this.isStopped?this.hasError?(a.onError(this.error),fc):(a.onCompleted(),fc):(this.observers.push(a),new Kd(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.observers=[],this.hasError=!1}return $b(d,a),_b(d.prototype,Bc.prototype,{hasObservers:function(){return this.observers.length>0},onCompleted:function(){if(hc(this),!this.isStopped){this.isStopped=!0;for(var a=0,c=b(this.observers),d=c.length;d>a;a++)c[a].onCompleted();this.observers.length=0}},onError:function(a){if(hc(this),!this.isStopped){this.isStopped=!0,this.error=a,this.hasError=!0;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){if(hc(this),!this.isStopped)for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onNext(a)},dispose:function(){this.isDisposed=!0,this.observers=null}}),d.create=function(a,b){return new Md(a,b)},d}(Jc),Md=($.AsyncSubject=function(a){function c(a){return hc(this),this.isStopped?(this.hasError?a.onError(this.error):this.hasValue?(a.onNext(this.value),a.onCompleted()):a.onCompleted(),fc):(this.observers.push(a),new Kd(this,a))}function d(){a.call(this,c),this.isDisposed=!1,this.isStopped=!1,this.hasValue=!1,this.observers=[],this.hasError=!1}return $b(d,a),_b(d.prototype,Bc,{hasObservers:function(){return hc(this),this.observers.length>0},onCompleted:function(){var a,c;if(hc(this),!this.isStopped){this.isStopped=!0;var d=b(this.observers),c=d.length;if(this.hasValue)for(a=0;c>a;a++){var e=d[a];
4
+ e.onNext(this.value),e.onCompleted()}else for(a=0;c>a;a++)d[a].onCompleted();this.observers.length=0}},onError:function(a){if(hc(this),!this.isStopped){this.isStopped=!0,this.hasError=!0,this.error=a;for(var c=0,d=b(this.observers),e=d.length;e>c;c++)d[c].onError(a);this.observers.length=0}},onNext:function(a){hc(this),this.isStopped||(this.value=a,this.hasValue=!0)},dispose:function(){this.isDisposed=!0,this.observers=null,this.exception=null,this.value=null}}),d}(Jc),$.AnonymousSubject=function(a){function b(a){return this.observable.subscribe(a)}function c(c,d){this.observer=c,this.observable=d,a.call(this,b)}return $b(c,a),_b(c.prototype,Bc.prototype,{onCompleted:function(){this.observer.onCompleted()},onError:function(a){this.observer.onError(a)},onNext:function(a){this.observer.onNext(a)}}),c}(Jc));"function"==typeof define&&"object"==typeof define.amd&&define.amd?(Z.Rx=$,define(function(){return $})):T&&W?X?(W.exports=$).Rx=$:T.Rx=$:Z.Rx=$;var Nd=j()}).call(this);
4
5
  //# sourceMappingURL=rx.map
@@ -1,35 +1,31 @@
1
1
  // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
2
2
 
3
3
  ;(function (factory) {
4
- var objectTypes = {
5
- 'boolean': false,
6
- 'function': true,
7
- 'object': true,
8
- 'number': false,
9
- 'string': false,
10
- 'undefined': false
11
- };
4
+ var objectTypes = {
5
+ 'function': true,
6
+ 'object': true
7
+ };
12
8
 
13
- var root = (objectTypes[typeof window] && window) || this,
14
- freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports,
15
- freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
16
- moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
17
- freeGlobal = objectTypes[typeof global] && global;
9
+ var
10
+ freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports,
11
+ freeSelf = objectTypes[typeof self] && self.Object && self,
12
+ freeWindow = objectTypes[typeof window] && window && window.Object && window,
13
+ freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
14
+ moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
15
+ freeGlobal = freeExports && freeModule && typeof global == 'object' && global && global.Object && global;
18
16
 
19
- if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal)) {
20
- root = freeGlobal;
21
- }
17
+ var root = root = freeGlobal || ((freeWindow !== (this && this.window)) && freeWindow) || freeSelf || this;
22
18
 
23
- // Because of build optimizers
24
- if (typeof define === 'function' && define.amd) {
25
- define(['rx'], function (Rx, exports) {
26
- return factory(root, exports, Rx);
27
- });
28
- } else if (typeof module === 'object' && module && module.exports === freeExports) {
29
- module.exports = factory(root, module.exports, require('./rx'));
30
- } else {
31
- root.Rx = factory(root, {}, root.Rx);
32
- }
19
+ // Because of build optimizers
20
+ if (typeof define === 'function' && define.amd) {
21
+ define(['./rx'], function (Rx, exports) {
22
+ return factory(root, exports, Rx);
23
+ });
24
+ } else if (typeof module === 'object' && module && module.exports === freeExports) {
25
+ module.exports = factory(root, module.exports, require('./rx'));
26
+ } else {
27
+ root.Rx = factory(root, {}, root.Rx);
28
+ }
33
29
  }.call(this, function (root, exp, Rx, undefined) {
34
30
 
35
31
  var Observable = Rx.Observable,
@@ -68,5 +64,5 @@
68
64
  }, source);
69
65
  };
70
66
 
71
- return Rx;
67
+ return Rx;
72
68
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"rx.sorting.min.js","sources":["rx.sorting.js"],"names":["factory","objectTypes","boolean","function","object","number","string","undefined","root","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","require","call","exp","Observable","observableProto","prototype","AnonymousObservable","observableNever","never","isEqual","internals","defaultSubComparer","helpers","jortSort","jortSortUntil","other","source","observer","arr","takeUntil","subscribe","push","bind","onError","sorted","slice","sort","onNext","onCompleted"],"mappings":";CAEE,SAAUA,GACR,GAAIC,IACAC,WAAW,EACXC,YAAY,EACZC,QAAU,EACVC,QAAU,EACVC,QAAU,EACVC,WAAa,GAGbC,EAAQP,QAAmBQ,UAAWA,QAAWC,KACjDC,EAAcV,QAAmBW,WAAYA,UAAYA,QAAQC,UAAYD,QAC7EE,EAAab,QAAmBc,UAAWA,SAAWA,OAAOF,UAAYE,OAEzEC,GADgBF,GAAcA,EAAWF,UAAYD,GAAeA,EACvDV,QAAmBgB,UAAWA,SAE3CD,GAAeA,EAAWC,SAAWD,GAAcA,EAAWP,SAAWO,IACzER,EAAOQ,GAIW,kBAAXE,SAAyBA,OAAOC,IACvCD,QAAQ,MAAO,SAAUE,EAAIR,GACzB,MAAOZ,GAAQQ,EAAMI,EAASQ,KAET,gBAAXL,SAAuBA,QAAUA,OAAOH,UAAYD,EAClEI,OAAOH,QAAUZ,EAAQQ,EAAMO,OAAOH,QAASS,QAAQ,SAEvDb,EAAKY,GAAKpB,EAAQQ,KAAUA,EAAKY,MAEvCE,KAAKZ,KAAM,SAAUF,EAAMe,EAAKH,GAEhC,GAAII,GAAaJ,EAAGI,WAClBC,EAAkBD,EAAWE,UAC7BC,EAAsBP,EAAGO,oBACzBC,EAAkBJ,EAAWK,MAC7BC,EAAUV,EAAGW,UAAUD,QACvBE,EAAqBZ,EAAGa,QAAQD,kBA+BhC,OAxBFP,GAAgBS,SAAW,WACzB,MAAOxB,MAAKyB,cAAcP,MAQ5BH,EAAgBU,cAAgB,SAAUC,GACxC,GAAIC,GAAS3B,IACb,OAAO,IAAIiB,GAAoB,SAAUW,GACvC,GAAIC,KACJ,OAAOF,GAAOG,UAAUJ,GAAOK,UAC7BF,EAAIG,KAAKC,KAAKJ,GACdD,EAASM,QAAQD,KAAKL,GACtB,WACE,GAAIO,GAASN,EAAIO,MAAM,GAAGC,KAAKf,EAC/BM,GAASU,OAAOlB,EAAQS,EAAKM,IAC7BP,EAASW,iBAEZZ,IAGIjB"}
1
+ {"version":3,"file":"rx.sorting.min.js","sources":["rx.sorting.js"],"names":["factory","objectTypes","function","object","freeExports","exports","nodeType","freeSelf","self","Object","freeWindow","window","freeModule","module","freeGlobal","global","root","this","define","amd","Rx","require","call","exp","Observable","observableProto","prototype","AnonymousObservable","observableNever","never","isEqual","internals","defaultSubComparer","helpers","jortSort","jortSortUntil","other","source","observer","arr","takeUntil","subscribe","push","bind","onError","sorted","slice","sort","onNext","onCompleted"],"mappings":";CAEE,SAAUA,GACV,GAAIC,IACFC,YAAY,EACZC,QAAU,GAIVC,EAAcH,QAAmBI,WAAYA,UAAYA,QAAQC,UAAYD,QAC7EE,EAAWN,QAAmBO,QAASA,KAAKC,QAAUD,KACtDE,EAAaT,QAAmBU,UAAWA,QAAUA,OAAOF,QAAUE,OACtEC,EAAaX,QAAmBY,UAAWA,SAAWA,OAAOP,UAAYO,OAEzEC,GADgBF,GAAcA,EAAWP,UAAYD,GAAeA,EACvDA,GAAeQ,GAA+B,gBAAVG,SAAsBA,QAAUA,OAAON,QAAUM,QAEhGC,EAAOA,EAAOF,GAAgBJ,KAAgBO,MAAQA,KAAKN,SAAYD,GAAeH,GAAYU,IAGhF,mBAAXC,SAAyBA,OAAOC,IACzCD,QAAQ,QAAS,SAAUE,EAAIf,GAC7B,MAAOL,GAAQgB,EAAMX,EAASe,KAEL,gBAAXP,SAAuBA,QAAUA,OAAOR,UAAYD,EACpES,OAAOR,QAAUL,EAAQgB,EAAMH,OAAOR,QAASgB,QAAQ,SAEvDL,EAAKI,GAAKpB,EAAQgB,KAAUA,EAAKI,MAEnCE,KAAKL,KAAM,SAAUD,EAAMO,EAAKH,GAEhC,GAAII,GAAaJ,EAAGI,WAClBC,EAAkBD,EAAWE,UAC7BC,EAAsBP,EAAGO,oBACzBC,EAAkBJ,EAAWK,MAC7BC,EAAUV,EAAGW,UAAUD,QACvBE,EAAqBZ,EAAGa,QAAQD,kBA+BlC,OAxBAP,GAAgBS,SAAW,WACzB,MAAOjB,MAAKkB,cAAcP,MAQ5BH,EAAgBU,cAAgB,SAAUC,GACxC,GAAIC,GAASpB,IACb,OAAO,IAAIU,GAAoB,SAAUW,GACvC,GAAIC,KACJ,OAAOF,GAAOG,UAAUJ,GAAOK,UAC7BF,EAAIG,KAAKC,KAAKJ,GACdD,EAASM,QAAQD,KAAKL,GACtB,WACE,GAAIO,GAASN,EAAIO,MAAM,GAAGC,KAAKf,EAC/BM,GAASU,OAAOlB,EAAQS,EAAKM,IAC7BP,EAASW,iBAEZZ,IAGEjB"}
@@ -1,3 +1,3 @@
1
1
  /* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/
2
- (function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx"],function(b,d){return a(c,d,b)}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c){var d=c.Observable,e=d.prototype,f=c.AnonymousObservable,g=d.never,h=c.internals.isEqual,i=c.helpers.defaultSubComparer;return e.jortSort=function(){return this.jortSortUntil(g())},e.jortSortUntil=function(a){var b=this;return new f(function(c){var d=[];return b.takeUntil(a).subscribe(d.push.bind(d),c.onError.bind(c),function(){var a=d.slice(0).sort(i);c.onNext(h(d,a)),c.onCompleted()})},b)},c});
2
+ (function(a){var b={"function":!0,object:!0},c=b[typeof exports]&&exports&&!exports.nodeType&&exports,d=b[typeof self]&&self.Object&&self,e=b[typeof window]&&window&&window.Object&&window,f=b[typeof module]&&module&&!module.nodeType&&module,g=(f&&f.exports===c&&c,c&&f&&"object"==typeof global&&global&&global.Object&&global),h=h=g||e!==(this&&this.window)&&e||d||this;"function"==typeof define&&define.amd?define(["./rx"],function(b,c){return a(h,c,b)}):"object"==typeof module&&module&&module.exports===c?module.exports=a(h,module.exports,require("./rx")):h.Rx=a(h,{},h.Rx)}).call(this,function(a,b,c){var d=c.Observable,e=d.prototype,f=c.AnonymousObservable,g=d.never,h=c.internals.isEqual,i=c.helpers.defaultSubComparer;return e.jortSort=function(){return this.jortSortUntil(g())},e.jortSortUntil=function(a){var b=this;return new f(function(c){var d=[];return b.takeUntil(a).subscribe(d.push.bind(d),c.onError.bind(c),function(){var a=d.slice(0).sort(i);c.onNext(h(d,a)),c.onCompleted()})},b)},c});
3
3
  //# sourceMappingURL=rx.sorting.map
@@ -2,27 +2,23 @@
2
2
 
3
3
  ;(function (factory) {
4
4
  var objectTypes = {
5
- 'boolean': false,
6
5
  'function': true,
7
- 'object': true,
8
- 'number': false,
9
- 'string': false,
10
- 'undefined': false
6
+ 'object': true
11
7
  };
12
8
 
13
- var root = (objectTypes[typeof window] && window) || this,
14
- freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports,
15
- freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
16
- moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
17
- freeGlobal = objectTypes[typeof global] && global;
9
+ var
10
+ freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports,
11
+ freeSelf = objectTypes[typeof self] && self.Object && self,
12
+ freeWindow = objectTypes[typeof window] && window && window.Object && window,
13
+ freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
14
+ moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
15
+ freeGlobal = freeExports && freeModule && typeof global == 'object' && global && global.Object && global;
18
16
 
19
- if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal)) {
20
- root = freeGlobal;
21
- }
17
+ var root = root = freeGlobal || ((freeWindow !== (this && this.window)) && freeWindow) || freeSelf || this;
22
18
 
23
19
  // Because of build optimizers
24
20
  if (typeof define === 'function' && define.amd) {
25
- define(['rx.virtualtime', 'exports'], function (Rx, exports) {
21
+ define(['./rx.virtualtime', 'exports'], function (Rx, exports) {
26
22
  root.Rx = factory(root, exports, Rx);
27
23
  return root.Rx;
28
24
  });
@@ -526,5 +522,5 @@ var ReactiveTest = Rx.ReactiveTest = {
526
522
  return TestScheduler;
527
523
  })(VirtualTimeScheduler);
528
524
 
529
- return Rx;
525
+ return Rx;
530
526
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"rx.testing.min.js","sources":["rx.testing.js"],"names":["factory","objectTypes","boolean","function","object","number","string","undefined","root","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","require","call","exp","OnNextPredicate","predicate","OnErrorPredicate","MockPromise","scheduler","messages","self","subscriptions","observers","i","len","length","message","notification","value","innerNotification","scheduleAbsoluteWithState","time","obs","slice","j","jLen","accept","disposableEmpty","Observer","Observable","Notification","VirtualTimeScheduler","Disposable","empty","disposableCreate","create","CompositeDisposable","inherits","SingleAssignmentDisposable","internals","defaultComparer","isEqual","prototype","equals","other","kind","exception","ReactiveTest","created","subscribed","disposed","onNext","ticks","Recorded","createOnNext","onError","error","createOnError","onCompleted","createOnCompleted","subscribe","start","end","Subscription","comparer","toString","unsubscribe","Number","MAX_VALUE","MockDisposable","disposes","push","clock","dispose","MockObserver","__super__","MockObserverPrototype","then","onResolved","onRejected","newPromise","index","observer","x","retValue","idx","indexOf","splice","err","HotObservable","observable","ColdObservable","d","add","scheduleRelativeWithState","TestScheduler","baseComparer","y","state","dueTime","action","absolute","relative","toDateTimeOffset","Date","getTime","toRelative","timeSpan","startWithTiming","source","subscription","createObserver","startWithDispose","startWithCreate","createHotObservable","args","arguments","Array","isArray","createColdObservable","createResolvedPromise","createRejectedPromise","reason"],"mappings":"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"}
1
+ {"version":3,"file":"rx.testing.min.js","sources":["rx.testing.js"],"names":["factory","objectTypes","function","object","freeExports","exports","nodeType","freeSelf","self","Object","freeWindow","window","freeModule","module","freeGlobal","global","root","this","define","amd","Rx","require","call","exp","undefined","OnNextPredicate","predicate","OnErrorPredicate","MockPromise","scheduler","messages","subscriptions","observers","i","len","length","message","notification","value","innerNotification","scheduleAbsoluteWithState","time","obs","slice","j","jLen","accept","disposableEmpty","Observer","Observable","Notification","VirtualTimeScheduler","Disposable","empty","disposableCreate","create","CompositeDisposable","inherits","SingleAssignmentDisposable","internals","defaultComparer","isEqual","prototype","equals","other","kind","exception","ReactiveTest","created","subscribed","disposed","onNext","ticks","Recorded","createOnNext","onError","error","createOnError","onCompleted","createOnCompleted","subscribe","start","end","Subscription","comparer","toString","unsubscribe","Number","MAX_VALUE","MockDisposable","disposes","push","clock","dispose","MockObserver","__super__","MockObserverPrototype","then","onResolved","onRejected","newPromise","index","observer","x","retValue","idx","indexOf","splice","err","HotObservable","observable","ColdObservable","d","add","scheduleRelativeWithState","TestScheduler","baseComparer","y","state","dueTime","action","absolute","relative","toDateTimeOffset","Date","getTime","toRelative","timeSpan","startWithTiming","source","subscription","createObserver","startWithDispose","startWithCreate","createHotObservable","args","arguments","Array","isArray","createColdObservable","createResolvedPromise","createRejectedPromise","reason"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  /* Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.*/
2
- (function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx.virtualtime","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c,d){function e(a){this.predicate=a}function f(a){this.predicate=a}function g(a,b){var c=this;this.scheduler=a,this.messages=b,this.subscriptions=[],this.observers=[];for(var d=0,e=this.messages.length;e>d;d++){var f=this.messages[d],g=f.value;!function(b){a.scheduleAbsoluteWithState(null,f.time,function(){for(var a=c.observers.slice(0),d=0,e=a.length;e>d;d++)b.accept(a[d]);return m})}(g)}}var h=c.Observer,i=c.Observable,j=c.Notification,k=c.VirtualTimeScheduler,l=c.Disposable,m=l.empty,n=l.create,o=c.CompositeDisposable,p=(c.SingleAssignmentDisposable,c.internals.inherits),q=c.internals.isEqual;e.prototype.equals=function(a){return a===this?!0:null==a?!1:"N"!==a.kind?!1:this.predicate(a.value)},f.prototype.equals=function(a){return a===this?!0:null==a?!1:"E"!==a.kind?!1:this.predicate(a.exception)};var r=c.ReactiveTest={created:100,subscribed:200,disposed:1e3,onNext:function(a,b){return"function"==typeof b?new s(a,new e(b)):new s(a,j.createOnNext(b))},onError:function(a,b){return"function"==typeof b?new s(a,new f(b)):new s(a,j.createOnError(b))},onCompleted:function(a){return new s(a,j.createOnCompleted())},subscribe:function(a,b){return new t(a,b)}},s=c.Recorded=function(a,b,c){this.time=a,this.value=b,this.comparer=c||q};s.prototype.equals=function(a){return this.time===a.time&&this.comparer(this.value,a.value)},s.prototype.toString=function(){return this.value.toString()+"@"+this.time};var t=c.Subscription=function(a,b){this.subscribe=a,this.unsubscribe=b||Number.MAX_VALUE};t.prototype.equals=function(a){return this.subscribe===a.subscribe&&this.unsubscribe===a.unsubscribe},t.prototype.toString=function(){return"("+this.subscribe+", "+(this.unsubscribe===Number.MAX_VALUE?"Infinite":this.unsubscribe)+")"};var u=c.MockDisposable=function(a){this.scheduler=a,this.disposes=[],this.disposes.push(this.scheduler.clock)};u.prototype.dispose=function(){this.disposes.push(this.scheduler.clock)};var v=function(a){function b(b){a.call(this),this.scheduler=b,this.messages=[]}p(b,a);var c=b.prototype;return c.onNext=function(a){this.messages.push(new s(this.scheduler.clock,j.createOnNext(a)))},c.onError=function(a){this.messages.push(new s(this.scheduler.clock,j.createOnError(a)))},c.onCompleted=function(){this.messages.push(new s(this.scheduler.clock,j.createOnCompleted()))},b}(h);g.prototype.then=function(a,b){var e=this;this.subscriptions.push(new t(this.scheduler.clock));var f,h=this.subscriptions.length-1,i=c.Observer.create(function(b){var j=a(b);if(j&&"function"==typeof j.then)f=j;else{var k=e.scheduler.clock;f=new g(e.scheduler,[c.ReactiveTest.onNext(k,d),c.ReactiveTest.onCompleted(k)])}var l=e.observers.indexOf(i);e.observers.splice(l,1),e.subscriptions[h]=new t(e.subscriptions[h].subscribe,e.scheduler.clock)},function(a){b(a);var c=e.observers.indexOf(i);e.observers.splice(c,1),e.subscriptions[h]=new t(e.subscriptions[h].subscribe,e.scheduler.clock)});return this.observers.push(i),f||new g(this.scheduler,this.messages)};var w=function(a){function b(a){var b=this;this.observers.push(a),this.subscriptions.push(new t(this.scheduler.clock));var c=this.subscriptions.length-1;return n(function(){var d=b.observers.indexOf(a);b.observers.splice(d,1),b.subscriptions[c]=new t(b.subscriptions[c].subscribe,b.scheduler.clock)})}function c(c,d){a.call(this,b);var e,f,g=this;this.scheduler=c,this.messages=d,this.subscriptions=[],this.observers=[];for(var h=0,i=this.messages.length;i>h;h++)e=this.messages[h],f=e.value,function(a){c.scheduleAbsoluteWithState(null,e.time,function(){for(var b=g.observers.slice(0),c=0,d=b.length;d>c;c++)a.accept(b[c]);return m})}(f)}return p(c,a),c}(i),x=function(a){function b(a){var b,c,d=this;this.subscriptions.push(new t(this.scheduler.clock));for(var e=this.subscriptions.length-1,f=new o,g=0,h=this.messages.length;h>g;g++)b=this.messages[g],c=b.value,function(c){f.add(d.scheduler.scheduleRelativeWithState(null,b.time,function(){return c.accept(a),m}))}(c);return n(function(){d.subscriptions[e]=new t(d.subscriptions[e].subscribe,d.scheduler.clock),f.dispose()})}function c(c,d){a.call(this,b),this.scheduler=c,this.messages=d,this.subscriptions=[]}return p(c,a),c}(i);return c.TestScheduler=function(a){function b(a,b){return a>b?1:b>a?-1:0}function d(){a.call(this,0,b)}return p(d,a),d.prototype.scheduleAbsoluteWithState=function(b,c,d){return c<=this.clock&&(c=this.clock+1),a.prototype.scheduleAbsoluteWithState.call(this,b,c,d)},d.prototype.add=function(a,b){return a+b},d.prototype.toDateTimeOffset=function(a){return new Date(a).getTime()},d.prototype.toRelative=function(a){return a},d.prototype.startWithTiming=function(a,b,c,d){var e,f,g=this.createObserver();return this.scheduleAbsoluteWithState(null,b,function(){return e=a(),m}),this.scheduleAbsoluteWithState(null,c,function(){return f=e.subscribe(g),m}),this.scheduleAbsoluteWithState(null,d,function(){return f.dispose(),m}),this.start(),g},d.prototype.startWithDispose=function(a,b){return this.startWithTiming(a,r.created,r.subscribed,b)},d.prototype.startWithCreate=function(a){return this.startWithTiming(a,r.created,r.subscribed,r.disposed)},d.prototype.createHotObservable=function(){var a,b=arguments.length;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return new w(this,a)},d.prototype.createColdObservable=function(){var a,b=arguments.length;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return new x(this,a)},d.prototype.createResolvedPromise=function(a,b){return new g(this,[c.ReactiveTest.onNext(a,b),c.ReactiveTest.onCompleted(a)])},d.prototype.createRejectedPromise=function(a,b){return new g(this,[c.ReactiveTest.onError(a,b)])},d.prototype.createObserver=function(){return new v(this)},d}(k),c});
2
+ (function(a){var b={"function":!0,object:!0},c=b[typeof exports]&&exports&&!exports.nodeType&&exports,d=b[typeof self]&&self.Object&&self,e=b[typeof window]&&window&&window.Object&&window,f=b[typeof module]&&module&&!module.nodeType&&module,g=(f&&f.exports===c&&c,c&&f&&"object"==typeof global&&global&&global.Object&&global),h=h=g||e!==(this&&this.window)&&e||d||this;"function"==typeof define&&define.amd?define(["./rx.virtualtime","exports"],function(b,c){return h.Rx=a(h,c,b),h.Rx}):"object"==typeof module&&module&&module.exports===c?module.exports=a(h,module.exports,require("./rx")):h.Rx=a(h,{},h.Rx)}).call(this,function(a,b,c,d){function e(a){this.predicate=a}function f(a){this.predicate=a}function g(a,b){var c=this;this.scheduler=a,this.messages=b,this.subscriptions=[],this.observers=[];for(var d=0,e=this.messages.length;e>d;d++){var f=this.messages[d],g=f.value;!function(b){a.scheduleAbsoluteWithState(null,f.time,function(){for(var a=c.observers.slice(0),d=0,e=a.length;e>d;d++)b.accept(a[d]);return m})}(g)}}var h=c.Observer,i=c.Observable,j=c.Notification,k=c.VirtualTimeScheduler,l=c.Disposable,m=l.empty,n=l.create,o=c.CompositeDisposable,p=(c.SingleAssignmentDisposable,c.internals.inherits),q=c.internals.isEqual;e.prototype.equals=function(a){return a===this?!0:null==a?!1:"N"!==a.kind?!1:this.predicate(a.value)},f.prototype.equals=function(a){return a===this?!0:null==a?!1:"E"!==a.kind?!1:this.predicate(a.exception)};var r=c.ReactiveTest={created:100,subscribed:200,disposed:1e3,onNext:function(a,b){return"function"==typeof b?new s(a,new e(b)):new s(a,j.createOnNext(b))},onError:function(a,b){return"function"==typeof b?new s(a,new f(b)):new s(a,j.createOnError(b))},onCompleted:function(a){return new s(a,j.createOnCompleted())},subscribe:function(a,b){return new t(a,b)}},s=c.Recorded=function(a,b,c){this.time=a,this.value=b,this.comparer=c||q};s.prototype.equals=function(a){return this.time===a.time&&this.comparer(this.value,a.value)},s.prototype.toString=function(){return this.value.toString()+"@"+this.time};var t=c.Subscription=function(a,b){this.subscribe=a,this.unsubscribe=b||Number.MAX_VALUE};t.prototype.equals=function(a){return this.subscribe===a.subscribe&&this.unsubscribe===a.unsubscribe},t.prototype.toString=function(){return"("+this.subscribe+", "+(this.unsubscribe===Number.MAX_VALUE?"Infinite":this.unsubscribe)+")"};var u=c.MockDisposable=function(a){this.scheduler=a,this.disposes=[],this.disposes.push(this.scheduler.clock)};u.prototype.dispose=function(){this.disposes.push(this.scheduler.clock)};var v=function(a){function b(b){a.call(this),this.scheduler=b,this.messages=[]}p(b,a);var c=b.prototype;return c.onNext=function(a){this.messages.push(new s(this.scheduler.clock,j.createOnNext(a)))},c.onError=function(a){this.messages.push(new s(this.scheduler.clock,j.createOnError(a)))},c.onCompleted=function(){this.messages.push(new s(this.scheduler.clock,j.createOnCompleted()))},b}(h);g.prototype.then=function(a,b){var e=this;this.subscriptions.push(new t(this.scheduler.clock));var f,h=this.subscriptions.length-1,i=c.Observer.create(function(b){var j=a(b);if(j&&"function"==typeof j.then)f=j;else{var k=e.scheduler.clock;f=new g(e.scheduler,[c.ReactiveTest.onNext(k,d),c.ReactiveTest.onCompleted(k)])}var l=e.observers.indexOf(i);e.observers.splice(l,1),e.subscriptions[h]=new t(e.subscriptions[h].subscribe,e.scheduler.clock)},function(a){b(a);var c=e.observers.indexOf(i);e.observers.splice(c,1),e.subscriptions[h]=new t(e.subscriptions[h].subscribe,e.scheduler.clock)});return this.observers.push(i),f||new g(this.scheduler,this.messages)};var w=function(a){function b(a){var b=this;this.observers.push(a),this.subscriptions.push(new t(this.scheduler.clock));var c=this.subscriptions.length-1;return n(function(){var d=b.observers.indexOf(a);b.observers.splice(d,1),b.subscriptions[c]=new t(b.subscriptions[c].subscribe,b.scheduler.clock)})}function c(c,d){a.call(this,b);var e,f,g=this;this.scheduler=c,this.messages=d,this.subscriptions=[],this.observers=[];for(var h=0,i=this.messages.length;i>h;h++)e=this.messages[h],f=e.value,function(a){c.scheduleAbsoluteWithState(null,e.time,function(){for(var b=g.observers.slice(0),c=0,d=b.length;d>c;c++)a.accept(b[c]);return m})}(f)}return p(c,a),c}(i),x=function(a){function b(a){var b,c,d=this;this.subscriptions.push(new t(this.scheduler.clock));for(var e=this.subscriptions.length-1,f=new o,g=0,h=this.messages.length;h>g;g++)b=this.messages[g],c=b.value,function(c){f.add(d.scheduler.scheduleRelativeWithState(null,b.time,function(){return c.accept(a),m}))}(c);return n(function(){d.subscriptions[e]=new t(d.subscriptions[e].subscribe,d.scheduler.clock),f.dispose()})}function c(c,d){a.call(this,b),this.scheduler=c,this.messages=d,this.subscriptions=[]}return p(c,a),c}(i);return c.TestScheduler=function(a){function b(a,b){return a>b?1:b>a?-1:0}function d(){a.call(this,0,b)}return p(d,a),d.prototype.scheduleAbsoluteWithState=function(b,c,d){return c<=this.clock&&(c=this.clock+1),a.prototype.scheduleAbsoluteWithState.call(this,b,c,d)},d.prototype.add=function(a,b){return a+b},d.prototype.toDateTimeOffset=function(a){return new Date(a).getTime()},d.prototype.toRelative=function(a){return a},d.prototype.startWithTiming=function(a,b,c,d){var e,f,g=this.createObserver();return this.scheduleAbsoluteWithState(null,b,function(){return e=a(),m}),this.scheduleAbsoluteWithState(null,c,function(){return f=e.subscribe(g),m}),this.scheduleAbsoluteWithState(null,d,function(){return f.dispose(),m}),this.start(),g},d.prototype.startWithDispose=function(a,b){return this.startWithTiming(a,r.created,r.subscribed,b)},d.prototype.startWithCreate=function(a){return this.startWithTiming(a,r.created,r.subscribed,r.disposed)},d.prototype.createHotObservable=function(){var a,b=arguments.length;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return new w(this,a)},d.prototype.createColdObservable=function(){var a,b=arguments.length;if(Array.isArray(arguments[0]))a=arguments[0];else{a=new Array(b);for(var c=0;b>c;c++)a[c]=arguments[c]}return new x(this,a)},d.prototype.createResolvedPromise=function(a,b){return new g(this,[c.ReactiveTest.onNext(a,b),c.ReactiveTest.onCompleted(a)])},d.prototype.createRejectedPromise=function(a,b){return new g(this,[c.ReactiveTest.onError(a,b)])},d.prototype.createObserver=function(){return new v(this)},d}(k),c});
3
3
  //# sourceMappingURL=rx.testing.map
@@ -1,35 +1,31 @@
1
1
  // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
2
2
 
3
3
  ;(function (factory) {
4
- var objectTypes = {
5
- 'boolean': false,
6
- 'function': true,
7
- 'object': true,
8
- 'number': false,
9
- 'string': false,
10
- 'undefined': false
11
- };
4
+ var objectTypes = {
5
+ 'function': true,
6
+ 'object': true
7
+ };
12
8
 
13
- var root = (objectTypes[typeof window] && window) || this,
14
- freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports,
15
- freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
16
- moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
17
- freeGlobal = objectTypes[typeof global] && global;
9
+ var
10
+ freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports,
11
+ freeSelf = objectTypes[typeof self] && self.Object && self,
12
+ freeWindow = objectTypes[typeof window] && window && window.Object && window,
13
+ freeModule = objectTypes[typeof module] && module && !module.nodeType && module,
14
+ moduleExports = freeModule && freeModule.exports === freeExports && freeExports,
15
+ freeGlobal = freeExports && freeModule && typeof global == 'object' && global && global.Object && global;
18
16
 
19
- if (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal)) {
20
- root = freeGlobal;
21
- }
17
+ var root = root = freeGlobal || ((freeWindow !== (this && this.window)) && freeWindow) || freeSelf || this;
22
18
 
23
- // Because of build optimizers
24
- if (typeof define === 'function' && define.amd) {
25
- define(['rx'], function (Rx, exports) {
26
- return factory(root, exports, Rx);
27
- });
28
- } else if (typeof module === 'object' && module && module.exports === freeExports) {
29
- module.exports = factory(root, module.exports, require('./rx'));
30
- } else {
31
- root.Rx = factory(root, {}, root.Rx);
32
- }
19
+ // Because of build optimizers
20
+ if (typeof define === 'function' && define.amd) {
21
+ define(['./rx'], function (Rx, exports) {
22
+ return factory(root, exports, Rx);
23
+ });
24
+ } else if (typeof module === 'object' && module && module.exports === freeExports) {
25
+ module.exports = factory(root, module.exports, require('./rx'));
26
+ } else {
27
+ root.Rx = factory(root, {}, root.Rx);
28
+ }
33
29
  }.call(this, function (root, exp, Rx, undefined) {
34
30
 
35
31
  // Refernces
@@ -39,7 +35,7 @@
39
35
  observableDefer = Observable.defer,
40
36
  observableEmpty = Observable.empty,
41
37
  observableNever = Observable.never,
42
- observableThrow = Observable.throwException,
38
+ observableThrow = Observable['throw'],
43
39
  observableFromArray = Observable.fromArray,
44
40
  timeoutScheduler = Rx.Scheduler['default'],
45
41
  SingleAssignmentDisposable = Rx.SingleAssignmentDisposable,
@@ -145,7 +141,7 @@
145
141
  var observableTimer = Observable.timer = function (dueTime, periodOrScheduler, scheduler) {
146
142
  var period;
147
143
  isScheduler(scheduler) || (scheduler = timeoutScheduler);
148
- if (periodOrScheduler !== undefined && typeof periodOrScheduler === 'number') {
144
+ if (periodOrScheduler != null && typeof periodOrScheduler === 'number') {
149
145
  period = periodOrScheduler;
150
146
  } else if (isScheduler(periodOrScheduler)) {
151
147
  scheduler = periodOrScheduler;
@@ -154,8 +150,7 @@
154
150
  return observableTimerDate(dueTime.getTime(), scheduler);
155
151
  }
156
152
  if (dueTime instanceof Date && period !== undefined) {
157
- period = periodOrScheduler;
158
- return observableTimerDateAndPeriod(dueTime.getTime(), period, scheduler);
153
+ return observableTimerDateAndPeriod(dueTime.getTime(), periodOrScheduler, scheduler);
159
154
  }
160
155
  return period === undefined ?
161
156
  observableTimerTimeSpan(dueTime, scheduler) :
@@ -259,7 +254,7 @@
259
254
  * @param {Scheduler} [scheduler] Scheduler to run the debounce timers on. If not specified, the timeout scheduler is used.
260
255
  * @returns {Observable} The debounced sequence.
261
256
  */
262
- observableProto.debounce = observableProto.throttleWithTimeout = function (dueTime, scheduler) {
257
+ observableProto.debounce = function (dueTime, scheduler) {
263
258
  isScheduler(scheduler) || (scheduler = timeoutScheduler);
264
259
  var source = this;
265
260
  return new AnonymousObservable(function (observer) {
@@ -443,39 +438,31 @@
443
438
  }, source);
444
439
  };
445
440
 
446
- /**
447
- * Projects each element of an observable sequence into zero or more buffers which are produced based on timing information.
448
- *
449
- * @example
450
- * 1 - res = xs.bufferWithTime(1000, scheduler); // non-overlapping segments of 1 second
451
- * 2 - res = xs.bufferWithTime(1000, 500, scheduler; // segments of 1 second with time shift 0.5 seconds
452
- *
453
- * @param {Number} timeSpan Length of each buffer (specified as an integer denoting milliseconds).
454
- * @param {Mixed} [timeShiftOrScheduler] Interval between creation of consecutive buffers (specified as an integer denoting milliseconds), or an optional scheduler parameter. If not specified, the time shift corresponds to the timeSpan parameter, resulting in non-overlapping adjacent buffers.
455
- * @param {Scheduler} [scheduler] Scheduler to run buffer timers on. If not specified, the timeout scheduler is used.
456
- * @returns {Observable} An observable sequence of buffers.
457
- */
458
- observableProto.bufferWithTime = function (timeSpan, timeShiftOrScheduler, scheduler) {
459
- return this.windowWithTime.apply(this, arguments).selectMany(function (x) { return x.toArray(); });
460
- };
441
+ function toArray(x) { return x.toArray(); }
461
442
 
462
- /**
463
- * Projects each element of an observable sequence into a buffer that is completed when either it's full or a given amount of time has elapsed.
464
- *
465
- * @example
466
- * 1 - res = source.bufferWithTimeOrCount(5000, 50); // 5s or 50 items in an array
467
- * 2 - res = source.bufferWithTimeOrCount(5000, 50, scheduler); // 5s or 50 items in an array
468
- *
469
- * @param {Number} timeSpan Maximum time length of a buffer.
470
- * @param {Number} count Maximum element count of a buffer.
471
- * @param {Scheduler} [scheduler] Scheduler to run bufferin timers on. If not specified, the timeout scheduler is used.
472
- * @returns {Observable} An observable sequence of buffers.
473
- */
474
- observableProto.bufferWithTimeOrCount = function (timeSpan, count, scheduler) {
475
- return this.windowWithTimeOrCount(timeSpan, count, scheduler).selectMany(function (x) {
476
- return x.toArray();
477
- });
478
- };
443
+ /**
444
+ * Projects each element of an observable sequence into zero or more buffers which are produced based on timing information.
445
+ * @param {Number} timeSpan Length of each buffer (specified as an integer denoting milliseconds).
446
+ * @param {Mixed} [timeShiftOrScheduler] Interval between creation of consecutive buffers (specified as an integer denoting milliseconds), or an optional scheduler parameter. If not specified, the time shift corresponds to the timeSpan parameter, resulting in non-overlapping adjacent buffers.
447
+ * @param {Scheduler} [scheduler] Scheduler to run buffer timers on. If not specified, the timeout scheduler is used.
448
+ * @returns {Observable} An observable sequence of buffers.
449
+ */
450
+ observableProto.bufferWithTime = function (timeSpan, timeShiftOrScheduler, scheduler) {
451
+ return this.windowWithTime(timeSpan, timeShiftOrScheduler, scheduler).flatMap(toArray);
452
+ };
453
+
454
+ function toArray(x) { return x.toArray(); }
455
+
456
+ /**
457
+ * Projects each element of an observable sequence into a buffer that is completed when either it's full or a given amount of time has elapsed.
458
+ * @param {Number} timeSpan Maximum time length of a buffer.
459
+ * @param {Number} count Maximum element count of a buffer.
460
+ * @param {Scheduler} [scheduler] Scheduler to run bufferin timers on. If not specified, the timeout scheduler is used.
461
+ * @returns {Observable} An observable sequence of buffers.
462
+ */
463
+ observableProto.bufferWithTimeOrCount = function (timeSpan, count, scheduler) {
464
+ return this.windowWithTimeOrCount(timeSpan, count, scheduler).flatMap(toArray);
465
+ };
479
466
 
480
467
  /**
481
468
  * Records the time interval between consecutive values in an observable sequence.
@@ -518,25 +505,33 @@
518
505
  };
519
506
 
520
507
  function sampleObservable(source, sampler) {
521
- return new AnonymousObservable(function (observer) {
522
- var atEnd, value, hasValue;
508
+ return new AnonymousObservable(function (o) {
509
+ var atEnd = false, value, hasValue = false;
523
510
 
524
511
  function sampleSubscribe() {
525
512
  if (hasValue) {
526
513
  hasValue = false;
527
- observer.onNext(value);
514
+ o.onNext(value);
528
515
  }
529
- atEnd && observer.onCompleted();
516
+ atEnd && o.onCompleted();
530
517
  }
531
518
 
532
- return new CompositeDisposable(
533
- source.subscribe(function (newValue) {
519
+ var sourceSubscription = new SingleAssignmentDisposable();
520
+ sourceSubscription.setDisposable(source.subscribe(
521
+ function (newValue) {
534
522
  hasValue = true;
535
523
  value = newValue;
536
- }, observer.onError.bind(observer), function () {
524
+ },
525
+ function (e) { o.onError(e); },
526
+ function () {
537
527
  atEnd = true;
538
- }),
539
- sampler.subscribe(sampleSubscribe, observer.onError.bind(observer), sampleSubscribe)
528
+ sourceSubscription.dispose();
529
+ }
530
+ ));
531
+
532
+ return new CompositeDisposable(
533
+ sourceSubscription,
534
+ sampler.subscribe(sampleSubscribe, function (e) { o.onError(e); }, sampleSubscribe)
540
535
  );
541
536
  }, source);
542
537
  }
@@ -640,12 +635,9 @@
640
635
  isScheduler(scheduler) || (scheduler = timeoutScheduler);
641
636
  return new AnonymousObservable(function (observer) {
642
637
  var first = true,
643
- hasResult = false,
644
- result,
645
- state = initialState,
646
- time;
647
- return scheduler.scheduleRecursiveWithAbsolute(scheduler.now(), function (self) {
648
- hasResult && observer.onNext(result);
638
+ hasResult = false;
639
+ return scheduler.scheduleRecursiveWithAbsoluteAndState(initialState, scheduler.now(), function (state, self) {
640
+ hasResult && observer.onNext(state);
649
641
 
650
642
  try {
651
643
  if (first) {
@@ -655,15 +647,15 @@
655
647
  }
656
648
  hasResult = condition(state);
657
649
  if (hasResult) {
658
- result = resultSelector(state);
659
- time = timeSelector(state);
650
+ var result = resultSelector(state);
651
+ var time = timeSelector(state);
660
652
  }
661
653
  } catch (e) {
662
654
  observer.onError(e);
663
655
  return;
664
656
  }
665
657
  if (hasResult) {
666
- self(time);
658
+ self(result, time);
667
659
  } else {
668
660
  observer.onCompleted();
669
661
  }
@@ -694,12 +686,9 @@
694
686
  isScheduler(scheduler) || (scheduler = timeoutScheduler);
695
687
  return new AnonymousObservable(function (observer) {
696
688
  var first = true,
697
- hasResult = false,
698
- result,
699
- state = initialState,
700
- time;
701
- return scheduler.scheduleRecursiveWithRelative(0, function (self) {
702
- hasResult && observer.onNext(result);
689
+ hasResult = false;
690
+ return scheduler.scheduleRecursiveWithRelativeAndState(initialState, 0, function (state, self) {
691
+ hasResult && observer.onNext(state);
703
692
 
704
693
  try {
705
694
  if (first) {
@@ -709,15 +698,15 @@
709
698
  }
710
699
  hasResult = condition(state);
711
700
  if (hasResult) {
712
- result = resultSelector(state);
713
- time = timeSelector(state);
701
+ var result = resultSelector(state);
702
+ var time = timeSelector(state);
714
703
  }
715
704
  } catch (e) {
716
705
  observer.onError(e);
717
706
  return;
718
707
  }
719
708
  if (hasResult) {
720
- self(time);
709
+ self(result, time);
721
710
  } else {
722
711
  observer.onCompleted();
723
712
  }
@@ -893,57 +882,52 @@
893
882
  */
894
883
  observableProto.debounceWithSelector = function (durationSelector) {
895
884
  var source = this;
896
- return new AnonymousObservable(function (observer) {
885
+ return new AnonymousObservable(function (o) {
897
886
  var value, hasValue = false, cancelable = new SerialDisposable(), id = 0;
898
- var subscription = source.subscribe(function (x) {
899
- var throttle;
900
- try {
901
- throttle = durationSelector(x);
902
- } catch (e) {
903
- observer.onError(e);
904
- return;
905
- }
887
+ var subscription = source.subscribe(
888
+ function (x) {
889
+ var throttle = tryCatch(durationSelector)(x);
890
+ if (throttle === errorObj) { return o.onError(throttle.e); }
906
891
 
907
- isPromise(throttle) && (throttle = observableFromPromise(throttle));
892
+ isPromise(throttle) && (throttle = observableFromPromise(throttle));
908
893
 
909
- hasValue = true;
910
- value = x;
911
- id++;
912
- var currentid = id, d = new SingleAssignmentDisposable();
913
- cancelable.setDisposable(d);
914
- d.setDisposable(throttle.subscribe(function () {
915
- hasValue && id === currentid && observer.onNext(value);
894
+ hasValue = true;
895
+ value = x;
896
+ id++;
897
+ var currentid = id, d = new SingleAssignmentDisposable();
898
+ cancelable.setDisposable(d);
899
+ d.setDisposable(throttle.subscribe(
900
+ function () {
901
+ hasValue && id === currentid && o.onNext(value);
902
+ hasValue = false;
903
+ d.dispose();
904
+ },
905
+ function (e) { o.onError(e); },
906
+ function () {
907
+ hasValue && id === currentid && o.onNext(value);
908
+ hasValue = false;
909
+ d.dispose();
910
+ }
911
+ ));
912
+ },
913
+ function (e) {
914
+ cancelable.dispose();
915
+ o.onError(e);
916
916
  hasValue = false;
917
- d.dispose();
918
- }, observer.onError.bind(observer), function () {
919
- hasValue && id === currentid && observer.onNext(value);
917
+ id++;
918
+ },
919
+ function () {
920
+ cancelable.dispose();
921
+ hasValue && o.onNext(value);
922
+ o.onCompleted();
920
923
  hasValue = false;
921
- d.dispose();
922
- }));
923
- }, function (e) {
924
- cancelable.dispose();
925
- observer.onError(e);
926
- hasValue = false;
927
- id++;
928
- }, function () {
929
- cancelable.dispose();
930
- hasValue && observer.onNext(value);
931
- observer.onCompleted();
932
- hasValue = false;
933
- id++;
934
- });
924
+ id++;
925
+ }
926
+ );
935
927
  return new CompositeDisposable(subscription, cancelable);
936
928
  }, source);
937
929
  };
938
930
 
939
- /**
940
- * @deprecated use #debounceWithSelector instead.
941
- */
942
- observableProto.throttleWithSelector = function (durationSelector) {
943
- //deprecate('throttleWithSelector', 'debounceWithSelector');
944
- return this.debounceWithSelector(durationSelector);
945
- };
946
-
947
931
  /**
948
932
  * Skips elements for the specified duration from the end of the observable source sequence, using the specified scheduler to run timers.
949
933
  *
@@ -1162,5 +1146,5 @@
1162
1146
  }, source);
1163
1147
  };
1164
1148
 
1165
- return Rx;
1149
+ return Rx;
1166
1150
  }));