forked from immutable-js/immutable-js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathImmutable.min.js
29 lines (29 loc) · 42.6 KB
/
Immutable.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
* Copyright (c) 2014, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
function t(){function t(t,e,r,n){var i;if(n){var u=n.prototype;i=De.create(u)}else i=t.prototype;return De.keys(e).forEach(function(t){i[t]=e[t]}),De.keys(r).forEach(function(e){t[e]=r[e]}),i.constructor=t,t.prototype=i,t}function e(t,e,r,n){return De.getPrototypeOf(e)[r].apply(t,n)}function r(t,r,n){e(t,r,"constructor",n)}function n(t){return t.value=!1,t}function i(t){t&&(t.value=!0)}function u(){}function a(t,e){e=e||0;for(var r=Math.max(0,t.length-e),n=Array(r),i=0;r>i;i++)n[i]=t[i+e];return n}function s(t,e){if(!t)throw Error(e)}function o(t){if(!t)return 0;if(t===!0)return 1;var e=typeof t;if("number"===e){if((0|t)===t)return t&Ke;t=""+t,e="string"}return"string"===e?t.length>Be?h(t):c(t):t.hashCode?o("function"==typeof t.hashCode?t.hashCode():t.hashCode):f(t)}function h(t){var e=Ne[t];return null==e&&(e=c(t),Ve===Le&&(Ve=0,Ne={}),Ve++,Ne[t]=e),e}function c(t){for(var e=0,r=0;t.length>r;r++)e=31*e+t.charCodeAt(r)&Ke;return e}function f(t){var e=t[Je];if(e)return e;if(!We){if(e=t.propertyIsEnumerable&&t.propertyIsEnumerable[Je])return e;if(e=_(t))return e}if(!We||Object.isExtensible(t)){if(e=++ze&Ke,We)Object.defineProperty(t,Je,{enumerable:!1,configurable:!1,writable:!1,value:e});else if(Pe&&t.propertyIsEnumerable===Pe)t.propertyIsEnumerable=function(){return Pe.apply(this,arguments)},t.propertyIsEnumerable[Je]=e;else{if(!t.nodeType)throw Error("Unable to set a non-enumerable property on object.");t[Je]=e}return e}throw Error("Non-extensible objects are not allowed as keys.")}function _(t){if(t&&t.nodeType>0)switch(t.nodeType){case 1:return t.uniqueID;case 9:return t.documentElement&&t.documentElement.uniqueID}}function l(t,e,r){return Ze.value=0===t?e:1===t?r:[e,r],Ze.done=!1,Ze}function v(){return Ze.value=void 0,Ze.done=!0,Ze}function g(t,e){var r=new Xe;return r.next=function(){var r=t.next();return r.done?r:(r.value=e(r.value),r)},r}function p(t){return!!d(t)}function m(t){return t&&"function"==typeof t.next}function y(t){var e=d(t);return"function"==typeof e?e.call(t):void 0}function d(t){return t&&(t[Qe]||t[He])
}function w(){return Object.create(er)}function S(){return Object.create(ir)}function b(t){return null==t.length&&t.cacheResult(),s(1/0>t.length,"Cannot reverse infinite range."),t.length}function I(t,e,r){return(0===t||null!=r&&-r>=t)&&(null==e||null!=r&&e>=r)}function q(t,e){return k(t,e,0)}function M(t,e){return k(t,e,e)}function k(t,e,r){return null==t?r:0>t?Math.max(0,e+t):e?Math.min(e,t):t}function D(t){return t}function x(t,e){return[e,t]}function O(){return!0}function C(t,e,r,n){var i=t._cache;if(i){for(var u=i.length-1,a=0;u>=a;a++){var s=i[r?u-a:a];if(e(s[1],n?s[0]:a,t)===!1)return a+1}return a}return t.__iterateUncached(e,r)}function A(t,e,r,n){var i=t._cache;if(i){var u=i.length-1,a=0;return new Xe(function(){var t=i[r?u-a:a];return a++>u?v():l(e,n?t[0]:a-1,t[1])})}return t.__iteratorUncached?t.__iteratorUncached(e,r):t.cacheResult().__iterator(e,r)}function E(t,e,r,n){var i=t.__makeSequence();return i.has=function(n){var i=t.get(n,je);return i!==je&&!!e.call(r,i,n,t)},i.get=function(n,i){var u=t.get(n,je);return u!==je&&e.call(r,u,n,t)?u:i},i.__iterateUncached=function(i,u){var a=this,s=0;return t.__iterate(function(t,u,o){return e.call(r,t,u,o)?(s++,i(t,n?u:s-1,a)):void 0},u),s},i.__iteratorUncached=function(i,u){var a=t.__iterator(Ge,u),s=0;return new Xe(function(){for(;;){var u=a.next();if(u.done)return u;var o=u.value,h=o[0],c=o[1];if(e.call(r,c,h,t))return l(i,n?h:s++,c)}})},i}function j(t,e,r,n){var i={},u=[];return t.__iterate(function(a,s){var h=e.call(r,a,s,t),c=o(h),f=n?[s,a]:a;i.hasOwnProperty(c)?u[i[c]][1].push(f):(i[c]=u.length,u.push([h,[f]]))}),$e(u).fromEntrySeq().map(n?function(t){return $e(t).fromEntrySeq()}:function(t){return $e(t)})}function R(t,e,r){if(0>=e)return t;var n=t.__makeSequence();return n.__iterateUncached=function(n,i){var u=this;if(i)return this.cacheResult().__iterate(n,i);var a=0,s=!0,o=0;return t.__iterate(function(t,i){return s&&(s=a++<e)?void 0:(o++,n(t,r?i:o-1,u))}),o},n.length=t.length&&Math.max(0,t.length-e),n}function U(t,e,r,n){var i=t.__makeSequence();return i.__iterateUncached=function(i,u){var a=this;
if(u)return this.cacheResult().__iterate(i,u);var s=!0,o=0;return t.__iterate(function(t,u,h){return s&&(s=e.call(r,t,u,h))?void 0:(o++,i(t,n?u:o-1,a))}),o},i}function P(t,e,r){var n=[t].concat(e),i=$e(n);return r&&(i=i.toKeyedSeq()),i=i.flatten(),i.length=n.reduce(function(t,e){if(void 0!==t){var r=$e(e).length;if(null!=r)return t+r}},0),i}function W(t,e){var r=t.__makeSequence();return r.__iterateUncached=function(r,n){var i=this,u=0;return t.__iterate(function(t){var a=!1;return $e(t).__iterate(function(t,n){return r(t,e?n:u++,i)===!1?(a=!0,!1):void 0},n),!a},n),u},r}function K(t){return function(){return!t.apply(this,arguments)}}function z(t){return"string"==typeof t?JSON.stringify(t):t}function J(t,e){return t>e?1:e>t?-1:0}function B(t,e){return 0>e?(null==t.length&&t.cacheResult(),t.length+e):e}function L(t){s(1/0!==t,"Cannot perform this action with an infinite sequence.")}function V(t,e,r){return r instanceof $e?N(t,e,r):r}function N(t,e,r){return new fr(t._rootData,t._keyPath.concat(e),t._onChange,r)}function T(t,e,r){var n=t._rootData.updateIn(t._keyPath,r?_r.empty():void 0,e),i=t._keyPath||[];return t._onChange&&t._onChange.call(void 0,n,t._rootData,r?i.concat(r):i),new fr(n,t._keyPath,t._onChange)}function F(t,e){return t instanceof fr&&(t=t.deref()),e instanceof fr&&(e=e.deref()),t===e?0!==t||0!==e||1/t===1/e:t!==t?e!==e:t instanceof $e?t.equals(e):!1}function G(t,e){return l(t,e[0],e[1])}function H(t,e){return{node:t,index:0,__prev:e}}function Q(t,e,r,n){var i=Object.create(vr);return i.length=t,i._root=e,i.__ownerID=r,i.__hash=n,i.__altered=!1,i}function X(t,e,r){var i=n(Re),u=n(Ue),a=Y(t._root,t.__ownerID,0,o(e),e,r,i,u);if(!u.value)return t;var s=t.length+(i.value?r===je?-1:1:0);return t.__ownerID?(t.length=s,t._root=a,t.__hash=void 0,t.__altered=!0,t):a?Q(s,a):_r.empty()}function Y(t,e,r,n,u,a,s,o){return t?t.update(e,r,n,u,a,s,o):a===je?t:(i(o),i(s),new Sr(e,n,[u,a]))}function Z(t){return t.constructor===Sr||t.constructor===dr}function $(t,e,r,n,i){if(t.hash===n)return new dr(e,n,[t.entry,i]);var u,a=(0===r?t.hash:t.hash>>>r)&Ee,s=(0===r?n:n>>>r)&Ee,o=a===s?[$(t,e,r+Ce,n,i)]:(u=new Sr(e,n,i),s>a?[t,u]:[u,t]);
return new gr(e,1<<a|1<<s,o)}function te(t,e,r,n){for(var i=0,u=0,a=Array(r),s=0,o=1,h=e.length;h>s;s++,o<<=1){var c=e[s];null!=c&&s!==n&&(i|=o,a[u++]=c)}return new gr(t,i,a)}function ee(t,e,r,n,i){for(var u=0,a=Array(Ae),s=0;0!==r;s++,r>>>=1)a[s]=1&r?e[u++]:null;return a[n]=i,new mr(t,u+1,a)}function re(t,e,r){for(var n=[],i=0;r.length>i;i++){var u=r[i];u instanceof $e||(u=$e(u),u instanceof rr&&(u=u.fromEntrySeq())),u&&n.push(u)}return ie(t,e,n)}function ne(t){return function(e,r){return e&&e.mergeDeepWith?e.mergeDeepWith(t,r):t?t(e,r):r}}function ie(t,e,r){return 0===r.length?t:t.withMutations(function(t){for(var n=e?function(r,n){var i=t.get(n,je);t.set(n,i===je?r:e(i,r))}:function(e,r){t.set(r,e)},i=0;r.length>i;i++)r[i].forEach(n)})}function ue(t,e,r,n,i){var u=e.length;if(i===u)return n(t);s(t.set,"updateIn with invalid keyPath");var a=i===u-1?r:_r.empty(),o=e[i],h=t.get(o,a),c=ue(h,e,r,n,i+1);return c===h?t:t.set(o,c)}function ae(t){return t-=t>>1&1431655765,t=(858993459&t)+(t>>2&858993459),t=t+(t>>4)&252645135,t+=t>>8,t+=t>>16,127&t}function se(t,e,r,n){var i=n?t:a(t);return i[e]=r,i}function oe(t,e,r,n){var i=t.length+1;if(n&&e+1===i)return t[e]=r,t;for(var u=Array(i),a=0,s=0;i>s;s++)s===e?(u[s]=r,a=-1):u[s]=t[s+a];return u}function he(t,e,r){var n=t.length-1;if(r&&e===n)return t.pop(),t;for(var i=Array(n),u=0,a=0;n>a;a++)a===e&&(u=1),i[a]=t[a+u];return i}function ce(t,e,r,n,i,u){var a,s=t&&t.array;if(0===e){var o=0>r?-r:0,h=n-r;for(h>Ae&&(h=Ae),a=o;h>a;a++)if(i(s&&s[u?o+h-1-a:a])===!1)return!1}else{var c=1<<e,f=e-Ce;for(a=0;Ee>=a;a++){var _=u?Ee-a:a,l=r+(_<<e);if(n>l&&l+c>0){var v=s&&s[_];if(!ce(v,f,l,n,i,u))return!1}}}return!0}function fe(t,e,r,n,i){return{array:t,level:e,offset:r,max:n,rawMax:n-r>>e,index:0,__prev:i}}function _e(t,e,r,n,i,u,a){var s=Object.create(Or);return s.length=e-t,s._origin=t,s._size=e,s._level=r,s._root=n,s._tail=i,s.__ownerID=u,s.__hash=a,s.__altered=!1,s}function le(t,e,r){if(e=B(t,e),e>=t.length||0>e)return r===je?t:t.withMutations(function(t){0>e?me(t,e).set(0,r):me(t,0,e+1).set(e,r)
});e+=t._origin;var i=t._tail,u=t._root,a=n(Ue);return e>=de(t._size)?i=ve(i,t.__ownerID,0,e,r,a):u=ve(u,t.__ownerID,t._level,e,r,a),a.value?t.__ownerID?(t._root=u,t._tail=i,t.__hash=void 0,t.__altered=!0,t):_e(t._origin,t._size,t._level,u,i):t}function ve(t,e,r,n,u,a){var s,o=u===je,h=n>>>r&Ee,c=t&&t.array.length>h;if(o&&!c)return t;if(r>0){var f=t&&t.array[h],_=ve(f,e,r-Ce,n,u,a);return _===f?t:(s=ge(t,e),s.array[h]=_,s)}return!o&&c&&t.array[h]===u?t:(i(a),s=ge(t,e),o&&h===s.array.length-1?s.array.pop():s.array[h]=o?void 0:u,s)}function ge(t,e){return e&&t&&e===t.ownerID?t:new Cr(t?t.array.slice():[],e)}function pe(t,e){if(e>=de(t._size))return t._tail;if(1<<t._level+Ce>e){for(var r=t._root,n=t._level;r&&n>0;)r=r.array[e>>>n&Ee],n-=Ce;return r}}function me(t,e,r){var n=t.__ownerID||new u,i=t._origin,a=t._size,s=i+e,o=null==r?a:0>r?a+r:i+r;if(s===i&&o===a)return t;if(s>=o)return t.clear();for(var h=t._level,c=t._root,f=0;0>s+f;)c=new Cr(c&&c.array.length?[null,c]:[],n),h+=Ce,f+=1<<h;f&&(s+=f,i+=f,o+=f,a+=f);for(var _=de(a),l=de(o);l>=1<<h+Ce;)c=new Cr(c&&c.array.length?[c]:[],n),h+=Ce;var v=t._tail,g=_>l?pe(t,o-1):l>_?new Cr([],n):v;if(v&&l>_&&a>s&&v.array.length){c=ge(c,n);for(var p=c,m=h;m>Ce;m-=Ce){var y=_>>>m&Ee;p=p.array[y]=ge(p.array[y],n)}p.array[_>>>Ce&Ee]=v}if(a>o&&(g=g&&g.removeAfter(n,0,o)),s>=l)s-=l,o-=l,h=Ce,c=null,g=g&&g.removeBefore(n,0,s);else if(s>i||_>l){var d,w;f=0;do d=s>>>h&Ee,w=l-1>>>h&Ee,d===w&&(d&&(f+=(1<<h)*d),h-=Ce,c=c&&c.array[d]);while(c&&d===w);c&&s>i&&(c=c&&c.removeBefore(n,h,s-f)),c&&_>l&&(c=c&&c.removeAfter(n,h,l-f)),f&&(s-=f,o-=f)}return t.__ownerID?(t.length=o-s,t._origin=s,t._size=o,t._level=h,t._root=c,t._tail=g,t.__hash=void 0,t.__altered=!0,t):_e(s,o,h,c,g)}function ye(t,e,r){for(var n=[],i=0;r.length>i;i++){var u=r[i];u&&n.push($e(u))}var a=Math.max.apply(null,n.map(function(t){return t.length||0}));return a>t.length&&(t=t.setLength(a)),ie(t,e,n)}function de(t){return Ae>t?0:t-1>>>Ce<<Ce}function we(t,e){var r=Object.create(Pr);return r.length=t?t.length:0,r._map=t,r.__ownerID=e,r
}function Se(t,e,r,n){var i=Object.create(Kr.prototype);return i.length=t?t.length:0,i._map=t,i._vector=e,i.__ownerID=r,i.__hash=n,i}function be(t,e,r){var n=t._map,i=t._vector,u=n.get(e),a=void 0!==u,s=r===je;if(!a&&s||a&&r===i.get(u)[1])return t;a||(u=i.length);var o=s?n.remove(e):a?n:n.set(e,u),h=s?i.remove(u):i.set(u,[e,r]);return t.__ownerID?(t.length=o.length,t._map=o,t._vector=h,t.__hash=void 0,t):Se(o,h)}function Ie(t,e,r){var n=Object.create(Object.getPrototypeOf(t));return n._map=e,n.__ownerID=r,n}function qe(t,e){return e?Me(e,t,"",{"":t}):ke(t)}function Me(t,e,r,n){return e&&(Array.isArray(e)||e.constructor===Object)?t.call(n,r,$e(e).map(function(r,n){return Me(t,r,n,e)})):e}function ke(t){if(t){if(Array.isArray(t))return $e(t).map(ke).toVector();if(t.constructor===Object)return $e(t).map(ke).toMap()}return t}var De=Object,xe={};xe.createClass=t,xe.superCall=e,xe.defaultSuperCall=r;var Oe="delete",Ce=5,Ae=1<<Ce,Ee=Ae-1,je={},Re={value:!1},Ue={value:!1},Pe=Object.prototype.propertyIsEnumerable,We=function(){try{return Object.defineProperty({},"x",{}),!0}catch(t){return!1}}(),Ke=2147483647,ze=0,Je="__immutablehash__";"undefined"!=typeof Symbol&&(Je=Symbol(Je));var Be=16,Le=255,Ve=0,Ne={},Te=0,Fe=1,Ge=2,He="@@iterator",Qe="undefined"!=typeof Symbol?Symbol.iterator:He,Xe=function(t){this.next=t};xe.createClass(Xe,{toString:function(){return"[Iterator]"}},{});var Ye=Xe.prototype;Ye.inspect=Ye.toSource=function(){return""+this},Ye[Qe]=function(){return this};var Ze={value:void 0,done:!1},$e=function(t){return tr.from(1===arguments.length?t:Array.prototype.slice.call(arguments))},tr=$e;xe.createClass($e,{toString:function(){return this.__toString("Seq {","}")},__toString:function(t,e){return 0===this.length?t+e:t+" "+this.map(this.__toStringMapper).join(", ")+" "+e},__toStringMapper:function(t,e){return e+": "+z(t)},toJS:function(){return this.map(function(t){return t instanceof tr?t.toJS():t}).__toJS()},toArray:function(){L(this.length);var t=Array(this.length||0);return this.valueSeq().__iterate(function(e,r){t[r]=e
}),t},toObject:function(){L(this.length);var t={};return this.__iterate(function(e,r){t[r]=e}),t},toVector:function(){return L(this.length),Dr.from(this)},toMap:function(){return L(this.length),_r.from(this)},toOrderedMap:function(){return L(this.length),Kr.from(this)},toSet:function(){return L(this.length),Rr.from(this)},toKeyedSeq:function(){return this},hashCode:function(){return this.__hash||(this.__hash=1/0===this.length?0:this.reduce(function(t,e,r){return t+(o(e)^(e===r?0:o(r)))&Ke},0))},equals:function(t){if(this===t)return!0;if(!(t instanceof tr))return!1;if(null!=this.length&&null!=t.length){if(this.length!==t.length)return!1;if(0===this.length&&0===t.length)return!0}return null!=this.__hash&&null!=t.__hash&&this.__hash!==t.__hash?!1:this.__deepEquals(t)},__deepEquals:function(t){var e=this.cacheResult().entrySeq().toArray(),r=0;return t.every(function(t,n){var i=e[r++];return i&&F(n,i[0])&&F(t,i[1])})&&r===e.length},join:function(t){t=void 0!==t?""+t:",";var e="",r=!0;return this.__iterate(function(n){r?r=!1:e+=t,e+=null!=n?n:""}),e},count:function(t,e){return t?this.filter(t,e).count():(null==this.length&&(this.length=this.__iterate(O)),this.length)},countBy:function(t,e){var r=this,n={},i=[];return this.__iterate(function(u,a){var s=t.call(e,u,a,r),h=o(s);n.hasOwnProperty(h)?i[n[h]][1]++:(n[h]=i.length,i.push([s,1]))}),tr(i).fromEntrySeq()},concat:function(){for(var t=[],e=0;arguments.length>e;e++)t[e]=arguments[e];return P(this,t,!0)},flatten:function(){return W(this,!0)},flatMap:function(t,e){return this.map(t,e).flatten()},reverse:function(){var t=this,e=t.__makeSequence();return e.reverse=function(){return t},e.length=t.length,e.get=function(e,r){return t.get(e,r)},e.has=function(e){return t.has(e)},e.contains=function(e){return t.contains(e)},e.cacheResult=function(){t.cacheResult(),this.length=t.length},e.__iterate=function(e,r){var n=this;return t.__iterate(function(t,r){return e(t,r,n)},!r)},e.__iterator=function(e,r){return t.__iterator(e,!r)},e},keySeq:function(){return this.flip().valueSeq()
},valueSeq:function(){return new ur(this)},entrySeq:function(){var t=this;if(t._cache)return tr(t._cache);var e=t.toKeyedSeq().map(x).valueSeq();return e.fromEntries=function(){return t},e},forEach:function(t,e){return this.__iterate(e?t.bind(e):t)},reduce:function(t,e,r){var n,i;return 2>arguments.length?i=!0:n=e,this.__iterate(function(e,u,a){i?(i=!1,n=e):n=t.call(r,n,e,u,a)}),n},reduceRight:function(){var t=this.toKeyedSeq().reverse();return t.reduce.apply(t,arguments)},every:function(t,e){var r=!0;return this.__iterate(function(n,i,u){return t.call(e,n,i,u)?void 0:(r=!1,!1)}),r},some:function(t,e){return!this.every(K(t),e)},first:function(){return this.find(O)},last:function(){return this.findLast(O)},rest:function(){return this.slice(1)},butLast:function(){return this.slice(0,-1)},has:function(t){return this.get(t,je)!==je},get:function(t,e){return this.find(function(e,r){return F(r,t)},null,e)},getIn:function(t,e){var r=this;if(t)for(var n=0;t.length>n;n++)if(r=r&&r.get?r.get(t[n],je):je,r===je)return e;return r},contains:function(t){return this.find(function(e){return F(e,t)},null,je)!==je},find:function(t,e,r){var n=r;return this.__iterate(function(r,i,u){return t.call(e,r,i,u)?(n=r,!1):void 0}),n},findKey:function(t,e){var r;return this.__iterate(function(n,i,u){return t.call(e,n,i,u)?(r=i,!1):void 0}),r},findLast:function(t,e,r){return this.toKeyedSeq().reverse().find(t,e,r)},findLastKey:function(t,e){return this.toKeyedSeq().reverse().findKey(t,e)},flip:function(){var t=this.toKeyedSeq(),e=t.__makeSequence();return e.length=t.length,e.flip=function(){return t},e.has=function(e){return t.contains(e)},e.contains=function(e){return t.has(e)},e.__iterateUncached=function(e,r){var n=this;return t.__iterate(function(t,r){return e(r,t,n)!==!1},r)},e},map:function(t,e){var r=this,n=r.__makeSequence();return n.length=r.length,n.has=function(t){return r.has(t)},n.get=function(n,i){var u=r.get(n,je);return u===je?i:t.call(e,u,n,r)},n.__iterateUncached=function(n,i){var u=this;return r.__iterate(function(r,i,a){return n(t.call(e,r,i,a),i,u)!==!1
},i)},n.__iteratorUncached=function(n,i){var u=r.__iterator(Ge,i);return new Xe(function(){var i=u.next();if(i.done)return i;var a=i.value,s=a[0];return l(n,s,t.call(e,a[1],s,r))})},n},mapKeys:function(t,e){var r=this;return this.flip().map(function(n,i){return t.call(e,n,i,r)}).flip()},mapEntries:function(t,e){var r=this;return this.entrySeq().map(function(n,i){return t.call(e,n,i,r)}).fromEntrySeq()},filter:function(t,e){return E(this,t,e,!0)},slice:function(t,e){if(I(t,e,this.length))return this;var r=q(t,this.length),n=M(e,this.length);if(r!==r||n!==n)return this.cacheResult().slice(t,e);var i=0===r?this:this.skip(r);return null==n||n===this.length?i:i.take(n-r)},take:function(t){var e=this;if(t>e.length)return e;0>t&&(t=0);var r=e.__makeSequence();return r.__iterateUncached=function(r,n){var i=this;if(0===t)return 0;if(n)return this.cacheResult().__iterate(r,n);var u=0;return e.__iterate(function(e,n){return++u&&r(e,n,i)!==!1&&t>u}),u},r.length=this.length&&Math.min(this.length,t),r},takeLast:function(t){return this.reverse().take(t).reverse()},takeWhile:function(t,e){var r=this,n=r.__makeSequence();return n.__iterateUncached=function(n,i){var u=this;if(i)return this.cacheResult().__iterate(n,i);var a=0;return r.__iterate(function(r,i,s){return t.call(e,r,i,s)&&++a&&n(r,i,u)}),a},n},takeUntil:function(t,e){return this.takeWhile(K(t),e)},skip:function(t){return R(this,t,!0)},skipLast:function(t){return this.reverse().skip(t).reverse()},skipWhile:function(t,e){return U(this,t,e,!0)},skipUntil:function(t,e){return this.skipWhile(K(t),e)},groupBy:function(t,e){return j(this,t,e,!0)},sort:function(t){return this.sortBy(D,t)},sortBy:function(t,e){e=e||J;var r=this;return tr(this.entrySeq().entrySeq().toArray().sort(function(n,i){return e(t(n[1][1],n[1][0],r),t(i[1][1],i[1][0],r))||n[0]-i[0]})).fromEntrySeq().valueSeq().fromEntrySeq()},cacheResult:function(){return!this._cache&&this.__iterateUncached&&(L(this.length),this._cache=this.entrySeq().toArray(),null==this.length&&(this.length=this._cache.length)),this},keys:function(){return this.__iterator(Te)
},values:function(){return this.__iterator(Fe)},entries:function(){return this.__iterator(Ge)},__iterate:function(t,e){return C(this,t,e,!0)},__iterator:function(t,e){return A(this,t,e,!0)},__makeSequence:function(){return w()}},{from:function(t){if(t instanceof tr)return t;if(!Array.isArray(t)){if(m(t))return new sr(t);if(p(t))return new or(t);if(t&&t.constructor===Object)return new hr(t);t=[t]}return new cr(t)}});var er=$e.prototype;er[Qe]=er.entries,er.toJSON=er.toJS,er.__toJS=er.toObject,er.inspect=er.toSource=function(){return""+this},er.chain=er.flatMap;var rr=function(){xe.defaultSuperCall(this,nr.prototype,arguments)},nr=rr;xe.createClass(rr,{toString:function(){return this.__toString("Seq [","]")},toKeyedSeq:function(){return new ar(this)},valueSeq:function(){return this},fromEntrySeq:function(){var t=this,e=w();return e.length=t.length,e.entrySeq=function(){return t},e.__iterateUncached=function(e,r){var n=this;return t.__iterate(function(t){return t&&e(t[1],t[0],n)},r)},e},concat:function(){for(var t=[],e=0;arguments.length>e;e++)t[e]=arguments[e];return P(this,t,!1)},filter:function(t,e){return E(this,t,e,!1)},get:function(t,e){return t=B(this,t),this.find(function(e,r){return r===t},null,e)},first:function(){return this.get(0)},last:function(){return this.get(this.length?this.length-1:0)},indexOf:function(t){return this.findIndex(function(e){return F(e,t)})},lastIndexOf:function(t){return this.toKeyedSeq().reverse().indexOf(t)},findIndex:function(t,e){var r=this.findKey(t,e);return null==r?-1:r},findLastIndex:function(t,e){return this.toKeyedSeq().reverse().findIndex(t,e)},splice:function(t,e){var r=arguments.length;if(e=Math.max(0|e,0),0===r||2===r&&!e)return this;t=q(t,this.length);var n=this.slice(0,t);return 1===r?n:n.concat(a(arguments,2),this.slice(t+e))},flatten:function(){return W(this,!1)},skip:function(t){return R(this,t,!1)},skipWhile:function(t,e){return U(this,t,e,!1)},groupBy:function(t,e){return j(this,t,e,!1)},sortBy:function(t,e){e=e||J;var r=this;return $e(this.entrySeq().toArray().sort(function(n,i){return e(t(n[1],n[0],r),t(i[1],i[0],r))||n[0]-i[0]
})).fromEntrySeq().valueSeq()},__iterate:function(t,e){return C(this,t,e,!1)},__iterator:function(t,e){return A(this,t,e,!1)},__makeSequence:function(){return S(this)}},{},$e);var ir=rr.prototype;ir[Qe]=ir.values,ir.__toJS=ir.toArray,ir.__toStringMapper=z;var ur=function(t){this._seq=t,this.length=t.length};xe.createClass(ur,{get:function(t,e){return this._seq.get(t,e)},has:function(t){return this._seq.has(t)},cacheResult:function(){this._seq.cacheResult(),this.length=this._seq.length},__iterate:function(t,e){var r=this,n=0;return this._seq.__iterate(function(e){return t(e,n++,r)},e)},__iterator:function(t,e){var r,n=this._seq.__iterator(Fe,e),i=0;return new Xe(function(){return(r=n.next()).done?v():l(t,i++,r.value)})}},{},rr);var ar=function(t){this._seq=t,this.length=t.length};xe.createClass(ar,{get:function(t,e){return this._seq.get(t,e)},has:function(t){return this._seq.has(t)},cacheResult:function(){this._seq.cacheResult(),this.length=this._seq.length},__iterate:function(t,e){var r=this,n=e?b(this):0;return this._seq.__iterate(function(i){return t(i,e?--n:n++,r)},e)},__iterator:function(t,e){var r=this._seq.__iterator(Fe,e),n=e?b(this):0;return new Xe(function(){var i=r.next();return i.done?i:l(t,e?--n:n++,i.value)})}},{},$e);var sr=function(t){this._iterator=t,this._iteratorCache=[]};xe.createClass(sr,{__iterateUncached:function(t,e){if(e)return this.cacheResult().__iterate(t,e);for(var r=this._iterator,n=this._iteratorCache,i=0;n.length>i;)if(t(n[i],i++,this)===!1)return i;for(var u;!(u=r.next()).done;){var a=u.value;if(n[i]=a,t(a,i++,this)===!1)break}return i},__iteratorUncached:function(t,e){if(e)return this.cacheResult().__iterator(t,e);var r=this._iterator,n=this._iteratorCache,i=0;return new Xe(function(){if(i>=n.length){var e=r.next();if(e.done)return e;n[i]=e.value}return l(t,i,n[i++])})}},{},rr);var or=function(t){this._iterable=t,this.length=t.length||t.size};xe.createClass(or,{__iterateUncached:function(t,e){if(e)return this.cacheResult().__iterate(t,e);var r=this._iterable,n=y(r),i=0;if(m(n))for(var u;!(u=n.next()).done&&t(u.value,i++,this)!==!1;);return i
},__iteratorUncached:function(t,e){if(e)return this.cacheResult().__iterator(t,e);var r=this._iterable,n=y(r);if(!m(n))return new Xe(function(){return v()});var i=0;return new Xe(function(){var e=n.next();return e.done?e:l(t,i++,e.value)})}},{},rr);var hr=function(t){var e=Object.keys(t);this._object=t,this._keys=e,this.length=e.length};xe.createClass(hr,{toObject:function(){return this._object},get:function(t,e){return void 0===e||this.has(t)?this._object[t]:e},has:function(t){return this._object.hasOwnProperty(t)},__iterate:function(t,e){for(var r=this._object,n=this._keys,i=n.length-1,u=0;i>=u;u++){var a=n[e?i-u:u];if(t(r[a],a,this)===!1)return u+1}return u},__iterator:function(t,e){var r=this._object,n=this._keys,i=n.length-1,u=0;return new Xe(function(){var a=n[e?i-u:u];return u++>i?v():l(t,a,r[a])})}},{},$e);var cr=function(t){this._array=t,this.length=t.length};xe.createClass(cr,{toArray:function(){return this._array},get:function(t,e){return this.has(t)?this._array[B(this,t)]:e},has:function(t){return t=B(this,t),t>=0&&this.length>t},__iterate:function(t,e){for(var r=this._array,n=r.length-1,i=0;n>=i;i++)if(t(r[e?n-i:i],i,this)===!1)return i+1;return i},__iterator:function(t,e){var r=this._array,n=r.length-1,i=0;return new Xe(function(){return i>n?v():l(t,i,r[e?n-i++:i++])})}},{},rr);var fr=function(t,e,r,n){n=n?n:t.getIn(e),this.length=n instanceof $e?n.length:null,this._rootData=t,this._keyPath=e,this._onChange=r};xe.createClass(fr,{deref:function(t){return this._rootData.getIn(this._keyPath,t)},get:function(t,e){if(Array.isArray(t)&&0===t.length)return this;var r=this._rootData.getIn(this._keyPath.concat(t),je);return r===je?e:V(this,t,r)},set:function(t,e){return T(this,function(r){return r.set(t,e)},t)},remove:function(t){return T(this,function(e){return e.remove(t)},t)},clear:function(){return T(this,function(t){return t.clear()})},update:function(t,e,r){return 1===arguments.length?T(this,t):T(this,function(n){return n.update(t,e,r)},t)},withMutations:function(t){return T(this,function(e){return(e||_r.empty()).withMutations(t)
})},cursor:function(t){return Array.isArray(t)&&0===t.length?this:N(this,t)},__iterate:function(t,e){var r=this,n=this,i=n.deref();return i&&i.__iterate?i.__iterate(function(e,i){return t(V(n,i,e),i,r)},e):0}},{},$e),fr.prototype[Oe]=fr.prototype.remove,fr.prototype.getIn=fr.prototype.get;var _r=function(t){var e=lr.empty();return t?t.constructor===lr?t:e.merge(t):e},lr=_r;xe.createClass(_r,{toString:function(){return this.__toString("Map {","}")},get:function(t,e){return this._root?this._root.get(0,o(t),t,e):e},set:function(t,e){return X(this,t,e)},remove:function(t){return X(this,t,je)},update:function(t,e,r){return 1===arguments.length?this.updateIn([],null,t):this.updateIn([t],e,r)},updateIn:function(t,e,r){var n;return r||(n=[e,r],r=n[0],e=n[1],n),ue(this,t,e,r,0)},clear:function(){return 0===this.length?this:this.__ownerID?(this.length=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):lr.empty()},merge:function(){return re(this,null,arguments)},mergeWith:function(t){for(var e=[],r=1;arguments.length>r;r++)e[r-1]=arguments[r];return re(this,t,e)},mergeDeep:function(){return re(this,ne(null),arguments)},mergeDeepWith:function(t){for(var e=[],r=1;arguments.length>r;r++)e[r-1]=arguments[r];return re(this,ne(t),e)},cursor:function(t,e){return e||"function"!=typeof t?0===arguments.length?t=[]:Array.isArray(t)||(t=[t]):(e=t,t=[]),new fr(this,t,e)},withMutations:function(t){var e=this.asMutable();return t(e),e.wasAltered()?e.__ensureOwner(this.__ownerID):this},asMutable:function(){return this.__ownerID?this:this.__ensureOwner(new u)},asImmutable:function(){return this.__ensureOwner()},wasAltered:function(){return this.__altered},__iterator:function(t,e){return new Ir(this,t,e)},__iterate:function(t,e){var r=this,n=0;return this._root&&this._root.iterate(function(e){return n++,t(e[1],e[0],r)},e),n},__deepEquals:function(t){var e=this;return t.every(function(t,r){return F(e.get(r,je),t)})},__ensureOwner:function(t){return t===this.__ownerID?this:t?Q(this.length,this._root,t,this.__hash):(this.__ownerID=t,this.__altered=!1,this)
}},{empty:function(){return qr||(qr=Q(0))}},$e);var vr=_r.prototype;vr[Oe]=vr.remove,_r.from=_r;var gr=function(t,e,r){this.ownerID=t,this.bitmap=e,this.nodes=r},pr=gr;xe.createClass(gr,{get:function(t,e,r,n){var i=1<<((0===t?e:e>>>t)&Ee),u=this.bitmap;return 0===(u&i)?n:this.nodes[ae(u&i-1)].get(t+Ce,e,r,n)},update:function(t,e,r,n,i,u,a){var s=(0===e?r:r>>>e)&Ee,o=1<<s,h=this.bitmap,c=0!==(h&o);if(!c&&i===je)return this;var f=ae(h&o-1),_=this.nodes,l=c?_[f]:null,v=Y(l,t,e+Ce,r,n,i,u,a);if(v===l)return this;if(!c&&v&&_.length>=Mr)return ee(t,_,h,s,v);if(c&&!v&&2===_.length&&Z(_[1^f]))return _[1^f];if(c&&v&&1===_.length&&Z(v))return v;var g=t&&t===this.ownerID,p=c?v?h:h^o:h|o,m=c?v?se(_,f,v,g):he(_,f,g):oe(_,f,v,g);return g?(this.bitmap=p,this.nodes=m,this):new pr(t,p,m)},iterate:function(t,e){for(var r=this.nodes,n=0,i=r.length-1;i>=n;n++)if(r[e?i-n:n].iterate(t,e)===!1)return!1}},{});var mr=function(t,e,r){this.ownerID=t,this.count=e,this.nodes=r},yr=mr;xe.createClass(mr,{get:function(t,e,r,n){var i=(0===t?e:e>>>t)&Ee,u=this.nodes[i];return u?u.get(t+Ce,e,r,n):n},update:function(t,e,r,n,i,u,a){var s=(0===e?r:r>>>e)&Ee,o=i===je,h=this.nodes,c=h[s];if(o&&!c)return this;var f=Y(c,t,e+Ce,r,n,i,u,a);if(f===c)return this;var _=this.count;if(c){if(!f&&(_--,kr>_))return te(t,h,_,s)}else _++;var l=t&&t===this.ownerID,v=se(h,s,f,l);return l?(this.count=_,this.nodes=v,this):new yr(t,_,v)},iterate:function(t,e){for(var r=this.nodes,n=0,i=r.length-1;i>=n;n++){var u=r[e?i-n:n];if(u&&u.iterate(t,e)===!1)return!1}}},{});var dr=function(t,e,r){this.ownerID=t,this.hash=e,this.entries=r},wr=dr;xe.createClass(dr,{get:function(t,e,r,n){for(var i=this.entries,u=0,a=i.length;a>u;u++)if(F(r,i[u][0]))return i[u][1];return n},update:function(t,e,r,n,u,s,o){var h=u===je;if(r!==this.hash)return h?this:(i(o),i(s),$(this,t,e,r,[n,u]));for(var c=this.entries,f=0,_=c.length;_>f&&!F(n,c[f][0]);f++);var l=_>f;if(h&&!l)return this;if(i(o),(h||!l)&&i(s),h&&2===_)return new Sr(t,this.hash,c[1^f]);var v=t&&t===this.ownerID,g=v?c:a(c);return l?h?f===_-1?g.pop():g[f]=g.pop():g[f]=[n,u]:g.push([n,u]),v?(this.entries=g,this):new wr(t,this.hash,g)
},iterate:function(t,e){for(var r=this.entries,n=0,i=r.length-1;i>=n;n++)if(t(r[e?i-n:n])===!1)return!1}},{});var Sr=function(t,e,r){this.ownerID=t,this.hash=e,this.entry=r},br=Sr;xe.createClass(Sr,{get:function(t,e,r,n){return F(r,this.entry[0])?this.entry[1]:n},update:function(t,e,r,n,u,a,s){var o=u===je,h=F(n,this.entry[0]);return(h?u===this.entry[1]:o)?this:(i(s),o?(i(a),null):h?t&&t===this.ownerID?(this.entry[1]=u,this):new br(t,r,[n,u]):(i(a),$(this,t,e,r,[n,u])))},iterate:function(t){return t(this.entry)}},{});var Ir=function(t,e,r){this._type=e,this._reverse=r,this._stack=t._root&&H(t._root)};xe.createClass(Ir,{next:function(){for(var t=this._type,e=this._stack;e;){var r,n=e.node,i=e.index++;if(n.entry){if(0===i)return G(t,n.entry)}else if(n.entries){if(r=n.entries.length-1,r>=i)return G(t,n.entries[this._reverse?r-i:i])}else if(r=n.nodes.length-1,r>=i){var u=n.nodes[this._reverse?r-i:i];if(u){if(u.entry)return G(t,u.entry);e=this._stack=H(u,e)}continue}e=this._stack=this._stack.__prev}return v()}},{},Xe);var qr,Mr=Ae/2,kr=Ae/4,Dr=function(){for(var t=[],e=0;arguments.length>e;e++)t[e]=arguments[e];return xr.from(t)},xr=Dr;xe.createClass(Dr,{toString:function(){return this.__toString("Vector [","]")},has:function(t){return t=B(this,t),t>=0&&this.length>t},get:function(t,e){if(t=B(this,t),0>t||t>=this.length)return e;t+=this._origin;var r=pe(this,t);return r&&r.array[t&Ee]},set:function(t,e){return le(this,t,e)},remove:function(t){return le(this,t,je)},clear:function(){return 0===this.length?this:this.__ownerID?(this.length=this._origin=this._size=0,this._level=Ce,this._root=this._tail=null,this.__hash=void 0,this.__altered=!0,this):xr.empty()},push:function(){var t=arguments,e=this.length;return this.withMutations(function(r){me(r,0,e+t.length);for(var n=0;t.length>n;n++)r.set(e+n,t[n])})},pop:function(){return me(this,0,-1)},unshift:function(){var t=arguments;return this.withMutations(function(e){me(e,-t.length);for(var r=0;t.length>r;r++)e.set(r,t[r])})},shift:function(){return me(this,1)},merge:function(){return ye(this,null,arguments)
},mergeWith:function(t){for(var e=[],r=1;arguments.length>r;r++)e[r-1]=arguments[r];return ye(this,t,e)},mergeDeep:function(){return ye(this,ne(null),arguments)},mergeDeepWith:function(t){for(var e=[],r=1;arguments.length>r;r++)e[r-1]=arguments[r];return ye(this,ne(t),e)},setLength:function(t){return me(this,0,t)},slice:function(t,e){var r=xe.superCall(this,xr.prototype,"slice",[t,e]);if(r!==this){var n=this,i=n.length;r.toVector=function(){return me(n,0>t?Math.max(0,i+t):i?Math.min(i,t):t,null==e?i:0>e?Math.max(0,i+e):i?Math.min(i,e):e)}}return r},__iterator:function(t,e){return new Er(this,t,e)},__iterate:function(t,e){var r=this,n=0,i=function(e){return t(e,n++,r)},u=de(this._size);return e?ce(this._tail,0,u-this._origin,this._size-this._origin,i,e)&&ce(this._root,this._level,-this._origin,u-this._origin,i,e):ce(this._root,this._level,-this._origin,u-this._origin,i,e)&&ce(this._tail,0,u-this._origin,this._size-this._origin,i,e),n},__deepEquals:function(t){var e=this.entries(!0);return t.every(function(t,r){var n=e.next().value;return n&&n[0]===r&&F(n[1],t)})},__ensureOwner:function(t){return t===this.__ownerID?this:t?_e(this._origin,this._size,this._level,this._root,this._tail,t,this.__hash):(this.__ownerID=t,this)}},{empty:function(){return jr||(jr=_e(0,0,Ce))},from:function(t){if(!t||0===t.length)return xr.empty();if(t.constructor===xr)return t;var e=Array.isArray(t);return t.length>0&&Ae>t.length?_e(0,t.length,Ce,null,new Cr(e?a(t):$e(t).toArray())):(e||(t=$e(t).valueSeq()),xr.empty().merge(t))}},rr);var Or=Dr.prototype;Or[Oe]=Or.remove,Or.update=vr.update,Or.updateIn=vr.updateIn,Or.cursor=vr.cursor,Or.withMutations=vr.withMutations,Or.asMutable=vr.asMutable,Or.asImmutable=vr.asImmutable,Or.wasAltered=vr.wasAltered;var Cr=function(t,e){this.array=t,this.ownerID=e},Ar=Cr;xe.createClass(Cr,{removeBefore:function(t,e,r){if(r===e?1<<e:0||0===this.array.length)return this;var n=r>>>e&Ee;if(n>=this.array.length)return new Ar([],t);var i,u=0===n;if(e>0){var a=this.array[n];if(i=a&&a.removeBefore(t,e-Ce,r),i===a&&u)return this
}if(u&&!i)return this;var s=ge(this,t);if(!u)for(var o=0;n>o;o++)s.array[o]=void 0;return i&&(s.array[n]=i),s},removeAfter:function(t,e,r){if(r===e?1<<e:0||0===this.array.length)return this;var n=r-1>>>e&Ee;if(n>=this.array.length)return this;var i,u=n===this.array.length-1;if(e>0){var a=this.array[n];if(i=a&&a.removeAfter(t,e-Ce,r),i===a&&u)return this}if(u&&!i)return this;var s=ge(this,t);return u||s.array.pop(),i&&(s.array[n]=i),s}},{});var Er=function(t,e,r){this._type=e,this._reverse=!!r,this._maxIndex=t.length-1;var n=de(t._size),i=fe(t._root&&t._root.array,t._level,-t._origin,n-t._origin-1),u=fe(t._tail&&t._tail.array,0,n-t._origin,t._size-t._origin-1);this._stack=r?u:i,this._stack.__prev=r?i:u};xe.createClass(Er,{next:function(){for(var t=this._stack;t;){var e=t.array,r=t.index++;if(this._reverse&&(r=Ee-r,r>t.rawMax&&(r=t.rawMax,t.index=Ae-r)),r>=0&&Ae>r&&t.rawMax>=r){var n=e&&e[r];if(0===t.level){var i,u=this._type;return 1!==u&&(i=t.offset+(r<<t.level),this._reverse&&(i=this._maxIndex-i)),l(u,i,n)}this._stack=t=fe(n&&n.array,t.level-Ce,t.offset+(r<<t.level),t.max,t)}else t=this._stack=this._stack.__prev}return v()}},{},Xe);var jr,Rr=function(){for(var t=[],e=0;arguments.length>e;e++)t[e]=arguments[e];return Ur.from(t)},Ur=Rr;xe.createClass(Rr,{toString:function(){return this.__toString("Set {","}")},has:function(t){return this._map.has(t)},get:function(t,e){return this.has(t)?t:e},add:function(t){var e=this._map.set(t,null);return this.__ownerID?(this.length=e.length,this._map=e,this):e===this._map?this:we(e)},remove:function(t){var e=this._map.remove(t);return this.__ownerID?(this.length=e.length,this._map=e,this):e===this._map?this:0===e.length?Ur.empty():we(e)},clear:function(){return 0===this.length?this:this.__ownerID?(this.length=0,this._map.clear(),this):Ur.empty()},union:function(){var t=arguments;return 0===t.length?this:this.withMutations(function(e){for(var r=0;t.length>r;r++)$e(t[r]).forEach(function(t){return e.add(t)})})},intersect:function(){for(var t=[],e=0;arguments.length>e;e++)t[e]=arguments[e];
if(0===t.length)return this;t=t.map(function(t){return $e(t)});var r=this;return this.withMutations(function(e){r.forEach(function(r){t.every(function(t){return t.contains(r)})||e.remove(r)})})},subtract:function(){for(var t=[],e=0;arguments.length>e;e++)t[e]=arguments[e];if(0===t.length)return this;t=t.map(function(t){return $e(t)});var r=this;return this.withMutations(function(e){r.forEach(function(r){t.some(function(t){return t.contains(r)})&&e.remove(r)})})},isSubset:function(t){return t=$e(t),this.every(function(e){return t.contains(e)})},isSuperset:function(t){var e=this;return t=$e(t),t.every(function(t){return e.contains(t)})},wasAltered:function(){return this._map.wasAltered()},hashCode:function(){return this._map.hashCode()},__iterator:function(t,e){var r=this._map.__iterator(Te,e);return t===Ge?g(r,function(t){return[t,t]}):r},__iterate:function(t,e){var r=this;return this._map.__iterate(function(e,n){return t(n,n,r)},e)},__deepEquals:function(t){return this.isSuperset(t)},__ensureOwner:function(t){if(t===this.__ownerID)return this;var e=this._map.__ensureOwner(t);return t?we(e,t):(this.__ownerID=t,this._map=e,this)}},{empty:function(){return Wr||(Wr=we(_r.empty()))},from:function(t){var e=Ur.empty();return t?t.constructor===Ur?t:e.union(t):e},fromKeys:function(t){return Ur.from($e(t).flip())}},$e);var Pr=Rr.prototype;Pr[Oe]=Pr.remove,Pr[Qe]=Pr.values,Pr.contains=Pr.has,Pr.mergeDeep=Pr.merge=Pr.union,Pr.mergeDeepWith=Pr.mergeWith=function(){for(var t=[],e=1;arguments.length>e;e++)t[e-1]=arguments[e];return this.merge.apply(this,t)},Pr.withMutations=vr.withMutations,Pr.asMutable=vr.asMutable,Pr.asImmutable=vr.asImmutable,Pr.__toJS=ir.__toJS,Pr.__toStringMapper=ir.__toStringMapper;var Wr,Kr=function(t){var e=zr.empty();return t?t.constructor===zr?t:e.merge(t):e},zr=Kr;xe.createClass(Kr,{toString:function(){return this.__toString("OrderedMap {","}")},get:function(t,e){var r=this._map.get(t);return null!=r?this._vector.get(r)[1]:e},clear:function(){return 0===this.length?this:this.__ownerID?(this.length=0,this._map.clear(),this._vector.clear(),this):zr.empty()
},set:function(t,e){return be(this,t,e)},remove:function(t){return be(this,t,je)},wasAltered:function(){return this._map.wasAltered()||this._vector.wasAltered()},__iterator:function(t,e){var r=this._vector.__iterator(Fe,e);return t===Te?g(r,function(t){return t[0]}):t===Fe?g(r,function(t){return t[1]}):r},__iterate:function(t,e){return this._vector.fromEntrySeq().__iterate(t,e)},__deepEquals:function(t){var e=this.entries();return t.every(function(t,r){var n=e.next().value;return n&&F(n[0],r)&&F(n[1],t)})},__ensureOwner:function(t){if(t===this.__ownerID)return this;var e=this._map.__ensureOwner(t),r=this._vector.__ensureOwner(t);return t?Se(e,r,t,this.__hash):(this.__ownerID=t,this._map=e,this._vector=r,this)}},{empty:function(){return Jr||(Jr=Se(_r.empty(),Dr.empty()))}},_r),Kr.from=Kr,Kr.prototype[Oe]=Kr.prototype.remove;var Jr,Br=function(t,e){var r=function(t){return this instanceof r?void(this._map=_r(t)):new r(t)};t=$e(t);var n=r.prototype=Object.create(Vr);n.constructor=r,n._name=e,n._defaultValues=t;var i=Object.keys(t);return r.prototype.length=i.length,Object.defineProperty&&t.forEach(function(t,e){Object.defineProperty(r.prototype,e,{get:function(){return this.get(e)},set:function(t){s(this.__ownerID,"Cannot set on an immutable record."),this.set(e,t)}})}),r},Lr=Br;xe.createClass(Br,{toString:function(){return this.__toString((this._name||"Record")+" {","}")},has:function(t){return this._defaultValues.has(t)},get:function(t,e){return void 0===e||this.has(t)?this._map.get(t,this._defaultValues.get(t)):e},clear:function(){if(this.__ownerID)return this._map.clear(),this;Object.getPrototypeOf(this).constructor;return Lr._empty||(Lr._empty=Ie(this,_r.empty()))},set:function(t,e){if(null==t||!this.has(t))return this;var r=this._map.set(t,e);return this.__ownerID||r===this._map?this:Ie(this,r)},remove:function(t){if(null==t||!this.has(t))return this;var e=this._map.remove(t);return this.__ownerID||e===this._map?this:Ie(this,e)},keys:function(){return this._map.keys()},values:function(){return this._map.values()
},entries:function(){return this._map.entries()},wasAltered:function(){return this._map.wasAltered()},__iterator:function(t,e){return this._map.__iterator(t,e)},__iterate:function(t,e){var r=this;return this._defaultValues.map(function(t,e){return r.get(e)}).__iterate(t,e)},__ensureOwner:function(t){if(t===this.__ownerID)return this;var e=this._map&&this._map.__ensureOwner(t);return t?Ie(this,e,t):(this.__ownerID=t,this._map=e,this)}},{},$e);var Vr=Br.prototype;Vr[Oe]=Vr.remove,Vr.merge=vr.merge,Vr.mergeWith=vr.mergeWith,Vr.mergeDeep=vr.mergeDeep,Vr.mergeDeepWith=vr.mergeDeepWith,Vr.update=vr.update,Vr.updateIn=vr.updateIn,Vr.cursor=vr.cursor,Vr.withMutations=vr.withMutations,Vr.asMutable=vr.asMutable,Vr.asImmutable=vr.asImmutable,Vr.__deepEquals=vr.__deepEquals;var Nr=function(t,e,r){return this instanceof Tr?(s(0!==r,"Cannot step a Range by 0"),t=t||0,null==e&&(e=1/0),t===e&&Gr?Gr:(r=null==r?1:Math.abs(r),t>e&&(r=-r),this._start=t,this._end=e,this._step=r,void(this.length=Math.max(0,Math.ceil((e-t)/r-1)+1)))):new Tr(t,e,r)},Tr=Nr;xe.createClass(Nr,{toString:function(){return 0===this.length?"Range []":"Range [ "+this._start+"..."+this._end+(this._step>1?" by "+this._step:"")+" ]"},has:function(t){return t=B(this,t),t>=0&&(1/0===this.length||this.length>t)},get:function(t,e){return t=B(this,t),this.has(t)?this._start+t*this._step:e},contains:function(t){var e=(t-this._start)/this._step;return e>=0&&this.length>e&&e===Math.floor(e)},slice:function(t,e){return I(t,e,this.length)?this:(t=q(t,this.length),e=M(e,this.length),t>=e?Gr:new Tr(this.get(t,this._end),this.get(e,this._end),this._step))},indexOf:function(t){var e=t-this._start;if(e%this._step===0){var r=e/this._step;if(r>=0&&this.length>r)return r}return-1},lastIndexOf:function(t){return this.indexOf(t)},take:function(t){return this.slice(0,Math.max(0,t))},skip:function(t){return this.slice(Math.max(0,t))},__iterate:function(t,e){for(var r=this.length-1,n=this._step,i=e?this._start+r*n:this._start,u=0;r>=u;u++){if(t(i,u,this)===!1)return u+1;i+=e?-n:n}return u
},__iterator:function(t,e){var r=this.length-1,n=this._step,i=e?this._start+r*n:this._start,u=0;return new Xe(function(){var a=i;return i+=e?-n:n,u>r?v():l(t,u++,a)})},__deepEquals:function(t){return this._start===t._start&&this._end===t._end&&this._step===t._step}},{},rr);var Fr=Nr.prototype;Fr.__toJS=Fr.toArray,Fr.first=Or.first,Fr.last=Or.last;var Gr=Nr(0,0),Hr=function(t,e){return 0===e&&Yr?Yr:this instanceof Qr?(this._value=t,void(this.length=null==e?1/0:Math.max(0,e))):new Qr(t,e)},Qr=Hr;xe.createClass(Hr,{toString:function(){return 0===this.length?"Repeat []":"Repeat [ "+this._value+" "+this.length+" times ]"},get:function(t,e){return this.has(t)?this._value:e},contains:function(t){return F(this._value,t)},slice:function(t,e){var r=this.length;return t=0>t?Math.max(0,r+t):Math.min(r,t),e=null==e?r:e>0?Math.min(r,e):Math.max(0,r+e),e>t?new Qr(this._value,e-t):Yr},reverse:function(){return this},indexOf:function(t){return F(this._value,t)?0:-1},lastIndexOf:function(t){return F(this._value,t)?this.length:-1},__iterate:function(t){for(var e=0;this.length>e;e++)if(t(this._value,e,this)===!1)return e+1;return e},__iterator:function(t){var e=this,r=0;return new Xe(function(){return e.length>r?l(t,r++,e._value):v()})},__deepEquals:function(t){return F(this._value,t._value)}},{},rr);var Xr=Hr.prototype;Xr.last=Xr.first,Xr.has=Fr.has,Xr.take=Fr.take,Xr.skip=Fr.skip,Xr.__toJS=Fr.__toJS;var Yr=new Hr(void 0,0),Zr={Sequence:$e,Map:_r,Vector:Dr,Set:Rr,OrderedMap:Kr,Record:Br,Range:Nr,Repeat:Hr,is:F,fromJS:qe};return Zr}"object"==typeof exports?module.exports=t():"function"==typeof define&&define.amd?define(t):Immutable=t();