UNPKG

gojs

Version:

Interactive diagrams, charts, and graphs, such as trees, flowcharts, orgcharts, UML, BPMN, or business diagrams

123 lines 1.01 MB
/* * GoJS v2.3.8 JavaScript Library for HTML Diagrams, https://gojs.net * GoJS and Northwoods Software are registered trademarks of Northwoods Software Corporation, https://www.nwoods.com. * Copyright (C) 1998-2023 by Northwoods Software Corporation. All Rights Reserved. * THIS SOFTWARE IS LICENSED. THE LICENSE AGREEMENT IS AT: https://gojs.net/2.3.8/license.html. * DO NOT MODIFY THIS FILE. DO NOT DISTRIBUTE A MODIFIED COPY OF THE CONTENTS OF THIS FILE. */ (function() { var t;function ba(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}function ca(a){var b="undefined"!=typeof Symbol&&Symbol.iterator&&a[Symbol.iterator];return b?b.call(a):{next:ba(a)}}function da(a){for(var b,c=[];!(b=a.next()).done;)c.push(b.value);return c}var ea="function"==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},ha; if("function"==typeof Object.setPrototypeOf)ha=Object.setPrototypeOf;else{var ia;a:{var ja={a:!0},ka={};try{ka.__proto__=ja;ia=ka.a;break a}catch(a){}ia=!1}ha=ia?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null}var ma=ha; function na(a,b){a.prototype=ea(b.prototype);a.prototype.constructor=a;if(ma)ma(a,b);else for(var c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.cB=b.prototype} var oa="undefined"!=typeof global&&null!=global?global:self,pa="function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)Object.prototype.hasOwnProperty.call(d,e)&&(a[e]=d[e])}return a},qa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)}; function ra(a,b){if(b){var c=oa;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&qa(c,a,{configurable:!0,writable:!0,value:b})}}ra("Object.assign",function(a){return a||pa}); ra("String.prototype.startsWith",function(a){return a?a:function(a,c){if(null==this)throw new TypeError("The 'this' value for String.prototype.startsWith must not be null or undefined");if(a instanceof RegExp)throw new TypeError("First argument to String.prototype.startsWith must not be a regular expression");var b=this.length,e=a.length;c=Math.max(0,Math.min(c|0,this.length));for(var f=0;f<e&&c<b;)if(this[c++]!=a[f++])return!1;return f>=e}}); ra("Array.prototype.fill",function(a){return a?a:function(a,c,d){var b=this.length||0;0>c&&(c=Math.max(0,b+c));if(null==d||d>b)d=b;d=Number(d);0>d&&(d=Math.max(0,b+d));for(c=Number(c||0);c<d;c++)this[c]=a;return this}});var sa="object"===typeof globalThis&&globalThis||"object"===typeof global&&global.global===global&&global||"object"===typeof self&&self.self===self&&self||{};void 0===sa.requestAnimationFrame&&(void 0===sa.setImmediate?sa.requestAnimationFrame=function(a){sa.setTimeout(a,0)}:sa.requestAnimationFrame=sa.setImmediate);function ta(){}function ua(a,b){var c=-1;return function(){var d=this,e=arguments;-1!==c&&sa.clearTimeout(c);c=va(function(){c=-1;a.apply(d,e)},b)}} function va(a,b){return sa.setTimeout(a,b)}function wa(a){return sa.document.createElement(a)}function v(a){throw Error(a);}function xa(a,b){a="The object is frozen, so its properties cannot be set: "+a.toString();void 0!==b&&(a+=" to value: "+b);v(a)}function x(a,b,c,d){a instanceof b||(c=za(c),void 0!==d&&(c+="."+d),Aa(a,b,c))}function B(a,b,c,d){typeof a!==b&&(c=za(c),void 0!==d&&(c+="."+d),Aa(a,b,c))} function D(a,b,c){"number"===typeof a&&isFinite(a)||(b=za(b),void 0!==c&&(b+="."+c),v(b+" must be a real number type, and not NaN or Infinity: "+a))}function Aa(a,b,c,d){b=" value is not an instance of "+za(b)+": ";c=za(c);void 0!==d&&(c+="."+d);"string"===typeof a&&(a='"'+a+'"');v(c+b+a)}function Ba(a,b,c,d){c=za(c);void 0!==d&&(c+="."+d);v(c+" is not in the range "+b+": "+a)}function Ca(a){v(("string"===typeof a.className?a.className:"")+" constructor cannot take any arguments.")} function Da(a){v("Collection was modified during iteration: "+a.toString()+"\n Perhaps you should iterate over a copy of the collection,\n or you could collect items to be removed from the collection after the iteration.")}function Ea(a,b){v("No property to set for this enum value: "+b+" on "+a.toString())}function Fa(a){sa.console&&sa.console.log(a)}function Ga(a){return"object"===typeof a&&null!==a} function Ha(a){return Array.isArray(a)||sa.NodeList&&a instanceof sa.NodeList||sa.HTMLCollection&&a instanceof sa.HTMLCollection}function Ia(a,b,c){Ha(a)||Aa(a,"Array or NodeList or HTMLCollection",b,c)}function Ja(a){return Array.prototype.slice.call(a)}function Ka(a,b,c){Array.isArray(a)?b>=a.length?a.push(c):a.splice(b,0,c):v("Cannot insert an object into an HTMLCollection or NodeList: "+c+" at "+b)} function Ma(a,b){Array.isArray(a)?b>=a.length?a.pop():a.splice(b,1):v("Cannot remove an object from an HTMLCollection or NodeList at "+b)}function Na(){var a=Oa.pop();return void 0===a?[]:a}function Pa(a){a.length=0;Oa.push(a)}function za(a){return null===a?"*":"string"===typeof a?a:"function"===typeof a&&"string"===typeof a.className?a.className:""} function Qa(a){if("function"===typeof a){if(a.className)return a.className;if(a.name)return a.name;var b=a.toString();b=b.substring(9,b.indexOf("(")).trim();if(""!==b)return a._className=b}else if(Ga(a)&&a.constructor)return Qa(a.constructor);return typeof a} function Ra(a){var b=a;Ga(a)&&(a.text?b=a.text:a.name?b=a.name:void 0!==a.key?b=a.key:void 0!==a.id?b=a.id:a.constructor===Object&&(a.Text?b=a.Text:a.Name?b=a.Name:void 0!==a.Key?b=a.Key:void 0!==a.Id?b=a.Id:void 0!==a.ID&&(b=a.ID)));return void 0===b?"undefined":null===b?"null":b.toString()}function Sa(a,b){if(a.hasOwnProperty(b))return!0;for(a=Object.getPrototypeOf(a);a&&a!==Function;){if(a.hasOwnProperty(b))return!0;var c=a.TA;if(c&&c[b])return!0;a=Object.getPrototypeOf(a)}return!1} function Ta(a,b,c){Object.defineProperty(Ua.prototype,a,{get:b,set:c})} function Va(a){for(var b=[],c=0;256>c;c++)b["0123456789abcdef".charAt(c>>4)+"0123456789abcdef".charAt(c&15)]=String.fromCharCode(c);a.length%2&&(a="0"+a);c=[];for(var d=0,e=0;e<a.length;e+=2)c[d++]=b[a.substr(e,2)];a=c.join("");a=""===a?"0":a;b=[];for(c=0;256>c;c++)b[c]=c;for(c=d=0;256>c;c++)d=(d+b[c]+119)%256,e=b[c],b[c]=b[d],b[d]=e;d=c=0;for(var f="",g=0;g<a.length;g++)c=(c+1)%256,d=(d+b[c])%256,e=b[c],b[c]=b[d],b[d]=e,f+=String.fromCharCode(a.charCodeAt(g)^b[(b[c]+b[d])%256]);return f} var Wa=void 0!==sa.navigator&&0<sa.navigator.userAgent.indexOf("Trident/7"),Xa=void 0!==sa.navigator&&void 0!==sa.navigator.platform&&null!==sa.navigator.platform.match(/(iPhone|iPod|iPad|Mac)/i),Oa=[];Object.freeze([]);ta.className="Util";ta.Dx="32ab5ff3b26f42dc0ed90f21472913b5";ta.adym="gojs.net";ta.vfo="28e645fdbb";ta.className="Util";function F(a,b,c){Ya(this);this.j=a;this.Ea=b;this.m=c}F.prototype.toString=function(){return"EnumValue."+this.Ea}; function Za(a,b){return void 0===b||null===b||""===b?null:a[b]}function $a(a,b,c,d){a.classType!==b&&(c=za(c),void 0!==d&&(c+="."+d),Aa(a,"function"==="a constant of class "+typeof b.className?b.className:"",c))}oa.Object.defineProperties(F.prototype,{classType:{configurable:!0,get:function(){return this.j}},name:{configurable:!0,get:function(){return this.Ea}},value:{configurable:!0,get:function(){return this.m}}});F.className="EnumValue"; function ab(){this.qw=[]}ab.prototype.toString=function(){return this.qw.join("")};ab.prototype.add=function(a){""!==a&&this.qw.push(a)};ab.className="StringBuilder";function bb(){}bb.className="PropertyCollection"; var G={Ql:!1,Cx:!1,VA:!1,XA:!1,$A:!1,Sx:!1,Bx:!1,UA:null,trace:function(a){sa.console&&sa.console.log(a)},WA:function(a,b,c,d){a.strokeStyle="red";a.fillStyle="red";a.font="8px sans-serif";a.beginPath();a.moveTo(-10,0);a.lineTo(10,0);a.moveTo(0,-10);a.lineTo(0,10);a.stroke();a.setTransform(1,0,0,1,0,0);a.scale(c,c);a.transform(b.m11,b.m12,b.m21,b.m22,b.dx,b.dy);a.lineWidth=2;a.beginPath();a.moveTo(d.left,d.top+20);a.lineTo(d.left,d.top);a.lineTo(d.left+20,d.top);a.moveTo(d.right,d.bottom-20);a.lineTo(d.right, d.bottom);a.lineTo(d.right-20,d.bottom);a.stroke();a.fillText("DB: "+Math.round(d.x)+", "+Math.round(d.y)+", "+Math.round(d.width)+", "+Math.round(d.height),d.left,d.top-5)},cz:function(a){var b={},c;for(c in a){b.x=c;if("licenseKey"!==b.x){var d=a[b.x];if(void 0!==d.prototype){b.mm=Object.getOwnPropertyNames(d.prototype);for(var e={fk:0};e.fk<b.mm.length;e={fk:e.fk},e.fk++){var f=Object.getOwnPropertyDescriptor(d.prototype,b.mm[e.fk]);void 0!==f.get&&void 0===f.set&&Object.defineProperty(d.prototype, b.mm[e.fk],{set:function(a,b){return function(){throw Error("Property "+a.mm[b.fk]+" of "+a.x+" is read-only.");}}(b,e)})}}}b={mm:b.mm,x:b.x}}}};function cb(){}cb.prototype.reset=function(){};cb.prototype.next=function(){return!1};cb.prototype.Gd=function(){return!1};cb.prototype.first=function(){return null};cb.prototype.any=function(){return!1};cb.prototype.all=function(){return!0};cb.prototype.each=function(){return this};cb.prototype.map=function(){return this};cb.prototype.filter=function(){return this}; cb.prototype.ie=function(){};cb.prototype.toString=function(){return"EmptyIterator"};oa.Object.defineProperties(cb.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return 0}}});cb.prototype.first=cb.prototype.first;cb.prototype.hasNext=cb.prototype.Gd;cb.prototype.next=cb.prototype.next;cb.prototype.reset=cb.prototype.reset;var eb=null;cb.className="EmptyIterator";eb=new cb;function fb(a){this.key=-1;this.value=a} fb.prototype.reset=function(){this.key=-1};fb.prototype.next=function(){return-1===this.key?(this.key=0,!0):!1};fb.prototype.Gd=function(){return this.next()};fb.prototype.first=function(){this.key=0;return this.value};fb.prototype.any=function(a){this.key=-1;return a(this.value)};fb.prototype.all=function(a){this.key=-1;return a(this.value)};fb.prototype.each=function(a){this.key=-1;a(this.value);return this};fb.prototype.map=function(a){return new fb(a(this.value))}; fb.prototype.filter=function(a){return a(this.value)?new fb(this.value):eb};fb.prototype.ie=function(){this.value=null};fb.prototype.toString=function(){return"SingletonIterator("+this.value+")"};oa.Object.defineProperties(fb.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return 1}}});fb.prototype.first=fb.prototype.first;fb.prototype.hasNext=fb.prototype.Gd;fb.prototype.next=fb.prototype.next; fb.prototype.reset=fb.prototype.reset;fb.className="SingletonIterator";function gb(a){this.Gb=a;this.Cf=null;a.Xa=null;this.wa=a.A;this.fb=-1}gb.prototype.reset=function(){var a=this.Gb;a.Xa=null;this.wa=a.A;this.fb=-1};gb.prototype.next=function(){var a=this.Gb;if(a.A!==this.wa){if(0>this.key)return!1;Da(a)}a=a.s;var b=a.length,c=++this.fb,d=this.Cf;if(null!==d)for(;c<b;){var e=a[c];if(d(e))return this.key=this.fb=c,this.value=e,!0;c++}else{if(c<b)return this.key=c,this.value=a[c],!0;this.ie()}return!1}; gb.prototype.Gd=function(){return this.next()};gb.prototype.first=function(){var a=this.Gb;this.wa=a.A;this.fb=0;a=a.s;var b=a.length,c=this.Cf;if(null!==c){for(var d=0;d<b;){var e=a[d];if(c(e))return this.key=this.fb=d,this.value=e;d++}return null}return 0<b?(a=a[0],this.key=0,this.value=a):null};gb.prototype.any=function(a){var b=this.Gb;b.Xa=null;var c=b.A;this.fb=-1;for(var d=b.s,e=d.length,f=this.Cf,g=0;g<e;g++){var h=d[g];if(null===f||f(h)){if(a(h))return!0;b.A!==c&&Da(b)}}return!1}; gb.prototype.all=function(a){var b=this.Gb;b.Xa=null;var c=b.A;this.fb=-1;for(var d=b.s,e=d.length,f=this.Cf,g=0;g<e;g++){var h=d[g];if(null===f||f(h)){if(!a(h))return!1;b.A!==c&&Da(b)}}return!0};gb.prototype.each=function(a){var b=this.Gb;b.Xa=null;var c=b.A;this.fb=-1;for(var d=b.s,e=d.length,f=this.Cf,g=0;g<e;g++){var h=d[g];if(null===f||f(h))a(h),b.A!==c&&Da(b)}return this}; gb.prototype.map=function(a){var b=this.Gb;b.Xa=null;var c=b.A;this.fb=-1;for(var d=[],e=b.s,f=e.length,g=this.Cf,h=0;h<f;h++){var k=e[h];if(null===g||g(k))d.push(a(k)),b.A!==c&&Da(b)}a=new I;a.s=d;a.Cb();return a.iterator};gb.prototype.filter=function(a){var b=this.Gb;b.Xa=null;var c=b.A;this.fb=-1;for(var d=[],e=b.s,f=e.length,g=this.Cf,h=0;h<f;h++){var k=e[h];if(null===g||g(k))a(k)&&d.push(k),b.A!==c&&Da(b)}a=new I;a.s=d;a.Cb();return a.iterator}; gb.prototype.ie=function(){this.key=-1;this.value=null;this.wa=-1;this.Cf=null;this.Gb.Xa=this};gb.prototype.toString=function(){return"ListIterator@"+this.fb+"/"+this.Gb.count}; oa.Object.defineProperties(gb.prototype,{iterator:{configurable:!0,get:function(){return this}},predicate:{configurable:!0,get:function(){return this.Cf},set:function(a){this.Cf=a}},count:{configurable:!0,get:function(){var a=this.Cf;if(null!==a){for(var b=0,c=this.Gb.s,d=c.length,e=0;e<d;e++)a(c[e])&&b++;return b}return this.Gb.s.length}}});gb.prototype.first=gb.prototype.first;gb.prototype.hasNext=gb.prototype.Gd;gb.prototype.next=gb.prototype.next; gb.prototype.reset=gb.prototype.reset;gb.className="ListIterator";function hb(a){this.Gb=a;a.Tg=null;this.wa=a.A;this.fb=a.s.length}hb.prototype.reset=function(){var a=this.Gb;a.Tg=null;this.wa=a.A;this.fb=a.s.length};hb.prototype.next=function(){var a=this.Gb;if(a.A!==this.wa){if(0>this.key)return!1;Da(a)}var b=--this.fb;if(0<=b)return this.key=b,this.value=a.s[b],!0;this.ie();return!1};hb.prototype.Gd=function(){return this.next()}; hb.prototype.first=function(){var a=this.Gb;this.wa=a.A;var b=a.s;this.fb=a=b.length-1;return 0<=a?(b=b[a],this.key=a,this.value=b):null};hb.prototype.any=function(a){var b=this.Gb;b.Tg=null;var c=b.A,d=b.s,e=d.length;this.fb=e;for(--e;0<=e;e--){if(a(d[e]))return!0;b.A!==c&&Da(b)}return!1};hb.prototype.all=function(a){var b=this.Gb;b.Tg=null;var c=b.A,d=b.s,e=d.length;this.fb=e;for(--e;0<=e;e--){if(!a(d[e]))return!1;b.A!==c&&Da(b)}return!0}; hb.prototype.each=function(a){var b=this.Gb;b.Tg=null;var c=b.A,d=b.s,e=d.length;this.fb=e;for(--e;0<=e;e--)a(d[e]),b.A!==c&&Da(b);return this};hb.prototype.map=function(a){var b=this.Gb;b.Tg=null;var c=b.A,d=[],e=b.s,f=e.length;this.fb=f;for(--f;0<=f;f--)d.push(a(e[f])),b.A!==c&&Da(b);a=new I;a.s=d;a.Cb();return a.iterator}; hb.prototype.filter=function(a){var b=this.Gb;b.Tg=null;var c=b.A,d=[],e=b.s,f=e.length;this.fb=f;for(--f;0<=f;f--){var g=e[f];a(g)&&d.push(g);b.A!==c&&Da(b)}a=new I;a.s=d;a.Cb();return a.iterator};hb.prototype.ie=function(){this.key=-1;this.value=null;this.wa=-1;this.Gb.Tg=this};hb.prototype.toString=function(){return"ListIteratorBackwards("+this.fb+"/"+this.Gb.count+")"}; oa.Object.defineProperties(hb.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return this.Gb.s.length}}});hb.prototype.first=hb.prototype.first;hb.prototype.hasNext=hb.prototype.Gd;hb.prototype.next=hb.prototype.next;hb.prototype.reset=hb.prototype.reset;hb.className="ListIteratorBackwards"; function I(a){Ya(this);this._isFrozen=!1;this.s=[];this.A=0;this.Tg=this.Xa=null;(G&&"function"===typeof a||"string"===typeof a)&&v("Error: Since 2.0 List/Map/Set constructors no longer take an argument that enforces type.");void 0!==a&&this.addAll(a)}t=I.prototype;t.Cb=function(){var a=this.A;a++;999999999<a&&(a=0);this.A=a};t.freeze=function(){this._isFrozen=!0;return this};t.pa=function(){this._isFrozen=!1;return this};t.toString=function(){return"List()#"+ib(this)}; t.add=function(a){if(null===a)return this;this._isFrozen&&xa(this,a);this.s.push(a);this.Cb();return this};t.push=function(a){this.add(a)};t.addAll=function(a){if(null===a)return this;this._isFrozen&&xa(this);var b=this.s;if(Ha(a))for(var c=a.length,d=0;d<c;d++)b.push(a[d]);else for(a=a.iterator;a.next();)b.push(a.value);this.Cb();return this};t.clear=function(){this._isFrozen&&xa(this);this.s.length=0;this.Cb()};t.contains=function(a){return null===a?!1:-1!==this.s.indexOf(a)};t.has=function(a){return this.contains(a)}; t.indexOf=function(a){return null===a?-1:this.s.indexOf(a)};t.O=function(a){G&&D(a,I,"elt:i");var b=this.s;(0>a||a>=b.length)&&Ba(a,"0 <= i < length",I,"elt:i");return b[a]};t.get=function(a){return this.O(a)};t.hd=function(a,b){G&&D(a,I,"setElt:i");var c=this.s;(0>a||a>=c.length)&&Ba(a,"0 <= i < length",I,"setElt:i");this._isFrozen&&xa(this,a);c[a]=b};t.set=function(a,b){this.hd(a,b)};t.first=function(){var a=this.s;return 0===a.length?null:a[0]}; t.oc=function(){var a=this.s,b=a.length;return 0<b?a[b-1]:null};t.pop=function(){this._isFrozen&&xa(this);var a=this.s;return 0<a.length?a.pop():null};I.prototype.any=function(a){for(var b=this.s,c=this.A,d=b.length,e=0;e<d;e++){if(a(b[e]))return!0;this.A!==c&&Da(this)}return!1};I.prototype.all=function(a){for(var b=this.s,c=this.A,d=b.length,e=0;e<d;e++){if(!a(b[e]))return!1;this.A!==c&&Da(this)}return!0}; I.prototype.each=function(a){for(var b=this.s,c=this.A,d=b.length,e=0;e<d;e++)a(b[e]),this.A!==c&&Da(this);return this};I.prototype.map=function(a){for(var b=new I,c=[],d=this.s,e=this.A,f=d.length,g=0;g<f;g++)c.push(a(d[g])),this.A!==e&&Da(this);b.s=c;b.Cb();return b};I.prototype.filter=function(a){for(var b=new I,c=[],d=this.s,e=this.A,f=d.length,g=0;g<f;g++){var h=d[g];a(h)&&c.push(h);this.A!==e&&Da(this)}b.s=c;b.Cb();return b};t=I.prototype; t.Lb=function(a,b){G&&D(a,I,"insertAt:i");0>a&&Ba(a,">= 0",I,"insertAt:i");this._isFrozen&&xa(this,a);var c=this.s;a>=c.length?c.push(b):c.splice(a,0,b);this.Cb()};t.remove=function(a){if(null===a)return!1;this._isFrozen&&xa(this,a);var b=this.s;a=b.indexOf(a);if(-1===a)return!1;a===b.length-1?b.pop():b.splice(a,1);this.Cb();return!0};t.delete=function(a){return this.remove(a)}; t.sb=function(a){G&&D(a,I,"removeAt:i");var b=this.s;(0>a||a>=b.length)&&Ba(a,"0 <= i < length",I,"removeAt:i");this._isFrozen&&xa(this,a);a===b.length-1?b.pop():b.splice(a,1);this.Cb()};t.removeRange=function(a,b){G&&(D(a,I,"removeRange:from"),D(b,I,"removeRange:to"));var c=this.s,d=c.length;if(0>a)a=0;else if(a>=d)return this;if(0>b)return this;b>=d&&(b=d-1);if(a>b)return this;this._isFrozen&&xa(this);for(var e=a,f=b+1;f<d;)c[e++]=c[f++];c.length=d-(b-a+1);this.Cb();return this}; I.prototype.copy=function(){var a=new I,b=this.s;0<b.length&&(a.s=Array.prototype.slice.call(b));return a};t=I.prototype;t.La=function(){for(var a=this.s,b=this.count,c=Array(b),d=0;d<b;d++)c[d]=a[d];return c};t.Uv=function(){for(var a=new J,b=this.s,c=this.count,d=0;d<c;d++)a.add(b[d]);return a};t.sort=function(a){G&&B(a,"function",I,"sort:sortfunc");this._isFrozen&&xa(this);this.s.sort(a);this.Cb();return this}; t.Mi=function(a,b,c){var d=this.s,e=d.length;void 0===b&&(b=0);void 0===c&&(c=e);G&&(B(a,"function",I,"sortRange:sortfunc"),D(b,I,"sortRange:from"),D(c,I,"sortRange:to"));this._isFrozen&&xa(this);var f=c-b;if(1>=f)return this;(0>b||b>=e-1)&&Ba(b,"0 <= from < length",I,"sortRange:from");if(2===f)return c=d[b],e=d[b+1],0<a(c,e)&&(d[b]=e,d[b+1]=c,this.Cb()),this;if(0===b)if(c>=e)d.sort(a);else for(b=d.slice(0,c),b.sort(a),a=0;a<c;a++)d[a]=b[a];else if(c>=e)for(c=d.slice(b),c.sort(a),a=b;a<e;a++)d[a]= c[a-b];else for(e=d.slice(b,c),e.sort(a),a=b;a<c;a++)d[a]=e[a-b];this.Cb();return this};t.reverse=function(){this._isFrozen&&xa(this);this.s.reverse();this.Cb();return this}; oa.Object.defineProperties(I.prototype,{_dataArray:{configurable:!0,get:function(){return this.s}},count:{configurable:!0,get:function(){return this.s.length}},size:{configurable:!0,get:function(){return this.s.length}},length:{configurable:!0,get:function(){return this.s.length}},iterator:{configurable:!0,get:function(){if(0>=this.s.length)return eb;var a=this.Xa;return null!==a?(a.reset(),a):new gb(this)}},iteratorBackwards:{configurable:!0, enumerable:!0,get:function(){if(0>=this.s.length)return eb;var a=this.Tg;return null!==a?(a.reset(),a):new hb(this)}}});I.prototype.reverse=I.prototype.reverse;I.prototype.sortRange=I.prototype.Mi;I.prototype.sort=I.prototype.sort;I.prototype.toSet=I.prototype.Uv;I.prototype.toArray=I.prototype.La;I.prototype.removeRange=I.prototype.removeRange;I.prototype.removeAt=I.prototype.sb;I.prototype["delete"]=I.prototype.delete;I.prototype.remove=I.prototype.remove;I.prototype.insertAt=I.prototype.Lb; I.prototype.pop=I.prototype.pop;I.prototype.last=I.prototype.oc;I.prototype.first=I.prototype.first;I.prototype.set=I.prototype.set;I.prototype.setElt=I.prototype.hd;I.prototype.get=I.prototype.get;I.prototype.elt=I.prototype.O;I.prototype.indexOf=I.prototype.indexOf;I.prototype.has=I.prototype.has;I.prototype.contains=I.prototype.contains;I.prototype.clear=I.prototype.clear;I.prototype.addAll=I.prototype.addAll;I.prototype.push=I.prototype.push;I.prototype.add=I.prototype.add;I.prototype.thaw=I.prototype.pa; I.prototype.freeze=I.prototype.freeze;I.className="List";function lb(a){this.qg=a;a.Xa=null;this.wa=a.A;this.ya=null}lb.prototype.reset=function(){var a=this.qg;a.Xa=null;this.wa=a.A;this.ya=null};lb.prototype.next=function(){var a=this.qg;if(a.A!==this.wa){if(null===this.key)return!1;Da(a)}var b=this.ya;b=null===b?a.ja:b.Ca;if(null!==b)return this.ya=b,this.value=b.value,this.key=b.key,!0;this.ie();return!1};lb.prototype.Gd=function(){return this.next()}; lb.prototype.first=function(){var a=this.qg;this.wa=a.A;a=a.ja;if(null!==a){this.ya=a;var b=a.value;this.key=a.key;return this.value=b}return null};lb.prototype.any=function(a){var b=this.qg;b.Xa=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(a(d.value))return!0;b.A!==c&&Da(b);d=d.Ca}return!1};lb.prototype.all=function(a){var b=this.qg;b.Xa=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(!a(d.value))return!1;b.A!==c&&Da(b);d=d.Ca}return!0}; lb.prototype.each=function(a){var b=this.qg;b.Xa=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;)a(d.value),b.A!==c&&Da(b),d=d.Ca;return this};lb.prototype.map=function(a){var b=this.qg;b.Xa=null;for(var c=new I,d=b.A,e=b.ja;null!==e;)c.add(a(e.value)),b.A!==d&&Da(b),e=e.Ca;return c.iterator};lb.prototype.filter=function(a){var b=this.qg;b.Xa=null;for(var c=new I,d=b.A,e=b.ja;null!==e;){var f=e.value;a(f)&&c.add(f);b.A!==d&&Da(b);e=e.Ca}return c.iterator}; lb.prototype.ie=function(){this.value=this.key=null;this.wa=-1;this.qg.Xa=this};lb.prototype.toString=function(){return null!==this.ya?"SetIterator@"+this.ya.value:"SetIterator"};oa.Object.defineProperties(lb.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return this.qg.Xb}}});lb.prototype.first=lb.prototype.first;lb.prototype.hasNext=lb.prototype.Gd;lb.prototype.next=lb.prototype.next;lb.prototype.reset=lb.prototype.reset; lb.className="SetIterator";function J(a){Ya(this);this._isFrozen=!1;this.Yb={};this.Xb=0;this.Xa=null;this.A=0;this.xf=this.ja=null;(G&&"function"===typeof a||"string"===typeof a)&&v("Error: Since 2.0 List/Map/Set constructors no longer take an argument that enforces type.");void 0!==a&&this.addAll(a)}t=J.prototype;t.Cb=function(){var a=this.A;a++;999999999<a&&(a=0);this.A=a};t.freeze=function(){this._isFrozen=!0;return this};t.pa=function(){this._isFrozen=!1;return this}; t.toString=function(){return"Set()#"+ib(this)};t.add=function(a){if(null===a)return this;this._isFrozen&&xa(this,a);var b=a;Ga(a)&&(b=mb(a));void 0===this.Yb[b]&&(this.Xb++,a=new nb(a,a),this.Yb[b]=a,b=this.xf,null===b?this.ja=a:(a.xl=b,b.Ca=a),this.xf=a,this.Cb());return this};t.addAll=function(a){if(null===a)return this;this._isFrozen&&xa(this);if(Ha(a))for(var b=a.length,c=0;c<b;c++)this.add(a[c]);else for(a=a.iterator;a.next();)this.add(a.value);return this}; t.contains=function(a){if(null===a)return!1;var b=a;return Ga(a)&&(b=ib(a),void 0===b)?!1:void 0!==this.Yb[b]};t.has=function(a){return this.contains(a)};t.iz=function(a){if(null===a)return!0;for(a=a.iterator;a.next();)if(!this.contains(a.value))return!1;return!0};t.jz=function(a){if(null===a)return!0;for(a=a.iterator;a.next();)if(this.contains(a.value))return!0;return!1};t.first=function(){var a=this.ja;return null===a?null:a.value}; J.prototype.any=function(a){for(var b=this.A,c=this.ja;null!==c;){if(a(c.value))return!0;this.A!==b&&Da(this);c=c.Ca}return!1};J.prototype.all=function(a){for(var b=this.A,c=this.ja;null!==c;){if(!a(c.value))return!1;this.A!==b&&Da(this);c=c.Ca}return!0};J.prototype.each=function(a){for(var b=this.A,c=this.ja;null!==c;)a(c.value),this.A!==b&&Da(this),c=c.Ca;return this};J.prototype.map=function(a){for(var b=new J,c=this.A,d=this.ja;null!==d;)b.add(a(d.value)),this.A!==c&&Da(this),d=d.Ca;return b}; J.prototype.filter=function(a){for(var b=new J,c=this.A,d=this.ja;null!==d;){var e=d.value;a(e)&&b.add(e);this.A!==c&&Da(this);d=d.Ca}return b};t=J.prototype;t.remove=function(a){if(null===a)return!1;this._isFrozen&&xa(this,a);var b=a;if(Ga(a)&&(b=ib(a),void 0===b))return!1;a=this.Yb[b];if(void 0===a)return!1;var c=a.Ca,d=a.xl;null!==c&&(c.xl=d);null!==d&&(d.Ca=c);this.ja===a&&(this.ja=c);this.xf===a&&(this.xf=d);delete this.Yb[b];this.Xb--;this.Cb();return!0};t.delete=function(a){return this.remove(a)}; t.sp=function(a){if(null===a)return this;this._isFrozen&&xa(this);if(Ha(a))for(var b=a.length,c=0;c<b;c++)this.remove(a[c]);else for(a=a.iterator;a.next();)this.remove(a.value);return this};t.GA=function(a){if(null===a||0===this.count)return this;this._isFrozen&&xa(this);var b=new J;b.addAll(a);a=[];for(var c=this.iterator;c.next();){var d=c.value;b.contains(d)||a.push(d)}this.sp(a);return this}; t.clear=function(){this._isFrozen&&xa(this);this.Yb={};this.Xb=0;null!==this.Xa&&this.Xa.reset();this.xf=this.ja=null;this.Cb()};J.prototype.copy=function(){var a=new J,b=this.Yb,c;for(c in b)a.add(b[c].value);return a};J.prototype.La=function(){var a=Array(this.Xb),b=this.Yb,c=0,d;for(d in b)a[c]=b[d].value,c++;return a};J.prototype.Tv=function(){var a=new I,b=this.Yb,c;for(c in b)a.add(b[c].value);return a};function Ya(a){a.__gohashid=ob++} function mb(a){var b=a.__gohashid;void 0===b&&(b=ob++,a.__gohashid=b);return b}function ib(a){return a.__gohashid}oa.Object.defineProperties(J.prototype,{count:{configurable:!0,get:function(){return this.Xb}},size:{configurable:!0,get:function(){return this.Xb}},iterator:{configurable:!0,get:function(){if(0>=this.Xb)return eb;var a=this.Xa;return null!==a?(a.reset(),a):new lb(this)}}});J.prototype.toList=J.prototype.Tv;J.prototype.toArray=J.prototype.La; J.prototype.clear=J.prototype.clear;J.prototype.retainAll=J.prototype.GA;J.prototype.removeAll=J.prototype.sp;J.prototype["delete"]=J.prototype.delete;J.prototype.remove=J.prototype.remove;J.prototype.first=J.prototype.first;J.prototype.containsAny=J.prototype.jz;J.prototype.containsAll=J.prototype.iz;J.prototype.has=J.prototype.has;J.prototype.contains=J.prototype.contains;J.prototype.addAll=J.prototype.addAll;J.prototype.add=J.prototype.add;J.prototype.thaw=J.prototype.pa;J.prototype.freeze=J.prototype.freeze; var ob=1;J.className="Set";J.uniqueHash=Ya;J.hashIdUnique=mb;J.hashId=ib;function pb(a){this.sa=a;this.wa=a.A;this.ya=null}pb.prototype.reset=function(){this.wa=this.sa.A;this.ya=null};pb.prototype.next=function(){var a=this.sa;if(a.A!==this.wa){if(null===this.key)return!1;Da(a)}var b=this.ya;b=null===b?a.ja:b.Ca;if(null!==b)return this.ya=b,this.value=this.key=a=b.key,!0;this.ie();return!1};pb.prototype.Gd=function(){return this.next()}; pb.prototype.first=function(){var a=this.sa;this.wa=a.A;a=a.ja;return null!==a?(this.ya=a,this.value=this.key=a=a.key):null};pb.prototype.any=function(a){var b=this.sa,c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(a(d.key))return!0;b.A!==c&&Da(b);d=d.Ca}return!1};pb.prototype.all=function(a){var b=this.sa,c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(!a(d.key))return!1;b.A!==c&&Da(b);d=d.Ca}return!0}; pb.prototype.each=function(a){var b=this.sa,c=b.A;this.ya=null;for(var d=b.ja;null!==d;)a(d.key),b.A!==c&&Da(b),d=d.Ca;return this};pb.prototype.map=function(a){var b=this.sa,c=b.A;this.ya=null;for(var d=new I,e=b.ja;null!==e;)d.add(a(e.key)),b.A!==c&&Da(b),e=e.Ca;return d.iterator};pb.prototype.filter=function(a){var b=this.sa,c=b.A;this.ya=null;for(var d=new I,e=b.ja;null!==e;){var f=e.key;a(f)&&d.add(f);b.A!==c&&Da(b);e=e.Ca}return d.iterator}; pb.prototype.ie=function(){this.value=this.key=null;this.wa=-1};pb.prototype.toString=function(){return null!==this.ya?"MapKeySetIterator@"+this.ya.value:"MapKeySetIterator"};oa.Object.defineProperties(pb.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return this.sa.Xb}}});pb.prototype.first=pb.prototype.first;pb.prototype.hasNext=pb.prototype.Gd;pb.prototype.next=pb.prototype.next;pb.prototype.reset=pb.prototype.reset; pb.className="MapKeySetIterator";function qb(a){J.call(this);Ya(this);this._isFrozen=!0;this.sa=a}na(qb,J);t=qb.prototype;t.freeze=function(){return this};t.pa=function(){return this};t.toString=function(){return"MapKeySet("+this.sa.toString()+")"};t.add=function(){v("This Set is read-only: "+this.toString())};t.contains=function(a){return this.sa.contains(a)};t.has=function(a){return this.contains(a)};t.remove=function(){v("This Set is read-only: "+this.toString())};t.delete=function(a){return this.remove(a)}; t.clear=function(){v("This Set is read-only: "+this.toString())};t.first=function(){var a=this.sa.ja;return null!==a?a.key:null};qb.prototype.any=function(a){for(var b=this.sa.ja;null!==b;){if(a(b.key))return!0;b=b.Ca}return!1};qb.prototype.all=function(a){for(var b=this.sa.ja;null!==b;){if(!a(b.key))return!1;b=b.Ca}return!0};qb.prototype.each=function(a){for(var b=this.sa.ja;null!==b;)a(b.key),b=b.Ca;return this}; qb.prototype.map=function(a){for(var b=new J,c=this.sa.ja;null!==c;)b.add(a(c.key)),c=c.Ca;return b};qb.prototype.filter=function(a){for(var b=new J,c=this.sa.ja;null!==c;){var d=c.key;a(d)&&b.add(d);c=c.Ca}return b};qb.prototype.copy=function(){return new qb(this.sa)};qb.prototype.Uv=function(){var a=new J,b=this.sa.Yb,c;for(c in b)a.add(b[c].key);return a};qb.prototype.La=function(){var a=this.sa.Yb,b=Array(this.sa.Xb),c=0,d;for(d in a)b[c]=a[d].key,c++;return b}; qb.prototype.Tv=function(){var a=new I,b=this.sa.Yb,c;for(c in b)a.add(b[c].key);return a};oa.Object.defineProperties(qb.prototype,{count:{configurable:!0,get:function(){return this.sa.Xb}},size:{configurable:!0,get:function(){return this.sa.Xb}},iterator:{configurable:!0,get:function(){return 0>=this.sa.Xb?eb:new pb(this.sa)}}});qb.prototype.toList=qb.prototype.Tv;qb.prototype.toArray=qb.prototype.La;qb.prototype.toSet=qb.prototype.Uv; qb.prototype.first=qb.prototype.first;qb.prototype.clear=qb.prototype.clear;qb.prototype["delete"]=qb.prototype.delete;qb.prototype.remove=qb.prototype.remove;qb.prototype.has=qb.prototype.has;qb.prototype.contains=qb.prototype.contains;qb.prototype.add=qb.prototype.add;qb.prototype.thaw=qb.prototype.pa;qb.prototype.freeze=qb.prototype.freeze;qb.className="MapKeySet";function rb(a){this.sa=a;a.wf=null;this.wa=a.A;this.ya=null} rb.prototype.reset=function(){var a=this.sa;a.wf=null;this.wa=a.A;this.ya=null};rb.prototype.next=function(){var a=this.sa;if(a.A!==this.wa){if(null===this.key)return!1;Da(a)}var b=this.ya;b=null===b?a.ja:b.Ca;if(null!==b)return this.ya=b,this.value=b.value,this.key=b.key,!0;this.ie();return!1};rb.prototype.Gd=function(){return this.next()};rb.prototype.first=function(){var a=this.sa;this.wa=a.A;a=a.ja;if(null!==a){this.ya=a;var b=a.value;this.key=a.key;return this.value=b}return null}; rb.prototype.any=function(a){var b=this.sa;b.wf=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(a(d.value))return!0;b.A!==c&&Da(b);d=d.Ca}return!1};rb.prototype.all=function(a){var b=this.sa;b.wf=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(!a(d.value))return!1;b.A!==c&&Da(b);d=d.Ca}return!0};rb.prototype.each=function(a){var b=this.sa;b.wf=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;)a(d.value),b.A!==c&&Da(b),d=d.Ca;return this}; rb.prototype.map=function(a){var b=this.sa;b.wf=null;var c=b.A;this.ya=null;for(var d=new I,e=b.ja;null!==e;)d.add(a(e.value)),b.A!==c&&Da(b),e=e.Ca;return d.iterator};rb.prototype.filter=function(a){var b=this.sa;b.wf=null;var c=b.A;this.ya=null;for(var d=new I,e=b.ja;null!==e;){var f=e.value;a(f)&&d.add(f);b.A!==c&&Da(b);e=e.Ca}return d.iterator};rb.prototype.ie=function(){this.value=this.key=null;this.wa=-1;this.sa.wf=this}; rb.prototype.toString=function(){return null!==this.ya?"MapValueSetIterator@"+this.ya.value:"MapValueSetIterator"};oa.Object.defineProperties(rb.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return this.sa.Xb}}});rb.prototype.first=rb.prototype.first;rb.prototype.hasNext=rb.prototype.Gd;rb.prototype.next=rb.prototype.next;rb.prototype.reset=rb.prototype.reset;rb.className="MapValueSetIterator"; function nb(a,b){this.key=a;this.value=b;this.xl=this.Ca=null}nb.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"};nb.className="KeyValuePair";function ub(a){this.sa=a;a.Xa=null;this.wa=a.A;this.ya=null}ub.prototype.reset=function(){var a=this.sa;a.Xa=null;this.wa=a.A;this.ya=null}; ub.prototype.next=function(){var a=this.sa;if(a.A!==this.wa){if(null===this.key)return!1;Da(a)}var b=this.ya;b=null===b?a.ja:b.Ca;if(null!==b)return this.ya=b,this.key=b.key,this.value=b.value,!0;this.ie();return!1};ub.prototype.Gd=function(){return this.next()};ub.prototype.first=function(){var a=this.sa;this.wa=a.A;a=a.ja;return null!==a?(this.ya=a,this.key=a.key,this.value=a.value,a):null}; ub.prototype.any=function(a){var b=this.sa;b.Xa=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(a(d))return!0;b.A!==c&&Da(b);d=d.Ca}return!1};ub.prototype.all=function(a){var b=this.sa;b.Xa=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;){if(!a(d))return!1;b.A!==c&&Da(b);d=d.Ca}return!0};ub.prototype.each=function(a){var b=this.sa;b.Xa=null;var c=b.A;this.ya=null;for(var d=b.ja;null!==d;)a(d),b.A!==c&&Da(b),d=d.Ca;return this}; ub.prototype.map=function(a){var b=this.sa;b.Xa=null;var c=b.A;this.ya=null;for(var d=new I,e=b.ja;null!==e;)d.add(a(e)),b.A!==c&&Da(b),e=e.Ca;return d.iterator};ub.prototype.filter=function(a){var b=this.sa;b.Xa=null;var c=b.A;this.ya=null;for(var d=new I,e=b.ja;null!==e;)a(e)&&d.add(e),b.A!==c&&Da(b),e=e.Ca;return d.iterator};ub.prototype.ie=function(){this.value=this.key=null;this.wa=-1;this.sa.Xa=this};ub.prototype.toString=function(){return null!==this.ya?"MapIterator@"+this.ya:"MapIterator"}; oa.Object.defineProperties(ub.prototype,{iterator:{configurable:!0,get:function(){return this}},count:{configurable:!0,get:function(){return this.sa.Xb}}});ub.prototype.first=ub.prototype.first;ub.prototype.hasNext=ub.prototype.Gd;ub.prototype.next=ub.prototype.next;ub.prototype.reset=ub.prototype.reset;ub.className="MapIterator"; function vb(a){Ya(this);this._isFrozen=!1;this.Yb={};this.Xb=0;this.wf=this.Xa=null;this.A=0;this.xf=this.ja=null;(G&&"function"===typeof a||"string"===typeof a)&&v("Error: Since 2.0 List/Map/Set constructors no longer take an argument that enforces type.");void 0!==a&&this.addAll(a)}t=vb.prototype;t.Cb=function(){var a=this.A;a++;999999999<a&&(a=0);this.A=a};t.freeze=function(){this._isFrozen=!0;return this};t.pa=function(){this._isFrozen=!1;return this};t.toString=function(){return"Map()#"+ib(this)}; t.add=function(a,b){this._isFrozen&&xa(this,a);var c=a;Ga(a)&&(c=mb(a));var d=this.Yb[c];void 0===d?(this.Xb++,a=new nb(a,b),this.Yb[c]=a,c=this.xf,null===c?this.ja=a:(a.xl=c,c.Ca=a),this.xf=a,this.Cb()):d.value=b;return this};t.set=function(a,b){return this.add(a,b)}; t.addAll=function(a){if(null===a)return this;if(Ha(a))for(var b=a.length,c=0;c<b;c++){var d=a[c];this.add(d.key,d.value)}else if(a instanceof vb)for(a=a.iterator;a.next();)this.add(a.key,a.value);else for(a=a.iterator;a.next();)b=a.value,this.add(b.key,b.value);return this};t.first=function(){return this.ja};vb.prototype.any=function(a){for(var b=this.A,c=this.ja;null!==c;){if(a(c))return!0;this.A!==b&&Da(this);c=c.Ca}return!1}; vb.prototype.all=function(a){for(var b=this.A,c=this.ja;null!==c;){if(!a(c))return!1;this.A!==b&&Da(this);c=c.Ca}return!0};vb.prototype.each=function(a){for(var b=this.A,c=this.ja;null!==c;)a(c),this.A!==b&&Da(this),c=c.Ca;return this};vb.prototype.map=function(a){for(var b=new vb,c=this.A,d=this.ja;null!==d;)b.add(d.key,a(d)),this.A!==c&&Da(this),d=d.Ca;return b};vb.prototype.filter=function(a){for(var b=new vb,c=this.A,d=this.ja;null!==d;)a(d)&&b.add(d.key,d.value),this.A!==c&&Da(this),d=d.Ca;return b}; t=vb.prototype;t.contains=function(a){var b=a;return Ga(a)&&(b=ib(a),void 0===b)?!1:void 0!==this.Yb[b]};t.has=function(a){return this.contains(a)};t.L=function(a){var b=a;if(Ga(a)&&(b=ib(a),void 0===b))return null;a=this.Yb[b];return void 0===a?null:a.value};t.get=function(a){return this.L(a)}; t.remove=function(a){if(null===a)return!1;this._isFrozen&&xa(this,a);var b=a;if(Ga(a)&&(b=ib(a),void 0===b))return!1;a=this.Yb[b];if(void 0===a)return!1;var c=a.Ca,d=a.xl;null!==c&&(c.xl=d);null!==d&&(d.Ca=c);this.ja===a&&(this.ja=c);this.xf===a&&(this.xf=d);delete this.Yb[b];this.Xb--;this.Cb();return!0};t.delete=function(a){return this.remove(a)}; t.clear=function(){this._isFrozen&&xa(this);this.Yb={};this.Xb=0;null!==this.Xa&&this.Xa.reset();null!==this.wf&&this.wf.reset();this.xf=this.ja=null;this.Cb()};vb.prototype.copy=function(){var a=new vb,b=this.Yb,c;for(c in b){var d=b[c];a.add(d.key,d.value)}return a};vb.prototype.La=function(){var a=this.Yb,b=Array(this.Xb),c=0,d;for(d in a){var e=a[d];b[c]=new nb(e.key,e.value);c++}return b};vb.prototype.Xf=function(){return new qb(this)}; oa.Object.defineProperties(vb.prototype,{count:{configurable:!0,get:function(){return this.Xb}},size:{configurable:!0,get:function(){return this.Xb}},iterator:{configurable:!0,get:function(){if(0>=this.count)return eb;var a=this.Xa;return null!==a?(a.reset(),a):new ub(this)}},iteratorKeys:{configurable:!0,get:function(){return 0>=this.count?eb:new pb(this)}},iteratorValues:{configurable:!0,get:function(){if(0>=this.count)return eb; var a=this.wf;return null!==a?(a.reset(),a):new rb(this)}}});vb.prototype.toKeySet=vb.prototype.Xf;vb.prototype.toArray=vb.prototype.La;vb.prototype.clear=vb.prototype.clear;vb.prototype["delete"]=vb.prototype.delete;vb.prototype.remove=vb.prototype.remove;vb.prototype.get=vb.prototype.get;vb.prototype.getValue=vb.prototype.L;vb.prototype.has=vb.prototype.has;vb.prototype.contains=vb.prototype.contains;vb.prototype.first=vb.prototype.first;vb.prototype.addAll=vb.prototype.addAll; vb.prototype.set=vb.prototype.set;vb.prototype.add=vb.prototype.add;vb.prototype.thaw=vb.prototype.pa;vb.prototype.freeze=vb.prototype.freeze;vb.className="Map";function K(a,b){void 0===a?this.K=this.J=0:"number"===typeof a&&"number"===typeof b?(this.J=a,this.K=b):v("Invalid arguments to Point constructor: "+a+", "+b);this._isFrozen=!1}var yb,zb,Ab,Bb,Cb;K.prototype.assign=function(a){this.J=a.J;this.K=a.K;return this};K.prototype.h=function(a,b){this.J=a;this.K=b;return this}; K.prototype.Eg=function(a,b){G&&(B(a,"number",K,"setTo:x"),B(b,"number",K,"setTo:y"),this.ma());this.J=a;this.K=b;return this};K.prototype.set=function(a){G&&(x(a,K,K,"set:p"),this.ma());this.J=a.J;this.K=a.K;return this};K.prototype.copy=function(){var a=new K;a.J=this.J;a.K=this.K;return a};t=K.prototype;t.oa=function(){this._isFrozen=!0;Object.freeze(this);return this};t.M=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()};t.freeze=function(){this._isFrozen=!0;return this}; t.pa=function(){Object.isFrozen(this)&&v("cannot thaw constant: "+this);this._isFrozen=!1;return this};t.ma=function(a){if(G&&this._isFrozen){var b="The Point is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v(b)}};function Db(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new K(c,e)}return new K} function Eb(a){G&&x(a,K);return a.x.toString()+" "+a.y.toString()}t.toString=function(){return"Point("+this.x+","+this.y+")"};t.D=function(a){return a instanceof K?this.J===a.x&&this.K===a.y:!1};t.ui=function(a,b){return this.J===a&&this.K===b};t.cb=function(a){return L.C(this.J,a.x)&&L.C(this.K,a.y)};t.add=function(a){G&&(x(a,K,K,"add:p"),this.ma());this.J+=a.x;this.K+=a.y;return this};t.ze=function(a){G&&(x(a,K,K,"subtract:p"),this.ma());this.J-=a.x;this.K-=a.y;return this}; t.offset=function(a,b){G&&(D(a,K,"offset:dx"),D(b,K,"offset:dy"),this.ma());this.J+=a;this.K+=b;return this};K.prototype.rotate=function(a){G&&(D(a,K,"rotate:angle"),this.ma());if(0===a)return this;var b=this.J,c=this.K;if(0===b&&0===c)return this;360<=a?a-=360:0>a&&(a+=360);if(90===a){a=0;var d=1}else 180===a?(a=-1,d=0):270===a?(a=0,d=-1):(d=a*Math.PI/180,a=Math.cos(d),d=Math.sin(d));this.J=a*b-d*c;this.K=d*b+a*c;return this};t=K.prototype; t.scale=function(a,b){G&&(D(a,K,"scale:sx"),D(b,K,"scale:sy"),this.ma());this.J*=a;this.K*=b;return this};t.Nf=function(a){G&&x(a,K,K,"distanceSquaredPoint:p");var b=a.x-this.J;a=a.y-this.K;return b*b+a*a};t.Fd=function(a,b){G&&(D(a,K,"distanceSquared:px"),D(b,K,"distanceSquared:py"));a-=this.J;b-=this.K;return a*a+b*b};t.normalize=function(){G&&this.ma();var a=this.J,b=this.K,c=Math.sqrt(a*a+b*b);0<c&&(this.J=a/c,this.K=b/c);return this}; t.gb=function(a){G&&x(a,K,K,"directionPoint:p");return Fb(a.x-this.J,a.y-this.K)};t.direction=function(a,b){G&&(D(a,K,"direction:px"),D(b,K,"direction:py"));return Fb(a-this.J,b-this.K)};function Fb(a,b){if(0===a)return 0<b?90:0>b?270:0;if(0===b)return 0<a?0:180;if(isNaN(a)||isNaN(b))return 0;var c=180*Math.atan(Math.abs(b/a))/Math.PI;0>a?c=0>b?c+180:180-c:0>b&&(c=360-c);return c} t.hz=function(a,b){G&&(x(a,K,K,"compareWithLineSegmentPoint:p"),x(b,K,K,"compareWithLineSegmentPoint:q"));return L.Sl(a.x,a.y,b.x,b.y,this.x,this.y)};t.wA=function(a,b,c,d){G&&(D(a,K,"projectOntoLineSegment:px"),D(b,K,"projectOntoLineSegment:py"),D(c,K,"projectOntoLineSegment:qx"),D(d,K,"projectOntoLineSegment:qy"));L.Bh(a,b,c,d,this.J,this.K,this);return this}; t.xA=function(a,b){G&&(x(a,K,K,"projectOntoLineSegmentPoint:p"),x(b,K,K,"projectOntoLineSegmentPoint:q"));L.Bh(a.x,a.y,b.x,b.y,this.J,this.K,this);return this};t.LA=function(a,b,c,d){G&&(D(a,K,"snapToGrid:originx"),D(b,K,"snapToGrid:originy"),D(c,K,"snapToGrid:cellwidth"),D(d,K,"snapToGrid:cellheight"));L.Zo(this.J,this.K,a,b,c,d,this);return this};t.MA=function(a,b){G&&(x(a,K,K,"snapToGridPoint:p"),x(b,Gb,K,"snapToGridPoint:q"));L.Zo(this.J,this.K,a.x,a.y,b.width,b.height,this);return this}; t.Ki=function(a,b){G&&(x(a,M,K,"setRectSpot:r"),x(b,Hb,K,"setRectSpot:spot"),this.ma());this.J=a.x+b.x*a.width+b.offsetX;this.K=a.y+b.y*a.height+b.offsetY;return this};t.Li=function(a,b,c,d,e){G&&(D(a,K,"setSpot:x"),D(b,K,"setSpot:y"),D(c,K,"setSpot:w"),D(d,K,"setSpot:h"),(0>c||0>d)&&v("Point.setSpot:Width and height cannot be negative"),x(e,Hb,K,"setSpot:spot"),this.ma());this.J=a+e.x*c+e.offsetX;this.K=b+e.y*d+e.offsetY;return this}; t.transform=function(a){G&&x(a,Ib,K,"transform:t");a.Ma(this);return this};function Jb(a,b){G&&x(b,Ib,K,"transformInverted:t");b.Jd(a);return a} function Kb(a,b,c,d,e,f){G&&(D(a,K,"distanceLineSegmentSquared:px"),D(b,K,"distanceLineSegmentSquared:py"),D(c,K,"distanceLineSegmentSquared:ax"),D(d,K,"distanceLineSegmentSquared:ay"),D(e,K,"distanceLineSegmentSquared:bx"),D(f,K,"distanceLineSegmentSquared:by"));var g=e-c,h=f-d,k=g*g+h*h;c-=a;d-=b;var l=-c*g-d*h;if(0>=l||l>=k)return g=e-a,h=f-b,Math.min(c*c+d*d,g*g+h*h);a=g*d-h*c;return a*a/k} function Lb(a,b,c,d){G&&(D(a,K,"distanceSquared:px"),D(b,K,"distanceSquared:py"),D(c,K,"distanceSquared:qx"),D(d,K,"distanceSquared:qy"));a=c-a;b=d-b;return a*a+b*b}function Mb(a,b,c,d){G&&(D(a,K,"direction:px"),D(b,K,"direction:py"),D(c,K,"direction:qx"),D(d,K,"direction:qy"));a=c-a;b=d-b;if(0===a)return 0<b?90:0>b?270:0;if(0===b)return 0<a?0:180;if(isNaN(a)||isNaN(b))return 0;d=180*Math.atan(Math.abs(b/a))/Math.PI;0>a?d=0>b?d+180:180-d:0>b&&(d=360-d);return d} t.u=function(){return isFinite(this.x)&&isFinite(this.y)};K.alloc=function(){var a=Nb.pop();return void 0===a?new K:a};K.allocAt=function(a,b){var c=Nb.pop();if(void 0===c)return new K(a,b);c.x=a;c.y=b;return c};K.free=function(a){Nb.push(a)}; oa.Object.defineProperties(K.prototype,{x:{configurable:!0,get:function(){return this.J},set:function(a){G&&(B(a,"number",K,"x"),this.ma(a));this.J=a}},y:{configurable:!0,get:function(){return this.K},set:function(a){G&&(B(a,"number",K,"y"),this.ma(a));this.K=a}}});K.prototype.isReal=K.prototype.u;K.prototype.setSpot=K.prototype.Li;K.prototype.setRectSpot=K.prototype.Ki;K.prototype.snapToGridPoint=K.prototype.MA;K.prototype.snapToGrid=K.prototype.LA; K.prototype.projectOntoLineSegmentPoint=K.prototype.xA;K.prototype.projectOntoLineSegment=K.prototype.wA;K.intersectingLineSegments=function(a,b,c,d,e,f,g,h){G&&(D(a,K,"intersectingLineSegments:a1x"),D(b,K,"intersectingLineSegments:a1y"),D(c,K,"intersectingLineSegments:a2x"),D(d,K,"intersectingLineSegments:a2y"),D(e,K,"intersectingLineSegments:b1x"),D(f,K,"intersectingLineSegments:b1y"),D(g,K,"intersectingLineSegments:b2x"),D(h,K,"intersectingLineSegments:b2y"));return L.dm(a,b,c,d,e,f,g,h)}; K.prototype.compareWithLineSegmentPoint=K.prototype.hz;K.compareWithLineSegment=function(a,b,c,d,e,f){G&&(D(a,K,"compareWithLineSegment:a1x"),D(b,K,"compareWithLineSegment:a1y"),D(c,K,"compareWithLineSegment:a2x"),D(d,K,"compareWithLineSegment:a2y"),D(e,K,"compareWithLineSegment:b1x"),D(f,K,"compareWithLineSegment:b1y"));return L.Sl(a,b,c,d,e,f)};K.prototype.direction=K.prototype.direction;K.prototype.directionPoint=K.prototype.gb;K.prototype.normalize=K.prototype.normalize; K.prototype.distanceSquared=K.prototype.Fd;K.prototype.distanceSquaredPoint=K.prototype.Nf;K.prototype.scale=K.prototype.scale;K.prototype.rotate=K.prototype.rotate;K.prototype.offset=K.prototype.offset;K.prototype.subtract=K.prototype.ze;K.prototype.add=K.prototype.add;K.prototype.equalsApprox=K.prototype.cb;K.prototype.equalTo=K.prototype.ui;K.prototype.equals=K.prototype.D;K.prototype.set=K.prototype.set;K.prototype.setTo=K.prototype.Eg;var Nb=[];K.className="Point";K.parse=Db;K.stringify=Eb; K.distanceLineSegmentSquared=Kb;K.distanceSquared=Lb;K.direction=Mb;K.Origin=yb=(new K(0,0)).oa();K.InfiniteTopLeft=zb=(new K(-Infinity,-Infinity)).oa();K.InfiniteBottomRight=Ab=(new K(Infinity,Infinity)).oa();K.SixPoint=Bb=(new K(6,6)).oa();K.NoPoint=Cb=(new K(NaN,NaN)).oa();K.parse=Db;K.stringify=Eb;K.distanceLineSegmentSquared=Kb;K.distanceSquared=Lb;K.direction=Mb; function Gb(a,b){void 0===a?this.ea=this.ga=0:"number"===typeof a&&(0<=a||isNaN(a))&&"number"===typeof b&&(0<=b||isNaN(b))?(this.ga=a,this.ea=b):v("Invalid arguments to Size constructor: "+a+", "+b);this._isFrozen=!1}var Ob,Pb,Qb,Rb,Sb,Tb,Ub;Gb.prototype.assign=function(a){this.ga=a.ga;this.ea=a.ea;return this};Gb.prototype.h=function(a,b){this.ga=a;this.ea=b;return this}; Gb.prototype.Eg=function(a,b){G&&(B(a,"number",Gb,"setTo:w"),B(b,"number",Gb,"setTo:h"),0>a&&Ba(a,">= 0",Gb,"setTo:w"),0>b&&Ba(b,">= 0",Gb,"setTo:h"),this.ma());this.ga=a;this.ea=b;return this};Gb.prototype.set=function(a){G&&(x(a,Gb,Gb,"set:s"),this.ma());this.ga=a.ga;this.ea=a.ea;return this};Gb.prototype.copy=function(){var a=new Gb;a.ga=this.ga;a.ea=this.ea;return a};t=Gb.prototype;t.oa=function(){this._isFrozen=!0;Object.freeze(this);return this}; t.M=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()};t.freeze=function(){this._isFrozen=!0;return this};t.pa=function(){Object.isFrozen(this)&&v("cannot thaw constant: "+this);this._isFrozen=!1;return this};t.ma=function(a){if(G&&this._isFrozen){var b="The Size is frozen, so its properties cannot be set: "+this.toString();void 0!==a&&(b+=" to value: "+a);v(b)}}; function Vb(a){if("string"===typeof a){a=a.split(" ");for(var b=0,c=0;""===a[b];)b++;var d=a[b++];d&&(c=parseFloat(d));for(var e=0;""===a[b];)b++;(d=a[b++])&&(e=parseFloat(d));return new Gb(c,e)}return new Gb}function Zb(a){G&&x(a,Gb);return a.width.toString()+" "+a.height.toString()}t.toString=function(){return"Size("+this.width+","+this.height+")"};t.D=function(a){return a instanceof Gb?this.ga===a.width&&this.ea===a.height:!1};t.ui=function(a,b){return this.ga===a&&this.ea===b}; t.cb=function(a){return L.C(this.ga,a.width)&&L.C(this.ea,a.height)};t.Gc=function(a,b){G&&(D(a,Gb,"inflate:w"),D(b,Gb,"inflate:h"));a=this.width+a;this.ga=0<=a?a:0;b=this.height+b;this.ea=0<=b?b:0;return this};t.u=function(){return isFinite(this.width)&&isFinite(this.height)};Gb.alloc=function(){var a=$b.pop();return void 0===a?new Gb:a};Gb.free=function(a){$b.push(a)}; oa.Object.defineProperties(Gb.prototype,{width:{configurable:!0,get:function(){return this.ga},set:function(a){G&&(B(a,"number",Gb,"width"),this.ma(a));0>a&&Ba(a,">= 0",Gb,"width");this.ga=a}},height:{configurable:!0,get:function(){return this.ea},set:function(a){G&&(B(a,"number",Gb,"height"),this.ma(a));0>a&&Ba(a,">= 0",Gb,"height");this.ea=a}}});Gb.prototype.isReal=Gb.prototype.u;Gb.prototype.inflate=Gb.prototype.Gc;Gb.prototype.equalsApprox=Gb.prototype.cb; Gb.prototype.equalTo=Gb.prototype.ui;Gb.prototype.equals=Gb.prototype.D;Gb.prototype.set=Gb.prototype.set;Gb.prototype.setTo=Gb.prototype.Eg;var $b=[];Gb.className="Size";Gb.parse=Vb;Gb.stringify=Zb;Gb.ZeroSize=Ob=(new Gb(0,0)).oa();Gb.OneSize=Pb=(new Gb(1,1)).oa();Gb.SixSize=Qb=(new Gb(6,6)).oa();Gb.EightSize=Rb=(new Gb(8,8)).oa();Gb.TenSize=Sb=(new Gb(10,10)).oa();Gb.InfiniteSize=Tb=(new Gb(Infinity,Infinity)).oa();Gb.NoSize=Ub=(new Gb(NaN,NaN)).oa();Gb.parse=Vb;Gb.stringify=Zb; function M(a,b,c,d){void 0===a?this.ea=this.ga=this.K=this.J=0:"number"===typeof a&&"number"===typeof b&&"number"===typeof c&&(0<=c||isNaN(c))&&"number"===typeof d&&(0<=d||isNaN(d))?(this.J=a,this.K=b,this.ga=c,this.ea=d):a instanceof K?(c=a.x,a=a.y,b instanceof K?(d=b.x,b=b.y,this.J=Math.min(c,d),this.K=Math.min(a,b),this.g