ft_transcendence/pong/node_modules/js-sdsl/dist/umd/js-sdsl.min.js
2023-05-02 19:15:50 +02:00

9 lines
32 KiB
JavaScript

/*!
* js-sdsl v4.4.0
* https://github.com/js-sdsl/js-sdsl
* (c) 2021-present ZLY201 <zilongyao1366@gmail.com>
* MIT license
*/
!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports):"function"==typeof define&&define.amd?define(["exports"],i):i((t="undefined"!=typeof globalThis?globalThis:t||self).sdsl={})}(this,function(t){"use strict";var A=function(t,i){return(A=Object.setPrototypeOf||({__proto__:[]}instanceof Array?function(t,i){t.__proto__=i}:function(t,i){for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r])}))(t,i)};function i(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function r(){this.constructor=t}A(t,i),t.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}function s(e,n){var s,o,h,u={label:0,sent:function(){if(1&h[0])throw h[1];return h[1]},trys:[],ops:[]},f={next:t(0),throw:t(1),return:t(2)};return"function"==typeof Symbol&&(f[Symbol.iterator]=function(){return this}),f;function t(r){return function(t){var i=[r,t];if(s)throw new TypeError("Generator is already executing.");for(;u=f&&i[f=0]?0:u;)try{if(s=1,o&&(h=2&i[0]?o.return:i[0]?o.throw||((h=o.return)&&h.call(o),0):o.next)&&!(h=h.call(o,i[1])).done)return h;switch(o=0,(i=h?[2&i[0],h.value]:i)[0]){case 0:case 1:h=i;break;case 4:return u.label++,{value:i[1],done:!1};case 5:u.label++,o=i[1],i=[0];continue;case 7:i=u.ops.pop(),u.trys.pop();continue;default:if(!(h=0<(h=u.trys).length&&h[h.length-1])&&(6===i[0]||2===i[0])){u=0;continue}if(3===i[0]&&(!h||i[1]>h[0]&&i[1]<h[3]))u.label=i[1];else if(6===i[0]&&u.label<h[1])u.label=h[1],h=i;else{if(!(h&&u.label<h[2])){h[2]&&u.ops.pop(),u.trys.pop();continue}u.label=h[2],u.ops.push(i)}}i=n.call(e,u)}catch(t){i=[6,t],o=0}finally{s=h=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}}}function h(t,i){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var e,n,s=r.call(t),o=[];try{for(;(void 0===i||0<i--)&&!(e=s.next()).done;)o.push(e.value)}catch(t){n={error:t}}finally{try{e&&!e.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return o}function u(t,i,r){if(r||2===arguments.length)for(var e,n=0,s=i.length;n<s;n++)!e&&n in i||((e=e||Array.prototype.slice.call(i,0,n))[n]=i[n]);return t.concat(e||Array.prototype.slice.call(i))}C.prototype.equals=function(t){return this.t===t.t};var r=C;function C(t){this.iteratorType=t=void 0===t?0:t}Object.defineProperty(R.prototype,"length",{get:function(){return this.i},enumerable:!1,configurable:!0}),R.prototype.size=function(){return this.i},R.prototype.empty=function(){return 0===this.i};var e=R;function R(){this.i=0}i(_,V=e);var V,q=_;function _(){return null!==V&&V.apply(this,arguments)||this}i(n,j=e),n.prototype.clear=function(){this.i=0,this.h=[]},n.prototype.push=function(t){return this.h.push(t),this.i+=1,this.i},n.prototype.pop=function(){if(0!==this.i)return--this.i,this.h.pop()},n.prototype.top=function(){return this.h[this.i-1]};var j,M=n;function n(t){void 0===t&&(t=[]);var i=j.call(this)||this,r=(i.h=[],i);return t.forEach(function(t){r.push(t)}),i}i(o,D=e),o.prototype.clear=function(){this.o=[],this.i=this.u=0},o.prototype.push=function(t){var i=this.o.length;if(.5<this.u/i&&this.u+this.i>=i&&4096<i){for(var r=this.i,e=0;e<r;++e)this.o[e]=this.o[this.u+e];this.u=0,this.o[this.i]=t}else this.o[this.u+this.i]=t;return++this.i},o.prototype.pop=function(){var t;if(0!==this.i)return t=this.o[this.u++],--this.i,t},o.prototype.front=function(){if(0!==this.i)return this.o[this.u]};var D,K=o;function o(t){void 0===t&&(t=[]);var i=D.call(this)||this,r=(i.u=0,i.o=[],i);return t.forEach(function(t){r.push(t)}),i}i(f,U=e),f.prototype.p=function(t){for(var i=this.l[t];0<t;){var r=t-1>>1,e=this.l[r];if(this.v(e,i)<=0)break;this.l[t]=e,t=r}this.l[t]=i},f.prototype._=function(t,i){for(var r=this.l[t];t<i;){var e=t<<1|1,n=e+1,s=this.l[e];if(n<this.i&&0<this.v(s,this.l[n])&&(s=this.l[e=n]),0<=this.v(s,r))break;this.l[t]=s,t=e}this.l[t]=r},f.prototype.clear=function(){this.i=0,this.l.length=0},f.prototype.push=function(t){this.l.push(t),this.p(this.i),this.i+=1},f.prototype.pop=function(){var t,i;if(0!==this.i)return t=this.l[0],i=this.l.pop(),--this.i,this.i&&(this.l[0]=i,this._(0,this.i>>1)),t},f.prototype.top=function(){return this.l[0]},f.prototype.find=function(t){return 0<=this.l.indexOf(t)},f.prototype.remove=function(t){t=this.l.indexOf(t);return!(t<0||(0===t?this.pop():t===this.i-1?(this.l.pop(),--this.i):(this.l.splice(t,1,this.l.pop()),--this.i,this.p(t),this._(t,this.i>>1)),0))},f.prototype.updateItem=function(t){t=this.l.indexOf(t);return!(t<0||(this.p(t),this._(t,this.i>>1),0))},f.prototype.toArray=function(){return u([],h(this.l),!1)};var U,e=f;function f(t,i,r){void 0===t&&(t=[]),void 0===i&&(i=function(t,i){return i<t?-1:t<i?1:0}),void 0===r&&(r=!0);for(var e,n=U.call(this)||this,s=(n.v=i,Array.isArray(t)?n.l=r?u([],h(t),!1):t:(n.l=[],e=n,t.forEach(function(t){e.l.push(t)})),n.i=n.l.length,n.i>>1),o=n.i-1>>1;0<=o;--o)n._(o,s);return n}i(z,J=q);var J,p=z;function z(){return null!==J&&J.apply(this,arguments)||this}function c(){throw new RangeError("Iterator access denied!")}i(Z,W=r),Object.defineProperty(Z.prototype,"pointer",{get:function(){return this.container.getElementByPos(this.t)},set:function(t){this.container.setElementByPos(this.t,t)},enumerable:!1,configurable:!0});var W,Y=Z;function Z(t,i){i=W.call(this,i)||this;return i.t=t,0===i.iteratorType?(i.pre=function(){return 0===this.t&&c(),--this.t,this},i.next=function(){return this.t===this.container.size()&&c(),this.t+=1,this}):(i.pre=function(){return this.t===this.container.size()-1&&c(),this.t+=1,this},i.next=function(){return-1===this.t&&c(),--this.t,this}),i}i(Q,$=Y),Q.prototype.copy=function(){return new Q(this.t,this.container,this.iteratorType)};var $,a=Q;function Q(t,i,r){t=$.call(this,t,r)||this;return t.container=i,t}i(l,tt=p),l.prototype.clear=function(){this.i=0,this.I.length=0},l.prototype.begin=function(){return new a(0,this)},l.prototype.end=function(){return new a(this.i,this)},l.prototype.rBegin=function(){return new a(this.i-1,this,1)},l.prototype.rEnd=function(){return new a(-1,this,1)},l.prototype.front=function(){return this.I[0]},l.prototype.back=function(){return this.I[this.i-1]},l.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;return this.I[t]},l.prototype.eraseElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;return this.I.splice(t,1),--this.i,this.i},l.prototype.eraseElementByValue=function(t){for(var i=0,r=0;r<this.i;++r)this.I[r]!==t&&(this.I[i++]=this.I[r]);return this.i=this.I.length=i,this.i},l.prototype.eraseElementByIterator=function(t){var i=t.t;return t=t.next(),this.eraseElementByPos(i),t},l.prototype.pushBack=function(t){return this.I.push(t),this.i+=1,this.i},l.prototype.popBack=function(){if(0!==this.i)return--this.i,this.I.pop()},l.prototype.setElementByPos=function(t,i){if(t<0||t>this.i-1)throw new RangeError;this.I[t]=i},l.prototype.insert=function(t,i,r){var e;if(void 0===r&&(r=1),t<0||t>this.i)throw new RangeError;return(e=this.I).splice.apply(e,u([t,0],h(new Array(r).fill(i)),!1)),this.i+=r,this.i},l.prototype.find=function(t){for(var i=0;i<this.i;++i)if(this.I[i]===t)return new a(i,this);return this.end()},l.prototype.reverse=function(){return this.I.reverse(),this},l.prototype.unique=function(){for(var t=1,i=1;i<this.i;++i)this.I[i]!==this.I[i-1]&&(this.I[t++]=this.I[i]);return this.i=this.I.length=t,this.i},l.prototype.sort=function(t){return this.I.sort(t),this},l.prototype.forEach=function(t){for(var i=0;i<this.i;++i)t(this.I[i],i,this)},l.prototype[Symbol.iterator]=function(){return s(this,function(t){switch(t.label){case 0:return[5,function(t){var i="function"==typeof Symbol&&Symbol.iterator,r=i&&t[i],e=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return{value:(t=t&&e>=t.length?void 0:t)&&t[e++],done:!t}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")}(this.I)];case 1:return t.sent(),[2]}})};var tt,it=l;function l(t,i){void 0===t&&(t=[]),void 0===i&&(i=!0);var r,e=tt.call(this)||this;return Array.isArray(t)?(e.I=i?u([],h(t),!1):t,e.i=t.length):(e.I=[],r=e,t.forEach(function(t){r.pushBack(t)})),e}i(v,rt=r),Object.defineProperty(v.prototype,"pointer",{get:function(){return this.t===this.O&&c(),this.t.k},set:function(t){this.t===this.O&&c(),this.t.k=t},enumerable:!1,configurable:!0}),v.prototype.copy=function(){return new v(this.t,this.O,this.container,this.iteratorType)};var rt,y=v;function v(t,i,r,e){e=rt.call(this,e)||this;return e.t=t,e.O=i,e.container=r,0===e.iteratorType?(e.pre=function(){return this.t.S===this.O&&c(),this.t=this.t.S,this},e.next=function(){return this.t===this.O&&c(),this.t=this.t.L,this}):(e.pre=function(){return this.t.L===this.O&&c(),this.t=this.t.L,this},e.next=function(){return this.t===this.O&&c(),this.t=this.t.S,this}),e}i(O,et=p),O.prototype.M=function(t){var i=t.S,r=t.L;(i.L=r).S=i,t===this.H&&(this.H=r),t===this.g&&(this.g=i),--this.i},O.prototype.A=function(t,i){var r=i.L,t={k:t,S:i,L:r};i.L=t,r.S=t,i===this.O&&(this.H=t),r===this.O&&(this.g=t),this.i+=1},O.prototype.clear=function(){this.i=0,this.H=this.g=this.O.S=this.O.L=this.O},O.prototype.begin=function(){return new y(this.H,this.O,this)},O.prototype.end=function(){return new y(this.O,this.O,this)},O.prototype.rBegin=function(){return new y(this.g,this.O,this,1)},O.prototype.rEnd=function(){return new y(this.O,this.O,this,1)},O.prototype.front=function(){return this.H.k},O.prototype.back=function(){return this.g.k},O.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;for(var i=this.H;t--;)i=i.L;return i.k},O.prototype.eraseElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;for(var i=this.H;t--;)i=i.L;return this.M(i),this.i},O.prototype.eraseElementByValue=function(t){for(var i=this.H;i!==this.O;)i.k===t&&this.M(i),i=i.L;return this.i},O.prototype.eraseElementByIterator=function(t){var i=t.t;return i===this.O&&c(),t=t.next(),this.M(i),t},O.prototype.pushBack=function(t){return this.A(t,this.g),this.i},O.prototype.popBack=function(){var t;if(0!==this.i)return t=this.g.k,this.M(this.g),t},O.prototype.pushFront=function(t){return this.A(t,this.O),this.i},O.prototype.popFront=function(){var t;if(0!==this.i)return t=this.H.k,this.M(this.H),t},O.prototype.setElementByPos=function(t,i){if(t<0||t>this.i-1)throw new RangeError;for(var r=this.H;t--;)r=r.L;r.k=i},O.prototype.insert=function(t,i,r){if(void 0===r&&(r=1),t<0||t>this.i)throw new RangeError;if(!(r<=0))if(0===t)for(;r--;)this.pushFront(i);else if(t===this.i)for(;r--;)this.pushBack(i);else{for(var e=this.H,n=1;n<t;++n)e=e.L;var s=e.L;for(this.i+=r;r--;)e.L={k:i,S:e},e=(e.L.S=e).L;(e.L=s).S=e}return this.i},O.prototype.find=function(t){for(var i=this.H;i!==this.O;){if(i.k===t)return new y(i,this.O,this);i=i.L}return this.end()},O.prototype.reverse=function(){if(!(this.i<=1))for(var t=this.H,i=this.g,r=0;r<<1<this.i;){var e=t.k;t.k=i.k,i.k=e,t=t.L,i=i.S,r+=1}return this},O.prototype.unique=function(){if(!(this.i<=1))for(var t=this.H;t!==this.O;){for(var i=t;i.L!==this.O&&i.k===i.L.k;)i=i.L,--this.i;t.L=i.L,t=(t.L.S=t).L}return this.i},O.prototype.sort=function(t){var i,r;return this.i<=1||(i=[],this.forEach(function(t){i.push(t)}),i.sort(t),r=this.H,i.forEach(function(t){r.k=t,r=r.L})),this},O.prototype.merge=function(t){var i,r=this;return 0===this.i?t.forEach(function(t){r.pushBack(t)}):(i=this.H,t.forEach(function(t){for(;i!==r.O&&i.k<=t;)i=i.L;r.A(t,i.S)})),this.i},O.prototype.forEach=function(t){for(var i=this.H,r=0;i!==this.O;)t(i.k,r++,this),i=i.L},O.prototype[Symbol.iterator]=function(){var i;return s(this,function(t){switch(t.label){case 0:if(0===this.i)return[2];i=this.H,t.label=1;case 1:return i===this.O?[3,3]:[4,i.k];case 2:return t.sent(),i=i.L,[3,1];case 3:return[2]}})};var et,nt=O;function O(t){void 0===t&&(t=[]);var i=et.call(this)||this,r=(i.O={},i.H=i.g=i.O.S=i.O.L=i.O,i);return t.forEach(function(t){r.pushBack(t)}),i}function st(t,i){return Math.floor((t+i-1)/i)}var ot,ht=Math.floor,d=(i(ut,ot=Y),ut.prototype.copy=function(){return new ut(this.t,this.container,this.iteratorType)},ut);function ut(t,i,r){t=ot.call(this,t,r)||this;return t.container=i,t}i(P,ft=p),P.prototype.j=function(t){for(var i=[],r=t||this.D>>1||1,e=0;e<r;++e)i[e]=new Array(this.V);for(e=this.u;e<this.D;++e)i[i.length]=this.m[e];for(e=0;e<this.C;++e)i[i.length]=this.m[e];i[i.length]=u([],h(this.m[this.C]),!1),this.u=r,this.C=i.length-1;for(e=0;e<r;++e)i[i.length]=new Array(this.V);this.m=i,this.D=i.length},P.prototype.R=function(t){var t=this.T+t,i=this.u+ht(t/this.V);return i>=this.D&&(i-=this.D),{curNodeBucketIndex:i,curNodePointerIndex:i=(i=(t+1)%this.V-1)<0?this.V-1:i}},P.prototype.clear=function(){this.m=[new Array(this.V)],this.D=1,this.u=this.C=this.i=0,this.T=this.q=this.V>>1},P.prototype.begin=function(){return new d(0,this)},P.prototype.end=function(){return new d(this.i,this)},P.prototype.rBegin=function(){return new d(this.i-1,this,1)},P.prototype.rEnd=function(){return new d(-1,this,1)},P.prototype.front=function(){if(0!==this.i)return this.m[this.u][this.T]},P.prototype.back=function(){if(0!==this.i)return this.m[this.C][this.q]},P.prototype.pushBack=function(t){return this.i&&(this.q<this.V-1?this.q+=1:(this.C<this.D-1?this.C+=1:this.C=0,this.q=0),this.C===this.u)&&this.q===this.T&&this.j(),this.i+=1,this.m[this.C][this.q]=t,this.i},P.prototype.popBack=function(){var t;if(0!==this.i)return t=this.m[this.C][this.q],1!==this.i&&(0<this.q?--this.q:(0<this.C?--this.C:this.C=this.D-1,this.q=this.V-1)),--this.i,t},P.prototype.pushFront=function(t){return this.i&&(0<this.T?--this.T:(0<this.u?--this.u:this.u=this.D-1,this.T=this.V-1),this.u===this.C)&&this.T===this.q&&this.j(),this.i+=1,this.m[this.u][this.T]=t,this.i},P.prototype.popFront=function(){var t;if(0!==this.i)return t=this.m[this.u][this.T],1!==this.i&&(this.T<this.V-1?this.T+=1:(this.u<this.D-1?this.u+=1:this.u=0,this.T=0)),--this.i,t},P.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;var t=this.R(t),i=t.curNodeBucketIndex,t=t.curNodePointerIndex;return this.m[i][t]},P.prototype.setElementByPos=function(t,i){if(t<0||t>this.i-1)throw new RangeError;var t=this.R(t),r=t.curNodeBucketIndex,t=t.curNodePointerIndex;this.m[r][t]=i},P.prototype.insert=function(t,i,r){void 0===r&&(r=1);var e=this.i;if(t<0||e<t)throw new RangeError;if(0===t)for(;r--;)this.pushFront(i);else if(t===this.i)for(;r--;)this.pushBack(i);else{for(var n=[],s=t;s<this.i;++s)n.push(this.getElementByPos(s));this.cut(t-1);for(s=0;s<r;++s)this.pushBack(i);for(s=0;s<n.length;++s)this.pushBack(n[s])}return this.i},P.prototype.cut=function(t){var i,r;return t<0?(this.clear(),0):(i=(r=this.R(t)).curNodeBucketIndex,r=r.curNodePointerIndex,this.C=i,this.q=r,this.i=t+1,this.i)},P.prototype.eraseElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;if(0===t)this.popFront();else{if(t!==this.i-1)for(var i=this.i-1,r=this.R(t),e=r.curNodeBucketIndex,n=r.curNodePointerIndex,s=t;s<i;++s){var o=this.R(t+1),h=o.curNodeBucketIndex,o=o.curNodePointerIndex;this.m[e][n]=this.m[h][o],e=h,n=o}this.popBack()}return this.i},P.prototype.eraseElementByValue=function(t){var i=this.i;if(0===i)return 0;for(var r=0,e=0;r<i;){var n=this.getElementByPos(r);n!==t&&(this.setElementByPos(e,n),e+=1),r+=1}return this.cut(e-1),this.i},P.prototype.eraseElementByIterator=function(t){var i=t.t;return this.eraseElementByPos(i),t=t.next()},P.prototype.find=function(t){for(var i=0;i<this.i;++i)if(this.getElementByPos(i)===t)return new d(i,this);return this.end()},P.prototype.reverse=function(){this.m.reverse().forEach(function(t){t.reverse()});var t=this.u,i=this.C,r=this.T,e=this.q;return this.u=this.D-i-1,this.C=this.D-t-1,this.T=this.V-e-1,this.q=this.V-r-1,this},P.prototype.unique=function(){if(!(this.i<=1)){for(var t=1,i=this.getElementByPos(0),r=1;r<this.i;++r){var e=this.getElementByPos(r);e!==i&&this.setElementByPos(t++,i=e)}this.cut(t-1)}return this.i},P.prototype.sort=function(t){for(var i=[],r=0;r<this.i;++r)i.push(this.getElementByPos(r));i.sort(t);for(r=0;r<this.i;++r)this.setElementByPos(r,i[r]);return this},P.prototype.shrinkToFit=function(){if(0!==this.i){var t=[];if(this.u!==this.C){if(this.u<this.C)for(var i=this.u;i<=this.C;++i)t.push(this.m[i]);else{for(i=this.u;i<this.D;++i)t.push(this.m[i]);for(i=0;i<=this.C;++i)t.push(this.m[i])}this.u=0,this.C=t.length-1,this.m=t}}},P.prototype.forEach=function(t){for(var i=0;i<this.i;++i)t(this.getElementByPos(i),i,this)},P.prototype[Symbol.iterator]=function(){var i;return s(this,function(t){switch(t.label){case 0:i=0,t.label=1;case 1:return i<this.i?[4,this.getElementByPos(i)]:[3,4];case 2:t.sent(),t.label=3;case 3:return++i,[3,1];case 4:return[2]}})};var ft,Y=P;function P(t,i){void 0===t&&(t=[]),void 0===i&&(i=4096);var r=ft.call(this)||this,e=(r.u=0,r.T=0,r.C=0,r.q=0,r.D=0,r.m=[],function(){if("number"==typeof t.length)return t.length;if("number"==typeof t.size)return t.size;if("function"==typeof t.size)return t.size();throw new TypeError("Cannot get the length or size of the container")}());r.V=i,r.D=st(e,r.V)||1;for(var n=0;n<r.D;++n)r.m.push(new Array(r.V));var i=st(e,r.V),s=(r.u=r.C=(r.D>>1)-(i>>1),r.T=r.q=r.V-e%r.V>>1,r);return t.forEach(function(t){s.pushBack(t)}),r}w.prototype.S=function(){var t=this;if(1===t.F&&t.B.B===t)t=t.N;else if(t.P)for(t=t.P;t.N;)t=t.N;else{for(var i=t.B;i.P===t;)i=(t=i).B;t=i}return t},w.prototype.L=function(){var t=this;if(t.N){for(t=t.N;t.P;)t=t.P;return t}for(var i=t.B;i.N===t;)i=(t=i).B;return t.N!==i?i:t},w.prototype.J=function(){var t=this.B,i=this.N,r=i.P;return t.B===this?t.B=i:t.P===this?t.P=i:t.N=i,i.B=t,(i.P=this).B=i,(this.N=r)&&(r.B=this),i},w.prototype.K=function(){var t=this.B,i=this.P,r=i.N;return t.B===this?t.B=i:t.P===this?t.P=i:t.N=i,i.B=t,(i.N=this).B=i,(this.P=r)&&(r.B=this),i};var pt=w;function w(t,i,r){void 0===r&&(r=1),this.P=void 0,this.N=void 0,this.B=void 0,this.G=t,this.k=i,this.F=r}i(g,B=pt),g.prototype.J=function(){var t=B.prototype.J.call(this);return this.W(),t.W(),t},g.prototype.K=function(){var t=B.prototype.K.call(this);return this.W(),t.W(),t},g.prototype.W=function(){this.U=1,this.P&&(this.U+=this.P.U),this.N&&(this.U+=this.N.U)};var B,ct=g;function g(){var t=null!==B&&B.apply(this,arguments)||this;return t.U=1,t}i(b,at=q),b.prototype.Z=function(t,i){for(var r=this.O;t;){var e=this.v(t.G,i);if(e<0)t=t.N;else{if(!(0<e))return t;t=(r=t).P}}return r},b.prototype.$=function(t,i){for(var r=this.O;t;)t=this.v(t.G,i)<=0?t.N:(r=t).P;return r},b.prototype.tt=function(t,i){for(var r=this.O;t;){var e=this.v(t.G,i);if(e<0)t=(r=t).N;else{if(!(0<e))return t;t=t.P}}return r},b.prototype.it=function(t,i){for(var r=this.O;t;)t=this.v(t.G,i)<0?(r=t).N:t.P;return r},b.prototype.rt=function(t){for(;;){var i,r=t.B;if(r===this.O)return;if(1===t.F)return void(t.F=0);if(t===r.P)if(1===(i=r.N).F)i.F=0,r.F=1,r===this.X?this.X=r.J():r.J();else{if(i.N&&1===i.N.F)return i.F=r.F,r.F=0,i.N.F=0,void(r===this.X?this.X=r.J():r.J());i.P&&1===i.P.F?(i.F=1,i.P.F=0,i.K()):(i.F=1,t=r)}else if(1===(i=r.P).F)i.F=0,r.F=1,r===this.X?this.X=r.K():r.K();else{if(i.P&&1===i.P.F)return i.F=r.F,r.F=0,i.P.F=0,void(r===this.X?this.X=r.K():r.K());i.N&&1===i.N.F?(i.F=1,i.N.F=0,i.J()):(i.F=1,t=r)}}},b.prototype.M=function(t){if(1===this.i)this.clear();else{for(var i=t;i.P||i.N;){if(i.N)for(i=i.N;i.P;)i=i.P;else i=i.P;var r=t.G,r=(t.G=i.G,i.G=r,t.k);t.k=i.k,i.k=r,t=i}this.O.P===i?this.O.P=i.B:this.O.N===i&&(this.O.N=i.B),this.rt(i);var e=i.B;if(i===e.P?e.P=void 0:e.N=void 0,--this.i,this.X.F=0,this.enableIndex)for(;e!==this.O;)--e.U,e=e.B}},b.prototype.et=function(t){for(var i="number"==typeof t?t:void 0,r="function"==typeof t?t:void 0,e=void 0===t?[]:void 0,n=0,s=this.X,o=[];o.length||s;)if(s)o.push(s),s=s.P;else{if(s=o.pop(),n===i)return s;e&&e.push(s),r&&r(s,n,this),n+=1,s=s.N}return e},b.prototype.nt=function(t){for(;;){var i=t.B;if(0===i.F)return;var r,e,n=i.B;if(i===n.P){if((r=n.N)&&1===r.F){if(r.F=i.F=0,n===this.X)return;n.F=1,t=n;continue}if(t!==i.N)return i.F=0,n===this.X?this.X=n.K():n.K(),void(n.F=1);t.F=0,t.P&&(t.P.B=i),t.N&&(t.N.B=n),i.N=t.P,n.P=t.N,t.P=i,(t.N=n)===this.X?(this.X=t,this.O.B=t):(e=n.B).P===n?e.P=t:e.N=t}else{if((r=n.P)&&1===r.F){if(r.F=i.F=0,n===this.X)return;n.F=1,t=n;continue}if(t!==i.P)return i.F=0,n===this.X?this.X=n.J():n.J(),void(n.F=1);t.F=0,t.P&&(t.P.B=n),t.N&&(t.N.B=i),n.N=t.P,i.P=t.N,t.P=n,t.N=i,n===this.X?(this.X=t,this.O.B=t):(e=n.B).P===n?e.P=t:e.N=t}return t.B=n.B,i.B=t,n.B=t,n.F=1,void(this.enableIndex&&(i.W(),n.W(),t.W()))}},b.prototype.st=function(t,i,r){if(void 0===this.X)this.i+=1,this.X=new this.Y(t,i,0),this.X.B=this.O,this.O.B=this.O.P=this.O.N=this.X;else{var e,n=this.O.P,s=this.v(n.G,t);if(0===s)n.k=i;else{if(0<s)n.P=new this.Y(t,i),e=(n.P.B=n).P,this.O.P=e;else{s=this.O.N,n=this.v(s.G,t);if(0===n)return s.k=i,this.i;if(n<0)s.N=new this.Y(t,i),e=(s.N.B=s).N,this.O.N=e;else{if(void 0!==r){n=r.t;if(n!==this.O){s=this.v(n.G,t);if(0===s)return n.k=i,this.i;if(0<s){r=n.S(),s=this.v(r.G,t);if(0===s)return r.k=i,this.i;s<0&&(e=new this.Y(t,i),void 0===r.N?(r.N=e).B=r:(n.P=e).B=n)}}}if(void 0===e)for(e=this.X;;){var o=this.v(e.G,t);if(0<o){if(void 0===e.P){e.P=new this.Y(t,i),e=(e.P.B=e).P;break}e=e.P}else{if(!(o<0))return e.k=i,this.i;if(void 0===e.N){e.N=new this.Y(t,i),e=(e.N.B=e).N;break}e=e.N}}}}if(this.enableIndex)for(var h=e.B;h!==this.O;)h.U+=1,h=h.B;this.nt(e),this.i+=1}}return this.i},b.prototype.ht=function(t,i){for(;t;){var r=this.v(t.G,i);if(r<0)t=t.N;else{if(!(0<r))return t;t=t.P}}return t||this.O},b.prototype.clear=function(){this.i=0,this.X=void 0,this.O.B=void 0,this.O.P=this.O.N=void 0},b.prototype.updateKeyByIterator=function(t,i){t=t.t;if(t===this.O&&c(),1!==this.i){var r=t.L().G;if(t===this.O.P)return 0<this.v(r,i)&&(t.G=i,!0);var e=t.S().G;if(t===this.O.N)return this.v(e,i)<0&&(t.G=i,!0);if(0<=this.v(e,i)||this.v(r,i)<=0)return!1}return t.G=i,!0},b.prototype.eraseElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;t=this.et(t);return this.M(t),this.i},b.prototype.eraseElementByKey=function(t){return 0!==this.i&&(t=this.ht(this.X,t))!==this.O&&(this.M(t),!0)},b.prototype.eraseElementByIterator=function(t){var i=t.t,r=(i===this.O&&c(),void 0===i.N);return 0===t.iteratorType?r&&t.next():r&&void 0!==i.P||t.next(),this.M(i),t},b.prototype.getHeight=function(){return 0===this.i?0:function t(i){return i?Math.max(t(i.P),t(i.N))+1:0}(this.X)};var at,p=b;function b(t,i){void 0===t&&(t=function(t,i){return t<i?-1:i<t?1:0}),void 0===i&&(i=!1);var r=at.call(this)||this;return r.X=void 0,r.v=t,r.enableIndex=i,r.Y=i?ct:pt,r.O=new r.Y,r}i(vt,lt=r),Object.defineProperty(vt.prototype,"index",{get:function(){var t=this.t,i=this.O.B;if(t===this.O)return i?i.U-1:0;var r=0;for(t.P&&(r+=t.P.U);t!==i;){var e=t.B;t===e.N&&(r+=1,e.P)&&(r+=e.P.U),t=e}return r},enumerable:!1,configurable:!0});var lt,yt=vt;function vt(t,i,r){r=lt.call(this,r)||this;return r.t=t,r.O=i,0===r.iteratorType?(r.pre=function(){return this.t===this.O.P&&c(),this.t=this.t.S(),this},r.next=function(){return this.t===this.O&&c(),this.t=this.t.L(),this}):(r.pre=function(){return this.t===this.O.N&&c(),this.t=this.t.L(),this},r.next=function(){return this.t===this.O&&c(),this.t=this.t.S(),this}),r}i(E,Ot=yt),Object.defineProperty(E.prototype,"pointer",{get:function(){return this.t===this.O&&c(),this.t.G},enumerable:!1,configurable:!0}),E.prototype.copy=function(){return new E(this.t,this.O,this.container,this.iteratorType)};var Ot,m=E;function E(t,i,r,e){t=Ot.call(this,t,i,e)||this;return t.container=r,t}i(k,dt=p),k.prototype.begin=function(){return new m(this.O.P||this.O,this.O,this)},k.prototype.end=function(){return new m(this.O,this.O,this)},k.prototype.rBegin=function(){return new m(this.O.N||this.O,this.O,this,1)},k.prototype.rEnd=function(){return new m(this.O,this.O,this,1)},k.prototype.front=function(){return this.O.P?this.O.P.G:void 0},k.prototype.back=function(){return this.O.N?this.O.N.G:void 0},k.prototype.lowerBound=function(t){t=this.Z(this.X,t);return new m(t,this.O,this)},k.prototype.upperBound=function(t){t=this.$(this.X,t);return new m(t,this.O,this)},k.prototype.reverseLowerBound=function(t){t=this.tt(this.X,t);return new m(t,this.O,this)},k.prototype.reverseUpperBound=function(t){t=this.it(this.X,t);return new m(t,this.O,this)},k.prototype.forEach=function(e){this.et(function(t,i,r){e(t.G,i,r)})},k.prototype.insert=function(t,i){return this.st(t,void 0,i)},k.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;return this.et(t).G},k.prototype.find=function(t){t=this.ht(this.X,t);return new m(t,this.O,this)},k.prototype.union=function(t){var i=this;return t.forEach(function(t){i.insert(t)}),this.i},k.prototype[Symbol.iterator]=function(){var i,r,e;return s(this,function(t){switch(t.label){case 0:i=this.i,r=this.et(),e=0,t.label=1;case 1:return e<i?[4,r[e].G]:[3,4];case 2:t.sent(),t.label=3;case 3:return++e,[3,1];case 4:return[2]}})};var dt,Pt=k;function k(t,i,r){void 0===t&&(t=[]);var i=dt.call(this,i,r)||this,e=i;return t.forEach(function(t){e.insert(t)}),i}i(H,wt=yt),Object.defineProperty(H.prototype,"pointer",{get:function(){this.t===this.O&&c();var e=this;return new Proxy([],{get:function(t,i){return"0"===i?e.t.G:"1"===i?e.t.k:void 0},set:function(t,i,r){if("1"!==i)throw new TypeError("props must be 1");return e.t.k=r,!0}})},enumerable:!1,configurable:!0}),H.prototype.copy=function(){return new H(this.t,this.O,this.container,this.iteratorType)};var wt,N=H;function H(t,i,r,e){t=wt.call(this,t,i,e)||this;return t.container=r,t}i(L,Bt=p),L.prototype.begin=function(){return new N(this.O.P||this.O,this.O,this)},L.prototype.end=function(){return new N(this.O,this.O,this)},L.prototype.rBegin=function(){return new N(this.O.N||this.O,this.O,this,1)},L.prototype.rEnd=function(){return new N(this.O,this.O,this,1)},L.prototype.front=function(){var t;if(0!==this.i)return[(t=this.O.P).G,t.k]},L.prototype.back=function(){var t;if(0!==this.i)return[(t=this.O.N).G,t.k]},L.prototype.lowerBound=function(t){t=this.Z(this.X,t);return new N(t,this.O,this)},L.prototype.upperBound=function(t){t=this.$(this.X,t);return new N(t,this.O,this)},L.prototype.reverseLowerBound=function(t){t=this.tt(this.X,t);return new N(t,this.O,this)},L.prototype.reverseUpperBound=function(t){t=this.it(this.X,t);return new N(t,this.O,this)},L.prototype.forEach=function(e){this.et(function(t,i,r){e([t.G,t.k],i,r)})},L.prototype.setElement=function(t,i,r){return this.st(t,i,r)},L.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;t=this.et(t);return[t.G,t.k]},L.prototype.find=function(t){t=this.ht(this.X,t);return new N(t,this.O,this)},L.prototype.getElementByKey=function(t){return this.ht(this.X,t).k},L.prototype.union=function(t){var i=this;return t.forEach(function(t){i.setElement(t[0],t[1])}),this.i},L.prototype[Symbol.iterator]=function(){var i,r,e,n;return s(this,function(t){switch(t.label){case 0:i=this.i,r=this.et(),e=0,t.label=1;case 1:return e<i?[4,[(n=r[e]).G,n.k]]:[3,4];case 2:t.sent(),t.label=3;case 3:return++e,[3,1];case 4:return[2]}})};var Bt,yt=L;function L(t,i,r){void 0===t&&(t=[]);var i=Bt.call(this,i,r)||this,e=i;return t.forEach(function(t){e.setElement(t[0],t[1])}),i}function gt(t){var i=typeof t;return"object"==i&&null!==t||"function"==i}i(mt,bt=r);var bt,p=mt;function mt(t,i,r){r=bt.call(this,r)||this;return r.t=t,r.O=i,0===r.iteratorType?(r.pre=function(){return this.t.S===this.O&&c(),this.t=this.t.S,this},r.next=function(){return this.t===this.O&&c(),this.t=this.t.L,this}):(r.pre=function(){return this.t.L===this.O&&c(),this.t=this.t.L,this},r.next=function(){return this.t===this.O&&c(),this.t=this.t.S,this}),r}i(S,Et=q),S.prototype.M=function(t){var i=t.S,r=t.L;(i.L=r).S=i,t===this.H&&(this.H=r),t===this.g&&(this.g=i),--this.i},S.prototype.st=function(t,i,r){var e;if(r=void 0===r?gt(t):r){r=t[this.HASH_TAG];if(void 0!==r)return this.ut[r].k=i,this.i;Object.defineProperty(t,this.HASH_TAG,{value:this.ut.length,configurable:!0}),e={G:t,k:i,S:this.g,L:this.O},this.ut.push(e)}else{r=this.ot[t];if(r)return r.k=i,this.i;this.ot[t]=e={G:t,k:i,S:this.g,L:this.O}}return 0===this.i?(this.H=e,this.O.L=e):this.g.L=e,this.g=e,this.O.S=e,++this.i},S.prototype.ft=function(t,i){return(i=void 0===i?gt(t):i)?void 0===(i=t[this.HASH_TAG])?this.O:this.ut[i]:this.ot[t]||this.O},S.prototype.clear=function(){var i=this.HASH_TAG;this.ut.forEach(function(t){delete t.G[i]}),this.ut=[],this.ot={},Object.setPrototypeOf(this.ot,null),this.i=0,this.H=this.g=this.O.S=this.O.L=this.O},S.prototype.eraseElementByKey=function(t,i){var r;if(i=void 0===i?gt(t):i){i=t[this.HASH_TAG];if(void 0===i)return!1;delete t[this.HASH_TAG],r=this.ut[i],delete this.ut[i]}else{if(void 0===(r=this.ot[t]))return!1;delete this.ot[t]}return this.M(r),!0},S.prototype.eraseElementByIterator=function(t){var i=t.t;return i===this.O&&c(),this.M(i),t.next()},S.prototype.eraseElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;for(var i=this.H;t--;)i=i.L;return this.M(i),this.i};var Et,r=S;function S(){var t=Et.call(this)||this;return t.ut=[],t.ot={},t.HASH_TAG=Symbol("@@HASH_TAG"),Object.setPrototypeOf(t.ot,null),t.O={},t.O.S=t.O.L=t.H=t.g=t.O,t}i(F,kt=p),Object.defineProperty(F.prototype,"pointer",{get:function(){return this.t===this.O&&c(),this.t.G},enumerable:!1,configurable:!0}),F.prototype.copy=function(){return new F(this.t,this.O,this.container,this.iteratorType)};var kt,G=F;function F(t,i,r,e){t=kt.call(this,t,i,e)||this;return t.container=r,t}i(I,Nt=r),I.prototype.begin=function(){return new G(this.H,this.O,this)},I.prototype.end=function(){return new G(this.O,this.O,this)},I.prototype.rBegin=function(){return new G(this.g,this.O,this,1)},I.prototype.rEnd=function(){return new G(this.O,this.O,this,1)},I.prototype.front=function(){return this.H.G},I.prototype.back=function(){return this.g.G},I.prototype.insert=function(t,i){return this.st(t,void 0,i)},I.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;for(var i=this.H;t--;)i=i.L;return i.G},I.prototype.find=function(t,i){t=this.ft(t,i);return new G(t,this.O,this)},I.prototype.forEach=function(t){for(var i=0,r=this.H;r!==this.O;)t(r.G,i++,this),r=r.L},I.prototype[Symbol.iterator]=function(){var i;return s(this,function(t){switch(t.label){case 0:i=this.H,t.label=1;case 1:return i===this.O?[3,3]:[4,i.G];case 2:return t.sent(),i=i.L,[3,1];case 3:return[2]}})};var Nt,q=I;function I(t){void 0===t&&(t=[]);var i=Nt.call(this)||this,r=i;return t.forEach(function(t){r.insert(t)}),i}i(x,Ht=p),Object.defineProperty(x.prototype,"pointer",{get:function(){this.t===this.O&&c();var e=this;return new Proxy([],{get:function(t,i){return"0"===i?e.t.G:"1"===i?e.t.k:void 0},set:function(t,i,r){if("1"!==i)throw new TypeError("props must be 1");return e.t.k=r,!0}})},enumerable:!1,configurable:!0}),x.prototype.copy=function(){return new x(this.t,this.O,this.container,this.iteratorType)};var Ht,T=x;function x(t,i,r,e){t=Ht.call(this,t,i,e)||this;return t.container=r,t}i(X,Lt=r),X.prototype.begin=function(){return new T(this.H,this.O,this)},X.prototype.end=function(){return new T(this.O,this.O,this)},X.prototype.rBegin=function(){return new T(this.g,this.O,this,1)},X.prototype.rEnd=function(){return new T(this.O,this.O,this,1)},X.prototype.front=function(){if(0!==this.i)return[this.H.G,this.H.k]},X.prototype.back=function(){if(0!==this.i)return[this.g.G,this.g.k]},X.prototype.setElement=function(t,i,r){return this.st(t,i,r)},X.prototype.getElementByKey=function(t,i){return(i=void 0===i?gt(t):i)?void 0!==(i=t[this.HASH_TAG])?this.ut[i].k:void 0:(i=this.ot[t])?i.k:void 0},X.prototype.getElementByPos=function(t){if(t<0||t>this.i-1)throw new RangeError;for(var i=this.H;t--;)i=i.L;return[i.G,i.k]},X.prototype.find=function(t,i){t=this.ft(t,i);return new T(t,this.O,this)},X.prototype.forEach=function(t){for(var i=0,r=this.H;r!==this.O;)t([r.G,r.k],i++,this),r=r.L},X.prototype[Symbol.iterator]=function(){var i;return s(this,function(t){switch(t.label){case 0:i=this.H,t.label=1;case 1:return i===this.O?[3,3]:[4,[i.G,i.k]];case 2:return t.sent(),i=i.L,[3,1];case 3:return[2]}})};var Lt,p=X;function X(t){void 0===t&&(t=[]);var i=Lt.call(this)||this,r=i;return t.forEach(function(t){r.setElement(t[0],t[1])}),i}t.Deque=Y,t.HashMap=p,t.HashSet=q,t.LinkList=nt,t.OrderedMap=yt,t.OrderedSet=Pt,t.PriorityQueue=e,t.Queue=K,t.Stack=M,t.Vector=it,Object.defineProperty(t,"ct",{value:!0})});
//# sourceMappingURL=js-sdsl.min.js.map