1 | var libh3 = function (libh3) {
|
2 | libh3 = libh3 || {};
|
3 | var Module = typeof libh3 !== "undefined" ? libh3 : {};
|
4 | var moduleOverrides = {};
|
5 | var key;
|
6 |
|
7 | for (key in Module) {
|
8 | if (Module.hasOwnProperty(key)) {
|
9 | moduleOverrides[key] = Module[key];
|
10 | }
|
11 | }
|
12 |
|
13 | var arguments_ = [];
|
14 | var scriptDirectory = "";
|
15 |
|
16 | function locateFile(path) {
|
17 | if (Module["locateFile"]) {
|
18 | return Module["locateFile"](path, scriptDirectory);
|
19 | }
|
20 |
|
21 | return scriptDirectory + path;
|
22 | }
|
23 |
|
24 | var readAsync;
|
25 |
|
26 | {
|
27 | if (document.currentScript) {
|
28 | scriptDirectory = document.currentScript.src;
|
29 | }
|
30 |
|
31 | if (scriptDirectory.indexOf("blob:") !== 0) {
|
32 | scriptDirectory = scriptDirectory.substr(0, scriptDirectory.lastIndexOf("/") + 1);
|
33 | } else {
|
34 | scriptDirectory = "";
|
35 | }
|
36 |
|
37 | readAsync = function readAsync(url, onload, onerror) {
|
38 | var xhr = new XMLHttpRequest();
|
39 | xhr.open("GET", url, true);
|
40 | xhr.responseType = "arraybuffer";
|
41 |
|
42 | xhr.onload = function xhr_onload() {
|
43 | if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
|
44 | onload(xhr.response);
|
45 | return;
|
46 | }
|
47 |
|
48 | var data = tryParseAsDataURI(url);
|
49 |
|
50 | if (data) {
|
51 | onload(data.buffer);
|
52 | return;
|
53 | }
|
54 |
|
55 | onerror();
|
56 | };
|
57 |
|
58 | xhr.onerror = onerror;
|
59 | xhr.send(null);
|
60 | };
|
61 | }
|
62 |
|
63 | var out = Module["print"] || console.log.bind(console);
|
64 | var err = Module["printErr"] || console.warn.bind(console);
|
65 |
|
66 | for (key in moduleOverrides) {
|
67 | if (moduleOverrides.hasOwnProperty(key)) {
|
68 | Module[key] = moduleOverrides[key];
|
69 | }
|
70 | }
|
71 |
|
72 | moduleOverrides = null;
|
73 | if (Module["arguments"]) { arguments_ = Module["arguments"]; }
|
74 |
|
75 | var tempRet0 = 0;
|
76 |
|
77 | var setTempRet0 = function (value) {
|
78 | tempRet0 = value;
|
79 | };
|
80 |
|
81 | var getTempRet0 = function () {
|
82 | return tempRet0;
|
83 | };
|
84 |
|
85 | var GLOBAL_BASE = 8;
|
86 |
|
87 | function setValue(ptr, value, type, noSafe) {
|
88 | type = type || "i8";
|
89 | if (type.charAt(type.length - 1) === "*") { type = "i32"; }
|
90 |
|
91 | switch (type) {
|
92 | case "i1":
|
93 | HEAP8[ptr >> 0] = value;
|
94 | break;
|
95 |
|
96 | case "i8":
|
97 | HEAP8[ptr >> 0] = value;
|
98 | break;
|
99 |
|
100 | case "i16":
|
101 | HEAP16[ptr >> 1] = value;
|
102 | break;
|
103 |
|
104 | case "i32":
|
105 | HEAP32[ptr >> 2] = value;
|
106 | break;
|
107 |
|
108 | case "i64":
|
109 | tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= +1 ? tempDouble > +0 ? (Math_min(+Math_floor(tempDouble / +4294967296), +4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / +4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1];
|
110 | break;
|
111 |
|
112 | case "float":
|
113 | HEAPF32[ptr >> 2] = value;
|
114 | break;
|
115 |
|
116 | case "double":
|
117 | HEAPF64[ptr >> 3] = value;
|
118 | break;
|
119 |
|
120 | default:
|
121 | abort("invalid type for setValue: " + type);
|
122 | }
|
123 | }
|
124 |
|
125 | function getValue(ptr, type, noSafe) {
|
126 | type = type || "i8";
|
127 | if (type.charAt(type.length - 1) === "*") { type = "i32"; }
|
128 |
|
129 | switch (type) {
|
130 | case "i1":
|
131 | return HEAP8[ptr >> 0];
|
132 |
|
133 | case "i8":
|
134 | return HEAP8[ptr >> 0];
|
135 |
|
136 | case "i16":
|
137 | return HEAP16[ptr >> 1];
|
138 |
|
139 | case "i32":
|
140 | return HEAP32[ptr >> 2];
|
141 |
|
142 | case "i64":
|
143 | return HEAP32[ptr >> 2];
|
144 |
|
145 | case "float":
|
146 | return HEAPF32[ptr >> 2];
|
147 |
|
148 | case "double":
|
149 | return HEAPF64[ptr >> 3];
|
150 |
|
151 | default:
|
152 | abort("invalid type for getValue: " + type);
|
153 | }
|
154 |
|
155 | return null;
|
156 | }
|
157 |
|
158 | var ABORT = false;
|
159 |
|
160 | function assert(condition, text) {
|
161 | if (!condition) {
|
162 | abort("Assertion failed: " + text);
|
163 | }
|
164 | }
|
165 |
|
166 | function getCFunc(ident) {
|
167 | var func = Module["_" + ident];
|
168 | assert(func, "Cannot call unknown function " + ident + ", make sure it is exported");
|
169 | return func;
|
170 | }
|
171 |
|
172 | function ccall(ident, returnType, argTypes, args, opts) {
|
173 | var toC = {
|
174 | "string": function (str) {
|
175 | var ret = 0;
|
176 |
|
177 | if (str !== null && str !== undefined && str !== 0) {
|
178 | var len = (str.length << 2) + 1;
|
179 | ret = stackAlloc(len);
|
180 | stringToUTF8(str, ret, len);
|
181 | }
|
182 |
|
183 | return ret;
|
184 | },
|
185 | "array": function (arr) {
|
186 | var ret = stackAlloc(arr.length);
|
187 | writeArrayToMemory(arr, ret);
|
188 | return ret;
|
189 | }
|
190 | };
|
191 |
|
192 | function convertReturnValue(ret) {
|
193 | if (returnType === "string") { return UTF8ToString(ret); }
|
194 | if (returnType === "boolean") { return Boolean(ret); }
|
195 | return ret;
|
196 | }
|
197 |
|
198 | var func = getCFunc(ident);
|
199 | var cArgs = [];
|
200 | var stack = 0;
|
201 |
|
202 | if (args) {
|
203 | for (var i = 0; i < args.length; i++) {
|
204 | var converter = toC[argTypes[i]];
|
205 |
|
206 | if (converter) {
|
207 | if (stack === 0) { stack = stackSave(); }
|
208 | cArgs[i] = converter(args[i]);
|
209 | } else {
|
210 | cArgs[i] = args[i];
|
211 | }
|
212 | }
|
213 | }
|
214 |
|
215 | var ret = func.apply(null, cArgs);
|
216 | ret = convertReturnValue(ret);
|
217 | if (stack !== 0) { stackRestore(stack); }
|
218 | return ret;
|
219 | }
|
220 |
|
221 | function cwrap(ident, returnType, argTypes, opts) {
|
222 | argTypes = argTypes || [];
|
223 | var numericArgs = argTypes.every(function (type) {
|
224 | return type === "number";
|
225 | });
|
226 | var numericRet = returnType !== "string";
|
227 |
|
228 | if (numericRet && numericArgs && !opts) {
|
229 | return getCFunc(ident);
|
230 | }
|
231 |
|
232 | return function () {
|
233 | return ccall(ident, returnType, argTypes, arguments, opts);
|
234 | };
|
235 | }
|
236 | var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined;
|
237 |
|
238 | function UTF8ArrayToString(u8Array, idx, maxBytesToRead) {
|
239 | var endIdx = idx + maxBytesToRead;
|
240 | var endPtr = idx;
|
241 |
|
242 | while (u8Array[endPtr] && !(endPtr >= endIdx)) { ++endPtr; }
|
243 |
|
244 | if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) {
|
245 | return UTF8Decoder.decode(u8Array.subarray(idx, endPtr));
|
246 | } else {
|
247 | var str = "";
|
248 |
|
249 | while (idx < endPtr) {
|
250 | var u0 = u8Array[idx++];
|
251 |
|
252 | if (!(u0 & 128)) {
|
253 | str += String.fromCharCode(u0);
|
254 | continue;
|
255 | }
|
256 |
|
257 | var u1 = u8Array[idx++] & 63;
|
258 |
|
259 | if ((u0 & 224) == 192) {
|
260 | str += String.fromCharCode((u0 & 31) << 6 | u1);
|
261 | continue;
|
262 | }
|
263 |
|
264 | var u2 = u8Array[idx++] & 63;
|
265 |
|
266 | if ((u0 & 240) == 224) {
|
267 | u0 = (u0 & 15) << 12 | u1 << 6 | u2;
|
268 | } else {
|
269 | u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u8Array[idx++] & 63;
|
270 | }
|
271 |
|
272 | if (u0 < 65536) {
|
273 | str += String.fromCharCode(u0);
|
274 | } else {
|
275 | var ch = u0 - 65536;
|
276 | str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
|
277 | }
|
278 | }
|
279 | }
|
280 |
|
281 | return str;
|
282 | }
|
283 |
|
284 | function UTF8ToString(ptr, maxBytesToRead) {
|
285 | return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : "";
|
286 | }
|
287 |
|
288 | function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) {
|
289 | if (!(maxBytesToWrite > 0)) { return 0; }
|
290 | var startIdx = outIdx;
|
291 | var endIdx = outIdx + maxBytesToWrite - 1;
|
292 |
|
293 | for (var i = 0; i < str.length; ++i) {
|
294 | var u = str.charCodeAt(i);
|
295 |
|
296 | if (u >= 55296 && u <= 57343) {
|
297 | var u1 = str.charCodeAt(++i);
|
298 | u = 65536 + ((u & 1023) << 10) | u1 & 1023;
|
299 | }
|
300 |
|
301 | if (u <= 127) {
|
302 | if (outIdx >= endIdx) { break; }
|
303 | outU8Array[outIdx++] = u;
|
304 | } else if (u <= 2047) {
|
305 | if (outIdx + 1 >= endIdx) { break; }
|
306 | outU8Array[outIdx++] = 192 | u >> 6;
|
307 | outU8Array[outIdx++] = 128 | u & 63;
|
308 | } else if (u <= 65535) {
|
309 | if (outIdx + 2 >= endIdx) { break; }
|
310 | outU8Array[outIdx++] = 224 | u >> 12;
|
311 | outU8Array[outIdx++] = 128 | u >> 6 & 63;
|
312 | outU8Array[outIdx++] = 128 | u & 63;
|
313 | } else {
|
314 | if (outIdx + 3 >= endIdx) { break; }
|
315 | outU8Array[outIdx++] = 240 | u >> 18;
|
316 | outU8Array[outIdx++] = 128 | u >> 12 & 63;
|
317 | outU8Array[outIdx++] = 128 | u >> 6 & 63;
|
318 | outU8Array[outIdx++] = 128 | u & 63;
|
319 | }
|
320 | }
|
321 |
|
322 | outU8Array[outIdx] = 0;
|
323 | return outIdx - startIdx;
|
324 | }
|
325 |
|
326 | function stringToUTF8(str, outPtr, maxBytesToWrite) {
|
327 | return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite);
|
328 | }
|
329 |
|
330 | var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined;
|
331 |
|
332 | function writeArrayToMemory(array, buffer) {
|
333 | HEAP8.set(array, buffer);
|
334 | }
|
335 |
|
336 | function alignUp(x, multiple) {
|
337 | if (x % multiple > 0) {
|
338 | x += multiple - x % multiple;
|
339 | }
|
340 |
|
341 | return x;
|
342 | }
|
343 |
|
344 | var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
|
345 |
|
346 | function updateGlobalBufferAndViews(buf) {
|
347 | buffer = buf;
|
348 | Module["HEAP8"] = HEAP8 = new Int8Array(buf);
|
349 | Module["HEAP16"] = HEAP16 = new Int16Array(buf);
|
350 | Module["HEAP32"] = HEAP32 = new Int32Array(buf);
|
351 | Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf);
|
352 | Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf);
|
353 | Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf);
|
354 | Module["HEAPF32"] = HEAPF32 = new Float32Array(buf);
|
355 | Module["HEAPF64"] = HEAPF64 = new Float64Array(buf);
|
356 | }
|
357 |
|
358 | var DYNAMIC_BASE = 5266576,
|
359 | DYNAMICTOP_PTR = 23664;
|
360 | var INITIAL_TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 33554432;
|
361 |
|
362 | if (Module["buffer"]) {
|
363 | buffer = Module["buffer"];
|
364 | } else {
|
365 | buffer = new ArrayBuffer(INITIAL_TOTAL_MEMORY);
|
366 | }
|
367 |
|
368 | INITIAL_TOTAL_MEMORY = buffer.byteLength;
|
369 | updateGlobalBufferAndViews(buffer);
|
370 | HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE;
|
371 |
|
372 | function callRuntimeCallbacks(callbacks) {
|
373 | while (callbacks.length > 0) {
|
374 | var callback = callbacks.shift();
|
375 |
|
376 | if (typeof callback == "function") {
|
377 | callback();
|
378 | continue;
|
379 | }
|
380 |
|
381 | var func = callback.func;
|
382 |
|
383 | if (typeof func === "number") {
|
384 | if (callback.arg === undefined) {
|
385 | Module["dynCall_v"](func);
|
386 | } else {
|
387 | Module["dynCall_vi"](func, callback.arg);
|
388 | }
|
389 | } else {
|
390 | func(callback.arg === undefined ? null : callback.arg);
|
391 | }
|
392 | }
|
393 | }
|
394 |
|
395 | var __ATPRERUN__ = [];
|
396 | var __ATINIT__ = [];
|
397 | var __ATMAIN__ = [];
|
398 | var __ATPOSTRUN__ = [];
|
399 |
|
400 | function preRun() {
|
401 | if (Module["preRun"]) {
|
402 | if (typeof Module["preRun"] == "function") { Module["preRun"] = [Module["preRun"]]; }
|
403 |
|
404 | while (Module["preRun"].length) {
|
405 | addOnPreRun(Module["preRun"].shift());
|
406 | }
|
407 | }
|
408 |
|
409 | callRuntimeCallbacks(__ATPRERUN__);
|
410 | }
|
411 |
|
412 | function initRuntime() {
|
413 | callRuntimeCallbacks(__ATINIT__);
|
414 | }
|
415 |
|
416 | function preMain() {
|
417 | callRuntimeCallbacks(__ATMAIN__);
|
418 | }
|
419 |
|
420 | function postRun() {
|
421 | if (Module["postRun"]) {
|
422 | if (typeof Module["postRun"] == "function") { Module["postRun"] = [Module["postRun"]]; }
|
423 |
|
424 | while (Module["postRun"].length) {
|
425 | addOnPostRun(Module["postRun"].shift());
|
426 | }
|
427 | }
|
428 |
|
429 | callRuntimeCallbacks(__ATPOSTRUN__);
|
430 | }
|
431 |
|
432 | function addOnPreRun(cb) {
|
433 | __ATPRERUN__.unshift(cb);
|
434 | }
|
435 |
|
436 | function addOnPostRun(cb) {
|
437 | __ATPOSTRUN__.unshift(cb);
|
438 | }
|
439 |
|
440 | var Math_abs = Math.abs;
|
441 | var Math_ceil = Math.ceil;
|
442 | var Math_floor = Math.floor;
|
443 | var Math_min = Math.min;
|
444 | var runDependencies = 0;
|
445 | var runDependencyWatcher = null;
|
446 | var dependenciesFulfilled = null;
|
447 |
|
448 | function addRunDependency(id) {
|
449 | runDependencies++;
|
450 |
|
451 | if (Module["monitorRunDependencies"]) {
|
452 | Module["monitorRunDependencies"](runDependencies);
|
453 | }
|
454 | }
|
455 |
|
456 | function removeRunDependency(id) {
|
457 | runDependencies--;
|
458 |
|
459 | if (Module["monitorRunDependencies"]) {
|
460 | Module["monitorRunDependencies"](runDependencies);
|
461 | }
|
462 |
|
463 | if (runDependencies == 0) {
|
464 | if (runDependencyWatcher !== null) {
|
465 | clearInterval(runDependencyWatcher);
|
466 | runDependencyWatcher = null;
|
467 | }
|
468 |
|
469 | if (dependenciesFulfilled) {
|
470 | var callback = dependenciesFulfilled;
|
471 | dependenciesFulfilled = null;
|
472 | callback();
|
473 | }
|
474 | }
|
475 | }
|
476 |
|
477 | Module["preloadedImages"] = {};
|
478 | Module["preloadedAudios"] = {};
|
479 | var memoryInitializer = null;
|
480 | var dataURIPrefix = "data:application/octet-stream;base64,";
|
481 |
|
482 | function isDataURI(filename) {
|
483 | return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0;
|
484 | }
|
485 |
|
486 | var tempDouble;
|
487 | var tempI64;
|
488 | memoryInitializer = "data:application/octet-stream;base64,AAAAAAAAAAACAAAAAwAAAAEAAAAFAAAABAAAAAYAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAABAAAABAAAAAMAAAAGAAAABQAAAAIAAAAAAAAAAgAAAAMAAAABAAAABAAAAAYAAAAAAAAABQAAAAMAAAAGAAAABAAAAAUAAAAAAAAAAQAAAAIAAAAEAAAABQAAAAYAAAAAAAAAAgAAAAMAAAABAAAABQAAAAIAAAAAAAAAAQAAAAMAAAAGAAAABAAAAAYAAAAAAAAABQAAAAIAAAABAAAABAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAgAAAAMAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABgAAAAAAAAAFAAAAAAAAAAAAAAAEAAAABQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAABgAAAAAAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAAAAAACAAAAAwAAAAQAAAAFAAAABgAAAAAAAAABAAAAAwAAAAQAAAAFAAAABgAAAAAAAAABAAAAAgAAAAQAAAAFAAAABgAAAAAAAAABAAAAAgAAAAMAAAAFAAAABgAAAAAAAAABAAAAAgAAAAMAAAAEAAAABgAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAAAAAAAAAAABgAAAAAAAAADAAAAAgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAUAAAAEAAAAAAAAAAEAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAEAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAUAAAACAAAABAAAAAMAAAAIAAAAAQAAAAcAAAAGAAAACQAAAAAAAAADAAAAAgAAAAIAAAAGAAAACgAAAAsAAAAAAAAAAQAAAAUAAAADAAAADQAAAAEAAAAHAAAABAAAAAwAAAAAAAAABAAAAH8AAAAPAAAACAAAAAMAAAAAAAAADAAAAAUAAAACAAAAEgAAAAoAAAAIAAAAAAAAABAAAAAGAAAADgAAAAsAAAARAAAAAQAAAAkAAAACAAAABwAAABUAAAAJAAAAEwAAAAMAAAANAAAAAQAAAAgAAAAFAAAAFgAAABAAAAAEAAAAAAAAAA8AAAAJAAAAEwAAAA4AAAAUAAAAAQAAAAcAAAAGAAAACgAAAAsAAAAYAAAAFwAAAAUAAAACAAAAEgAAAAsAAAARAAAAFwAAABkAAAACAAAABgAAAAoAAAAMAAAAHAAAAA0AAAAaAAAABAAAAA8AAAADAAAADQAAABoAAAAVAAAAHQAAAAMAAAAMAAAABwAAAA4AAAB/AAAAEQAAABsAAAAJAAAAFAAAAAYAAAAPAAAAFgAAABwAAAAfAAAABAAAAAgAAAAMAAAAEAAAABIAAAAhAAAAHgAAAAgAAAAFAAAAFgAAABEAAAALAAAADgAAAAYAAAAjAAAAGQAAABsAAAASAAAAGAAAAB4AAAAgAAAABQAAAAoAAAAQAAAAEwAAACIAAAAUAAAAJAAAAAcAAAAVAAAACQAAABQAAAAOAAAAEwAAAAkAAAAoAAAAGwAAACQAAAAVAAAAJgAAABMAAAAiAAAADQAAAB0AAAAHAAAAFgAAABAAAAApAAAAIQAAAA8AAAAIAAAAHwAAABcAAAAYAAAACwAAAAoAAAAnAAAAJQAAABkAAAAYAAAAfwAAACAAAAAlAAAACgAAABcAAAASAAAAGQAAABcAAAARAAAACwAAAC0AAAAnAAAAIwAAABoAAAAqAAAAHQAAACsAAAAMAAAAHAAAAA0AAAAbAAAAKAAAACMAAAAuAAAADgAAABQAAAARAAAAHAAAAB8AAAAqAAAALAAAAAwAAAAPAAAAGgAAAB0AAAArAAAAJgAAAC8AAAANAAAAGgAAABUAAAAeAAAAIAAAADAAAAAyAAAAEAAAABIAAAAhAAAAHwAAACkAAAAsAAAANQAAAA8AAAAWAAAAHAAAACAAAAAeAAAAGAAAABIAAAA0AAAAMgAAACUAAAAhAAAAHgAAADEAAAAwAAAAFgAAABAAAAApAAAAIgAAABMAAAAmAAAAFQAAADYAAAAkAAAAMwAAACMAAAAuAAAALQAAADgAAAARAAAAGwAAABkAAAAkAAAAFAAAACIAAAATAAAANwAAACgAAAA2AAAAJQAAACcAAAA0AAAAOQAAABgAAAAXAAAAIAAAACYAAAB/AAAAIgAAADMAAAAdAAAALwAAABUAAAAnAAAAJQAAABkAAAAXAAAAOwAAADkAAAAtAAAAKAAAABsAAAAkAAAAFAAAADwAAAAuAAAANwAAACkAAAAxAAAANQAAAD0AAAAWAAAAIQAAAB8AAAAqAAAAOgAAACsAAAA+AAAAHAAAACwAAAAaAAAAKwAAAD4AAAAvAAAAQAAAABoAAAAqAAAAHQAAACwAAAA1AAAAOgAAAEEAAAAcAAAAHwAAACoAAAAtAAAAJwAAACMAAAAZAAAAPwAAADsAAAA4AAAALgAAADwAAAA4AAAARAAAABsAAAAoAAAAIwAAAC8AAAAmAAAAKwAAAB0AAABFAAAAMwAAAEAAAAAwAAAAMQAAAB4AAAAhAAAAQwAAAEIAAAAyAAAAMQAAAH8AAAA9AAAAQgAAACEAAAAwAAAAKQAAADIAAAAwAAAAIAAAAB4AAABGAAAAQwAAADQAAAAzAAAARQAAADYAAABHAAAAJgAAAC8AAAAiAAAANAAAADkAAABGAAAASgAAACAAAAAlAAAAMgAAADUAAAA9AAAAQQAAAEsAAAAfAAAAKQAAACwAAAA2AAAARwAAADcAAABJAAAAIgAAADMAAAAkAAAANwAAACgAAAA2AAAAJAAAAEgAAAA8AAAASQAAADgAAABEAAAAPwAAAE0AAAAjAAAALgAAAC0AAAA5AAAAOwAAAEoAAABOAAAAJQAAACcAAAA0AAAAOgAAAH8AAAA+AAAATAAAACwAAABBAAAAKgAAADsAAAA/AAAATgAAAE8AAAAnAAAALQAAADkAAAA8AAAASAAAAEQAAABQAAAAKAAAADcAAAAuAAAAPQAAADUAAAAxAAAAKQAAAFEAAABLAAAAQgAAAD4AAAArAAAAOgAAACoAAABSAAAAQAAAAEwAAAA/AAAAfwAAADgAAAAtAAAATwAAADsAAABNAAAAQAAAAC8AAAA+AAAAKwAAAFQAAABFAAAAUgAAAEEAAAA6AAAANQAAACwAAABWAAAATAAAAEsAAABCAAAAQwAAAFEAAABVAAAAMQAAADAAAAA9AAAAQwAAAEIAAAAyAAAAMAAAAFcAAABVAAAARgAAAEQAAAA4AAAAPAAAAC4AAABaAAAATQAAAFAAAABFAAAAMwAAAEAAAAAvAAAAWQAAAEcAAABUAAAARgAAAEMAAAA0AAAAMgAAAFMAAABXAAAASgAAAEcAAABZAAAASQAAAFsAAAAzAAAARQAAADYAAABIAAAAfwAAAEkAAAA3AAAAUAAAADwAAABYAAAASQAAAFsAAABIAAAAWAAAADYAAABHAAAANwAAAEoAAABOAAAAUwAAAFwAAAA0AAAAOQAAAEYAAABLAAAAQQAAAD0AAAA1AAAAXgAAAFYAAABRAAAATAAAAFYAAABSAAAAYAAAADoAAABBAAAAPgAAAE0AAAA/AAAARAAAADgAAABdAAAATwAAAFoAAABOAAAASgAAADsAAAA5AAAAXwAAAFwAAABPAAAATwAAAE4AAAA/AAAAOwAAAF0AAABfAAAATQAAAFAAAABEAAAASAAAADwAAABjAAAAWgAAAFgAAABRAAAAVQAAAF4AAABlAAAAPQAAAEIAAABLAAAAUgAAAGAAAABUAAAAYgAAAD4AAABMAAAAQAAAAFMAAAB/AAAASgAAAEYAAABkAAAAVwAAAFwAAABUAAAARQAAAFIAAABAAAAAYQAAAFkAAABiAAAAVQAAAFcAAABlAAAAZgAAAEIAAABDAAAAUQAAAFYAAABMAAAASwAAAEEAAABoAAAAYAAAAF4AAABXAAAAUwAAAGYAAABkAAAAQwAAAEYAAABVAAAAWAAAAEgAAABbAAAASQAAAGMAAABQAAAAaQAAAFkAAABhAAAAWwAAAGcAAABFAAAAVAAAAEcAAABaAAAATQAAAFAAAABEAAAAagAAAF0AAABjAAAAWwAAAEkAAABZAAAARwAAAGkAAABYAAAAZwAAAFwAAABTAAAATgAAAEoAAABsAAAAZAAAAF8AAABdAAAATwAAAFoAAABNAAAAbQAAAF8AAABqAAAAXgAAAFYAAABRAAAASwAAAGsAAABoAAAAZQAAAF8AAABcAAAATwAAAE4AAABtAAAAbAAAAF0AAABgAAAAaAAAAGIAAABuAAAATAAAAFYAAABSAAAAYQAAAH8AAABiAAAAVAAAAGcAAABZAAAAbwAAAGIAAABuAAAAYQAAAG8AAABSAAAAYAAAAFQAAABjAAAAUAAAAGkAAABYAAAAagAAAFoAAABxAAAAZAAAAGYAAABTAAAAVwAAAGwAAAByAAAAXAAAAGUAAABmAAAAawAAAHAAAABRAAAAVQAAAF4AAABmAAAAZQAAAFcAAABVAAAAcgAAAHAAAABkAAAAZwAAAFsAAABhAAAAWQAAAHQAAABpAAAAbwAAAGgAAABrAAAAbgAAAHMAAABWAAAAXgAAAGAAAABpAAAAWAAAAGcAAABbAAAAcQAAAGMAAAB0AAAAagAAAF0AAABjAAAAWgAAAHUAAABtAAAAcQAAAGsAAAB/AAAAZQAAAF4AAABzAAAAaAAAAHAAAABsAAAAZAAAAF8AAABcAAAAdgAAAHIAAABtAAAAbQAAAGwAAABdAAAAXwAAAHUAAAB2AAAAagAAAG4AAABiAAAAaAAAAGAAAAB3AAAAbwAAAHMAAABvAAAAYQAAAG4AAABiAAAAdAAAAGcAAAB3AAAAcAAAAGsAAABmAAAAZQAAAHgAAABzAAAAcgAAAHEAAABjAAAAdAAAAGkAAAB1AAAAagAAAHkAAAByAAAAcAAAAGQAAABmAAAAdgAAAHgAAABsAAAAcwAAAG4AAABrAAAAaAAAAHgAAAB3AAAAcAAAAHQAAABnAAAAdwAAAG8AAABxAAAAaQAAAHkAAAB1AAAAfwAAAG0AAAB2AAAAcQAAAHkAAABqAAAAdgAAAHgAAABsAAAAcgAAAHUAAAB5AAAAbQAAAHcAAABvAAAAcwAAAG4AAAB5AAAAdAAAAHgAAAB4AAAAcwAAAHIAAABwAAAAeQAAAHcAAAB2AAAAeQAAAHQAAAB4AAAAdwAAAHUAAABxAAAAdgAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAEAAAAFAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAIAAAAFAAAAAQAAAAAAAAD/////AQAAAAAAAAADAAAABAAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAwAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAUAAAABAAAAAAAAAAAAAAABAAAAAwAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAMAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAMAAAAFAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAQAAAAFAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAUAAAAFAAAAAAAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAABAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAABAAAAAwAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAwAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAADAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAUAAAAFAAAAAAAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAADAAAAAAAAAAAAAAABAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAD/////AwAAAAAAAAAFAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAD/////AwAAAAAAAAAFAAAAAgAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAwAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAADAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAwAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAP////8DAAAAAAAAAAUAAAACAAAAAAAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAUAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAADAAAAAQAAAAAAAAABAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAABQAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAD/////AwAAAAAAAAAFAAAAAgAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAQAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAADAAAAAAAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAMAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAAAAAADAAAABQAAAAEAAAAAAAAA/////wMAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAEAAAABQAAAAEAAAAAAAAAAwAAAAMAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAUAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAMAAAABAAAAAAAAAAEAAAAAAAAABQAAAAAAAAAAAAAABQAAAAUAAAAAAAAAAAAAAP////8BAAAAAAAAAAMAAAAEAAAAAgAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAUAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAABQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAQAAAP//////////AQAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAIAAAAAAAAAAAAAAAEAAAACAAAABgAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAoAAAACAAAAAAAAAAAAAAABAAAAAQAAAAUAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAEAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAIAAAAAAAAAAAAAAAEAAAADAAAABwAAAAYAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAHAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAABAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAOAAAAAgAAAAAAAAAAAAAAAQAAAAAAAAAJAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAwAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAAAgAAAAAAAAAAAAAAAQAAAAQAAAAIAAAACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAJAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAACAAAAAAAAAAAAAAABAAAACwAAAA8AAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA4AAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAFAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAACAAAAAAAAAAAAAAABAAAADAAAABAAAAAMAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAANAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAIAAAAAAAAAAAAAAAEAAAAKAAAAEwAAAAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAEAAAABAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAABAAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAJAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAAAAAAAAQAAAA0AAAARAAAADQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAATAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABMAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAIAAAAAAAAAAAAAAAEAAAAOAAAAEgAAAA8AAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAABIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAATAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAEQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAABMAAAACAAAAAAAAAAAAAAABAAAA//////////8TAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAASAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABIAAAAAAAAAGAAAAAAAAAAhAAAAAAAAAB4AAAAAAAAAIAAAAAMAAAAxAAAAAQAAADAAAAADAAAAMgAAAAMAAAAIAAAAAAAAAAUAAAAFAAAACgAAAAUAAAAWAAAAAAAAABAAAAAAAAAAEgAAAAAAAAApAAAAAQAAACEAAAAAAAAAHgAAAAAAAAAEAAAAAAAAAAAAAAAFAAAAAgAAAAUAAAAPAAAAAQAAAAgAAAAAAAAABQAAAAUAAAAfAAAAAQAAABYAAAAAAAAAEAAAAAAAAAACAAAAAAAAAAYAAAAAAAAADgAAAAAAAAAKAAAAAAAAAAsAAAAAAAAAEQAAAAMAAAAYAAAAAQAAABcAAAADAAAAGQAAAAMAAAAAAAAAAAAAAAEAAAAFAAAACQAAAAUAAAAFAAAAAAAAAAIAAAAAAAAABgAAAAAAAAASAAAAAQAAAAoAAAAAAAAACwAAAAAAAAAEAAAAAQAAAAMAAAAFAAAABwAAAAUAAAAIAAAAAQAAAAAAAAAAAAAAAQAAAAUAAAAQAAAAAQAAAAUAAAAAAAAAAgAAAAAAAAAHAAAAAAAAABUAAAAAAAAAJgAAAAAAAAAJAAAAAAAAABMAAAAAAAAAIgAAAAMAAAAOAAAAAQAAABQAAAADAAAAJAAAAAMAAAADAAAAAAAAAA0AAAAFAAAAHQAAAAUAAAABAAAAAAAAAAcAAAAAAAAAFQAAAAAAAAAGAAAAAQAAAAkAAAAAAAAAEwAAAAAAAAAEAAAAAgAAAAwAAAAFAAAAGgAAAAUAAAAAAAAAAQAAAAMAAAAAAAAADQAAAAUAAAACAAAAAQAAAAEAAAAAAAAABwAAAAAAAAAaAAAAAAAAACoAAAAAAAAAOgAAAAAAAAAdAAAAAAAAACsAAAAAAAAAPgAAAAMAAAAmAAAAAQAAAC8AAAADAAAAQAAAAAMAAAAMAAAAAAAAABwAAAAFAAAALAAAAAUAAAANAAAAAAAAABoAAAAAAAAAKgAAAAAAAAAVAAAAAQAAAB0AAAAAAAAAKwAAAAAAAAAEAAAAAwAAAA8AAAAFAAAAHwAAAAUAAAADAAAAAQAAAAwAAAAAAAAAHAAAAAUAAAAHAAAAAQAAAA0AAAAAAAAAGgAAAAAAAAAfAAAAAAAAACkAAAAAAAAAMQAAAAAAAAAsAAAAAAAAADUAAAAAAAAAPQAAAAMAAAA6AAAAAQAAAEEAAAADAAAASwAAAAMAAAAPAAAAAAAAABYAAAAFAAAAIQAAAAUAAAAcAAAAAAAAAB8AAAAAAAAAKQAAAAAAAAAqAAAAAQAAACwAAAAAAAAANQAAAAAAAAAEAAAABAAAAAgAAAAFAAAAEAAAAAUAAAAMAAAAAQAAAA8AAAAAAAAAFgAAAAUAAAAaAAAAAQAAABwAAAAAAAAAHwAAAAAAAAAyAAAAAAAAADAAAAAAAAAAMQAAAAMAAAAgAAAAAAAAAB4AAAADAAAAIQAAAAMAAAAYAAAAAwAAABIAAAADAAAAEAAAAAMAAABGAAAAAAAAAEMAAAAAAAAAQgAAAAMAAAA0AAAAAwAAADIAAAAAAAAAMAAAAAAAAAAlAAAAAwAAACAAAAAAAAAAHgAAAAMAAABTAAAAAAAAAFcAAAADAAAAVQAAAAMAAABKAAAAAwAAAEYAAAAAAAAAQwAAAAAAAAA5AAAAAQAAADQAAAADAAAAMgAAAAAAAAAZAAAAAAAAABcAAAAAAAAAGAAAAAMAAAARAAAAAAAAAAsAAAADAAAACgAAAAMAAAAOAAAAAwAAAAYAAAADAAAAAgAAAAMAAAAtAAAAAAAAACcAAAAAAAAAJQAAAAMAAAAjAAAAAwAAABkAAAAAAAAAFwAAAAAAAAAbAAAAAwAAABEAAAAAAAAACwAAAAMAAAA/AAAAAAAAADsAAAADAAAAOQAAAAMAAAA4AAAAAwAAAC0AAAAAAAAAJwAAAAAAAAAuAAAAAwAAACMAAAADAAAAGQAAAAAAAAAkAAAAAAAAABQAAAAAAAAADgAAAAMAAAAiAAAAAAAAABMAAAADAAAACQAAAAMAAAAmAAAAAwAAABUAAAADAAAABwAAAAMAAAA3AAAAAAAAACgAAAAAAAAAGwAAAAMAAAA2AAAAAwAAACQAAAAAAAAAFAAAAAAAAAAzAAAAAwAAACIAAAAAAAAAEwAAAAMAAABIAAAAAAAAADwAAAADAAAALgAAAAMAAABJAAAAAwAAADcAAAAAAAAAKAAAAAAAAABHAAAAAwAAADYAAAADAAAAJAAAAAAAAABAAAAAAAAAAC8AAAAAAAAAJgAAAAMAAAA+AAAAAAAAACsAAAADAAAAHQAAAAMAAAA6AAAAAwAAACoAAAADAAAAGgAAAAMAAABUAAAAAAAAAEUAAAAAAAAAMwAAAAMAAABSAAAAAwAAAEAAAAAAAAAALwAAAAAAAABMAAAAAwAAAD4AAAAAAAAAKwAAAAMAAABhAAAAAAAAAFkAAAADAAAARwAAAAMAAABiAAAAAwAAAFQAAAAAAAAARQAAAAAAAABgAAAAAwAAAFIAAAADAAAAQAAAAAAAAABLAAAAAAAAAEEAAAAAAAAAOgAAAAMAAAA9AAAAAAAAADUAAAADAAAALAAAAAMAAAAxAAAAAwAAACkAAAADAAAAHwAAAAMAAABeAAAAAAAAAFYAAAAAAAAATAAAAAMAAABRAAAAAwAAAEsAAAAAAAAAQQAAAAAAAABCAAAAAwAAAD0AAAAAAAAANQAAAAMAAABrAAAAAAAAAGgAAAADAAAAYAAAAAMAAABlAAAAAwAAAF4AAAAAAAAAVgAAAAAAAABVAAAAAwAAAFEAAAADAAAASwAAAAAAAAA5AAAAAAAAADsAAAAAAAAAPwAAAAMAAABKAAAAAAAAAE4AAAADAAAATwAAAAMAAABTAAAAAwAAAFwAAAADAAAAXwAAAAMAAAAlAAAAAAAAACcAAAADAAAALQAAAAMAAAA0AAAAAAAAADkAAAAAAAAAOwAAAAAAAABGAAAAAwAAAEoAAAAAAAAATgAAAAMAAAAYAAAAAAAAABcAAAADAAAAGQAAAAMAAAAgAAAAAwAAACUAAAAAAAAAJwAAAAMAAAAyAAAAAwAAADQAAAAAAAAAOQAAAAAAAAAuAAAAAAAAADwAAAAAAAAASAAAAAMAAAA4AAAAAAAAAEQAAAADAAAAUAAAAAMAAAA/AAAAAwAAAE0AAAADAAAAWgAAAAMAAAAbAAAAAAAAACgAAAADAAAANwAAAAMAAAAjAAAAAAAAAC4AAAAAAAAAPAAAAAAAAAAtAAAAAwAAADgAAAAAAAAARAAAAAMAAAAOAAAAAAAAABQAAAADAAAAJAAAAAMAAAARAAAAAwAAABsAAAAAAAAAKAAAAAMAAAAZAAAAAwAAACMAAAAAAAAALgAAAAAAAABHAAAAAAAAAFkAAAAAAAAAYQAAAAMAAABJAAAAAAAAAFsAAAADAAAAZwAAAAMAAABIAAAAAwAAAFgAAAADAAAAaQAAAAMAAAAzAAAAAAAAAEUAAAADAAAAVAAAAAMAAAA2AAAAAAAAAEcAAAAAAAAAWQAAAAAAAAA3AAAAAwAAAEkAAAAAAAAAWwAAAAMAAAAmAAAAAAAAAC8AAAADAAAAQAAAAAMAAAAiAAAAAwAAADMAAAAAAAAARQAAAAMAAAAkAAAAAwAAADYAAAAAAAAARwAAAAAAAABgAAAAAAAAAGgAAAAAAAAAawAAAAMAAABiAAAAAAAAAG4AAAADAAAAcwAAAAMAAABhAAAAAwAAAG8AAAADAAAAdwAAAAMAAABMAAAAAAAAAFYAAAADAAAAXgAAAAMAAABSAAAAAAAAAGAAAAAAAAAAaAAAAAAAAABUAAAAAwAAAGIAAAAAAAAAbgAAAAMAAAA6AAAAAAAAAEEAAAADAAAASwAAAAMAAAA+AAAAAwAAAEwAAAAAAAAAVgAAAAMAAABAAAAAAwAAAFIAAAAAAAAAYAAAAAAAAABVAAAAAAAAAFcAAAAAAAAAUwAAAAMAAABlAAAAAAAAAGYAAAADAAAAZAAAAAMAAABrAAAAAwAAAHAAAAADAAAAcgAAAAMAAABCAAAAAAAAAEMAAAADAAAARgAAAAMAAABRAAAAAAAAAFUAAAAAAAAAVwAAAAAAAABeAAAAAwAAAGUAAAAAAAAAZgAAAAMAAAAxAAAAAAAAADAAAAADAAAAMgAAAAMAAAA9AAAAAwAAAEIAAAAAAAAAQwAAAAMAAABLAAAAAwAAAFEAAAAAAAAAVQAAAAAAAABfAAAAAAAAAFwAAAAAAAAAUwAAAAAAAABPAAAAAAAAAE4AAAAAAAAASgAAAAMAAAA/AAAAAQAAADsAAAADAAAAOQAAAAMAAABtAAAAAAAAAGwAAAAAAAAAZAAAAAUAAABdAAAAAQAAAF8AAAAAAAAAXAAAAAAAAABNAAAAAQAAAE8AAAAAAAAATgAAAAAAAAB1AAAABAAAAHYAAAAFAAAAcgAAAAUAAABqAAAAAQAAAG0AAAAAAAAAbAAAAAAAAABaAAAAAQAAAF0AAAABAAAAXwAAAAAAAABaAAAAAAAAAE0AAAAAAAAAPwAAAAAAAABQAAAAAAAAAEQAAAAAAAAAOAAAAAMAAABIAAAAAQAAADwAAAADAAAALgAAAAMAAABqAAAAAAAAAF0AAAAAAAAATwAAAAUAAABjAAAAAQAAAFoAAAAAAAAATQAAAAAAAABYAAAAAQAAAFAAAAAAAAAARAAAAAAAAAB1AAAAAwAAAG0AAAAFAAAAXwAAAAUAAABxAAAAAQAAAGoAAAAAAAAAXQAAAAAAAABpAAAAAQAAAGMAAAABAAAAWgAAAAAAAABpAAAAAAAAAFgAAAAAAAAASAAAAAAAAABnAAAAAAAAAFsAAAAAAAAASQAAAAMAAABhAAAAAQAAAFkAAAADAAAARwAAAAMAAABxAAAAAAAAAGMAAAAAAAAAUAAAAAUAAAB0AAAAAQAAAGkAAAAAAAAAWAAAAAAAAABvAAAAAQAAAGcAAAAAAAAAWwAAAAAAAAB1AAAAAgAAAGoAAAAFAAAAWgAAAAUAAAB5AAAAAQAAAHEAAAAAAAAAYwAAAAAAAAB3AAAAAQAAAHQAAAABAAAAaQAAAAAAAAB3AAAAAAAAAG8AAAAAAAAAYQAAAAAAAABzAAAAAAAAAG4AAAAAAAAAYgAAAAMAAABrAAAAAQAAAGgAAAADAAAAYAAAAAMAAAB5AAAAAAAAAHQAAAAAAAAAZwAAAAUAAAB4AAAAAQAAAHcAAAAAAAAAbwAAAAAAAABwAAAAAQAAAHMAAAAAAAAAbgAAAAAAAAB1AAAAAQAAAHEAAAAFAAAAaQAAAAUAAAB2AAAAAQAAAHkAAAAAAAAAdAAAAAAAAAByAAAAAQAAAHgAAAABAAAAdwAAAAAAAAByAAAAAAAAAHAAAAAAAAAAawAAAAAAAABkAAAAAAAAAGYAAAAAAAAAZQAAAAMAAABTAAAAAQAAAFcAAAADAAAAVQAAAAMAAAB2AAAAAAAAAHgAAAAAAAAAcwAAAAUAAABsAAAAAQAAAHIAAAAAAAAAcAAAAAAAAABcAAAAAQAAAGQAAAAAAAAAZgAAAAAAAAB1AAAAAAAAAHkAAAAFAAAAdwAAAAUAAABtAAAAAQAAAHYAAAAAAAAAeAAAAAAAAABfAAAAAQAAAGwAAAABAAAAcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAAAAAAAAAAABAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAB+ogX28rbpPxqumpJv+fM/165tC4ns9D+XaEnTqUsEQFrOtNlC4PA/3U+0XG6P9b9TdUUBxTTjP4PUp8ex1ty/B1rD/EN43z+lcDi6LLrZP/a45NWEHMY/oJ5ijLDZ+j/xw3rjxWPjP2B8A46ioQdAotff3wla2z+FMSpA1jj+v6b5Y1mtPbS/cIu8K0F457/2esiyJpDNv98k5Ts2NeA/pvljWa09tD88ClUJ60MDQPZ6yLImkM0/4ONKxa0UBcD2uOTVhBzGv5G7JRxGave/8cN648Vj47+HCwtkjAXIv6LX398JWtu/qyheaCAL9D9TdUUBxTTjv4gyTxslhwVAB1rD/EN4378EH/28teoFwH6iBfbytum/F6ztFYdK/r/Xrm0Liez0vwcS6wNGWeO/Ws602ULg8L9TCtRLiLT8P8pi5RexJsw/BlIKPVwR5T95Wyu0/QjnP5PjoT7YYcu/mBhKZ6zrwj8wRYS7NebuP3qW6geh+Ls/SLrixebL3r+pcyymN9XrPwmkNHp7xec/GWNMZVAA17+82s+x2BLiPwn2ytbJ9ek/LgEH1sMS1j8yp/2LhTfeP+SnWwtQBbu/d38gkp5X7z8ytsuHaADGPzUYObdf1+m/7IauECWhwz+cjSACjzniP76Z+wUhN9K/1+GEKzup67+/GYr/04baPw6idWOvsuc/ZedTWsRa5b/EJQOuRzi0v/OncYhHPes/h49PixY53j+i8wWfC03Nvw2idWOvsue/ZedTWsRa5T/EJQOuRzi0P/KncYhHPeu/iY9PixY53r+i8wWfC03NP9anWwtQBbs/d38gkp5X778ytsuHaADGvzUYObdf1+k/74auECWhw7+cjSACjzniv8CZ+wUhN9I/1uGEKzup6z+/GYr/04bavwmkNHp7xee/F2NMZVAA1z+82s+x2BLivwr2ytbJ9em/KwEH1sMS1r8yp/2LhTfev81i5RexJsy/BlIKPVwR5b95Wyu0/Qjnv5DjoT7YYcs/nBhKZ6zrwr8wRYS7Nebuv3OW6geh+Lu/SLrixebL3j+pcyymN9Xrv8rHIFfWehZAMBwUdlo0DECTUc17EOb2PxpVB1SWChdAzjbhb9pTDUDQhmdvECX5P9FlMKCC9+g/IIAzjELgE0DajDngMv8GQFhWDmDPjNs/y1guLh96EkAxPi8k7DIEQJCc4URlhRhA3eLKKLwkEECqpNAyTBD/P6xpjXcDiwVAFtl//cQm4z+Ibt3XKiYTQM7mCLUb3QdAoM1t8yVv7D8aLZv2Nk8UQEAJPV5nQwxAtSsfTCoE9z9TPjXLXIIWQBVanC5W9AtAYM3d7Adm9j++5mQz1FoWQBUThyaVBghAwH5muQsV7T89Q1qv82MUQJoWGOfNuBdAzrkClkmwDkDQjKq77t37Py+g0dtitsE/ZwAMTwVPEUBojepluNwBQGYbtuW+t9w/HNWIJs6MEkDTNuQUSlgEQKxktPP5TcQ/ixbLB8JjEUCwuWjXMQYCQAS/R09FkRdAowpiZjhhDkB7LmlczD/7P01iQmhhsAVAnrtTwDy84z/Z6jfQ2TgTQChOCXMnWwpAhrW3daoz8z/HYJvVPI4VQLT3ik5FcA5Angi7LOZd+z+NNVzDy5gXQBXdvVTFUA1AYNMgOeYe+T8+qHXGCwkXQKQTOKwa5AJA8gFVoEMW0T+FwzJyttIRQAEAAAD/////BwAAAP////8xAAAA/////1cBAAD/////YQkAAP////+nQQAA/////5HLAQD/////95AMAP/////B9lcAAAAAAAAAAAAAAAAAAgAAAP////8OAAAA/////2IAAAD/////rgIAAP/////CEgAA/////06DAAD/////IpcDAP/////uIRkA/////4LtrwAAAAAAAAAAAAAAAAAAAAAAAgAAAP//////////AQAAAAMAAAD//////////////////////////////////////////////////////////////////////////wEAAAAAAAAAAgAAAP///////////////wMAAAD//////////////////////////////////////////////////////////////////////////wEAAAAAAAAAAgAAAP///////////////wMAAAD//////////////////////////////////////////////////////////////////////////wEAAAAAAAAAAgAAAP///////////////wMAAAD//////////////////////////////////////////////////////////wIAAAD//////////wEAAAAAAAAA/////////////////////wMAAAD/////////////////////////////////////////////////////AwAAAP////////////////////8AAAAA/////////////////////wEAAAD///////////////8CAAAA////////////////////////////////AwAAAP////////////////////8AAAAA////////////////AgAAAAEAAAD/////////////////////////////////////////////////////AwAAAP////////////////////8AAAAA////////////////AgAAAAEAAAD/////////////////////////////////////////////////////AwAAAP////////////////////8AAAAA////////////////AgAAAAEAAAD/////////////////////////////////////////////////////AwAAAP////////////////////8AAAAA////////////////AgAAAAEAAAD/////////////////////////////////////////////////////AQAAAAIAAAD///////////////8AAAAA/////////////////////wMAAAD/////////////////////////////////////////////////////AQAAAAIAAAD///////////////8AAAAA/////////////////////wMAAAD/////////////////////////////////////////////////////AQAAAAIAAAD///////////////8AAAAA/////////////////////wMAAAD/////////////////////////////////////////////////////AQAAAAIAAAD///////////////8AAAAA/////////////////////wMAAAD///////////////////////////////8CAAAA////////////////AQAAAP////////////////////8AAAAA/////////////////////wMAAAD/////////////////////////////////////////////////////AwAAAP////////////////////8AAAAAAQAAAP//////////AgAAAP//////////////////////////////////////////////////////////AwAAAP///////////////wIAAAAAAAAAAQAAAP//////////////////////////////////////////////////////////////////////////AwAAAP///////////////wIAAAAAAAAAAQAAAP//////////////////////////////////////////////////////////////////////////AwAAAP///////////////wIAAAAAAAAAAQAAAP//////////////////////////////////////////////////////////////////////////AwAAAAEAAAD//////////wIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAgAAAAAAAAACAAAAAQAAAAEAAAACAAAAAgAAAAAAAAAFAAAABQAAAAAAAAACAAAAAgAAAAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAIAAAABAAAAAgAAAAIAAAACAAAAAAAAAAUAAAAGAAAAAAAAAAIAAAACAAAAAwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAAAAAAAAgAAAAEAAAADAAAAAgAAAAIAAAAAAAAABQAAAAcAAAAAAAAAAgAAAAIAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAAAAAACAAAAAQAAAAQAAAACAAAAAgAAAAAAAAAFAAAACAAAAAAAAAACAAAAAgAAAAMAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAACAAAAAAAAAAIAAAABAAAAAAAAAAIAAAACAAAAAAAAAAUAAAAJAAAAAAAAAAIAAAACAAAAAwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAIAAAACAAAAAAAAAAMAAAAOAAAAAgAAAAAAAAACAAAAAwAAAAAAAAAAAAAAAgAAAAIAAAADAAAABgAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAgAAAAIAAAAAAAAAAwAAAAoAAAACAAAAAAAAAAIAAAADAAAAAQAAAAAAAAACAAAAAgAAAAMAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAACAAAAAgAAAAAAAAADAAAACwAAAAIAAAAAAAAAAgAAAAMAAAACAAAAAAAAAAIAAAACAAAAAwAAAAgAAAAAAAAAAAAAAAAAAAAAAAAADQAAAAIAAAACAAAAAAAAAAMAAAAMAAAAAgAAAAAAAAACAAAAAwAAAAMAAAAAAAAAAgAAAAIAAAADAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAgAAAAIAAAAAAAAAAwAAAA0AAAACAAAAAAAAAAIAAAADAAAABAAAAAAAAAACAAAAAgAAAAMAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAACAAAAAgAAAAAAAAADAAAABgAAAAIAAAAAAAAAAgAAAAMAAAAPAAAAAAAAAAIAAAACAAAAAwAAAAsAAAAAAAAAAAAAAAAAAAAAAAAABgAAAAIAAAACAAAAAAAAAAMAAAAHAAAAAgAAAAAAAAACAAAAAwAAABAAAAAAAAAAAgAAAAIAAAADAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAgAAAAIAAAAAAAAAAwAAAAgAAAACAAAAAAAAAAIAAAADAAAAEQAAAAAAAAACAAAAAgAAAAMAAAANAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAACAAAAAgAAAAAAAAADAAAACQAAAAIAAAAAAAAAAgAAAAMAAAASAAAAAAAAAAIAAAACAAAAAwAAAA4AAAAAAAAAAAAAAAAAAAAAAAAACQAAAAIAAAACAAAAAAAAAAMAAAAFAAAAAgAAAAAAAAACAAAAAwAAABMAAAAAAAAAAgAAAAIAAAADAAAADwAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAgAAAAAAAAACAAAAAQAAABMAAAACAAAAAgAAAAAAAAAFAAAACgAAAAAAAAACAAAAAgAAAAMAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABEAAAACAAAAAAAAAAIAAAABAAAADwAAAAIAAAACAAAAAAAAAAUAAAALAAAAAAAAAAIAAAACAAAAAwAAABEAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAIAAAAAAAAAAgAAAAEAAAAQAAAAAgAAAAIAAAAAAAAABQAAAAwAAAAAAAAAAgAAAAIAAAADAAAAEgAAAAAAAAAAAAAAAAAAAAAAAAATAAAAAgAAAAAAAAACAAAAAQAAABEAAAACAAAAAgAAAAAAAAAFAAAADQAAAAAAAAACAAAAAgAAAAMAAAATAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAACAAAAAAAAAAIAAAABAAAAEgAAAAIAAAACAAAAAAAAAAUAAAAOAAAAAAAAAAIAAAACAAAAAwAAAAIAAAABAAAAAAAAAAEAAAACAAAAAAAAAAAAAAACAAAAAQAAAAAAAAABAAAAAgAAAAEAAAAAAAAAAgAAAAAAAAAFAAAABAAAAAAAAAABAAAABQAAAAAAAAAAAAAABQAAAAQAAAAAAAAAAQAAAAUAAAAEAAAAAAAAAAUAAAAAAAAAAgAAAAEAAAAAAAAAAQAAAAIAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAEAAAACAAAAAQAAAAAAAAACAAAAAgAAAAAAAAABAAAAAAAAAAAAAAAFAAAABAAAAAAAAAABAAAABQAAAAAAAAAAAAAABQAAAAQAAAAAAAAAAQAAAAUAAAAEAAAAAAAAAAUAAAAFAAAAAAAAAAEAAAAAAAAAAAAAAMuhRbbsNlBBYqHW9OmHIkF9XBuqnS31QAK37uYhNMhAOSo3UUupm0DC+6pc6JxvQHV9eseEEEJAzURsCyqlFEB8BQ4NMJjnPyy3tBoS97o/xawXQznRjj89J2K2CZxhP6vX43RIIDQ/S8isgygEBz+LvFHQkmzaPjFFFO7wMq4+AADMLkTtjkIAAOgkJqxhQgAAU7B0MjRCAADwpBcVB0IAAACYP2HaQQAAAIn/Ja5BzczM4Eg6gUHNzMxMU7BTQTMzMzNfgCZBAAAAAEi3+UAAAAAAwGPNQDMzMzMzy6BAmpmZmZkxc0AzMzMzM/NFQDMzMzMzMxlAzczMzMzM7D+ygXSx2U6RQKimJOvQKnpA23hmONTHY0A/AGcxyudNQNb3K647mzZA+S56rrwWIUAm4kUQ+9UJQKre9hGzh/M/BLvoy9WG3T+LmqMf8VHGP2m3nYNV37A/gbFHcyeCmT+cBPWBckiDP61tZACjKW0/q2RbYVUYVj8uDypVyLNAP6jGS5cA5zBBwcqhBdCNGUEGEhQ/JVEDQT6WPnRbNO1AB/AWSJgT1kDfUWNCNLDAQNk+5C33OqlAchWL34QSk0DKvtDIrNV8QNF0G3kFzGVASSeWhBl6UED+/0mNGuk4QGjA/dm/1CJALPLPMql6DEDSHoDrwpP1P2jouzWST+A/egAAAAAAAABKAwAAAAAAAPoWAAAAAAAAyqAAAAAAAAB6ZQQAAAAAAErGHgAAAAAA+mvXAAAAAADK8+MFAAAAAHqqOykAAAAASqmhIAEAAAD6oGvkBwAAAMpm8T43AAAAes+ZuIIBAABKrDQMkwoAAPq1cFUFSgAAyvkUViUGAgAAAAAAAwAAAAYAAAACAAAABQAAAAEAAAAEAAAAAAAAAAAAAAAFAAAAAwAAAAEAAAAGAAAABAAAAAIAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAP////////////////////////////////////8AAAAA/////wAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAP////8AAAAAAAAAAAEAAAABAAAAAAAAAAAAAAD/////AAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAA/////wUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////AAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////////////////////////////////////wAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAUAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////////////////////////////8AAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAAAAAAAAAAABAAAAAQAAAAEAAAAAAAAAAQAAAAAAAAAFAAAAAQAAAAEAAAAAAAAAAAAAAAEAAAABAAAAAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAAAAAABAAEAAAEBAAAAAAABAAAAAQAAAAEAAQAAAAAAAAAAAAAAAAAAAABhbGdvcy5jAHBvbHlmaWxsAGFkamFjZW50RmFjZURpclt0bXBGaWprLmZhY2VdW2ZpamsuZmFjZV0gPT0gS0kAZmFjZWlqay5jAF9mYWNlSWprUGVudFRvR2VvQm91bmRhcnkAYWRqYWNlbnRGYWNlRGlyW2NlbnRlcklKSy5mYWNlXVtmYWNlMl0gPT0gS0kAX2ZhY2VJamtUb0dlb0JvdW5kYXJ5AHBvbHlnb24tPm5leHQgPT0gTlVMTABsaW5rZWRHZW8uYwBhZGROZXdMaW5rZWRQb2x5Z29uAG5leHQgIT0gTlVMTABsb29wICE9IE5VTEwAYWRkTmV3TGlua2VkTG9vcABwb2x5Z29uLT5maXJzdCA9PSBOVUxMAGFkZExpbmtlZExvb3AAY29vcmQgIT0gTlVMTABhZGRMaW5rZWRDb29yZABsb29wLT5maXJzdCA9PSBOVUxMAGlubmVyTG9vcHMgIT0gTlVMTABub3JtYWxpemVNdWx0aVBvbHlnb24AYmJveGVzICE9IE5VTEwAY2FuZGlkYXRlcyAhPSBOVUxMAGZpbmRQb2x5Z29uRm9ySG9sZQBjYW5kaWRhdGVCQm94ZXMgIT0gTlVMTAByZXZEaXIgIT0gSU5WQUxJRF9ESUdJVABsb2NhbGlqLmMAaDNUb0xvY2FsSWprAGJhc2VDZWxsICE9IG9yaWdpbkJhc2VDZWxsACEob3JpZ2luT25QZW50ICYmIGluZGV4T25QZW50KQBwZW50YWdvblJvdGF0aW9ucyA+PSAwAGRpcmVjdGlvblJvdGF0aW9ucyA+PSAwAGJhc2VDZWxsID09IG9yaWdpbkJhc2VDZWxsAGJhc2VDZWxsICE9IElOVkFMSURfQkFTRV9DRUxMAGxvY2FsSWprVG9IMwAhX2lzQmFzZUNlbGxQZW50YWdvbihiYXNlQ2VsbCkAYmFzZUNlbGxSb3RhdGlvbnMgPj0gMAB3aXRoaW5QZW50YWdvblJvdGF0aW9ucyA+PSAwAGdyYXBoLT5idWNrZXRzICE9IE5VTEwAdmVydGV4R3JhcGguYwBpbml0VmVydGV4R3JhcGgAbm9kZSAhPSBOVUxMAGFkZFZlcnRleE5vZGU=";
|
489 | var tempDoublePtr = 23680;
|
490 |
|
491 | function demangle(func) {
|
492 | return func;
|
493 | }
|
494 |
|
495 | function demangleAll(text) {
|
496 | var regex = /\b__Z[\w\d_]+/g;
|
497 | return text.replace(regex, function (x) {
|
498 | var y = demangle(x);
|
499 | return x === y ? x : y + " [" + x + "]";
|
500 | });
|
501 | }
|
502 |
|
503 | function jsStackTrace() {
|
504 | var err = new Error();
|
505 |
|
506 | if (!err.stack) {
|
507 | try {
|
508 | throw new Error(0);
|
509 | } catch (e) {
|
510 | err = e;
|
511 | }
|
512 |
|
513 | if (!err.stack) {
|
514 | return "(no stack trace available)";
|
515 | }
|
516 | }
|
517 |
|
518 | return err.stack.toString();
|
519 | }
|
520 |
|
521 | function stackTrace() {
|
522 | var js = jsStackTrace();
|
523 | if (Module["extraStackTrace"]) { js += "\n" + Module["extraStackTrace"](); }
|
524 | return demangleAll(js);
|
525 | }
|
526 |
|
527 | function ___assert_fail(condition, filename, line, func) {
|
528 | abort("Assertion failed: " + UTF8ToString(condition) + ", at: " + [filename ? UTF8ToString(filename) : "unknown filename", line, func ? UTF8ToString(func) : "unknown function"]);
|
529 | }
|
530 |
|
531 | function _emscripten_get_heap_size() {
|
532 | return HEAP8.length;
|
533 | }
|
534 |
|
535 | function _emscripten_memcpy_big(dest, src, num) {
|
536 | HEAPU8.set(HEAPU8.subarray(src, src + num), dest);
|
537 | }
|
538 |
|
539 | function ___setErrNo(value) {
|
540 | if (Module["___errno_location"]) { HEAP32[Module["___errno_location"]() >> 2] = value; }
|
541 | return value;
|
542 | }
|
543 |
|
544 | function abortOnCannotGrowMemory(requestedSize) {
|
545 | abort("OOM");
|
546 | }
|
547 |
|
548 | function emscripten_realloc_buffer(size) {
|
549 | try {
|
550 | var newBuffer = new ArrayBuffer(size);
|
551 | if (newBuffer.byteLength != size) { return; }
|
552 | new Int8Array(newBuffer).set(HEAP8);
|
553 |
|
554 | _emscripten_replace_memory(newBuffer);
|
555 |
|
556 | updateGlobalBufferAndViews(newBuffer);
|
557 | return 1;
|
558 | } catch (e) {}
|
559 | }
|
560 |
|
561 | function _emscripten_resize_heap(requestedSize) {
|
562 | var oldSize = _emscripten_get_heap_size();
|
563 |
|
564 | var PAGE_MULTIPLE = 16777216;
|
565 | var LIMIT = 2147483648 - PAGE_MULTIPLE;
|
566 |
|
567 | if (requestedSize > LIMIT) {
|
568 | return false;
|
569 | }
|
570 |
|
571 | var MIN_TOTAL_MEMORY = 16777216;
|
572 | var newSize = Math.max(oldSize, MIN_TOTAL_MEMORY);
|
573 |
|
574 | while (newSize < requestedSize) {
|
575 | if (newSize <= 536870912) {
|
576 | newSize = alignUp(2 * newSize, PAGE_MULTIPLE);
|
577 | } else {
|
578 | newSize = Math.min(alignUp((3 * newSize + 2147483648) / 4, PAGE_MULTIPLE), LIMIT);
|
579 | }
|
580 | }
|
581 |
|
582 | var replacement = emscripten_realloc_buffer(newSize);
|
583 |
|
584 | if (!replacement) {
|
585 | return false;
|
586 | }
|
587 |
|
588 | return true;
|
589 | }
|
590 |
|
591 | var decodeBase64 = typeof atob === "function" ? atob : function (input) {
|
592 | var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
|
593 | var output = "";
|
594 | var chr1, chr2, chr3;
|
595 | var enc1, enc2, enc3, enc4;
|
596 | var i = 0;
|
597 | input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
|
598 |
|
599 | do {
|
600 | enc1 = keyStr.indexOf(input.charAt(i++));
|
601 | enc2 = keyStr.indexOf(input.charAt(i++));
|
602 | enc3 = keyStr.indexOf(input.charAt(i++));
|
603 | enc4 = keyStr.indexOf(input.charAt(i++));
|
604 | chr1 = enc1 << 2 | enc2 >> 4;
|
605 | chr2 = (enc2 & 15) << 4 | enc3 >> 2;
|
606 | chr3 = (enc3 & 3) << 6 | enc4;
|
607 | output = output + String.fromCharCode(chr1);
|
608 |
|
609 | if (enc3 !== 64) {
|
610 | output = output + String.fromCharCode(chr2);
|
611 | }
|
612 |
|
613 | if (enc4 !== 64) {
|
614 | output = output + String.fromCharCode(chr3);
|
615 | }
|
616 | } while (i < input.length);
|
617 |
|
618 | return output;
|
619 | };
|
620 |
|
621 | function intArrayFromBase64(s) {
|
622 | try {
|
623 | var decoded = decodeBase64(s);
|
624 | var bytes = new Uint8Array(decoded.length);
|
625 |
|
626 | for (var i = 0; i < decoded.length; ++i) {
|
627 | bytes[i] = decoded.charCodeAt(i);
|
628 | }
|
629 |
|
630 | return bytes;
|
631 | } catch (_) {
|
632 | throw new Error("Converting base64 string to bytes failed.");
|
633 | }
|
634 | }
|
635 |
|
636 | function tryParseAsDataURI(filename) {
|
637 | if (!isDataURI(filename)) {
|
638 | return;
|
639 | }
|
640 |
|
641 | return intArrayFromBase64(filename.slice(dataURIPrefix.length));
|
642 | }
|
643 |
|
644 | var asmGlobalArg = {
|
645 | "Math": Math,
|
646 | "Int8Array": Int8Array,
|
647 | "Int32Array": Int32Array,
|
648 | "Uint8Array": Uint8Array,
|
649 | "Float32Array": Float32Array,
|
650 | "Float64Array": Float64Array
|
651 | };
|
652 | var asmLibraryArg = {
|
653 | "a": abort,
|
654 | "b": setTempRet0,
|
655 | "c": getTempRet0,
|
656 | "d": ___assert_fail,
|
657 | "e": ___setErrNo,
|
658 | "f": _emscripten_get_heap_size,
|
659 | "g": _emscripten_memcpy_big,
|
660 | "h": _emscripten_resize_heap,
|
661 | "i": abortOnCannotGrowMemory,
|
662 | "j": demangle,
|
663 | "k": demangleAll,
|
664 | "l": emscripten_realloc_buffer,
|
665 | "m": jsStackTrace,
|
666 | "n": stackTrace,
|
667 | "o": tempDoublePtr,
|
668 | "p": DYNAMICTOP_PTR
|
669 | };
|
670 |
|
671 | var asm =
|
672 |
|
673 | function (global, env, buffer) {
|
674 | "almost asm";
|
675 |
|
676 | var a = new global.Int8Array(buffer),
|
677 | b = new global.Int32Array(buffer),
|
678 | c = new global.Uint8Array(buffer),
|
679 | d = new global.Float32Array(buffer),
|
680 | e = new global.Float64Array(buffer),
|
681 | g = env.p | 0,
|
682 | p = global.Math.floor,
|
683 | q = global.Math.abs,
|
684 | r = global.Math.sqrt,
|
685 | s = global.Math.pow,
|
686 | t = global.Math.cos,
|
687 | u = global.Math.sin,
|
688 | v = global.Math.tan,
|
689 | w = global.Math.acos,
|
690 | x = global.Math.asin,
|
691 | y = global.Math.atan,
|
692 | z = global.Math.atan2,
|
693 | A = global.Math.ceil,
|
694 | B = global.Math.imul,
|
695 | C = global.Math.clz32,
|
696 | E = env.b,
|
697 | F = env.c,
|
698 | G = env.d,
|
699 | H = env.e,
|
700 | I = env.f,
|
701 | J = env.g,
|
702 | K = env.h,
|
703 | L = env.i,
|
704 | R = 23696;
|
705 |
|
706 | function U(newBuffer) {
|
707 | a = new Int8Array(newBuffer);
|
708 | c = new Uint8Array(newBuffer);
|
709 | b = new Int32Array(newBuffer);
|
710 | d = new Float32Array(newBuffer);
|
711 | e = new Float64Array(newBuffer);
|
712 | buffer = newBuffer;
|
713 | return true;
|
714 | }
|
715 |
|
716 |
|
717 | function V(a) {
|
718 | a = a | 0;
|
719 | var b = 0;
|
720 | b = R;
|
721 | R = R + a | 0;
|
722 | R = R + 15 & -16;
|
723 | return b | 0;
|
724 | }
|
725 |
|
726 | function W() {
|
727 | return R | 0;
|
728 | }
|
729 |
|
730 | function X(a) {
|
731 | a = a | 0;
|
732 | R = a;
|
733 | }
|
734 |
|
735 | function Y(a, b) {
|
736 | a = a | 0;
|
737 | b = b | 0;
|
738 | R = a;
|
739 | }
|
740 |
|
741 | function Z(a) {
|
742 | a = a | 0;
|
743 | return (B(a * 3 | 0, a + 1 | 0) | 0) + 1 | 0;
|
744 | }
|
745 |
|
746 | function _(a, b, c, d) {
|
747 | a = a | 0;
|
748 | b = b | 0;
|
749 | c = c | 0;
|
750 | d = d | 0;
|
751 | var e = 0,
|
752 | f = 0,
|
753 | g = 0;
|
754 | e = (B(c * 3 | 0, c + 1 | 0) | 0) + 1 | 0;
|
755 | f = e << 2;
|
756 | g = Ic(f) | 0;
|
757 |
|
758 | if (!(aa(a, b, c, d, g) | 0)) {
|
759 | Jc(g);
|
760 | return;
|
761 | }
|
762 |
|
763 | Uc(d | 0, 0, e << 3 | 0) | 0;
|
764 | Uc(g | 0, 0, f | 0) | 0;
|
765 | ba(a, b, c, d, g, e, 0);
|
766 | Jc(g);
|
767 | return;
|
768 | }
|
769 |
|
770 | function $(a, b, c, d, e) {
|
771 | a = a | 0;
|
772 | b = b | 0;
|
773 | c = c | 0;
|
774 | d = d | 0;
|
775 | e = e | 0;
|
776 | var f = 0;
|
777 | f = (B(c * 3 | 0, c + 1 | 0) | 0) + 1 | 0;
|
778 | if (!(aa(a, b, c, d, e) | 0)) { return; }
|
779 | Uc(d | 0, 0, f << 3 | 0) | 0;
|
780 | Uc(e | 0, 0, f << 2 | 0) | 0;
|
781 | ba(a, b, c, d, e, f, 0);
|
782 | return;
|
783 | }
|
784 |
|
785 | function aa(a, c, d, e, f) {
|
786 | a = a | 0;
|
787 | c = c | 0;
|
788 | d = d | 0;
|
789 | e = e | 0;
|
790 | f = f | 0;
|
791 | var g = 0,
|
792 | h = 0,
|
793 | i = 0,
|
794 | j = 0,
|
795 | k = 0,
|
796 | l = 0,
|
797 | m = 0,
|
798 | n = 0,
|
799 | o = 0;
|
800 | o = R;
|
801 | R = R + 16 | 0;
|
802 | n = o;
|
803 | g = e;
|
804 | b[g >> 2] = a;
|
805 | b[g + 4 >> 2] = c;
|
806 | g = (f | 0) != 0;
|
807 | if (g) { b[f >> 2] = 0; }
|
808 |
|
809 | if (tb(a, c) | 0) {
|
810 | n = 1;
|
811 | R = o;
|
812 | return n | 0;
|
813 | }
|
814 |
|
815 | b[n >> 2] = 0;
|
816 |
|
817 | a: do { if ((d | 0) >= 1) {
|
818 | if (g) {
|
819 | k = 0;
|
820 | l = 1;
|
821 | m = 1;
|
822 | h = 0;
|
823 | g = a;
|
824 |
|
825 | while (1) {
|
826 | if (!(h | k)) {
|
827 | g = ca(g, c, 4, n) | 0;
|
828 | c = F() | 0;
|
829 |
|
830 | if ((g | 0) == 0 & (c | 0) == 0) {
|
831 | g = 2;
|
832 | break a;
|
833 | }
|
834 |
|
835 | if (tb(g, c) | 0) {
|
836 | g = 1;
|
837 | break a;
|
838 | }
|
839 | }
|
840 |
|
841 | g = ca(g, c, b[16 + (k << 2) >> 2] | 0, n) | 0;
|
842 | c = F() | 0;
|
843 |
|
844 | if ((g | 0) == 0 & (c | 0) == 0) {
|
845 | g = 2;
|
846 | break a;
|
847 | }
|
848 |
|
849 | a = e + (m << 3) | 0;
|
850 | b[a >> 2] = g;
|
851 | b[a + 4 >> 2] = c;
|
852 | b[f + (m << 2) >> 2] = l;
|
853 | h = h + 1 | 0;
|
854 | a = (h | 0) == (l | 0);
|
855 | i = k + 1 | 0;
|
856 | j = (i | 0) == 6;
|
857 |
|
858 | if (tb(g, c) | 0) {
|
859 | g = 1;
|
860 | break a;
|
861 | }
|
862 |
|
863 | l = l + (j & a & 1) | 0;
|
864 |
|
865 | if ((l | 0) > (d | 0)) {
|
866 | g = 0;
|
867 | break;
|
868 | } else {
|
869 | k = a ? j ? 0 : i : k;
|
870 | m = m + 1 | 0;
|
871 | h = a ? 0 : h;
|
872 | }
|
873 | }
|
874 | } else {
|
875 | k = 0;
|
876 | l = 1;
|
877 | m = 1;
|
878 | h = 0;
|
879 | g = a;
|
880 |
|
881 | while (1) {
|
882 | if (!(h | k)) {
|
883 | g = ca(g, c, 4, n) | 0;
|
884 | c = F() | 0;
|
885 |
|
886 | if ((g | 0) == 0 & (c | 0) == 0) {
|
887 | g = 2;
|
888 | break a;
|
889 | }
|
890 |
|
891 | if (tb(g, c) | 0) {
|
892 | g = 1;
|
893 | break a;
|
894 | }
|
895 | }
|
896 |
|
897 | g = ca(g, c, b[16 + (k << 2) >> 2] | 0, n) | 0;
|
898 | c = F() | 0;
|
899 |
|
900 | if ((g | 0) == 0 & (c | 0) == 0) {
|
901 | g = 2;
|
902 | break a;
|
903 | }
|
904 |
|
905 | a = e + (m << 3) | 0;
|
906 | b[a >> 2] = g;
|
907 | b[a + 4 >> 2] = c;
|
908 | h = h + 1 | 0;
|
909 | a = (h | 0) == (l | 0);
|
910 | i = k + 1 | 0;
|
911 | j = (i | 0) == 6;
|
912 |
|
913 | if (tb(g, c) | 0) {
|
914 | g = 1;
|
915 | break a;
|
916 | }
|
917 |
|
918 | l = l + (j & a & 1) | 0;
|
919 |
|
920 | if ((l | 0) > (d | 0)) {
|
921 | g = 0;
|
922 | break;
|
923 | } else {
|
924 | k = a ? j ? 0 : i : k;
|
925 | m = m + 1 | 0;
|
926 | h = a ? 0 : h;
|
927 | }
|
928 | }
|
929 | }
|
930 | } else { g = 0; } } while (0);
|
931 |
|
932 | n = g;
|
933 | R = o;
|
934 | return n | 0;
|
935 | }
|
936 |
|
937 | function ba(a, c, d, e, f, g, h) {
|
938 | a = a | 0;
|
939 | c = c | 0;
|
940 | d = d | 0;
|
941 | e = e | 0;
|
942 | f = f | 0;
|
943 | g = g | 0;
|
944 | h = h | 0;
|
945 | var i = 0,
|
946 | j = 0,
|
947 | k = 0,
|
948 | l = 0,
|
949 | m = 0,
|
950 | n = 0,
|
951 | o = 0;
|
952 | m = R;
|
953 | R = R + 16 | 0;
|
954 | l = m;
|
955 |
|
956 | if ((a | 0) == 0 & (c | 0) == 0) {
|
957 | R = m;
|
958 | return;
|
959 | }
|
960 |
|
961 | i = Pc(a | 0, c | 0, g | 0, ((g | 0) < 0) << 31 >> 31 | 0) | 0;
|
962 | F() | 0;
|
963 | j = e + (i << 3) | 0;
|
964 | n = j;
|
965 | o = b[n >> 2] | 0;
|
966 | n = b[n + 4 >> 2] | 0;
|
967 | k = (o | 0) == (a | 0) & (n | 0) == (c | 0);
|
968 | if (!((o | 0) == 0 & (n | 0) == 0 | k)) { do {
|
969 | i = (i + 1 | 0) % (g | 0) | 0;
|
970 | j = e + (i << 3) | 0;
|
971 | o = j;
|
972 | n = b[o >> 2] | 0;
|
973 | o = b[o + 4 >> 2] | 0;
|
974 | k = (n | 0) == (a | 0) & (o | 0) == (c | 0);
|
975 | } while (!((n | 0) == 0 & (o | 0) == 0 | k)); }
|
976 | i = f + (i << 2) | 0;
|
977 |
|
978 | if (k ? (b[i >> 2] | 0) <= (h | 0) : 0) {
|
979 | R = m;
|
980 | return;
|
981 | }
|
982 |
|
983 | o = j;
|
984 | b[o >> 2] = a;
|
985 | b[o + 4 >> 2] = c;
|
986 | b[i >> 2] = h;
|
987 |
|
988 | if ((h | 0) >= (d | 0)) {
|
989 | R = m;
|
990 | return;
|
991 | }
|
992 |
|
993 | o = h + 1 | 0;
|
994 | b[l >> 2] = 0;
|
995 | n = ca(a, c, 2, l) | 0;
|
996 | ba(n, F() | 0, d, e, f, g, o);
|
997 | b[l >> 2] = 0;
|
998 | n = ca(a, c, 3, l) | 0;
|
999 | ba(n, F() | 0, d, e, f, g, o);
|
1000 | b[l >> 2] = 0;
|
1001 | n = ca(a, c, 1, l) | 0;
|
1002 | ba(n, F() | 0, d, e, f, g, o);
|
1003 | b[l >> 2] = 0;
|
1004 | n = ca(a, c, 5, l) | 0;
|
1005 | ba(n, F() | 0, d, e, f, g, o);
|
1006 | b[l >> 2] = 0;
|
1007 | n = ca(a, c, 4, l) | 0;
|
1008 | ba(n, F() | 0, d, e, f, g, o);
|
1009 | b[l >> 2] = 0;
|
1010 | n = ca(a, c, 6, l) | 0;
|
1011 | ba(n, F() | 0, d, e, f, g, o);
|
1012 | R = m;
|
1013 | return;
|
1014 | }
|
1015 |
|
1016 | function ca(a, c, d, e) {
|
1017 | a = a | 0;
|
1018 | c = c | 0;
|
1019 | d = d | 0;
|
1020 | e = e | 0;
|
1021 | var f = 0,
|
1022 | g = 0,
|
1023 | h = 0,
|
1024 | i = 0,
|
1025 | j = 0,
|
1026 | k = 0,
|
1027 | l = 0,
|
1028 | m = 0,
|
1029 | n = 0,
|
1030 | o = 0;
|
1031 |
|
1032 | if ((b[e >> 2] | 0) > 0) {
|
1033 | f = 0;
|
1034 |
|
1035 | do {
|
1036 | d = Ka(d) | 0;
|
1037 | f = f + 1 | 0;
|
1038 | } while ((f | 0) < (b[e >> 2] | 0));
|
1039 | }
|
1040 |
|
1041 | i = Qc(a | 0, c | 0, 45) | 0;
|
1042 | F() | 0;
|
1043 | j = i & 127;
|
1044 | g = zb(a, c) | 0;
|
1045 | f = Qc(a | 0, c | 0, 52) | 0;
|
1046 | F() | 0;
|
1047 | f = f & 15;
|
1048 |
|
1049 | a: do { if (!f) { h = 6; }else { while (1) {
|
1050 | m = (15 - f | 0) * 3 | 0;
|
1051 | n = Qc(a | 0, c | 0, m | 0) | 0;
|
1052 | F() | 0;
|
1053 | n = n & 7;
|
1054 | o = (Fb(f) | 0) == 0;
|
1055 | f = f + -1 | 0;
|
1056 | l = Rc(7, 0, m | 0) | 0;
|
1057 | c = c & ~(F() | 0);
|
1058 | m = Rc(b[(o ? 464 : 48) + (n * 28 | 0) + (d << 2) >> 2] | 0, 0, m | 0) | 0;
|
1059 | k = F() | 0;
|
1060 | d = b[(o ? 672 : 256) + (n * 28 | 0) + (d << 2) >> 2] | 0;
|
1061 | a = m | a & ~l;
|
1062 | c = k | c;
|
1063 |
|
1064 | if (!d) {
|
1065 | d = 0;
|
1066 | break a;
|
1067 | }
|
1068 |
|
1069 | if (!f) {
|
1070 | h = 6;
|
1071 | break;
|
1072 | }
|
1073 | } } } while (0);
|
1074 |
|
1075 | if ((h | 0) == 6) {
|
1076 | o = b[880 + (j * 28 | 0) + (d << 2) >> 2] | 0;
|
1077 | n = Rc(o | 0, 0, 45) | 0;
|
1078 | a = n | a;
|
1079 | c = F() | 0 | c & -1040385;
|
1080 | d = b[4304 + (j * 28 | 0) + (d << 2) >> 2] | 0;
|
1081 |
|
1082 | if ((o & 127 | 0) == 127) {
|
1083 | o = Rc(b[880 + (j * 28 | 0) + 20 >> 2] | 0, 0, 45) | 0;
|
1084 | c = F() | 0 | c & -1040385;
|
1085 | d = b[4304 + (j * 28 | 0) + 20 >> 2] | 0;
|
1086 | a = Bb(o | a, c) | 0;
|
1087 | c = F() | 0;
|
1088 | b[e >> 2] = (b[e >> 2] | 0) + 1;
|
1089 | }
|
1090 | }
|
1091 |
|
1092 | h = Qc(a | 0, c | 0, 45) | 0;
|
1093 | F() | 0;
|
1094 | h = h & 127;
|
1095 |
|
1096 | b: do { if (!(ia(h) | 0)) {
|
1097 | if ((d | 0) > 0) {
|
1098 | f = 0;
|
1099 |
|
1100 | do {
|
1101 | a = Bb(a, c) | 0;
|
1102 | c = F() | 0;
|
1103 | f = f + 1 | 0;
|
1104 | } while ((f | 0) != (d | 0));
|
1105 | }
|
1106 | } else {
|
1107 | c: do { if ((zb(a, c) | 0) == 1) {
|
1108 | if ((j | 0) != (h | 0)) { if (ma(h, b[7728 + (j * 28 | 0) >> 2] | 0) | 0) {
|
1109 | a = Db(a, c) | 0;
|
1110 | g = 1;
|
1111 | c = F() | 0;
|
1112 | break;
|
1113 | } else {
|
1114 | a = Bb(a, c) | 0;
|
1115 | g = 1;
|
1116 | c = F() | 0;
|
1117 | break;
|
1118 | } }
|
1119 |
|
1120 | switch (g | 0) {
|
1121 | case 5:
|
1122 | {
|
1123 | a = Db(a, c) | 0;
|
1124 | c = F() | 0;
|
1125 | b[e >> 2] = (b[e >> 2] | 0) + 5;
|
1126 | g = 0;
|
1127 | break c;
|
1128 | }
|
1129 |
|
1130 | case 3:
|
1131 | {
|
1132 | a = Bb(a, c) | 0;
|
1133 | c = F() | 0;
|
1134 | b[e >> 2] = (b[e >> 2] | 0) + 1;
|
1135 | g = 0;
|
1136 | break c;
|
1137 | }
|
1138 |
|
1139 | default:
|
1140 | {
|
1141 | n = 0;
|
1142 | o = 0;
|
1143 | E(n | 0);
|
1144 | return o | 0;
|
1145 | }
|
1146 | }
|
1147 | } else { g = 0; } } while (0);
|
1148 |
|
1149 | if ((d | 0) > 0) {
|
1150 | f = 0;
|
1151 |
|
1152 | do {
|
1153 | a = Ab(a, c) | 0;
|
1154 | c = F() | 0;
|
1155 | f = f + 1 | 0;
|
1156 | } while ((f | 0) != (d | 0));
|
1157 | }
|
1158 |
|
1159 | if ((j | 0) != (h | 0)) {
|
1160 | if (!(ja(h) | 0)) {
|
1161 | if ((g | 0) != 0 | (zb(a, c) | 0) != 5) { break; }
|
1162 | b[e >> 2] = (b[e >> 2] | 0) + 1;
|
1163 | break;
|
1164 | }
|
1165 |
|
1166 | switch (i & 127) {
|
1167 | case 8:
|
1168 | case 118:
|
1169 | break b;
|
1170 |
|
1171 | default:
|
1172 |
|
1173 | }
|
1174 |
|
1175 | if ((zb(a, c) | 0) != 3) { b[e >> 2] = (b[e >> 2] | 0) + 1; }
|
1176 | }
|
1177 | } } while (0);
|
1178 |
|
1179 | b[e >> 2] = ((b[e >> 2] | 0) + d | 0) % 6 | 0;
|
1180 | n = c;
|
1181 | o = a;
|
1182 | E(n | 0);
|
1183 | return o | 0;
|
1184 | }
|
1185 |
|
1186 | function da(a, c, d, e) {
|
1187 | a = a | 0;
|
1188 | c = c | 0;
|
1189 | d = d | 0;
|
1190 | e = e | 0;
|
1191 | var f = 0,
|
1192 | g = 0,
|
1193 | h = 0,
|
1194 | i = 0,
|
1195 | j = 0,
|
1196 | k = 0,
|
1197 | l = 0,
|
1198 | m = 0;
|
1199 | m = R;
|
1200 | R = R + 16 | 0;
|
1201 | l = m;
|
1202 |
|
1203 | if (!d) {
|
1204 | l = e;
|
1205 | b[l >> 2] = a;
|
1206 | b[l + 4 >> 2] = c;
|
1207 | l = 0;
|
1208 | R = m;
|
1209 | return l | 0;
|
1210 | }
|
1211 |
|
1212 | b[l >> 2] = 0;
|
1213 |
|
1214 | a: do { if (!(tb(a, c) | 0)) {
|
1215 | g = (d | 0) > 0;
|
1216 |
|
1217 | if (g) {
|
1218 | f = 0;
|
1219 | k = a;
|
1220 |
|
1221 | do {
|
1222 | k = ca(k, c, 4, l) | 0;
|
1223 | c = F() | 0;
|
1224 |
|
1225 | if ((k | 0) == 0 & (c | 0) == 0) {
|
1226 | a = 2;
|
1227 | break a;
|
1228 | }
|
1229 |
|
1230 | f = f + 1 | 0;
|
1231 |
|
1232 | if (tb(k, c) | 0) {
|
1233 | a = 1;
|
1234 | break a;
|
1235 | }
|
1236 | } while ((f | 0) < (d | 0));
|
1237 |
|
1238 | j = e;
|
1239 | b[j >> 2] = k;
|
1240 | b[j + 4 >> 2] = c;
|
1241 | j = d + -1 | 0;
|
1242 |
|
1243 | if (g) {
|
1244 | g = 0;
|
1245 | h = 1;
|
1246 | f = k;
|
1247 | a = c;
|
1248 |
|
1249 | do {
|
1250 | f = ca(f, a, 2, l) | 0;
|
1251 | a = F() | 0;
|
1252 |
|
1253 | if ((f | 0) == 0 & (a | 0) == 0) {
|
1254 | a = 2;
|
1255 | break a;
|
1256 | }
|
1257 |
|
1258 | i = e + (h << 3) | 0;
|
1259 | b[i >> 2] = f;
|
1260 | b[i + 4 >> 2] = a;
|
1261 | h = h + 1 | 0;
|
1262 |
|
1263 | if (tb(f, a) | 0) {
|
1264 | a = 1;
|
1265 | break a;
|
1266 | }
|
1267 |
|
1268 | g = g + 1 | 0;
|
1269 | } while ((g | 0) < (d | 0));
|
1270 |
|
1271 | i = 0;
|
1272 | g = h;
|
1273 |
|
1274 | do {
|
1275 | f = ca(f, a, 3, l) | 0;
|
1276 | a = F() | 0;
|
1277 |
|
1278 | if ((f | 0) == 0 & (a | 0) == 0) {
|
1279 | a = 2;
|
1280 | break a;
|
1281 | }
|
1282 |
|
1283 | h = e + (g << 3) | 0;
|
1284 | b[h >> 2] = f;
|
1285 | b[h + 4 >> 2] = a;
|
1286 | g = g + 1 | 0;
|
1287 |
|
1288 | if (tb(f, a) | 0) {
|
1289 | a = 1;
|
1290 | break a;
|
1291 | }
|
1292 |
|
1293 | i = i + 1 | 0;
|
1294 | } while ((i | 0) < (d | 0));
|
1295 |
|
1296 | h = 0;
|
1297 |
|
1298 | do {
|
1299 | f = ca(f, a, 1, l) | 0;
|
1300 | a = F() | 0;
|
1301 |
|
1302 | if ((f | 0) == 0 & (a | 0) == 0) {
|
1303 | a = 2;
|
1304 | break a;
|
1305 | }
|
1306 |
|
1307 | i = e + (g << 3) | 0;
|
1308 | b[i >> 2] = f;
|
1309 | b[i + 4 >> 2] = a;
|
1310 | g = g + 1 | 0;
|
1311 |
|
1312 | if (tb(f, a) | 0) {
|
1313 | a = 1;
|
1314 | break a;
|
1315 | }
|
1316 |
|
1317 | h = h + 1 | 0;
|
1318 | } while ((h | 0) < (d | 0));
|
1319 |
|
1320 | h = 0;
|
1321 |
|
1322 | do {
|
1323 | f = ca(f, a, 5, l) | 0;
|
1324 | a = F() | 0;
|
1325 |
|
1326 | if ((f | 0) == 0 & (a | 0) == 0) {
|
1327 | a = 2;
|
1328 | break a;
|
1329 | }
|
1330 |
|
1331 | i = e + (g << 3) | 0;
|
1332 | b[i >> 2] = f;
|
1333 | b[i + 4 >> 2] = a;
|
1334 | g = g + 1 | 0;
|
1335 |
|
1336 | if (tb(f, a) | 0) {
|
1337 | a = 1;
|
1338 | break a;
|
1339 | }
|
1340 |
|
1341 | h = h + 1 | 0;
|
1342 | } while ((h | 0) < (d | 0));
|
1343 |
|
1344 | h = 0;
|
1345 |
|
1346 | do {
|
1347 | f = ca(f, a, 4, l) | 0;
|
1348 | a = F() | 0;
|
1349 |
|
1350 | if ((f | 0) == 0 & (a | 0) == 0) {
|
1351 | a = 2;
|
1352 | break a;
|
1353 | }
|
1354 |
|
1355 | i = e + (g << 3) | 0;
|
1356 | b[i >> 2] = f;
|
1357 | b[i + 4 >> 2] = a;
|
1358 | g = g + 1 | 0;
|
1359 |
|
1360 | if (tb(f, a) | 0) {
|
1361 | a = 1;
|
1362 | break a;
|
1363 | }
|
1364 |
|
1365 | h = h + 1 | 0;
|
1366 | } while ((h | 0) < (d | 0));
|
1367 |
|
1368 | h = 0;
|
1369 |
|
1370 | while (1) {
|
1371 | f = ca(f, a, 6, l) | 0;
|
1372 | a = F() | 0;
|
1373 |
|
1374 | if ((f | 0) == 0 & (a | 0) == 0) {
|
1375 | a = 2;
|
1376 | break a;
|
1377 | }
|
1378 |
|
1379 | if ((h | 0) != (j | 0)) {
|
1380 | i = e + (g << 3) | 0;
|
1381 | b[i >> 2] = f;
|
1382 | b[i + 4 >> 2] = a;
|
1383 | if (!(tb(f, a) | 0)) { g = g + 1 | 0; }else {
|
1384 | a = 1;
|
1385 | break a;
|
1386 | }
|
1387 | }
|
1388 |
|
1389 | h = h + 1 | 0;
|
1390 |
|
1391 | if ((h | 0) >= (d | 0)) {
|
1392 | h = k;
|
1393 | g = c;
|
1394 | break;
|
1395 | }
|
1396 | }
|
1397 | } else {
|
1398 | h = k;
|
1399 | f = k;
|
1400 | g = c;
|
1401 | a = c;
|
1402 | }
|
1403 | } else {
|
1404 | h = e;
|
1405 | b[h >> 2] = a;
|
1406 | b[h + 4 >> 2] = c;
|
1407 | h = a;
|
1408 | f = a;
|
1409 | g = c;
|
1410 | a = c;
|
1411 | }
|
1412 |
|
1413 | a = ((h | 0) != (f | 0) | (g | 0) != (a | 0)) & 1;
|
1414 | } else { a = 1; } } while (0);
|
1415 |
|
1416 | l = a;
|
1417 | R = m;
|
1418 | return l | 0;
|
1419 | }
|
1420 |
|
1421 | function ea(a, b) {
|
1422 | a = a | 0;
|
1423 | b = b | 0;
|
1424 | var c = 0,
|
1425 | d = 0;
|
1426 | c = R;
|
1427 | R = R + 32 | 0;
|
1428 | d = c;
|
1429 | jc(a, d);
|
1430 | b = ua(d, b) | 0;
|
1431 | b = (B(b * 3 | 0, b + 1 | 0) | 0) + 1 | 0;
|
1432 | R = c;
|
1433 | return b | 0;
|
1434 | }
|
1435 |
|
1436 | function fa(a, c, d) {
|
1437 | a = a | 0;
|
1438 | c = c | 0;
|
1439 | d = d | 0;
|
1440 | var f = 0,
|
1441 | g = 0,
|
1442 | h = 0,
|
1443 | i = 0,
|
1444 | j = 0,
|
1445 | k = 0,
|
1446 | l = 0,
|
1447 | m = 0,
|
1448 | n = 0,
|
1449 | o = 0.0;
|
1450 | n = R;
|
1451 | R = R + 32 | 0;
|
1452 | f = n + 16 | 0;
|
1453 | l = n;
|
1454 | m = Ic((b[a + 8 >> 2] << 5) + 32 | 0) | 0;
|
1455 | if (!m) { G(22487, 22096, 678, 22104); }
|
1456 | kc(a, m);
|
1457 | i = ua(m, c) | 0;
|
1458 | j = B(i * 3 | 0, i + 1 | 0) | 0;
|
1459 | k = j + 1 | 0;
|
1460 | sa(m, f);
|
1461 | c = Gb(f, c) | 0;
|
1462 | f = F() | 0;
|
1463 | g = k << 2;
|
1464 | h = Ic(g) | 0;
|
1465 |
|
1466 | if (aa(c, f, i, d, h) | 0) {
|
1467 | Uc(d | 0, 0, k << 3 | 0) | 0;
|
1468 | Uc(h | 0, 0, g | 0) | 0;
|
1469 | ba(c, f, i, d, h, k, 0);
|
1470 | }
|
1471 |
|
1472 | Jc(h);
|
1473 |
|
1474 | if ((j | 0) < 0) {
|
1475 | Jc(m);
|
1476 | R = n;
|
1477 | return;
|
1478 | }
|
1479 |
|
1480 | f = l + 8 | 0;
|
1481 | c = 0;
|
1482 |
|
1483 | do {
|
1484 | g = d + (c << 3) | 0;
|
1485 | i = g;
|
1486 | h = b[i >> 2] | 0;
|
1487 | i = b[i + 4 >> 2] | 0;
|
1488 |
|
1489 | if (!((h | 0) == 0 & (i | 0) == 0) ? (Jb(h, i, l), o = +eb(+e[l >> 3]), e[l >> 3] = o, o = +fb(+e[f >> 3]), e[f >> 3] = o, !(lc(a, m, l) | 0)) : 0) {
|
1490 | j = g;
|
1491 | b[j >> 2] = 0;
|
1492 | b[j + 4 >> 2] = 0;
|
1493 | }
|
1494 |
|
1495 | c = c + 1 | 0;
|
1496 | } while ((c | 0) != (k | 0));
|
1497 |
|
1498 | Jc(m);
|
1499 | R = n;
|
1500 | return;
|
1501 | }
|
1502 |
|
1503 | function ga(a, c, d) {
|
1504 | a = a | 0;
|
1505 | c = c | 0;
|
1506 | d = d | 0;
|
1507 | var e = 0,
|
1508 | f = 0,
|
1509 | g = 0,
|
1510 | h = 0,
|
1511 | i = 0,
|
1512 | j = 0,
|
1513 | k = 0;
|
1514 | k = R;
|
1515 | R = R + 176 | 0;
|
1516 | j = k;
|
1517 |
|
1518 | if ((c | 0) < 1) {
|
1519 | yc(d, 0, 0);
|
1520 | R = k;
|
1521 | return;
|
1522 | }
|
1523 |
|
1524 | h = a;
|
1525 | h = Qc(b[h >> 2] | 0, b[h + 4 >> 2] | 0, 52) | 0;
|
1526 | F() | 0;
|
1527 | yc(d, (c | 0) > 6 ? c : 6, h & 15);
|
1528 | h = 0;
|
1529 |
|
1530 | do {
|
1531 | e = a + (h << 3) | 0;
|
1532 | Kb(b[e >> 2] | 0, b[e + 4 >> 2] | 0, j);
|
1533 | e = b[j >> 2] | 0;
|
1534 |
|
1535 | if ((e | 0) > 0) {
|
1536 | i = 0;
|
1537 |
|
1538 | do {
|
1539 | g = j + 8 + (i << 4) | 0;
|
1540 | i = i + 1 | 0;
|
1541 | e = j + 8 + (((i | 0) % (e | 0) | 0) << 4) | 0;
|
1542 | f = Dc(d, e, g) | 0;
|
1543 | if (!f) { Cc(d, g, e) | 0; }else { Bc(d, f) | 0; }
|
1544 | e = b[j >> 2] | 0;
|
1545 | } while ((i | 0) < (e | 0));
|
1546 | }
|
1547 |
|
1548 | h = h + 1 | 0;
|
1549 | } while ((h | 0) != (c | 0));
|
1550 |
|
1551 | R = k;
|
1552 | return;
|
1553 | }
|
1554 |
|
1555 | function ha(a, c, d) {
|
1556 | a = a | 0;
|
1557 | c = c | 0;
|
1558 | d = d | 0;
|
1559 | var e = 0,
|
1560 | f = 0,
|
1561 | g = 0,
|
1562 | h = 0;
|
1563 | g = R;
|
1564 | R = R + 32 | 0;
|
1565 | e = g;
|
1566 | f = g + 16 | 0;
|
1567 | ga(a, c, f);
|
1568 | b[d >> 2] = 0;
|
1569 | b[d + 4 >> 2] = 0;
|
1570 | b[d + 8 >> 2] = 0;
|
1571 | a = Ac(f) | 0;
|
1572 |
|
1573 | if (!a) {
|
1574 | _b(d) | 0;
|
1575 | zc(f);
|
1576 | R = g;
|
1577 | return;
|
1578 | }
|
1579 |
|
1580 | do {
|
1581 | c = Xb(d) | 0;
|
1582 |
|
1583 | do {
|
1584 | Yb(c, a) | 0;
|
1585 | h = a + 16 | 0;
|
1586 | b[e >> 2] = b[h >> 2];
|
1587 | b[e + 4 >> 2] = b[h + 4 >> 2];
|
1588 | b[e + 8 >> 2] = b[h + 8 >> 2];
|
1589 | b[e + 12 >> 2] = b[h + 12 >> 2];
|
1590 | Bc(f, a) | 0;
|
1591 | a = Ec(f, e) | 0;
|
1592 | } while ((a | 0) != 0);
|
1593 |
|
1594 | a = Ac(f) | 0;
|
1595 | } while ((a | 0) != 0);
|
1596 |
|
1597 | _b(d) | 0;
|
1598 | zc(f);
|
1599 | R = g;
|
1600 | return;
|
1601 | }
|
1602 |
|
1603 | function ia(a) {
|
1604 | a = a | 0;
|
1605 | return b[7728 + (a * 28 | 0) + 16 >> 2] | 0;
|
1606 | }
|
1607 |
|
1608 | function ja(a) {
|
1609 | a = a | 0;
|
1610 | return (a | 0) == 4 | (a | 0) == 117 | 0;
|
1611 | }
|
1612 |
|
1613 | function ka(a) {
|
1614 | a = a | 0;
|
1615 | return b[11152 + ((b[a >> 2] | 0) * 216 | 0) + ((b[a + 4 >> 2] | 0) * 72 | 0) + ((b[a + 8 >> 2] | 0) * 24 | 0) + (b[a + 12 >> 2] << 3) >> 2] | 0;
|
1616 | }
|
1617 |
|
1618 | function la(a) {
|
1619 | a = a | 0;
|
1620 | return b[11152 + ((b[a >> 2] | 0) * 216 | 0) + ((b[a + 4 >> 2] | 0) * 72 | 0) + ((b[a + 8 >> 2] | 0) * 24 | 0) + (b[a + 12 >> 2] << 3) + 4 >> 2] | 0;
|
1621 | }
|
1622 |
|
1623 | function ma(a, c) {
|
1624 | a = a | 0;
|
1625 | c = c | 0;
|
1626 |
|
1627 | if ((b[7728 + (a * 28 | 0) + 20 >> 2] | 0) == (c | 0)) {
|
1628 | c = 1;
|
1629 | return c | 0;
|
1630 | }
|
1631 |
|
1632 | c = (b[7728 + (a * 28 | 0) + 24 >> 2] | 0) == (c | 0);
|
1633 | return c | 0;
|
1634 | }
|
1635 |
|
1636 | function na(a, c) {
|
1637 | a = a | 0;
|
1638 | c = c | 0;
|
1639 | return b[880 + (a * 28 | 0) + (c << 2) >> 2] | 0;
|
1640 | }
|
1641 |
|
1642 | function oa(a, c) {
|
1643 | a = a | 0;
|
1644 | c = c | 0;
|
1645 |
|
1646 | if ((b[880 + (a * 28 | 0) >> 2] | 0) == (c | 0)) {
|
1647 | c = 0;
|
1648 | return c | 0;
|
1649 | }
|
1650 |
|
1651 | if ((b[880 + (a * 28 | 0) + 4 >> 2] | 0) == (c | 0)) {
|
1652 | c = 1;
|
1653 | return c | 0;
|
1654 | }
|
1655 |
|
1656 | if ((b[880 + (a * 28 | 0) + 8 >> 2] | 0) == (c | 0)) {
|
1657 | c = 2;
|
1658 | return c | 0;
|
1659 | }
|
1660 |
|
1661 | if ((b[880 + (a * 28 | 0) + 12 >> 2] | 0) == (c | 0)) {
|
1662 | c = 3;
|
1663 | return c | 0;
|
1664 | }
|
1665 |
|
1666 | if ((b[880 + (a * 28 | 0) + 16 >> 2] | 0) == (c | 0)) {
|
1667 | c = 4;
|
1668 | return c | 0;
|
1669 | }
|
1670 |
|
1671 | if ((b[880 + (a * 28 | 0) + 20 >> 2] | 0) == (c | 0)) {
|
1672 | c = 5;
|
1673 | return c | 0;
|
1674 | } else { return ((b[880 + (a * 28 | 0) + 24 >> 2] | 0) == (c | 0) ? 6 : 7) | 0; }
|
1675 |
|
1676 | return 0;
|
1677 | }
|
1678 |
|
1679 | function pa() {
|
1680 | return 122;
|
1681 | }
|
1682 |
|
1683 | function qa(a) {
|
1684 | a = a | 0;
|
1685 | var c = 0,
|
1686 | d = 0,
|
1687 | e = 0;
|
1688 | c = 0;
|
1689 |
|
1690 | do {
|
1691 | Rc(c | 0, 0, 45) | 0;
|
1692 | e = F() | 0 | 134225919;
|
1693 | d = a + (c << 3) | 0;
|
1694 | b[d >> 2] = -1;
|
1695 | b[d + 4 >> 2] = e;
|
1696 | c = c + 1 | 0;
|
1697 | } while ((c | 0) != 122);
|
1698 |
|
1699 | return;
|
1700 | }
|
1701 |
|
1702 | function ra(a) {
|
1703 | a = a | 0;
|
1704 | return +e[a + 16 >> 3] < +e[a + 24 >> 3] | 0;
|
1705 | }
|
1706 |
|
1707 | function sa(a, b) {
|
1708 | a = a | 0;
|
1709 | b = b | 0;
|
1710 | var c = 0.0,
|
1711 | d = 0.0;
|
1712 | e[b >> 3] = (+e[a >> 3] + +e[a + 8 >> 3]) * .5;
|
1713 | c = +e[a + 16 >> 3];
|
1714 | d = +e[a + 24 >> 3];
|
1715 | c = +fb((d + (c < d ? c + 6.283185307179586 : c)) * .5);
|
1716 | e[b + 8 >> 3] = c;
|
1717 | return;
|
1718 | }
|
1719 |
|
1720 | function ta(a, b) {
|
1721 | a = a | 0;
|
1722 | b = b | 0;
|
1723 | var c = 0.0,
|
1724 | d = 0.0,
|
1725 | f = 0.0;
|
1726 | c = +e[b >> 3];
|
1727 |
|
1728 | if (!(c >= +e[a + 8 >> 3])) {
|
1729 | b = 0;
|
1730 | return b | 0;
|
1731 | }
|
1732 |
|
1733 | if (!(c <= +e[a >> 3])) {
|
1734 | b = 0;
|
1735 | return b | 0;
|
1736 | }
|
1737 |
|
1738 | d = +e[a + 16 >> 3];
|
1739 | c = +e[a + 24 >> 3];
|
1740 | f = +e[b + 8 >> 3];
|
1741 | b = f >= c;
|
1742 | a = f <= d & 1;
|
1743 |
|
1744 | if (d < c) {
|
1745 | if (b) { a = 1; }
|
1746 | } else if (!b) { a = 0; }
|
1747 |
|
1748 | b = (a | 0) != 0;
|
1749 | return b | 0;
|
1750 | }
|
1751 |
|
1752 | function ua(a, b) {
|
1753 | a = a | 0;
|
1754 | b = b | 0;
|
1755 | var c = 0,
|
1756 | d = 0,
|
1757 | f = 0,
|
1758 | g = 0.0,
|
1759 | h = 0,
|
1760 | i = 0,
|
1761 | j = 0,
|
1762 | k = 0.0,
|
1763 | l = 0.0,
|
1764 | m = 0;
|
1765 | c = R;
|
1766 | R = R + 224 | 0;
|
1767 | f = c + 200 | 0;
|
1768 | d = c + 32 | 0;
|
1769 | h = c + 16 | 0;
|
1770 | i = c;
|
1771 | m = a + 8 | 0;
|
1772 | e[h >> 3] = (+e[a >> 3] + +e[m >> 3]) * .5;
|
1773 | j = a + 16 | 0;
|
1774 | g = +e[j >> 3];
|
1775 | l = +e[a + 24 >> 3];
|
1776 | g = +fb((l + (g < l ? g + 6.283185307179586 : g)) * .5);
|
1777 | e[h + 8 >> 3] = g;
|
1778 | g = +e[a >> 3];
|
1779 | l = +q(+g);
|
1780 | k = +e[m >> 3];
|
1781 | a = l > +q(+k);
|
1782 | e[i >> 3] = a ? k : g;
|
1783 | e[i + 8 >> 3] = +e[j >> 3];
|
1784 | g = +gb(h, i);
|
1785 | a = Gb(h, b) | 0;
|
1786 | b = F() | 0;
|
1787 | Jb(a, b, f);
|
1788 | Kb(a, b, d);
|
1789 | b = ~~+A(+(g / (+gb(f, d + 8 | 0) * 1.5)));
|
1790 | R = c;
|
1791 | return b | 0;
|
1792 | }
|
1793 |
|
1794 | function va(a, c, d, e) {
|
1795 | a = a | 0;
|
1796 | c = c | 0;
|
1797 | d = d | 0;
|
1798 | e = e | 0;
|
1799 | b[a >> 2] = c;
|
1800 | b[a + 4 >> 2] = d;
|
1801 | b[a + 8 >> 2] = e;
|
1802 | return;
|
1803 | }
|
1804 |
|
1805 | function wa(a, c) {
|
1806 | a = a | 0;
|
1807 | c = c | 0;
|
1808 | var d = 0,
|
1809 | f = 0,
|
1810 | g = 0,
|
1811 | h = 0,
|
1812 | i = 0.0,
|
1813 | j = 0.0,
|
1814 | k = 0.0,
|
1815 | l = 0.0,
|
1816 | m = 0,
|
1817 | n = 0,
|
1818 | o = 0.0;
|
1819 | n = c + 8 | 0;
|
1820 | b[n >> 2] = 0;
|
1821 | k = +e[a >> 3];
|
1822 | i = +q(+k);
|
1823 | l = +e[a + 8 >> 3];
|
1824 | j = +q(+l) / .8660254037844386;
|
1825 | i = i + j * .5;
|
1826 | d = ~~i;
|
1827 | a = ~~j;
|
1828 | i = i - +(d | 0);
|
1829 | j = j - +(a | 0);
|
1830 |
|
1831 | do { if (i < .5) {
|
1832 | if (i < .3333333333333333) {
|
1833 | b[c >> 2] = d;
|
1834 |
|
1835 | if (j < (i + 1.0) * .5) {
|
1836 | b[c + 4 >> 2] = a;
|
1837 | break;
|
1838 | } else {
|
1839 | a = a + 1 | 0;
|
1840 | b[c + 4 >> 2] = a;
|
1841 | break;
|
1842 | }
|
1843 | } else {
|
1844 | o = 1.0 - i;
|
1845 | a = (!(j < o) & 1) + a | 0;
|
1846 | b[c + 4 >> 2] = a;
|
1847 |
|
1848 | if (o <= j & j < i * 2.0) {
|
1849 | d = d + 1 | 0;
|
1850 | b[c >> 2] = d;
|
1851 | break;
|
1852 | } else {
|
1853 | b[c >> 2] = d;
|
1854 | break;
|
1855 | }
|
1856 | }
|
1857 | } else {
|
1858 | if (!(i < .6666666666666666)) {
|
1859 | d = d + 1 | 0;
|
1860 | b[c >> 2] = d;
|
1861 |
|
1862 | if (j < i * .5) {
|
1863 | b[c + 4 >> 2] = a;
|
1864 | break;
|
1865 | } else {
|
1866 | a = a + 1 | 0;
|
1867 | b[c + 4 >> 2] = a;
|
1868 | break;
|
1869 | }
|
1870 | }
|
1871 |
|
1872 | if (j < 1.0 - i) {
|
1873 | b[c + 4 >> 2] = a;
|
1874 |
|
1875 | if (i * 2.0 + -1.0 < j) {
|
1876 | b[c >> 2] = d;
|
1877 | break;
|
1878 | }
|
1879 | } else {
|
1880 | a = a + 1 | 0;
|
1881 | b[c + 4 >> 2] = a;
|
1882 | }
|
1883 |
|
1884 | d = d + 1 | 0;
|
1885 | b[c >> 2] = d;
|
1886 | } } while (0);
|
1887 |
|
1888 | do { if (k < 0.0) { if (!(a & 1)) {
|
1889 | m = (a | 0) / 2 | 0;
|
1890 | m = Mc(d | 0, ((d | 0) < 0) << 31 >> 31 | 0, m | 0, ((m | 0) < 0) << 31 >> 31 | 0) | 0;
|
1891 | d = ~~(+(d | 0) - (+(m >>> 0) + 4294967296.0 * +(F() | 0)) * 2.0);
|
1892 | b[c >> 2] = d;
|
1893 | break;
|
1894 | } else {
|
1895 | m = (a + 1 | 0) / 2 | 0;
|
1896 | m = Mc(d | 0, ((d | 0) < 0) << 31 >> 31 | 0, m | 0, ((m | 0) < 0) << 31 >> 31 | 0) | 0;
|
1897 | d = ~~(+(d | 0) - ((+(m >>> 0) + 4294967296.0 * +(F() | 0)) * 2.0 + 1.0));
|
1898 | b[c >> 2] = d;
|
1899 | break;
|
1900 | } } } while (0);
|
1901 |
|
1902 | m = c + 4 | 0;
|
1903 |
|
1904 | if (l < 0.0) {
|
1905 | d = d - ((a << 1 | 1 | 0) / 2 | 0) | 0;
|
1906 | b[c >> 2] = d;
|
1907 | a = 0 - a | 0;
|
1908 | b[m >> 2] = a;
|
1909 | }
|
1910 |
|
1911 | f = a - d | 0;
|
1912 |
|
1913 | if ((d | 0) < 0) {
|
1914 | g = 0 - d | 0;
|
1915 | b[m >> 2] = f;
|
1916 | b[n >> 2] = g;
|
1917 | b[c >> 2] = 0;
|
1918 | a = f;
|
1919 | d = 0;
|
1920 | } else { g = 0; }
|
1921 |
|
1922 | if ((a | 0) < 0) {
|
1923 | d = d - a | 0;
|
1924 | b[c >> 2] = d;
|
1925 | g = g - a | 0;
|
1926 | b[n >> 2] = g;
|
1927 | b[m >> 2] = 0;
|
1928 | a = 0;
|
1929 | }
|
1930 |
|
1931 | h = d - g | 0;
|
1932 | f = a - g | 0;
|
1933 |
|
1934 | if ((g | 0) < 0) {
|
1935 | b[c >> 2] = h;
|
1936 | b[m >> 2] = f;
|
1937 | b[n >> 2] = 0;
|
1938 | a = f;
|
1939 | d = h;
|
1940 | g = 0;
|
1941 | }
|
1942 |
|
1943 | f = (a | 0) < (d | 0) ? a : d;
|
1944 | f = (g | 0) < (f | 0) ? g : f;
|
1945 | if ((f | 0) <= 0) { return; }
|
1946 | b[c >> 2] = d - f;
|
1947 | b[m >> 2] = a - f;
|
1948 | b[n >> 2] = g - f;
|
1949 | return;
|
1950 | }
|
1951 |
|
1952 | function xa(a) {
|
1953 | a = a | 0;
|
1954 | var c = 0,
|
1955 | d = 0,
|
1956 | e = 0,
|
1957 | f = 0,
|
1958 | g = 0,
|
1959 | h = 0;
|
1960 | c = b[a >> 2] | 0;
|
1961 | h = a + 4 | 0;
|
1962 | d = b[h >> 2] | 0;
|
1963 |
|
1964 | if ((c | 0) < 0) {
|
1965 | d = d - c | 0;
|
1966 | b[h >> 2] = d;
|
1967 | g = a + 8 | 0;
|
1968 | b[g >> 2] = (b[g >> 2] | 0) - c;
|
1969 | b[a >> 2] = 0;
|
1970 | c = 0;
|
1971 | }
|
1972 |
|
1973 | if ((d | 0) < 0) {
|
1974 | c = c - d | 0;
|
1975 | b[a >> 2] = c;
|
1976 | g = a + 8 | 0;
|
1977 | f = (b[g >> 2] | 0) - d | 0;
|
1978 | b[g >> 2] = f;
|
1979 | b[h >> 2] = 0;
|
1980 | d = 0;
|
1981 | } else {
|
1982 | f = a + 8 | 0;
|
1983 | g = f;
|
1984 | f = b[f >> 2] | 0;
|
1985 | }
|
1986 |
|
1987 | if ((f | 0) < 0) {
|
1988 | c = c - f | 0;
|
1989 | b[a >> 2] = c;
|
1990 | d = d - f | 0;
|
1991 | b[h >> 2] = d;
|
1992 | b[g >> 2] = 0;
|
1993 | f = 0;
|
1994 | }
|
1995 |
|
1996 | e = (d | 0) < (c | 0) ? d : c;
|
1997 | e = (f | 0) < (e | 0) ? f : e;
|
1998 | if ((e | 0) <= 0) { return; }
|
1999 | b[a >> 2] = c - e;
|
2000 | b[h >> 2] = d - e;
|
2001 | b[g >> 2] = f - e;
|
2002 | return;
|
2003 | }
|
2004 |
|
2005 | function ya(a, c) {
|
2006 | a = a | 0;
|
2007 | c = c | 0;
|
2008 | var d = 0.0,
|
2009 | f = 0;
|
2010 | f = b[a + 8 >> 2] | 0;
|
2011 | d = +((b[a + 4 >> 2] | 0) - f | 0);
|
2012 | e[c >> 3] = +((b[a >> 2] | 0) - f | 0) - d * .5;
|
2013 | e[c + 8 >> 3] = d * .8660254037844386;
|
2014 | return;
|
2015 | }
|
2016 |
|
2017 | function za(a, c, d) {
|
2018 | a = a | 0;
|
2019 | c = c | 0;
|
2020 | d = d | 0;
|
2021 | b[d >> 2] = (b[c >> 2] | 0) + (b[a >> 2] | 0);
|
2022 | b[d + 4 >> 2] = (b[c + 4 >> 2] | 0) + (b[a + 4 >> 2] | 0);
|
2023 | b[d + 8 >> 2] = (b[c + 8 >> 2] | 0) + (b[a + 8 >> 2] | 0);
|
2024 | return;
|
2025 | }
|
2026 |
|
2027 | function Aa(a, c, d) {
|
2028 | a = a | 0;
|
2029 | c = c | 0;
|
2030 | d = d | 0;
|
2031 | b[d >> 2] = (b[a >> 2] | 0) - (b[c >> 2] | 0);
|
2032 | b[d + 4 >> 2] = (b[a + 4 >> 2] | 0) - (b[c + 4 >> 2] | 0);
|
2033 | b[d + 8 >> 2] = (b[a + 8 >> 2] | 0) - (b[c + 8 >> 2] | 0);
|
2034 | return;
|
2035 | }
|
2036 |
|
2037 | function Ba(a, c) {
|
2038 | a = a | 0;
|
2039 | c = c | 0;
|
2040 | var d = 0,
|
2041 | e = 0;
|
2042 | d = B(b[a >> 2] | 0, c) | 0;
|
2043 | b[a >> 2] = d;
|
2044 | d = a + 4 | 0;
|
2045 | e = B(b[d >> 2] | 0, c) | 0;
|
2046 | b[d >> 2] = e;
|
2047 | a = a + 8 | 0;
|
2048 | c = B(b[a >> 2] | 0, c) | 0;
|
2049 | b[a >> 2] = c;
|
2050 | return;
|
2051 | }
|
2052 |
|
2053 | function Ca(a) {
|
2054 | a = a | 0;
|
2055 | var c = 0,
|
2056 | d = 0,
|
2057 | e = 0,
|
2058 | f = 0,
|
2059 | g = 0,
|
2060 | h = 0,
|
2061 | i = 0;
|
2062 | h = b[a >> 2] | 0;
|
2063 | i = (h | 0) < 0;
|
2064 | e = (b[a + 4 >> 2] | 0) - (i ? h : 0) | 0;
|
2065 | g = (e | 0) < 0;
|
2066 | f = (g ? 0 - e | 0 : 0) + ((b[a + 8 >> 2] | 0) - (i ? h : 0)) | 0;
|
2067 | d = (f | 0) < 0;
|
2068 | a = d ? 0 : f;
|
2069 | c = (g ? 0 : e) - (d ? f : 0) | 0;
|
2070 | f = (i ? 0 : h) - (g ? e : 0) - (d ? f : 0) | 0;
|
2071 | d = (c | 0) < (f | 0) ? c : f;
|
2072 | d = (a | 0) < (d | 0) ? a : d;
|
2073 | e = (d | 0) > 0;
|
2074 | a = a - (e ? d : 0) | 0;
|
2075 | c = c - (e ? d : 0) | 0;
|
2076 |
|
2077 | a: do { switch (f - (e ? d : 0) | 0) {
|
2078 | case 0:
|
2079 | switch (c | 0) {
|
2080 | case 0:
|
2081 | {
|
2082 | i = (a | 0) == 0 ? 0 : (a | 0) == 1 ? 1 : 7;
|
2083 | return i | 0;
|
2084 | }
|
2085 |
|
2086 | case 1:
|
2087 | {
|
2088 | i = (a | 0) == 0 ? 2 : (a | 0) == 1 ? 3 : 7;
|
2089 | return i | 0;
|
2090 | }
|
2091 |
|
2092 | default:
|
2093 | break a;
|
2094 | }
|
2095 |
|
2096 | case 1:
|
2097 | switch (c | 0) {
|
2098 | case 0:
|
2099 | {
|
2100 | i = (a | 0) == 0 ? 4 : (a | 0) == 1 ? 5 : 7;
|
2101 | return i | 0;
|
2102 | }
|
2103 |
|
2104 | case 1:
|
2105 | {
|
2106 | if (!a) { a = 6; }else { break a; }
|
2107 | return a | 0;
|
2108 | }
|
2109 |
|
2110 | default:
|
2111 | break a;
|
2112 | }
|
2113 |
|
2114 | default:
|
2115 |
|
2116 | } } while (0);
|
2117 |
|
2118 | i = 7;
|
2119 | return i | 0;
|
2120 | }
|
2121 |
|
2122 | function Da(a) {
|
2123 | a = a | 0;
|
2124 | var c = 0,
|
2125 | d = 0,
|
2126 | e = 0,
|
2127 | f = 0,
|
2128 | g = 0,
|
2129 | h = 0,
|
2130 | i = 0;
|
2131 | h = a + 8 | 0;
|
2132 | d = b[h >> 2] | 0;
|
2133 | c = (b[a >> 2] | 0) - d | 0;
|
2134 | i = a + 4 | 0;
|
2135 | d = (b[i >> 2] | 0) - d | 0;
|
2136 | e = Hc(+((c * 3 | 0) - d | 0) / 7.0) | 0;
|
2137 | b[a >> 2] = e;
|
2138 | c = Hc(+((d << 1) + c | 0) / 7.0) | 0;
|
2139 | b[i >> 2] = c;
|
2140 | b[h >> 2] = 0;
|
2141 | d = c - e | 0;
|
2142 |
|
2143 | if ((e | 0) < 0) {
|
2144 | g = 0 - e | 0;
|
2145 | b[i >> 2] = d;
|
2146 | b[h >> 2] = g;
|
2147 | b[a >> 2] = 0;
|
2148 | c = d;
|
2149 | e = 0;
|
2150 | d = g;
|
2151 | } else { d = 0; }
|
2152 |
|
2153 | if ((c | 0) < 0) {
|
2154 | e = e - c | 0;
|
2155 | b[a >> 2] = e;
|
2156 | d = d - c | 0;
|
2157 | b[h >> 2] = d;
|
2158 | b[i >> 2] = 0;
|
2159 | c = 0;
|
2160 | }
|
2161 |
|
2162 | g = e - d | 0;
|
2163 | f = c - d | 0;
|
2164 |
|
2165 | if ((d | 0) < 0) {
|
2166 | b[a >> 2] = g;
|
2167 | b[i >> 2] = f;
|
2168 | b[h >> 2] = 0;
|
2169 | c = f;
|
2170 | f = g;
|
2171 | d = 0;
|
2172 | } else { f = e; }
|
2173 |
|
2174 | e = (c | 0) < (f | 0) ? c : f;
|
2175 | e = (d | 0) < (e | 0) ? d : e;
|
2176 | if ((e | 0) <= 0) { return; }
|
2177 | b[a >> 2] = f - e;
|
2178 | b[i >> 2] = c - e;
|
2179 | b[h >> 2] = d - e;
|
2180 | return;
|
2181 | }
|
2182 |
|
2183 | function Ea(a) {
|
2184 | a = a | 0;
|
2185 | var c = 0,
|
2186 | d = 0,
|
2187 | e = 0,
|
2188 | f = 0,
|
2189 | g = 0,
|
2190 | h = 0,
|
2191 | i = 0;
|
2192 | h = a + 8 | 0;
|
2193 | d = b[h >> 2] | 0;
|
2194 | c = (b[a >> 2] | 0) - d | 0;
|
2195 | i = a + 4 | 0;
|
2196 | d = (b[i >> 2] | 0) - d | 0;
|
2197 | e = Hc(+((c << 1) + d | 0) / 7.0) | 0;
|
2198 | b[a >> 2] = e;
|
2199 | c = Hc(+((d * 3 | 0) - c | 0) / 7.0) | 0;
|
2200 | b[i >> 2] = c;
|
2201 | b[h >> 2] = 0;
|
2202 | d = c - e | 0;
|
2203 |
|
2204 | if ((e | 0) < 0) {
|
2205 | g = 0 - e | 0;
|
2206 | b[i >> 2] = d;
|
2207 | b[h >> 2] = g;
|
2208 | b[a >> 2] = 0;
|
2209 | c = d;
|
2210 | e = 0;
|
2211 | d = g;
|
2212 | } else { d = 0; }
|
2213 |
|
2214 | if ((c | 0) < 0) {
|
2215 | e = e - c | 0;
|
2216 | b[a >> 2] = e;
|
2217 | d = d - c | 0;
|
2218 | b[h >> 2] = d;
|
2219 | b[i >> 2] = 0;
|
2220 | c = 0;
|
2221 | }
|
2222 |
|
2223 | g = e - d | 0;
|
2224 | f = c - d | 0;
|
2225 |
|
2226 | if ((d | 0) < 0) {
|
2227 | b[a >> 2] = g;
|
2228 | b[i >> 2] = f;
|
2229 | b[h >> 2] = 0;
|
2230 | c = f;
|
2231 | f = g;
|
2232 | d = 0;
|
2233 | } else { f = e; }
|
2234 |
|
2235 | e = (c | 0) < (f | 0) ? c : f;
|
2236 | e = (d | 0) < (e | 0) ? d : e;
|
2237 | if ((e | 0) <= 0) { return; }
|
2238 | b[a >> 2] = f - e;
|
2239 | b[i >> 2] = c - e;
|
2240 | b[h >> 2] = d - e;
|
2241 | return;
|
2242 | }
|
2243 |
|
2244 | function Fa(a) {
|
2245 | a = a | 0;
|
2246 | var c = 0,
|
2247 | d = 0,
|
2248 | e = 0,
|
2249 | f = 0,
|
2250 | g = 0,
|
2251 | h = 0,
|
2252 | i = 0;
|
2253 | c = b[a >> 2] | 0;
|
2254 | h = a + 4 | 0;
|
2255 | d = b[h >> 2] | 0;
|
2256 | i = a + 8 | 0;
|
2257 | e = b[i >> 2] | 0;
|
2258 | f = d + (c * 3 | 0) | 0;
|
2259 | b[a >> 2] = f;
|
2260 | d = e + (d * 3 | 0) | 0;
|
2261 | b[h >> 2] = d;
|
2262 | c = (e * 3 | 0) + c | 0;
|
2263 | b[i >> 2] = c;
|
2264 | e = d - f | 0;
|
2265 |
|
2266 | if ((f | 0) < 0) {
|
2267 | c = c - f | 0;
|
2268 | b[h >> 2] = e;
|
2269 | b[i >> 2] = c;
|
2270 | b[a >> 2] = 0;
|
2271 | d = e;
|
2272 | e = 0;
|
2273 | } else { e = f; }
|
2274 |
|
2275 | if ((d | 0) < 0) {
|
2276 | e = e - d | 0;
|
2277 | b[a >> 2] = e;
|
2278 | c = c - d | 0;
|
2279 | b[i >> 2] = c;
|
2280 | b[h >> 2] = 0;
|
2281 | d = 0;
|
2282 | }
|
2283 |
|
2284 | g = e - c | 0;
|
2285 | f = d - c | 0;
|
2286 |
|
2287 | if ((c | 0) < 0) {
|
2288 | b[a >> 2] = g;
|
2289 | b[h >> 2] = f;
|
2290 | b[i >> 2] = 0;
|
2291 | e = g;
|
2292 | c = 0;
|
2293 | } else { f = d; }
|
2294 |
|
2295 | d = (f | 0) < (e | 0) ? f : e;
|
2296 | d = (c | 0) < (d | 0) ? c : d;
|
2297 | if ((d | 0) <= 0) { return; }
|
2298 | b[a >> 2] = e - d;
|
2299 | b[h >> 2] = f - d;
|
2300 | b[i >> 2] = c - d;
|
2301 | return;
|
2302 | }
|
2303 |
|
2304 | function Ga(a) {
|
2305 | a = a | 0;
|
2306 | var c = 0,
|
2307 | d = 0,
|
2308 | e = 0,
|
2309 | f = 0,
|
2310 | g = 0,
|
2311 | h = 0,
|
2312 | i = 0;
|
2313 | f = b[a >> 2] | 0;
|
2314 | h = a + 4 | 0;
|
2315 | c = b[h >> 2] | 0;
|
2316 | i = a + 8 | 0;
|
2317 | d = b[i >> 2] | 0;
|
2318 | e = (c * 3 | 0) + f | 0;
|
2319 | f = d + (f * 3 | 0) | 0;
|
2320 | b[a >> 2] = f;
|
2321 | b[h >> 2] = e;
|
2322 | c = (d * 3 | 0) + c | 0;
|
2323 | b[i >> 2] = c;
|
2324 | d = e - f | 0;
|
2325 |
|
2326 | if ((f | 0) < 0) {
|
2327 | c = c - f | 0;
|
2328 | b[h >> 2] = d;
|
2329 | b[i >> 2] = c;
|
2330 | b[a >> 2] = 0;
|
2331 | f = 0;
|
2332 | } else { d = e; }
|
2333 |
|
2334 | if ((d | 0) < 0) {
|
2335 | f = f - d | 0;
|
2336 | b[a >> 2] = f;
|
2337 | c = c - d | 0;
|
2338 | b[i >> 2] = c;
|
2339 | b[h >> 2] = 0;
|
2340 | d = 0;
|
2341 | }
|
2342 |
|
2343 | g = f - c | 0;
|
2344 | e = d - c | 0;
|
2345 |
|
2346 | if ((c | 0) < 0) {
|
2347 | b[a >> 2] = g;
|
2348 | b[h >> 2] = e;
|
2349 | b[i >> 2] = 0;
|
2350 | f = g;
|
2351 | c = 0;
|
2352 | } else { e = d; }
|
2353 |
|
2354 | d = (e | 0) < (f | 0) ? e : f;
|
2355 | d = (c | 0) < (d | 0) ? c : d;
|
2356 | if ((d | 0) <= 0) { return; }
|
2357 | b[a >> 2] = f - d;
|
2358 | b[h >> 2] = e - d;
|
2359 | b[i >> 2] = c - d;
|
2360 | return;
|
2361 | }
|
2362 |
|
2363 | function Ha(a, c) {
|
2364 | a = a | 0;
|
2365 | c = c | 0;
|
2366 | var d = 0,
|
2367 | e = 0,
|
2368 | f = 0,
|
2369 | g = 0,
|
2370 | h = 0,
|
2371 | i = 0;
|
2372 | if ((c + -1 | 0) >>> 0 >= 6) { return; }
|
2373 | f = (b[15472 + (c * 12 | 0) >> 2] | 0) + (b[a >> 2] | 0) | 0;
|
2374 | b[a >> 2] = f;
|
2375 | i = a + 4 | 0;
|
2376 | e = (b[15472 + (c * 12 | 0) + 4 >> 2] | 0) + (b[i >> 2] | 0) | 0;
|
2377 | b[i >> 2] = e;
|
2378 | h = a + 8 | 0;
|
2379 | c = (b[15472 + (c * 12 | 0) + 8 >> 2] | 0) + (b[h >> 2] | 0) | 0;
|
2380 | b[h >> 2] = c;
|
2381 | d = e - f | 0;
|
2382 |
|
2383 | if ((f | 0) < 0) {
|
2384 | c = c - f | 0;
|
2385 | b[i >> 2] = d;
|
2386 | b[h >> 2] = c;
|
2387 | b[a >> 2] = 0;
|
2388 | e = 0;
|
2389 | } else {
|
2390 | d = e;
|
2391 | e = f;
|
2392 | }
|
2393 |
|
2394 | if ((d | 0) < 0) {
|
2395 | e = e - d | 0;
|
2396 | b[a >> 2] = e;
|
2397 | c = c - d | 0;
|
2398 | b[h >> 2] = c;
|
2399 | b[i >> 2] = 0;
|
2400 | d = 0;
|
2401 | }
|
2402 |
|
2403 | g = e - c | 0;
|
2404 | f = d - c | 0;
|
2405 |
|
2406 | if ((c | 0) < 0) {
|
2407 | b[a >> 2] = g;
|
2408 | b[i >> 2] = f;
|
2409 | b[h >> 2] = 0;
|
2410 | e = g;
|
2411 | c = 0;
|
2412 | } else { f = d; }
|
2413 |
|
2414 | d = (f | 0) < (e | 0) ? f : e;
|
2415 | d = (c | 0) < (d | 0) ? c : d;
|
2416 | if ((d | 0) <= 0) { return; }
|
2417 | b[a >> 2] = e - d;
|
2418 | b[i >> 2] = f - d;
|
2419 | b[h >> 2] = c - d;
|
2420 | return;
|
2421 | }
|
2422 |
|
2423 | function Ia(a) {
|
2424 | a = a | 0;
|
2425 | var c = 0,
|
2426 | d = 0,
|
2427 | e = 0,
|
2428 | f = 0,
|
2429 | g = 0,
|
2430 | h = 0,
|
2431 | i = 0;
|
2432 | f = b[a >> 2] | 0;
|
2433 | h = a + 4 | 0;
|
2434 | c = b[h >> 2] | 0;
|
2435 | i = a + 8 | 0;
|
2436 | d = b[i >> 2] | 0;
|
2437 | e = c + f | 0;
|
2438 | f = d + f | 0;
|
2439 | b[a >> 2] = f;
|
2440 | b[h >> 2] = e;
|
2441 | c = d + c | 0;
|
2442 | b[i >> 2] = c;
|
2443 | d = e - f | 0;
|
2444 |
|
2445 | if ((f | 0) < 0) {
|
2446 | c = c - f | 0;
|
2447 | b[h >> 2] = d;
|
2448 | b[i >> 2] = c;
|
2449 | b[a >> 2] = 0;
|
2450 | e = 0;
|
2451 | } else {
|
2452 | d = e;
|
2453 | e = f;
|
2454 | }
|
2455 |
|
2456 | if ((d | 0) < 0) {
|
2457 | e = e - d | 0;
|
2458 | b[a >> 2] = e;
|
2459 | c = c - d | 0;
|
2460 | b[i >> 2] = c;
|
2461 | b[h >> 2] = 0;
|
2462 | d = 0;
|
2463 | }
|
2464 |
|
2465 | g = e - c | 0;
|
2466 | f = d - c | 0;
|
2467 |
|
2468 | if ((c | 0) < 0) {
|
2469 | b[a >> 2] = g;
|
2470 | b[h >> 2] = f;
|
2471 | b[i >> 2] = 0;
|
2472 | e = g;
|
2473 | c = 0;
|
2474 | } else { f = d; }
|
2475 |
|
2476 | d = (f | 0) < (e | 0) ? f : e;
|
2477 | d = (c | 0) < (d | 0) ? c : d;
|
2478 | if ((d | 0) <= 0) { return; }
|
2479 | b[a >> 2] = e - d;
|
2480 | b[h >> 2] = f - d;
|
2481 | b[i >> 2] = c - d;
|
2482 | return;
|
2483 | }
|
2484 |
|
2485 | function Ja(a) {
|
2486 | a = a | 0;
|
2487 | var c = 0,
|
2488 | d = 0,
|
2489 | e = 0,
|
2490 | f = 0,
|
2491 | g = 0,
|
2492 | h = 0,
|
2493 | i = 0;
|
2494 | c = b[a >> 2] | 0;
|
2495 | h = a + 4 | 0;
|
2496 | e = b[h >> 2] | 0;
|
2497 | i = a + 8 | 0;
|
2498 | d = b[i >> 2] | 0;
|
2499 | f = e + c | 0;
|
2500 | b[a >> 2] = f;
|
2501 | e = d + e | 0;
|
2502 | b[h >> 2] = e;
|
2503 | c = d + c | 0;
|
2504 | b[i >> 2] = c;
|
2505 | d = e - f | 0;
|
2506 |
|
2507 | if ((f | 0) < 0) {
|
2508 | c = c - f | 0;
|
2509 | b[h >> 2] = d;
|
2510 | b[i >> 2] = c;
|
2511 | b[a >> 2] = 0;
|
2512 | e = 0;
|
2513 | } else {
|
2514 | d = e;
|
2515 | e = f;
|
2516 | }
|
2517 |
|
2518 | if ((d | 0) < 0) {
|
2519 | e = e - d | 0;
|
2520 | b[a >> 2] = e;
|
2521 | c = c - d | 0;
|
2522 | b[i >> 2] = c;
|
2523 | b[h >> 2] = 0;
|
2524 | d = 0;
|
2525 | }
|
2526 |
|
2527 | g = e - c | 0;
|
2528 | f = d - c | 0;
|
2529 |
|
2530 | if ((c | 0) < 0) {
|
2531 | b[a >> 2] = g;
|
2532 | b[h >> 2] = f;
|
2533 | b[i >> 2] = 0;
|
2534 | e = g;
|
2535 | c = 0;
|
2536 | } else { f = d; }
|
2537 |
|
2538 | d = (f | 0) < (e | 0) ? f : e;
|
2539 | d = (c | 0) < (d | 0) ? c : d;
|
2540 | if ((d | 0) <= 0) { return; }
|
2541 | b[a >> 2] = e - d;
|
2542 | b[h >> 2] = f - d;
|
2543 | b[i >> 2] = c - d;
|
2544 | return;
|
2545 | }
|
2546 |
|
2547 | function Ka(a) {
|
2548 | a = a | 0;
|
2549 |
|
2550 | switch (a | 0) {
|
2551 | case 1:
|
2552 | {
|
2553 | a = 5;
|
2554 | break;
|
2555 | }
|
2556 |
|
2557 | case 5:
|
2558 | {
|
2559 | a = 4;
|
2560 | break;
|
2561 | }
|
2562 |
|
2563 | case 4:
|
2564 | {
|
2565 | a = 6;
|
2566 | break;
|
2567 | }
|
2568 |
|
2569 | case 6:
|
2570 | {
|
2571 | a = 2;
|
2572 | break;
|
2573 | }
|
2574 |
|
2575 | case 2:
|
2576 | {
|
2577 | a = 3;
|
2578 | break;
|
2579 | }
|
2580 |
|
2581 | case 3:
|
2582 | {
|
2583 | a = 1;
|
2584 | break;
|
2585 | }
|
2586 |
|
2587 | default:
|
2588 |
|
2589 | }
|
2590 |
|
2591 | return a | 0;
|
2592 | }
|
2593 |
|
2594 | function La(a) {
|
2595 | a = a | 0;
|
2596 |
|
2597 | switch (a | 0) {
|
2598 | case 1:
|
2599 | {
|
2600 | a = 3;
|
2601 | break;
|
2602 | }
|
2603 |
|
2604 | case 3:
|
2605 | {
|
2606 | a = 2;
|
2607 | break;
|
2608 | }
|
2609 |
|
2610 | case 2:
|
2611 | {
|
2612 | a = 6;
|
2613 | break;
|
2614 | }
|
2615 |
|
2616 | case 6:
|
2617 | {
|
2618 | a = 4;
|
2619 | break;
|
2620 | }
|
2621 |
|
2622 | case 4:
|
2623 | {
|
2624 | a = 5;
|
2625 | break;
|
2626 | }
|
2627 |
|
2628 | case 5:
|
2629 | {
|
2630 | a = 1;
|
2631 | break;
|
2632 | }
|
2633 |
|
2634 | default:
|
2635 |
|
2636 | }
|
2637 |
|
2638 | return a | 0;
|
2639 | }
|
2640 |
|
2641 | function Ma(a) {
|
2642 | a = a | 0;
|
2643 | var c = 0,
|
2644 | d = 0,
|
2645 | e = 0,
|
2646 | f = 0,
|
2647 | g = 0,
|
2648 | h = 0,
|
2649 | i = 0;
|
2650 | c = b[a >> 2] | 0;
|
2651 | h = a + 4 | 0;
|
2652 | d = b[h >> 2] | 0;
|
2653 | i = a + 8 | 0;
|
2654 | e = b[i >> 2] | 0;
|
2655 | f = d + (c << 1) | 0;
|
2656 | b[a >> 2] = f;
|
2657 | d = e + (d << 1) | 0;
|
2658 | b[h >> 2] = d;
|
2659 | c = (e << 1) + c | 0;
|
2660 | b[i >> 2] = c;
|
2661 | e = d - f | 0;
|
2662 |
|
2663 | if ((f | 0) < 0) {
|
2664 | c = c - f | 0;
|
2665 | b[h >> 2] = e;
|
2666 | b[i >> 2] = c;
|
2667 | b[a >> 2] = 0;
|
2668 | d = e;
|
2669 | e = 0;
|
2670 | } else { e = f; }
|
2671 |
|
2672 | if ((d | 0) < 0) {
|
2673 | e = e - d | 0;
|
2674 | b[a >> 2] = e;
|
2675 | c = c - d | 0;
|
2676 | b[i >> 2] = c;
|
2677 | b[h >> 2] = 0;
|
2678 | d = 0;
|
2679 | }
|
2680 |
|
2681 | g = e - c | 0;
|
2682 | f = d - c | 0;
|
2683 |
|
2684 | if ((c | 0) < 0) {
|
2685 | b[a >> 2] = g;
|
2686 | b[h >> 2] = f;
|
2687 | b[i >> 2] = 0;
|
2688 | e = g;
|
2689 | c = 0;
|
2690 | } else { f = d; }
|
2691 |
|
2692 | d = (f | 0) < (e | 0) ? f : e;
|
2693 | d = (c | 0) < (d | 0) ? c : d;
|
2694 | if ((d | 0) <= 0) { return; }
|
2695 | b[a >> 2] = e - d;
|
2696 | b[h >> 2] = f - d;
|
2697 | b[i >> 2] = c - d;
|
2698 | return;
|
2699 | }
|
2700 |
|
2701 | function Na(a) {
|
2702 | a = a | 0;
|
2703 | var c = 0,
|
2704 | d = 0,
|
2705 | e = 0,
|
2706 | f = 0,
|
2707 | g = 0,
|
2708 | h = 0,
|
2709 | i = 0;
|
2710 | f = b[a >> 2] | 0;
|
2711 | h = a + 4 | 0;
|
2712 | c = b[h >> 2] | 0;
|
2713 | i = a + 8 | 0;
|
2714 | d = b[i >> 2] | 0;
|
2715 | e = (c << 1) + f | 0;
|
2716 | f = d + (f << 1) | 0;
|
2717 | b[a >> 2] = f;
|
2718 | b[h >> 2] = e;
|
2719 | c = (d << 1) + c | 0;
|
2720 | b[i >> 2] = c;
|
2721 | d = e - f | 0;
|
2722 |
|
2723 | if ((f | 0) < 0) {
|
2724 | c = c - f | 0;
|
2725 | b[h >> 2] = d;
|
2726 | b[i >> 2] = c;
|
2727 | b[a >> 2] = 0;
|
2728 | f = 0;
|
2729 | } else { d = e; }
|
2730 |
|
2731 | if ((d | 0) < 0) {
|
2732 | f = f - d | 0;
|
2733 | b[a >> 2] = f;
|
2734 | c = c - d | 0;
|
2735 | b[i >> 2] = c;
|
2736 | b[h >> 2] = 0;
|
2737 | d = 0;
|
2738 | }
|
2739 |
|
2740 | g = f - c | 0;
|
2741 | e = d - c | 0;
|
2742 |
|
2743 | if ((c | 0) < 0) {
|
2744 | b[a >> 2] = g;
|
2745 | b[h >> 2] = e;
|
2746 | b[i >> 2] = 0;
|
2747 | f = g;
|
2748 | c = 0;
|
2749 | } else { e = d; }
|
2750 |
|
2751 | d = (e | 0) < (f | 0) ? e : f;
|
2752 | d = (c | 0) < (d | 0) ? c : d;
|
2753 | if ((d | 0) <= 0) { return; }
|
2754 | b[a >> 2] = f - d;
|
2755 | b[h >> 2] = e - d;
|
2756 | b[i >> 2] = c - d;
|
2757 | return;
|
2758 | }
|
2759 |
|
2760 | function Oa(a, c) {
|
2761 | a = a | 0;
|
2762 | c = c | 0;
|
2763 | var d = 0,
|
2764 | e = 0,
|
2765 | f = 0,
|
2766 | g = 0,
|
2767 | h = 0,
|
2768 | i = 0;
|
2769 | h = (b[a >> 2] | 0) - (b[c >> 2] | 0) | 0;
|
2770 | i = (h | 0) < 0;
|
2771 | e = (b[a + 4 >> 2] | 0) - (b[c + 4 >> 2] | 0) - (i ? h : 0) | 0;
|
2772 | g = (e | 0) < 0;
|
2773 | f = (i ? 0 - h | 0 : 0) + (b[a + 8 >> 2] | 0) - (b[c + 8 >> 2] | 0) + (g ? 0 - e | 0 : 0) | 0;
|
2774 | a = (f | 0) < 0;
|
2775 | c = a ? 0 : f;
|
2776 | d = (g ? 0 : e) - (a ? f : 0) | 0;
|
2777 | f = (i ? 0 : h) - (g ? e : 0) - (a ? f : 0) | 0;
|
2778 | a = (d | 0) < (f | 0) ? d : f;
|
2779 | a = (c | 0) < (a | 0) ? c : a;
|
2780 | e = (a | 0) > 0;
|
2781 | c = c - (e ? a : 0) | 0;
|
2782 | d = d - (e ? a : 0) | 0;
|
2783 | a = f - (e ? a : 0) | 0;
|
2784 | a = (a | 0) > -1 ? a : 0 - a | 0;
|
2785 | d = (d | 0) > -1 ? d : 0 - d | 0;
|
2786 | c = (c | 0) > -1 ? c : 0 - c | 0;
|
2787 | c = (d | 0) > (c | 0) ? d : c;
|
2788 | return ((a | 0) > (c | 0) ? a : c) | 0;
|
2789 | }
|
2790 |
|
2791 | function Pa(a, c) {
|
2792 | a = a | 0;
|
2793 | c = c | 0;
|
2794 | var d = 0;
|
2795 | d = b[a + 8 >> 2] | 0;
|
2796 | b[c >> 2] = (b[a >> 2] | 0) - d;
|
2797 | b[c + 4 >> 2] = (b[a + 4 >> 2] | 0) - d;
|
2798 | return;
|
2799 | }
|
2800 |
|
2801 | function Qa(a, c) {
|
2802 | a = a | 0;
|
2803 | c = c | 0;
|
2804 | var d = 0,
|
2805 | e = 0,
|
2806 | f = 0,
|
2807 | g = 0,
|
2808 | h = 0,
|
2809 | i = 0;
|
2810 | e = b[a >> 2] | 0;
|
2811 | b[c >> 2] = e;
|
2812 | a = b[a + 4 >> 2] | 0;
|
2813 | h = c + 4 | 0;
|
2814 | b[h >> 2] = a;
|
2815 | i = c + 8 | 0;
|
2816 | b[i >> 2] = 0;
|
2817 | d = a - e | 0;
|
2818 |
|
2819 | if ((e | 0) < 0) {
|
2820 | a = 0 - e | 0;
|
2821 | b[h >> 2] = d;
|
2822 | b[i >> 2] = a;
|
2823 | b[c >> 2] = 0;
|
2824 | e = 0;
|
2825 | } else {
|
2826 | d = a;
|
2827 | a = 0;
|
2828 | }
|
2829 |
|
2830 | if ((d | 0) < 0) {
|
2831 | e = e - d | 0;
|
2832 | b[c >> 2] = e;
|
2833 | a = a - d | 0;
|
2834 | b[i >> 2] = a;
|
2835 | b[h >> 2] = 0;
|
2836 | d = 0;
|
2837 | }
|
2838 |
|
2839 | g = e - a | 0;
|
2840 | f = d - a | 0;
|
2841 |
|
2842 | if ((a | 0) < 0) {
|
2843 | b[c >> 2] = g;
|
2844 | b[h >> 2] = f;
|
2845 | b[i >> 2] = 0;
|
2846 | d = f;
|
2847 | f = g;
|
2848 | a = 0;
|
2849 | } else { f = e; }
|
2850 |
|
2851 | e = (d | 0) < (f | 0) ? d : f;
|
2852 | e = (a | 0) < (e | 0) ? a : e;
|
2853 | if ((e | 0) <= 0) { return; }
|
2854 | b[c >> 2] = f - e;
|
2855 | b[h >> 2] = d - e;
|
2856 | b[i >> 2] = a - e;
|
2857 | return;
|
2858 | }
|
2859 |
|
2860 | function Ra(a) {
|
2861 | a = a | 0;
|
2862 | var c = 0,
|
2863 | d = 0,
|
2864 | e = 0,
|
2865 | f = 0;
|
2866 | c = a + 8 | 0;
|
2867 | f = b[c >> 2] | 0;
|
2868 | d = f - (b[a >> 2] | 0) | 0;
|
2869 | b[a >> 2] = d;
|
2870 | e = a + 4 | 0;
|
2871 | a = (b[e >> 2] | 0) - f | 0;
|
2872 | b[e >> 2] = a;
|
2873 | b[c >> 2] = 0 - (a + d);
|
2874 | return;
|
2875 | }
|
2876 |
|
2877 | function Sa(a) {
|
2878 | a = a | 0;
|
2879 | var c = 0,
|
2880 | d = 0,
|
2881 | e = 0,
|
2882 | f = 0,
|
2883 | g = 0,
|
2884 | h = 0,
|
2885 | i = 0;
|
2886 | d = b[a >> 2] | 0;
|
2887 | c = 0 - d | 0;
|
2888 | b[a >> 2] = c;
|
2889 | h = a + 8 | 0;
|
2890 | b[h >> 2] = 0;
|
2891 | i = a + 4 | 0;
|
2892 | e = b[i >> 2] | 0;
|
2893 | f = e + d | 0;
|
2894 |
|
2895 | if ((d | 0) > 0) {
|
2896 | b[i >> 2] = f;
|
2897 | b[h >> 2] = d;
|
2898 | b[a >> 2] = 0;
|
2899 | c = 0;
|
2900 | e = f;
|
2901 | } else { d = 0; }
|
2902 |
|
2903 | if ((e | 0) < 0) {
|
2904 | g = c - e | 0;
|
2905 | b[a >> 2] = g;
|
2906 | d = d - e | 0;
|
2907 | b[h >> 2] = d;
|
2908 | b[i >> 2] = 0;
|
2909 | f = g - d | 0;
|
2910 | c = 0 - d | 0;
|
2911 |
|
2912 | if ((d | 0) < 0) {
|
2913 | b[a >> 2] = f;
|
2914 | b[i >> 2] = c;
|
2915 | b[h >> 2] = 0;
|
2916 | e = c;
|
2917 | d = 0;
|
2918 | } else {
|
2919 | e = 0;
|
2920 | f = g;
|
2921 | }
|
2922 | } else { f = c; }
|
2923 |
|
2924 | c = (e | 0) < (f | 0) ? e : f;
|
2925 | c = (d | 0) < (c | 0) ? d : c;
|
2926 | if ((c | 0) <= 0) { return; }
|
2927 | b[a >> 2] = f - c;
|
2928 | b[i >> 2] = e - c;
|
2929 | b[h >> 2] = d - c;
|
2930 | return;
|
2931 | }
|
2932 |
|
2933 | function Ta(a, b, c) {
|
2934 | a = a | 0;
|
2935 | b = b | 0;
|
2936 | c = c | 0;
|
2937 | var d = 0,
|
2938 | e = 0;
|
2939 | d = R;
|
2940 | R = R + 16 | 0;
|
2941 | e = d;
|
2942 | Ua(a, b, c, e);
|
2943 | wa(e, c + 4 | 0);
|
2944 | R = d;
|
2945 | return;
|
2946 | }
|
2947 |
|
2948 | function Ua(a, c, d, f) {
|
2949 | a = a | 0;
|
2950 | c = c | 0;
|
2951 | d = d | 0;
|
2952 | f = f | 0;
|
2953 | var g = 0.0,
|
2954 | h = 0,
|
2955 | i = 0.0,
|
2956 | j = 0.0,
|
2957 | k = 0;
|
2958 | k = R;
|
2959 | R = R + 32 | 0;
|
2960 | h = k;
|
2961 | xc(a, h);
|
2962 | b[d >> 2] = 0;
|
2963 | g = +wc(15888, h);
|
2964 | i = +wc(15912, h);
|
2965 |
|
2966 | if (i < g) {
|
2967 | b[d >> 2] = 1;
|
2968 | g = i;
|
2969 | }
|
2970 |
|
2971 | i = +wc(15936, h);
|
2972 |
|
2973 | if (i < g) {
|
2974 | b[d >> 2] = 2;
|
2975 | g = i;
|
2976 | }
|
2977 |
|
2978 | i = +wc(15960, h);
|
2979 |
|
2980 | if (i < g) {
|
2981 | b[d >> 2] = 3;
|
2982 | g = i;
|
2983 | }
|
2984 |
|
2985 | i = +wc(15984, h);
|
2986 |
|
2987 | if (i < g) {
|
2988 | b[d >> 2] = 4;
|
2989 | g = i;
|
2990 | }
|
2991 |
|
2992 | i = +wc(16008, h);
|
2993 |
|
2994 | if (i < g) {
|
2995 | b[d >> 2] = 5;
|
2996 | g = i;
|
2997 | }
|
2998 |
|
2999 | i = +wc(16032, h);
|
3000 |
|
3001 | if (i < g) {
|
3002 | b[d >> 2] = 6;
|
3003 | g = i;
|
3004 | }
|
3005 |
|
3006 | i = +wc(16056, h);
|
3007 |
|
3008 | if (i < g) {
|
3009 | b[d >> 2] = 7;
|
3010 | g = i;
|
3011 | }
|
3012 |
|
3013 | i = +wc(16080, h);
|
3014 |
|
3015 | if (i < g) {
|
3016 | b[d >> 2] = 8;
|
3017 | g = i;
|
3018 | }
|
3019 |
|
3020 | i = +wc(16104, h);
|
3021 |
|
3022 | if (i < g) {
|
3023 | b[d >> 2] = 9;
|
3024 | g = i;
|
3025 | }
|
3026 |
|
3027 | i = +wc(16128, h);
|
3028 |
|
3029 | if (i < g) {
|
3030 | b[d >> 2] = 10;
|
3031 | g = i;
|
3032 | }
|
3033 |
|
3034 | i = +wc(16152, h);
|
3035 |
|
3036 | if (i < g) {
|
3037 | b[d >> 2] = 11;
|
3038 | g = i;
|
3039 | }
|
3040 |
|
3041 | i = +wc(16176, h);
|
3042 |
|
3043 | if (i < g) {
|
3044 | b[d >> 2] = 12;
|
3045 | g = i;
|
3046 | }
|
3047 |
|
3048 | i = +wc(16200, h);
|
3049 |
|
3050 | if (i < g) {
|
3051 | b[d >> 2] = 13;
|
3052 | g = i;
|
3053 | }
|
3054 |
|
3055 | i = +wc(16224, h);
|
3056 |
|
3057 | if (i < g) {
|
3058 | b[d >> 2] = 14;
|
3059 | g = i;
|
3060 | }
|
3061 |
|
3062 | i = +wc(16248, h);
|
3063 |
|
3064 | if (i < g) {
|
3065 | b[d >> 2] = 15;
|
3066 | g = i;
|
3067 | }
|
3068 |
|
3069 | i = +wc(16272, h);
|
3070 |
|
3071 | if (i < g) {
|
3072 | b[d >> 2] = 16;
|
3073 | g = i;
|
3074 | }
|
3075 |
|
3076 | i = +wc(16296, h);
|
3077 |
|
3078 | if (i < g) {
|
3079 | b[d >> 2] = 17;
|
3080 | g = i;
|
3081 | }
|
3082 |
|
3083 | i = +wc(16320, h);
|
3084 |
|
3085 | if (i < g) {
|
3086 | b[d >> 2] = 18;
|
3087 | g = i;
|
3088 | }
|
3089 |
|
3090 | i = +wc(16344, h);
|
3091 |
|
3092 | if (i < g) {
|
3093 | b[d >> 2] = 19;
|
3094 | g = i;
|
3095 | }
|
3096 |
|
3097 | i = +w(+(1.0 - g * .5));
|
3098 |
|
3099 | if (i < 1.0e-16) {
|
3100 | b[f >> 2] = 0;
|
3101 | b[f + 4 >> 2] = 0;
|
3102 | b[f + 8 >> 2] = 0;
|
3103 | b[f + 12 >> 2] = 0;
|
3104 | R = k;
|
3105 | return;
|
3106 | }
|
3107 |
|
3108 | d = b[d >> 2] | 0;
|
3109 | g = +e[16368 + (d * 24 | 0) >> 3];
|
3110 | g = +bb(g - +bb(+hb(15568 + (d << 4) | 0, a)));
|
3111 | if (!(Fb(c) | 0)) { j = g; }else { j = +bb(g + -.3334731722518321); }
|
3112 | g = +v(+i) / .381966011250105;
|
3113 |
|
3114 | if ((c | 0) > 0) {
|
3115 | h = 0;
|
3116 |
|
3117 | do {
|
3118 | g = g * 2.6457513110645907;
|
3119 | h = h + 1 | 0;
|
3120 | } while ((h | 0) != (c | 0));
|
3121 | }
|
3122 |
|
3123 | i = +t(+j) * g;
|
3124 | e[f >> 3] = i;
|
3125 | j = +u(+j) * g;
|
3126 | e[f + 8 >> 3] = j;
|
3127 | R = k;
|
3128 | return;
|
3129 | }
|
3130 |
|
3131 | function Va(a, c, d, f, g) {
|
3132 | a = a | 0;
|
3133 | c = c | 0;
|
3134 | d = d | 0;
|
3135 | f = f | 0;
|
3136 | g = g | 0;
|
3137 | var h = 0.0,
|
3138 | i = 0.0;
|
3139 | h = +tc(a);
|
3140 |
|
3141 | if (h < 1.0e-16) {
|
3142 | c = 15568 + (c << 4) | 0;
|
3143 | b[g >> 2] = b[c >> 2];
|
3144 | b[g + 4 >> 2] = b[c + 4 >> 2];
|
3145 | b[g + 8 >> 2] = b[c + 8 >> 2];
|
3146 | b[g + 12 >> 2] = b[c + 12 >> 2];
|
3147 | return;
|
3148 | }
|
3149 |
|
3150 | i = +z(+ +e[a + 8 >> 3], + +e[a >> 3]);
|
3151 |
|
3152 | if ((d | 0) > 0) {
|
3153 | a = 0;
|
3154 |
|
3155 | do {
|
3156 | h = h / 2.6457513110645907;
|
3157 | a = a + 1 | 0;
|
3158 | } while ((a | 0) != (d | 0));
|
3159 | }
|
3160 |
|
3161 | if (!f) {
|
3162 | h = +y(+(h * .381966011250105));
|
3163 | if (Fb(d) | 0) { i = +bb(i + .3334731722518321); }
|
3164 | } else {
|
3165 | h = h / 3.0;
|
3166 | d = (Fb(d) | 0) == 0;
|
3167 | h = +y(+((d ? h : h / 2.6457513110645907) * .381966011250105));
|
3168 | }
|
3169 |
|
3170 | ib(15568 + (c << 4) | 0, +bb(+e[16368 + (c * 24 | 0) >> 3] - i), h, g);
|
3171 | return;
|
3172 | }
|
3173 |
|
3174 | function Wa(a, c, d) {
|
3175 | a = a | 0;
|
3176 | c = c | 0;
|
3177 | d = d | 0;
|
3178 | var e = 0,
|
3179 | f = 0;
|
3180 | e = R;
|
3181 | R = R + 16 | 0;
|
3182 | f = e;
|
3183 | ya(a + 4 | 0, f);
|
3184 | Va(f, b[a >> 2] | 0, c, 0, d);
|
3185 | R = e;
|
3186 | return;
|
3187 | }
|
3188 |
|
3189 | function Xa(a, c, d) {
|
3190 | a = a | 0;
|
3191 | c = c | 0;
|
3192 | d = d | 0;
|
3193 | var f = 0,
|
3194 | g = 0,
|
3195 | h = 0,
|
3196 | i = 0,
|
3197 | j = 0,
|
3198 | k = 0,
|
3199 | l = 0,
|
3200 | m = 0,
|
3201 | n = 0,
|
3202 | o = 0,
|
3203 | p = 0,
|
3204 | q = 0,
|
3205 | r = 0,
|
3206 | s = 0,
|
3207 | t = 0,
|
3208 | u = 0,
|
3209 | v = 0,
|
3210 | w = 0,
|
3211 | x = 0,
|
3212 | y = 0,
|
3213 | z = 0,
|
3214 | A = 0,
|
3215 | B = 0,
|
3216 | C = 0,
|
3217 | D = 0,
|
3218 | E = 0.0,
|
3219 | F = 0.0;
|
3220 | D = R;
|
3221 | R = R + 272 | 0;
|
3222 | j = D + 256 | 0;
|
3223 | k = D + 240 | 0;
|
3224 | y = D;
|
3225 | z = D + 224 | 0;
|
3226 | A = D + 208 | 0;
|
3227 | B = D + 176 | 0;
|
3228 | C = D + 160 | 0;
|
3229 | s = D + 192 | 0;
|
3230 | t = D + 144 | 0;
|
3231 | u = D + 128 | 0;
|
3232 | v = D + 112 | 0;
|
3233 | w = D + 96 | 0;
|
3234 | x = D + 80 | 0;
|
3235 | b[j >> 2] = c;
|
3236 | b[k >> 2] = b[a >> 2];
|
3237 | b[k + 4 >> 2] = b[a + 4 >> 2];
|
3238 | b[k + 8 >> 2] = b[a + 8 >> 2];
|
3239 | b[k + 12 >> 2] = b[a + 12 >> 2];
|
3240 | Ya(k, j, y);
|
3241 | b[d >> 2] = 0;
|
3242 | j = b[j >> 2] | 0;
|
3243 | k = z + 4 | 0;
|
3244 | l = B + 4 | 0;
|
3245 | m = 16848 + (j << 2) | 0;
|
3246 | n = 16928 + (j << 2) | 0;
|
3247 | o = u + 8 | 0;
|
3248 | p = v + 8 | 0;
|
3249 | q = w + 8 | 0;
|
3250 | r = A + 4 | 0;
|
3251 | i = 0;
|
3252 |
|
3253 | a: while (1) {
|
3254 | h = y + (((i >>> 0) % 5 | 0) << 4) | 0;
|
3255 | b[A >> 2] = b[h >> 2];
|
3256 | b[A + 4 >> 2] = b[h + 4 >> 2];
|
3257 | b[A + 8 >> 2] = b[h + 8 >> 2];
|
3258 | b[A + 12 >> 2] = b[h + 12 >> 2];
|
3259 |
|
3260 | do {} while ((Za(A, j, 0, 1) | 0) == 2);
|
3261 |
|
3262 | if ((i | 0) != 0 & (Fb(c) | 0) != 0) {
|
3263 | b[B >> 2] = b[A >> 2];
|
3264 | b[B + 4 >> 2] = b[A + 4 >> 2];
|
3265 | b[B + 8 >> 2] = b[A + 8 >> 2];
|
3266 | b[B + 12 >> 2] = b[A + 12 >> 2];
|
3267 | ya(k, C);
|
3268 | f = b[B >> 2] | 0;
|
3269 | g = b[17008 + (f * 80 | 0) + (b[z >> 2] << 2) >> 2] | 0;
|
3270 | b[B >> 2] = b[18608 + (f * 80 | 0) + (g * 20 | 0) >> 2];
|
3271 | h = b[18608 + (f * 80 | 0) + (g * 20 | 0) + 16 >> 2] | 0;
|
3272 |
|
3273 | if ((h | 0) > 0) {
|
3274 | a = 0;
|
3275 |
|
3276 | do {
|
3277 | Ia(l);
|
3278 | a = a + 1 | 0;
|
3279 | } while ((a | 0) < (h | 0));
|
3280 | }
|
3281 |
|
3282 | h = 18608 + (f * 80 | 0) + (g * 20 | 0) + 4 | 0;
|
3283 | b[s >> 2] = b[h >> 2];
|
3284 | b[s + 4 >> 2] = b[h + 4 >> 2];
|
3285 | b[s + 8 >> 2] = b[h + 8 >> 2];
|
3286 | Ba(s, (b[m >> 2] | 0) * 3 | 0);
|
3287 | za(l, s, l);
|
3288 | xa(l);
|
3289 | ya(l, t);
|
3290 | E = +(b[n >> 2] | 0);
|
3291 | e[u >> 3] = E * 3.0;
|
3292 | e[o >> 3] = 0.0;
|
3293 | F = E * -1.5;
|
3294 | e[v >> 3] = F;
|
3295 | e[p >> 3] = E * 2.598076211353316;
|
3296 | e[w >> 3] = F;
|
3297 | e[q >> 3] = E * -2.598076211353316;
|
3298 |
|
3299 | switch (b[17008 + ((b[B >> 2] | 0) * 80 | 0) + (b[A >> 2] << 2) >> 2] | 0) {
|
3300 | case 1:
|
3301 | {
|
3302 | a = v;
|
3303 | f = u;
|
3304 | break;
|
3305 | }
|
3306 |
|
3307 | case 3:
|
3308 | {
|
3309 | a = w;
|
3310 | f = v;
|
3311 | break;
|
3312 | }
|
3313 |
|
3314 | case 2:
|
3315 | {
|
3316 | a = u;
|
3317 | f = w;
|
3318 | break;
|
3319 | }
|
3320 |
|
3321 | default:
|
3322 | {
|
3323 | a = 11;
|
3324 | break a;
|
3325 | }
|
3326 | }
|
3327 |
|
3328 | uc(C, t, f, a, x);
|
3329 | Va(x, b[B >> 2] | 0, j, 1, d + 8 + (b[d >> 2] << 4) | 0);
|
3330 | b[d >> 2] = (b[d >> 2] | 0) + 1;
|
3331 | }
|
3332 |
|
3333 | if (i >>> 0 < 5) {
|
3334 | ya(r, B);
|
3335 | Va(B, b[A >> 2] | 0, j, 1, d + 8 + (b[d >> 2] << 4) | 0);
|
3336 | b[d >> 2] = (b[d >> 2] | 0) + 1;
|
3337 | }
|
3338 | b[z >> 2] = b[A >> 2];
|
3339 | b[z + 4 >> 2] = b[A + 4 >> 2];
|
3340 | b[z + 8 >> 2] = b[A + 8 >> 2];
|
3341 | b[z + 12 >> 2] = b[A + 12 >> 2];
|
3342 | i = i + 1 | 0;
|
3343 |
|
3344 | if (i >>> 0 >= 6) {
|
3345 | a = 2;
|
3346 | break;
|
3347 | }
|
3348 | }
|
3349 |
|
3350 | if ((a | 0) == 2) {
|
3351 | R = D;
|
3352 | return;
|
3353 | } else if ((a | 0) == 11) { G(22113, 22160, 571, 22170); }
|
3354 | }
|
3355 |
|
3356 | function Ya(a, c, d) {
|
3357 | a = a | 0;
|
3358 | c = c | 0;
|
3359 | d = d | 0;
|
3360 | var e = 0,
|
3361 | f = 0,
|
3362 | g = 0,
|
3363 | h = 0,
|
3364 | i = 0,
|
3365 | j = 0;
|
3366 | j = R;
|
3367 | R = R + 128 | 0;
|
3368 | e = j + 64 | 0;
|
3369 | f = j;
|
3370 | g = e;
|
3371 | h = 20208;
|
3372 | i = g + 60 | 0;
|
3373 |
|
3374 | do {
|
3375 | b[g >> 2] = b[h >> 2];
|
3376 | g = g + 4 | 0;
|
3377 | h = h + 4 | 0;
|
3378 | } while ((g | 0) < (i | 0));
|
3379 |
|
3380 | g = f;
|
3381 | h = 20272;
|
3382 | i = g + 60 | 0;
|
3383 |
|
3384 | do {
|
3385 | b[g >> 2] = b[h >> 2];
|
3386 | g = g + 4 | 0;
|
3387 | h = h + 4 | 0;
|
3388 | } while ((g | 0) < (i | 0));
|
3389 |
|
3390 | i = (Fb(b[c >> 2] | 0) | 0) == 0;
|
3391 | e = i ? e : f;
|
3392 | f = a + 4 | 0;
|
3393 | Ma(f);
|
3394 | Na(f);
|
3395 |
|
3396 | if (Fb(b[c >> 2] | 0) | 0) {
|
3397 | Ga(f);
|
3398 | b[c >> 2] = (b[c >> 2] | 0) + 1;
|
3399 | }
|
3400 |
|
3401 | b[d >> 2] = b[a >> 2];
|
3402 | c = d + 4 | 0;
|
3403 | za(f, e, c);
|
3404 | xa(c);
|
3405 | b[d + 16 >> 2] = b[a >> 2];
|
3406 | c = d + 20 | 0;
|
3407 | za(f, e + 12 | 0, c);
|
3408 | xa(c);
|
3409 | b[d + 32 >> 2] = b[a >> 2];
|
3410 | c = d + 36 | 0;
|
3411 | za(f, e + 24 | 0, c);
|
3412 | xa(c);
|
3413 | b[d + 48 >> 2] = b[a >> 2];
|
3414 | c = d + 52 | 0;
|
3415 | za(f, e + 36 | 0, c);
|
3416 | xa(c);
|
3417 | b[d + 64 >> 2] = b[a >> 2];
|
3418 | d = d + 68 | 0;
|
3419 | za(f, e + 48 | 0, d);
|
3420 | xa(d);
|
3421 | R = j;
|
3422 | return;
|
3423 | }
|
3424 |
|
3425 | function Za(a, c, d, e) {
|
3426 | a = a | 0;
|
3427 | c = c | 0;
|
3428 | d = d | 0;
|
3429 | e = e | 0;
|
3430 | var f = 0,
|
3431 | g = 0,
|
3432 | h = 0,
|
3433 | i = 0,
|
3434 | j = 0,
|
3435 | k = 0,
|
3436 | l = 0,
|
3437 | m = 0,
|
3438 | n = 0,
|
3439 | o = 0,
|
3440 | p = 0;
|
3441 | p = R;
|
3442 | R = R + 32 | 0;
|
3443 | n = p + 12 | 0;
|
3444 | i = p;
|
3445 | o = a + 4 | 0;
|
3446 | m = b[16928 + (c << 2) >> 2] | 0;
|
3447 | l = (e | 0) != 0;
|
3448 | m = l ? m * 3 | 0 : m;
|
3449 | f = b[o >> 2] | 0;
|
3450 | k = a + 8 | 0;
|
3451 | h = b[k >> 2] | 0;
|
3452 |
|
3453 | if (l) {
|
3454 | g = a + 12 | 0;
|
3455 | e = b[g >> 2] | 0;
|
3456 | f = h + f + e | 0;
|
3457 |
|
3458 | if ((f | 0) == (m | 0)) {
|
3459 | o = 1;
|
3460 | R = p;
|
3461 | return o | 0;
|
3462 | } else { j = g; }
|
3463 | } else {
|
3464 | j = a + 12 | 0;
|
3465 | e = b[j >> 2] | 0;
|
3466 | f = h + f + e | 0;
|
3467 | }
|
3468 |
|
3469 | if ((f | 0) <= (m | 0)) {
|
3470 | o = 0;
|
3471 | R = p;
|
3472 | return o | 0;
|
3473 | }
|
3474 |
|
3475 | do { if ((e | 0) > 0) {
|
3476 | e = b[a >> 2] | 0;
|
3477 |
|
3478 | if ((h | 0) > 0) {
|
3479 | g = 18608 + (e * 80 | 0) + 60 | 0;
|
3480 | e = a;
|
3481 | break;
|
3482 | }
|
3483 |
|
3484 | e = 18608 + (e * 80 | 0) + 40 | 0;
|
3485 |
|
3486 | if (!d) {
|
3487 | g = e;
|
3488 | e = a;
|
3489 | } else {
|
3490 | va(n, m, 0, 0);
|
3491 | Aa(o, n, i);
|
3492 | Ja(i);
|
3493 | za(i, n, o);
|
3494 | g = e;
|
3495 | e = a;
|
3496 | }
|
3497 | } else {
|
3498 | g = 18608 + ((b[a >> 2] | 0) * 80 | 0) + 20 | 0;
|
3499 | e = a;
|
3500 | } } while (0);
|
3501 |
|
3502 | b[e >> 2] = b[g >> 2];
|
3503 | f = g + 16 | 0;
|
3504 |
|
3505 | if ((b[f >> 2] | 0) > 0) {
|
3506 | e = 0;
|
3507 |
|
3508 | do {
|
3509 | Ia(o);
|
3510 | e = e + 1 | 0;
|
3511 | } while ((e | 0) < (b[f >> 2] | 0));
|
3512 | }
|
3513 |
|
3514 | a = g + 4 | 0;
|
3515 | b[n >> 2] = b[a >> 2];
|
3516 | b[n + 4 >> 2] = b[a + 4 >> 2];
|
3517 | b[n + 8 >> 2] = b[a + 8 >> 2];
|
3518 | c = b[16848 + (c << 2) >> 2] | 0;
|
3519 | Ba(n, l ? c * 3 | 0 : c);
|
3520 | za(o, n, o);
|
3521 | xa(o);
|
3522 | if (l) { e = ((b[k >> 2] | 0) + (b[o >> 2] | 0) + (b[j >> 2] | 0) | 0) == (m | 0) ? 1 : 2; }else { e = 2; }
|
3523 | o = e;
|
3524 | R = p;
|
3525 | return o | 0;
|
3526 | }
|
3527 |
|
3528 | function _a(a, b) {
|
3529 | a = a | 0;
|
3530 | b = b | 0;
|
3531 | var c = 0;
|
3532 |
|
3533 | do { c = Za(a, b, 0, 1) | 0; } while ((c | 0) == 2);
|
3534 |
|
3535 | return c | 0;
|
3536 | }
|
3537 |
|
3538 | function $a(a, c, d, f) {
|
3539 | a = a | 0;
|
3540 | c = c | 0;
|
3541 | d = d | 0;
|
3542 | f = f | 0;
|
3543 | var g = 0,
|
3544 | h = 0,
|
3545 | i = 0,
|
3546 | j = 0,
|
3547 | k = 0,
|
3548 | l = 0,
|
3549 | m = 0,
|
3550 | n = 0,
|
3551 | o = 0,
|
3552 | p = 0,
|
3553 | q = 0,
|
3554 | r = 0,
|
3555 | s = 0,
|
3556 | t = 0,
|
3557 | u = 0,
|
3558 | v = 0,
|
3559 | w = 0,
|
3560 | x = 0,
|
3561 | y = 0,
|
3562 | z = 0,
|
3563 | A = 0.0,
|
3564 | B = 0.0;
|
3565 | z = R;
|
3566 | R = R + 240 | 0;
|
3567 | g = z + 224 | 0;
|
3568 | t = z + 208 | 0;
|
3569 | u = z;
|
3570 | v = z + 192 | 0;
|
3571 | w = z + 176 | 0;
|
3572 | x = z + 160 | 0;
|
3573 | p = z + 144 | 0;
|
3574 | q = z + 128 | 0;
|
3575 | r = z + 112 | 0;
|
3576 | s = z + 96 | 0;
|
3577 |
|
3578 | if (d | 0) {
|
3579 | Xa(a, c, f);
|
3580 | R = z;
|
3581 | return;
|
3582 | }
|
3583 |
|
3584 | b[g >> 2] = c;
|
3585 | b[t >> 2] = b[a >> 2];
|
3586 | b[t + 4 >> 2] = b[a + 4 >> 2];
|
3587 | b[t + 8 >> 2] = b[a + 8 >> 2];
|
3588 | b[t + 12 >> 2] = b[a + 12 >> 2];
|
3589 | ab(t, g, u);
|
3590 | b[f >> 2] = 0;
|
3591 | j = b[g >> 2] | 0;
|
3592 | k = 16928 + (j << 2) | 0;
|
3593 | l = p + 8 | 0;
|
3594 | m = q + 8 | 0;
|
3595 | n = r + 8 | 0;
|
3596 | o = v + 4 | 0;
|
3597 | h = 0;
|
3598 | i = 0;
|
3599 | d = -1;
|
3600 |
|
3601 | a: while (1) {
|
3602 | g = (i >>> 0) % 6 | 0;
|
3603 | a = u + (g << 4) | 0;
|
3604 | b[v >> 2] = b[a >> 2];
|
3605 | b[v + 4 >> 2] = b[a + 4 >> 2];
|
3606 | b[v + 8 >> 2] = b[a + 8 >> 2];
|
3607 | b[v + 12 >> 2] = b[a + 12 >> 2];
|
3608 | a = h;
|
3609 | h = Za(v, j, 0, 1) | 0;
|
3610 |
|
3611 | if ((i | 0) != 0 & (Fb(c) | 0) != 0 ? (a | 0) != 1 ? (b[v >> 2] | 0) != (d | 0) : 0 : 0) {
|
3612 | ya(u + ((((g + 5 | 0) >>> 0) % 6 | 0) << 4) + 4 | 0, w);
|
3613 | ya(u + (g << 4) + 4 | 0, x);
|
3614 | A = +(b[k >> 2] | 0);
|
3615 | e[p >> 3] = A * 3.0;
|
3616 | e[l >> 3] = 0.0;
|
3617 | B = A * -1.5;
|
3618 | e[q >> 3] = B;
|
3619 | e[m >> 3] = A * 2.598076211353316;
|
3620 | e[r >> 3] = B;
|
3621 | e[n >> 3] = A * -2.598076211353316;
|
3622 | g = b[t >> 2] | 0;
|
3623 |
|
3624 | switch (b[17008 + (g * 80 | 0) + (((d | 0) == (g | 0) ? b[v >> 2] | 0 : d) << 2) >> 2] | 0) {
|
3625 | case 1:
|
3626 | {
|
3627 | a = q;
|
3628 | d = p;
|
3629 | break;
|
3630 | }
|
3631 |
|
3632 | case 3:
|
3633 | {
|
3634 | a = r;
|
3635 | d = q;
|
3636 | break;
|
3637 | }
|
3638 |
|
3639 | case 2:
|
3640 | {
|
3641 | a = p;
|
3642 | d = r;
|
3643 | break;
|
3644 | }
|
3645 |
|
3646 | default:
|
3647 | {
|
3648 | y = 9;
|
3649 | break a;
|
3650 | }
|
3651 | }
|
3652 |
|
3653 | uc(w, x, d, a, s);
|
3654 |
|
3655 | if (!(vc(w, s) | 0) ? !(vc(x, s) | 0) : 0) {
|
3656 | Va(s, b[t >> 2] | 0, j, 1, f + 8 + (b[f >> 2] << 4) | 0);
|
3657 | b[f >> 2] = (b[f >> 2] | 0) + 1;
|
3658 | }
|
3659 | }
|
3660 |
|
3661 | if (i >>> 0 < 6) {
|
3662 | ya(o, w);
|
3663 | Va(w, b[v >> 2] | 0, j, 1, f + 8 + (b[f >> 2] << 4) | 0);
|
3664 | b[f >> 2] = (b[f >> 2] | 0) + 1;
|
3665 | }
|
3666 |
|
3667 | i = i + 1 | 0;
|
3668 | if (i >>> 0 >= 7) { break; }else { d = b[v >> 2] | 0; }
|
3669 | }
|
3670 |
|
3671 | if ((y | 0) == 9) { G(22196, 22160, 735, 22241); }
|
3672 | R = z;
|
3673 | return;
|
3674 | }
|
3675 |
|
3676 | function ab(a, c, d) {
|
3677 | a = a | 0;
|
3678 | c = c | 0;
|
3679 | d = d | 0;
|
3680 | var e = 0,
|
3681 | f = 0,
|
3682 | g = 0,
|
3683 | h = 0,
|
3684 | i = 0,
|
3685 | j = 0;
|
3686 | j = R;
|
3687 | R = R + 160 | 0;
|
3688 | e = j + 80 | 0;
|
3689 | f = j;
|
3690 | g = e;
|
3691 | h = 20336;
|
3692 | i = g + 72 | 0;
|
3693 |
|
3694 | do {
|
3695 | b[g >> 2] = b[h >> 2];
|
3696 | g = g + 4 | 0;
|
3697 | h = h + 4 | 0;
|
3698 | } while ((g | 0) < (i | 0));
|
3699 |
|
3700 | g = f;
|
3701 | h = 20416;
|
3702 | i = g + 72 | 0;
|
3703 |
|
3704 | do {
|
3705 | b[g >> 2] = b[h >> 2];
|
3706 | g = g + 4 | 0;
|
3707 | h = h + 4 | 0;
|
3708 | } while ((g | 0) < (i | 0));
|
3709 |
|
3710 | i = (Fb(b[c >> 2] | 0) | 0) == 0;
|
3711 | e = i ? e : f;
|
3712 | f = a + 4 | 0;
|
3713 | Ma(f);
|
3714 | Na(f);
|
3715 |
|
3716 | if (Fb(b[c >> 2] | 0) | 0) {
|
3717 | Ga(f);
|
3718 | b[c >> 2] = (b[c >> 2] | 0) + 1;
|
3719 | }
|
3720 |
|
3721 | b[d >> 2] = b[a >> 2];
|
3722 | c = d + 4 | 0;
|
3723 | za(f, e, c);
|
3724 | xa(c);
|
3725 | b[d + 16 >> 2] = b[a >> 2];
|
3726 | c = d + 20 | 0;
|
3727 | za(f, e + 12 | 0, c);
|
3728 | xa(c);
|
3729 | b[d + 32 >> 2] = b[a >> 2];
|
3730 | c = d + 36 | 0;
|
3731 | za(f, e + 24 | 0, c);
|
3732 | xa(c);
|
3733 | b[d + 48 >> 2] = b[a >> 2];
|
3734 | c = d + 52 | 0;
|
3735 | za(f, e + 36 | 0, c);
|
3736 | xa(c);
|
3737 | b[d + 64 >> 2] = b[a >> 2];
|
3738 | c = d + 68 | 0;
|
3739 | za(f, e + 48 | 0, c);
|
3740 | xa(c);
|
3741 | b[d + 80 >> 2] = b[a >> 2];
|
3742 | d = d + 84 | 0;
|
3743 | za(f, e + 60 | 0, d);
|
3744 | xa(d);
|
3745 | R = j;
|
3746 | return;
|
3747 | }
|
3748 |
|
3749 | function bb(a) {
|
3750 | a = +a;
|
3751 | var b = 0.0;
|
3752 | b = a < 0.0 ? a + 6.283185307179586 : a;
|
3753 | return +(!(a >= 6.283185307179586) ? b : b + -6.283185307179586);
|
3754 | }
|
3755 |
|
3756 | function cb(a, b, c) {
|
3757 | a = a | 0;
|
3758 | b = b | 0;
|
3759 | c = +c;
|
3760 |
|
3761 | if (!(+q(+(+e[a >> 3] - +e[b >> 3])) < c)) {
|
3762 | b = 0;
|
3763 | return b | 0;
|
3764 | }
|
3765 |
|
3766 | b = +q(+(+e[a + 8 >> 3] - +e[b + 8 >> 3])) < c;
|
3767 | return b | 0;
|
3768 | }
|
3769 |
|
3770 | function db(a, b) {
|
3771 | a = a | 0;
|
3772 | b = b | 0;
|
3773 |
|
3774 | if (!(+q(+(+e[a >> 3] - +e[b >> 3])) < 1.7453292519943298e-11)) {
|
3775 | b = 0;
|
3776 | return b | 0;
|
3777 | }
|
3778 |
|
3779 | b = +q(+(+e[a + 8 >> 3] - +e[b + 8 >> 3])) < 1.7453292519943298e-11;
|
3780 | return b | 0;
|
3781 | }
|
3782 |
|
3783 | function eb(a) {
|
3784 | a = +a;
|
3785 | if (!(a > 1.5707963267948966)) { return +a; }
|
3786 |
|
3787 | do { a = a + -3.141592653589793; } while (a > 1.5707963267948966);
|
3788 |
|
3789 | return +a;
|
3790 | }
|
3791 |
|
3792 | function fb(a) {
|
3793 | a = +a;
|
3794 | if (a > 3.141592653589793) { do { a = a + -6.283185307179586; } while (a > 3.141592653589793); }
|
3795 | if (!(a < -3.141592653589793)) { return +a; }
|
3796 |
|
3797 | do { a = a + 6.283185307179586; } while (a < -3.141592653589793);
|
3798 |
|
3799 | return +a;
|
3800 | }
|
3801 |
|
3802 | function gb(a, b) {
|
3803 | a = a | 0;
|
3804 | b = b | 0;
|
3805 | var c = 0.0,
|
3806 | d = 0.0,
|
3807 | f = 0.0;
|
3808 | d = +e[b + 8 >> 3];
|
3809 | f = +e[a + 8 >> 3];
|
3810 | c = +q(+(d - f));
|
3811 | if (c > 3.141592653589793) { c = +q(+((d < 0.0 ? d + 6.283185307179586 : d) - (f < 0.0 ? f + 6.283185307179586 : f))); }
|
3812 | d = 1.5707963267948966 - +e[a >> 3];
|
3813 | f = 1.5707963267948966 - +e[b >> 3];
|
3814 | f = +t(+d) * +t(+f) + +t(+c) * (+u(+d) * +u(+f));
|
3815 | f = f > 1.0 ? 1.0 : f;
|
3816 | return +(+w(+(f < -1.0 ? -1.0 : f)) * 6371.007180918475);
|
3817 | }
|
3818 |
|
3819 | function hb(a, b) {
|
3820 | a = a | 0;
|
3821 | b = b | 0;
|
3822 | var c = 0.0,
|
3823 | d = 0.0,
|
3824 | f = 0.0,
|
3825 | g = 0.0,
|
3826 | h = 0.0;
|
3827 | g = +e[b >> 3];
|
3828 | d = +t(+g);
|
3829 | f = +e[b + 8 >> 3] - +e[a + 8 >> 3];
|
3830 | h = d * +u(+f);
|
3831 | c = +e[a >> 3];
|
3832 | return + +z(+h, +(+u(+g) * +t(+c) - +t(+f) * (d * +u(+c))));
|
3833 | }
|
3834 |
|
3835 | function ib(a, c, d, f) {
|
3836 | a = a | 0;
|
3837 | c = +c;
|
3838 | d = +d;
|
3839 | f = f | 0;
|
3840 | var g = 0,
|
3841 | h = 0.0,
|
3842 | i = 0.0,
|
3843 | j = 0.0;
|
3844 |
|
3845 | if (d < 1.0e-16) {
|
3846 | b[f >> 2] = b[a >> 2];
|
3847 | b[f + 4 >> 2] = b[a + 4 >> 2];
|
3848 | b[f + 8 >> 2] = b[a + 8 >> 2];
|
3849 | b[f + 12 >> 2] = b[a + 12 >> 2];
|
3850 | return;
|
3851 | }
|
3852 |
|
3853 | h = c < 0.0 ? c + 6.283185307179586 : c;
|
3854 | h = !(c >= 6.283185307179586) ? h : h + -6.283185307179586;
|
3855 |
|
3856 | do { if (h < 1.0e-16) {
|
3857 | c = +e[a >> 3] + d;
|
3858 | e[f >> 3] = c;
|
3859 | g = f;
|
3860 | } else {
|
3861 | g = +q(+(h + -3.141592653589793)) < 1.0e-16;
|
3862 | c = +e[a >> 3];
|
3863 |
|
3864 | if (g) {
|
3865 | c = c - d;
|
3866 | e[f >> 3] = c;
|
3867 | g = f;
|
3868 | break;
|
3869 | }
|
3870 |
|
3871 | i = +t(+d);
|
3872 | d = +u(+d);
|
3873 | c = i * +u(+c) + +t(+h) * (d * +t(+c));
|
3874 | c = c > 1.0 ? 1.0 : c;
|
3875 | c = +x(+(c < -1.0 ? -1.0 : c));
|
3876 | e[f >> 3] = c;
|
3877 |
|
3878 | if (+q(+(c + -1.5707963267948966)) < 1.0e-16) {
|
3879 | e[f >> 3] = 1.5707963267948966;
|
3880 | e[f + 8 >> 3] = 0.0;
|
3881 | return;
|
3882 | }
|
3883 |
|
3884 | if (+q(+(c + 1.5707963267948966)) < 1.0e-16) {
|
3885 | e[f >> 3] = -1.5707963267948966;
|
3886 | e[f + 8 >> 3] = 0.0;
|
3887 | return;
|
3888 | }
|
3889 |
|
3890 | j = +t(+c);
|
3891 | h = d * +u(+h) / j;
|
3892 | d = +e[a >> 3];
|
3893 | c = (i - +u(+c) * +u(+d)) / +t(+d) / j;
|
3894 | i = h > 1.0 ? 1.0 : h;
|
3895 | c = c > 1.0 ? 1.0 : c;
|
3896 | c = +e[a + 8 >> 3] + +z(+(i < -1.0 ? -1.0 : i), +(c < -1.0 ? -1.0 : c));
|
3897 | if (c > 3.141592653589793) { do { c = c + -6.283185307179586; } while (c > 3.141592653589793); }
|
3898 | if (c < -3.141592653589793) { do { c = c + 6.283185307179586; } while (c < -3.141592653589793); }
|
3899 | e[f + 8 >> 3] = c;
|
3900 | return;
|
3901 | } } while (0);
|
3902 |
|
3903 | if (+q(+(c + -1.5707963267948966)) < 1.0e-16) {
|
3904 | e[g >> 3] = 1.5707963267948966;
|
3905 | e[f + 8 >> 3] = 0.0;
|
3906 | return;
|
3907 | }
|
3908 |
|
3909 | if (+q(+(c + 1.5707963267948966)) < 1.0e-16) {
|
3910 | e[g >> 3] = -1.5707963267948966;
|
3911 | e[f + 8 >> 3] = 0.0;
|
3912 | return;
|
3913 | }
|
3914 |
|
3915 | c = +e[a + 8 >> 3];
|
3916 | if (c > 3.141592653589793) { do { c = c + -6.283185307179586; } while (c > 3.141592653589793); }
|
3917 | if (c < -3.141592653589793) { do { c = c + 6.283185307179586; } while (c < -3.141592653589793); }
|
3918 | e[f + 8 >> 3] = c;
|
3919 | return;
|
3920 | }
|
3921 |
|
3922 | function jb(a) {
|
3923 | a = a | 0;
|
3924 | return + +e[20496 + (a << 3) >> 3];
|
3925 | }
|
3926 |
|
3927 | function kb(a) {
|
3928 | a = a | 0;
|
3929 | return + +e[20624 + (a << 3) >> 3];
|
3930 | }
|
3931 |
|
3932 | function lb(a) {
|
3933 | a = a | 0;
|
3934 | return + +e[20752 + (a << 3) >> 3];
|
3935 | }
|
3936 |
|
3937 | function mb(a) {
|
3938 | a = a | 0;
|
3939 | return + +e[20880 + (a << 3) >> 3];
|
3940 | }
|
3941 |
|
3942 | function nb(a) {
|
3943 | a = a | 0;
|
3944 | var c = 0;
|
3945 | c = 21008 + (a << 3) | 0;
|
3946 | a = b[c >> 2] | 0;
|
3947 | E(b[c + 4 >> 2] | 0);
|
3948 | return a | 0;
|
3949 | }
|
3950 |
|
3951 | function ob(a, b) {
|
3952 | a = a | 0;
|
3953 | b = b | 0;
|
3954 | b = Qc(a | 0, b | 0, 45) | 0;
|
3955 | F() | 0;
|
3956 | return b & 127 | 0;
|
3957 | }
|
3958 |
|
3959 | function pb(a, b) {
|
3960 | a = a | 0;
|
3961 | b = b | 0;
|
3962 | var c = 0,
|
3963 | d = 0,
|
3964 | e = 0,
|
3965 | f = 0,
|
3966 | g = 0,
|
3967 | h = 0;
|
3968 |
|
3969 | if (!(0 == 0 & (b & 2013265920 | 0) == 134217728)) {
|
3970 | b = 0;
|
3971 | return b | 0;
|
3972 | }
|
3973 |
|
3974 | g = Qc(a | 0, b | 0, 45) | 0;
|
3975 | F() | 0;
|
3976 | g = g & 127;
|
3977 |
|
3978 | if (g >>> 0 > 121) {
|
3979 | b = 0;
|
3980 | return b | 0;
|
3981 | }
|
3982 |
|
3983 | c = Qc(a | 0, b | 0, 52) | 0;
|
3984 | F() | 0;
|
3985 | c = c & 15;
|
3986 |
|
3987 | do { if (c | 0) {
|
3988 | e = 1;
|
3989 | d = 0;
|
3990 |
|
3991 | while (1) {
|
3992 | f = Qc(a | 0, b | 0, (15 - e | 0) * 3 | 0) | 0;
|
3993 | F() | 0;
|
3994 | f = f & 7;
|
3995 | if ((f | 0) != 0 & (d ^ 1)) { if ((f | 0) == 1 & (ia(g) | 0) != 0) {
|
3996 | h = 0;
|
3997 | d = 13;
|
3998 | break;
|
3999 | } else { d = 1; } }
|
4000 |
|
4001 | if ((f | 0) == 7) {
|
4002 | h = 0;
|
4003 | d = 13;
|
4004 | break;
|
4005 | }
|
4006 |
|
4007 | if (e >>> 0 < c >>> 0) { e = e + 1 | 0; }else {
|
4008 | d = 9;
|
4009 | break;
|
4010 | }
|
4011 | }
|
4012 |
|
4013 | if ((d | 0) == 9) {
|
4014 | if ((c | 0) == 15) { h = 1; }else { break; }
|
4015 | return h | 0;
|
4016 | } else if ((d | 0) == 13) { return h | 0; }
|
4017 | } } while (0);
|
4018 |
|
4019 | while (1) {
|
4020 | h = Qc(a | 0, b | 0, (14 - c | 0) * 3 | 0) | 0;
|
4021 | F() | 0;
|
4022 |
|
4023 | if (!((h & 7 | 0) == 7 & 0 == 0)) {
|
4024 | h = 0;
|
4025 | d = 13;
|
4026 | break;
|
4027 | }
|
4028 |
|
4029 | if (c >>> 0 < 14) { c = c + 1 | 0; }else {
|
4030 | h = 1;
|
4031 | d = 13;
|
4032 | break;
|
4033 | }
|
4034 | }
|
4035 |
|
4036 | if ((d | 0) == 13) { return h | 0; }
|
4037 | return 0;
|
4038 | }
|
4039 |
|
4040 | function qb(a, b, c) {
|
4041 | a = a | 0;
|
4042 | b = b | 0;
|
4043 | c = c | 0;
|
4044 | var d = 0,
|
4045 | e = 0;
|
4046 | d = Qc(a | 0, b | 0, 52) | 0;
|
4047 | F() | 0;
|
4048 | d = d & 15;
|
4049 |
|
4050 | if ((d | 0) >= (c | 0)) {
|
4051 | if ((d | 0) != (c | 0)) { if (c >>> 0 <= 15) {
|
4052 | e = Rc(c | 0, 0, 52) | 0;
|
4053 | a = e | a;
|
4054 | b = F() | 0 | b & -15728641;
|
4055 | if ((d | 0) > (c | 0)) { do {
|
4056 | e = Rc(7, 0, (14 - c | 0) * 3 | 0) | 0;
|
4057 | c = c + 1 | 0;
|
4058 | a = e | a;
|
4059 | b = F() | 0 | b;
|
4060 | } while ((c | 0) < (d | 0)); }
|
4061 | } else {
|
4062 | b = 0;
|
4063 | a = 0;
|
4064 | } }
|
4065 | } else {
|
4066 | b = 0;
|
4067 | a = 0;
|
4068 | }
|
4069 |
|
4070 | E(b | 0);
|
4071 | return a | 0;
|
4072 | }
|
4073 |
|
4074 | function rb(a, b, c) {
|
4075 | a = a | 0;
|
4076 | b = b | 0;
|
4077 | c = c | 0;
|
4078 | a = Qc(a | 0, b | 0, 52) | 0;
|
4079 | F() | 0;
|
4080 | a = a & 15;
|
4081 |
|
4082 | if (!((c | 0) < 16 & (a | 0) <= (c | 0))) {
|
4083 | c = 0;
|
4084 | return c | 0;
|
4085 | }
|
4086 |
|
4087 | c = hc(7, c - a | 0) | 0;
|
4088 | return c | 0;
|
4089 | }
|
4090 |
|
4091 | function sb(a, c, d, e) {
|
4092 | a = a | 0;
|
4093 | c = c | 0;
|
4094 | d = d | 0;
|
4095 | e = e | 0;
|
4096 | var f = 0,
|
4097 | g = 0,
|
4098 | h = 0,
|
4099 | i = 0,
|
4100 | j = 0,
|
4101 | k = 0,
|
4102 | l = 0;
|
4103 | h = Qc(a | 0, c | 0, 52) | 0;
|
4104 | F() | 0;
|
4105 | h = h & 15;
|
4106 | if (!((d | 0) < 16 & (h | 0) <= (d | 0))) { return; }
|
4107 |
|
4108 | if ((h | 0) == (d | 0)) {
|
4109 | d = e;
|
4110 | b[d >> 2] = a;
|
4111 | b[d + 4 >> 2] = c;
|
4112 | return;
|
4113 | }
|
4114 |
|
4115 | j = hc(7, d - h | 0) | 0;
|
4116 | k = (j | 0) / 7 | 0;
|
4117 | i = Qc(a | 0, c | 0, 45) | 0;
|
4118 | F() | 0;
|
4119 | if (!(ia(i & 127) | 0)) { g = 0; }else {
|
4120 | a: do { if (!h) { f = 0; }else {
|
4121 | g = 1;
|
4122 |
|
4123 | while (1) {
|
4124 | f = Qc(a | 0, c | 0, (15 - g | 0) * 3 | 0) | 0;
|
4125 | F() | 0;
|
4126 | f = f & 7;
|
4127 | if (f | 0) { break a; }
|
4128 | if (g >>> 0 < h >>> 0) { g = g + 1 | 0; }else {
|
4129 | f = 0;
|
4130 | break;
|
4131 | }
|
4132 | }
|
4133 | } } while (0);
|
4134 |
|
4135 | g = (f | 0) == 0;
|
4136 | }
|
4137 | l = Rc(h + 1 | 0, 0, 52) | 0;
|
4138 | f = F() | 0 | c & -15728641;
|
4139 | i = (14 - h | 0) * 3 | 0;
|
4140 | c = Rc(7, 0, i | 0) | 0;
|
4141 | c = (l | a) & ~c;
|
4142 | h = f & ~(F() | 0);
|
4143 | sb(c, h, d, e);
|
4144 | f = e + (k << 3) | 0;
|
4145 |
|
4146 | if (!g) {
|
4147 | l = Rc(1, 0, i | 0) | 0;
|
4148 | sb(l | c, F() | 0 | h, d, f);
|
4149 | l = f + (k << 3) | 0;
|
4150 | j = Rc(2, 0, i | 0) | 0;
|
4151 | sb(j | c, F() | 0 | h, d, l);
|
4152 | l = l + (k << 3) | 0;
|
4153 | j = Rc(3, 0, i | 0) | 0;
|
4154 | sb(j | c, F() | 0 | h, d, l);
|
4155 | l = l + (k << 3) | 0;
|
4156 | j = Rc(4, 0, i | 0) | 0;
|
4157 | sb(j | c, F() | 0 | h, d, l);
|
4158 | l = l + (k << 3) | 0;
|
4159 | j = Rc(5, 0, i | 0) | 0;
|
4160 | sb(j | c, F() | 0 | h, d, l);
|
4161 | j = Rc(6, 0, i | 0) | 0;
|
4162 | sb(j | c, F() | 0 | h, d, l + (k << 3) | 0);
|
4163 | return;
|
4164 | }
|
4165 |
|
4166 | g = f + (k << 3) | 0;
|
4167 |
|
4168 | if ((j | 0) > 6) {
|
4169 | j = f + 8 | 0;
|
4170 | l = (g >>> 0 > j >>> 0 ? g : j) + -1 + (0 - f) | 0;
|
4171 | Uc(f | 0, 0, l + 8 & -8 | 0) | 0;
|
4172 | f = j + (l >>> 3 << 3) | 0;
|
4173 | }
|
4174 |
|
4175 | l = Rc(2, 0, i | 0) | 0;
|
4176 | sb(l | c, F() | 0 | h, d, f);
|
4177 | l = f + (k << 3) | 0;
|
4178 | j = Rc(3, 0, i | 0) | 0;
|
4179 | sb(j | c, F() | 0 | h, d, l);
|
4180 | l = l + (k << 3) | 0;
|
4181 | j = Rc(4, 0, i | 0) | 0;
|
4182 | sb(j | c, F() | 0 | h, d, l);
|
4183 | l = l + (k << 3) | 0;
|
4184 | j = Rc(5, 0, i | 0) | 0;
|
4185 | sb(j | c, F() | 0 | h, d, l);
|
4186 | j = Rc(6, 0, i | 0) | 0;
|
4187 | sb(j | c, F() | 0 | h, d, l + (k << 3) | 0);
|
4188 | return;
|
4189 | }
|
4190 |
|
4191 | function tb(a, b) {
|
4192 | a = a | 0;
|
4193 | b = b | 0;
|
4194 | var c = 0,
|
4195 | d = 0,
|
4196 | e = 0;
|
4197 | e = Qc(a | 0, b | 0, 45) | 0;
|
4198 | F() | 0;
|
4199 |
|
4200 | if (!(ia(e & 127) | 0)) {
|
4201 | e = 0;
|
4202 | return e | 0;
|
4203 | }
|
4204 |
|
4205 | e = Qc(a | 0, b | 0, 52) | 0;
|
4206 | F() | 0;
|
4207 | e = e & 15;
|
4208 |
|
4209 | a: do { if (!e) { c = 0; }else {
|
4210 | d = 1;
|
4211 |
|
4212 | while (1) {
|
4213 | c = Qc(a | 0, b | 0, (15 - d | 0) * 3 | 0) | 0;
|
4214 | F() | 0;
|
4215 | c = c & 7;
|
4216 | if (c | 0) { break a; }
|
4217 | if (d >>> 0 < e >>> 0) { d = d + 1 | 0; }else {
|
4218 | c = 0;
|
4219 | break;
|
4220 | }
|
4221 | }
|
4222 | } } while (0);
|
4223 |
|
4224 | e = (c | 0) == 0 & 1;
|
4225 | return e | 0;
|
4226 | }
|
4227 |
|
4228 | function ub(a, b, c) {
|
4229 | a = a | 0;
|
4230 | b = b | 0;
|
4231 | c = c | 0;
|
4232 | var d = 0,
|
4233 | e = 0;
|
4234 | d = Qc(a | 0, b | 0, 52) | 0;
|
4235 | F() | 0;
|
4236 | d = d & 15;
|
4237 |
|
4238 | if ((c | 0) < 16 & (d | 0) <= (c | 0)) {
|
4239 | if ((d | 0) != (c | 0)) {
|
4240 | e = Rc(c | 0, 0, 52) | 0;
|
4241 | a = e | a;
|
4242 | b = F() | 0 | b & -15728641;
|
4243 | if ((d | 0) < (c | 0)) { do {
|
4244 | e = Rc(7, 0, (14 - d | 0) * 3 | 0) | 0;
|
4245 | d = d + 1 | 0;
|
4246 | a = a & ~e;
|
4247 | b = b & ~(F() | 0);
|
4248 | } while ((d | 0) < (c | 0)); }
|
4249 | }
|
4250 | } else {
|
4251 | b = 0;
|
4252 | a = 0;
|
4253 | }
|
4254 |
|
4255 | E(b | 0);
|
4256 | return a | 0;
|
4257 | }
|
4258 |
|
4259 | function vb(a, c, d) {
|
4260 | a = a | 0;
|
4261 | c = c | 0;
|
4262 | d = d | 0;
|
4263 | var e = 0,
|
4264 | f = 0,
|
4265 | g = 0,
|
4266 | h = 0,
|
4267 | i = 0,
|
4268 | j = 0,
|
4269 | k = 0,
|
4270 | l = 0,
|
4271 | m = 0,
|
4272 | n = 0,
|
4273 | o = 0,
|
4274 | p = 0,
|
4275 | q = 0,
|
4276 | r = 0,
|
4277 | s = 0,
|
4278 | t = 0,
|
4279 | u = 0,
|
4280 | v = 0,
|
4281 | w = 0,
|
4282 | x = 0;
|
4283 | f = a;
|
4284 | e = b[f >> 2] | 0;
|
4285 | f = b[f + 4 >> 2] | 0;
|
4286 |
|
4287 | if (0 == 0 & (f & 15728640 | 0) == 0) {
|
4288 | if ((d | 0) <= 0) {
|
4289 | x = 0;
|
4290 | return x | 0;
|
4291 | }
|
4292 |
|
4293 | x = c;
|
4294 | b[x >> 2] = e;
|
4295 | b[x + 4 >> 2] = f;
|
4296 |
|
4297 | if ((d | 0) == 1) {
|
4298 | x = 0;
|
4299 | return x | 0;
|
4300 | }
|
4301 |
|
4302 | e = 1;
|
4303 |
|
4304 | do {
|
4305 | v = a + (e << 3) | 0;
|
4306 | w = b[v + 4 >> 2] | 0;
|
4307 | x = c + (e << 3) | 0;
|
4308 | b[x >> 2] = b[v >> 2];
|
4309 | b[x + 4 >> 2] = w;
|
4310 | e = e + 1 | 0;
|
4311 | } while ((e | 0) != (d | 0));
|
4312 |
|
4313 | e = 0;
|
4314 | return e | 0;
|
4315 | }
|
4316 |
|
4317 | v = d << 3;
|
4318 | w = Ic(v) | 0;
|
4319 | Tc(w | 0, a | 0, v | 0) | 0;
|
4320 | u = Kc(d, 8) | 0;
|
4321 |
|
4322 | a: do { if (d | 0) {
|
4323 | e = d;
|
4324 |
|
4325 | b: while (1) {
|
4326 | h = w;
|
4327 | l = b[h >> 2] | 0;
|
4328 | h = b[h + 4 >> 2] | 0;
|
4329 | s = Qc(l | 0, h | 0, 52) | 0;
|
4330 | F() | 0;
|
4331 | s = s & 15;
|
4332 | t = s + -1 | 0;
|
4333 | r = (e | 0) > 0;
|
4334 |
|
4335 | c: do { if (r) {
|
4336 | q = ((e | 0) < 0) << 31 >> 31;
|
4337 | o = Rc(t | 0, 0, 52) | 0;
|
4338 | p = F() | 0;
|
4339 |
|
4340 | if (t >>> 0 > 15) {
|
4341 | f = 0;
|
4342 | a = l;
|
4343 | d = h;
|
4344 |
|
4345 | while (1) {
|
4346 | if (!((a | 0) == 0 & (d | 0) == 0)) {
|
4347 | g = Qc(a | 0, d | 0, 52) | 0;
|
4348 | F() | 0;
|
4349 | g = g & 15;
|
4350 | i = (g | 0) < (t | 0);
|
4351 | g = (g | 0) == (t | 0);
|
4352 | k = i ? 0 : g ? a : 0;
|
4353 | a = i ? 0 : g ? d : 0;
|
4354 | d = Pc(k | 0, a | 0, e | 0, q | 0) | 0;
|
4355 | F() | 0;
|
4356 | g = u + (d << 3) | 0;
|
4357 | i = g;
|
4358 | j = b[i >> 2] | 0;
|
4359 | i = b[i + 4 >> 2] | 0;
|
4360 | if ((j | 0) == 0 & (i | 0) == 0) { d = k; }else {
|
4361 | o = 0;
|
4362 | n = d;
|
4363 | m = j;
|
4364 | d = k;
|
4365 | j = g;
|
4366 |
|
4367 | while (1) {
|
4368 | if ((o | 0) > (e | 0)) {
|
4369 | x = 33;
|
4370 | break b;
|
4371 | }
|
4372 |
|
4373 | if ((m | 0) == (d | 0) & (i & -117440513 | 0) == (a | 0)) {
|
4374 | g = Qc(m | 0, i | 0, 56) | 0;
|
4375 | F() | 0;
|
4376 | g = g & 7;
|
4377 |
|
4378 | if ((g | 0) == 7) {
|
4379 | x = 38;
|
4380 | break b;
|
4381 | }
|
4382 |
|
4383 | p = Rc(g + 1 | 0, 0, 56) | 0;
|
4384 | a = F() | 0 | a & -117440513;
|
4385 | b[j >> 2] = 0;
|
4386 | b[j + 4 >> 2] = 0;
|
4387 | j = n;
|
4388 | d = p | d;
|
4389 | } else { j = (n + 1 | 0) % (e | 0) | 0; }
|
4390 |
|
4391 | g = u + (j << 3) | 0;
|
4392 | i = g;
|
4393 | m = b[i >> 2] | 0;
|
4394 | i = b[i + 4 >> 2] | 0;
|
4395 | if ((m | 0) == 0 & (i | 0) == 0) { break; }else {
|
4396 | o = o + 1 | 0;
|
4397 | n = j;
|
4398 | j = g;
|
4399 | }
|
4400 | }
|
4401 | }
|
4402 | p = g;
|
4403 | b[p >> 2] = d;
|
4404 | b[p + 4 >> 2] = a;
|
4405 | }
|
4406 |
|
4407 | f = f + 1 | 0;
|
4408 | if ((f | 0) >= (e | 0)) { break c; }
|
4409 | d = w + (f << 3) | 0;
|
4410 | a = b[d >> 2] | 0;
|
4411 | d = b[d + 4 >> 2] | 0;
|
4412 | }
|
4413 | }
|
4414 |
|
4415 | f = 0;
|
4416 | a = l;
|
4417 | d = h;
|
4418 |
|
4419 | while (1) {
|
4420 | if (!((a | 0) == 0 & (d | 0) == 0)) {
|
4421 | i = Qc(a | 0, d | 0, 52) | 0;
|
4422 | F() | 0;
|
4423 | i = i & 15;
|
4424 |
|
4425 | if ((i | 0) >= (t | 0)) {
|
4426 | if ((i | 0) != (t | 0)) {
|
4427 | a = a | o;
|
4428 | d = d & -15728641 | p;
|
4429 |
|
4430 | if (i >>> 0 >= s >>> 0) {
|
4431 | g = t;
|
4432 |
|
4433 | do {
|
4434 | n = Rc(7, 0, (14 - g | 0) * 3 | 0) | 0;
|
4435 | g = g + 1 | 0;
|
4436 | a = n | a;
|
4437 | d = F() | 0 | d;
|
4438 | } while (g >>> 0 < i >>> 0);
|
4439 | }
|
4440 | }
|
4441 | } else {
|
4442 | a = 0;
|
4443 | d = 0;
|
4444 | }
|
4445 |
|
4446 | i = Pc(a | 0, d | 0, e | 0, q | 0) | 0;
|
4447 | F() | 0;
|
4448 | g = u + (i << 3) | 0;
|
4449 | j = g;
|
4450 | k = b[j >> 2] | 0;
|
4451 | j = b[j + 4 >> 2] | 0;
|
4452 |
|
4453 | if (!((k | 0) == 0 & (j | 0) == 0)) {
|
4454 | n = 0;
|
4455 | m = k;
|
4456 | k = g;
|
4457 |
|
4458 | while (1) {
|
4459 | if ((n | 0) > (e | 0)) {
|
4460 | x = 33;
|
4461 | break b;
|
4462 | }
|
4463 |
|
4464 | if ((m | 0) == (a | 0) & (j & -117440513 | 0) == (d | 0)) {
|
4465 | g = Qc(m | 0, j | 0, 56) | 0;
|
4466 | F() | 0;
|
4467 | g = g & 7;
|
4468 |
|
4469 | if ((g | 0) == 7) {
|
4470 | x = 38;
|
4471 | break b;
|
4472 | }
|
4473 |
|
4474 | m = Rc(g + 1 | 0, 0, 56) | 0;
|
4475 | d = F() | 0 | d & -117440513;
|
4476 | b[k >> 2] = 0;
|
4477 | b[k + 4 >> 2] = 0;
|
4478 | a = m | a;
|
4479 | } else { i = (i + 1 | 0) % (e | 0) | 0; }
|
4480 |
|
4481 | g = u + (i << 3) | 0;
|
4482 | j = g;
|
4483 | m = b[j >> 2] | 0;
|
4484 | j = b[j + 4 >> 2] | 0;
|
4485 | if ((m | 0) == 0 & (j | 0) == 0) { break; }else {
|
4486 | n = n + 1 | 0;
|
4487 | k = g;
|
4488 | }
|
4489 | }
|
4490 | }
|
4491 |
|
4492 | n = g;
|
4493 | b[n >> 2] = a;
|
4494 | b[n + 4 >> 2] = d;
|
4495 | }
|
4496 |
|
4497 | f = f + 1 | 0;
|
4498 | if ((f | 0) >= (e | 0)) { break c; }
|
4499 | d = w + (f << 3) | 0;
|
4500 | a = b[d >> 2] | 0;
|
4501 | d = b[d + 4 >> 2] | 0;
|
4502 | }
|
4503 | } } while (0);
|
4504 |
|
4505 | if ((e + 5 | 0) >>> 0 < 11) {
|
4506 | x = 84;
|
4507 | break;
|
4508 | }
|
4509 |
|
4510 | q = Ic(((e | 0) / 6 | 0) << 3) | 0;
|
4511 |
|
4512 | d: do { if (r) {
|
4513 | o = 0;
|
4514 | n = 0;
|
4515 |
|
4516 | do {
|
4517 | i = u + (o << 3) | 0;
|
4518 | a = i;
|
4519 | f = b[a >> 2] | 0;
|
4520 | a = b[a + 4 >> 2] | 0;
|
4521 |
|
4522 | if (!((f | 0) == 0 & (a | 0) == 0)) {
|
4523 | j = Qc(f | 0, a | 0, 56) | 0;
|
4524 | F() | 0;
|
4525 | j = j & 7;
|
4526 | d = j + 1 | 0;
|
4527 | k = a & -117440513;
|
4528 | p = Qc(f | 0, a | 0, 45) | 0;
|
4529 | F() | 0;
|
4530 |
|
4531 | e: do { if (ia(p & 127) | 0) {
|
4532 | m = Qc(f | 0, a | 0, 52) | 0;
|
4533 | F() | 0;
|
4534 | m = m & 15;
|
4535 |
|
4536 | if (m | 0) {
|
4537 | g = 1;
|
4538 |
|
4539 | while (1) {
|
4540 | p = Rc(7, 0, (15 - g | 0) * 3 | 0) | 0;
|
4541 | if (!((f & p | 0) == 0 & (k & (F() | 0) | 0) == 0)) { break e; }
|
4542 | if (g >>> 0 < m >>> 0) { g = g + 1 | 0; }else { break; }
|
4543 | }
|
4544 | }
|
4545 |
|
4546 | a = Rc(d | 0, 0, 56) | 0;
|
4547 | f = a | f;
|
4548 | a = F() | 0 | k;
|
4549 | d = i;
|
4550 | b[d >> 2] = f;
|
4551 | b[d + 4 >> 2] = a;
|
4552 | d = j + 2 | 0;
|
4553 | } } while (0);
|
4554 |
|
4555 | if ((d | 0) == 7) {
|
4556 | p = q + (n << 3) | 0;
|
4557 | b[p >> 2] = f;
|
4558 | b[p + 4 >> 2] = a & -117440513;
|
4559 | n = n + 1 | 0;
|
4560 | }
|
4561 | }
|
4562 |
|
4563 | o = o + 1 | 0;
|
4564 | } while ((o | 0) != (e | 0));
|
4565 |
|
4566 | if (r) {
|
4567 | p = ((e | 0) < 0) << 31 >> 31;
|
4568 | m = Rc(t | 0, 0, 52) | 0;
|
4569 | o = F() | 0;
|
4570 |
|
4571 | if (t >>> 0 > 15) {
|
4572 | a = 0;
|
4573 | f = 0;
|
4574 |
|
4575 | while (1) {
|
4576 | do { if (!((l | 0) == 0 & (h | 0) == 0)) {
|
4577 | j = Qc(l | 0, h | 0, 52) | 0;
|
4578 | F() | 0;
|
4579 | j = j & 15;
|
4580 | g = (j | 0) < (t | 0);
|
4581 | j = (j | 0) == (t | 0);
|
4582 | i = g ? 0 : j ? l : 0;
|
4583 | j = g ? 0 : j ? h : 0;
|
4584 | g = Pc(i | 0, j | 0, e | 0, p | 0) | 0;
|
4585 | F() | 0;
|
4586 | d = 0;
|
4587 |
|
4588 | while (1) {
|
4589 | if ((d | 0) > (e | 0)) {
|
4590 | x = 83;
|
4591 | break b;
|
4592 | }
|
4593 |
|
4594 | s = u + (g << 3) | 0;
|
4595 | k = b[s + 4 >> 2] | 0;
|
4596 |
|
4597 | if ((k & -117440513 | 0) == (j | 0) ? (b[s >> 2] | 0) == (i | 0) : 0) {
|
4598 | x = 55;
|
4599 | break;
|
4600 | }
|
4601 |
|
4602 | g = (g + 1 | 0) % (e | 0) | 0;
|
4603 | s = u + (g << 3) | 0;
|
4604 | if ((b[s >> 2] | 0) == (i | 0) ? (b[s + 4 >> 2] | 0) == (j | 0) : 0) { break; }else { d = d + 1 | 0; }
|
4605 | }
|
4606 |
|
4607 | if ((x | 0) == 55 ? (x = 0, 0 == 0 & (k & 117440512 | 0) == 100663296) : 0) { break; }
|
4608 | s = c + (f << 3) | 0;
|
4609 | b[s >> 2] = l;
|
4610 | b[s + 4 >> 2] = h;
|
4611 | f = f + 1 | 0;
|
4612 | } } while (0);
|
4613 |
|
4614 | a = a + 1 | 0;
|
4615 |
|
4616 | if ((a | 0) >= (e | 0)) {
|
4617 | e = n;
|
4618 | break d;
|
4619 | }
|
4620 |
|
4621 | h = w + (a << 3) | 0;
|
4622 | l = b[h >> 2] | 0;
|
4623 | h = b[h + 4 >> 2] | 0;
|
4624 | }
|
4625 | }
|
4626 |
|
4627 | a = 0;
|
4628 | f = 0;
|
4629 |
|
4630 | while (1) {
|
4631 | do { if (!((l | 0) == 0 & (h | 0) == 0)) {
|
4632 | j = Qc(l | 0, h | 0, 52) | 0;
|
4633 | F() | 0;
|
4634 | j = j & 15;
|
4635 | if ((j | 0) >= (t | 0)) {
|
4636 | if ((j | 0) != (t | 0)) {
|
4637 | d = l | m;
|
4638 | g = h & -15728641 | o;
|
4639 | if (j >>> 0 < s >>> 0) { j = g; }else {
|
4640 | i = t;
|
4641 |
|
4642 | do {
|
4643 | r = Rc(7, 0, (14 - i | 0) * 3 | 0) | 0;
|
4644 | i = i + 1 | 0;
|
4645 | d = r | d;
|
4646 | g = F() | 0 | g;
|
4647 | } while (i >>> 0 < j >>> 0);
|
4648 |
|
4649 | j = g;
|
4650 | }
|
4651 | } else {
|
4652 | d = l;
|
4653 | j = h;
|
4654 | }
|
4655 | } else {
|
4656 | d = 0;
|
4657 | j = 0;
|
4658 | }
|
4659 | i = Pc(d | 0, j | 0, e | 0, p | 0) | 0;
|
4660 | F() | 0;
|
4661 | g = 0;
|
4662 |
|
4663 | while (1) {
|
4664 | if ((g | 0) > (e | 0)) {
|
4665 | x = 83;
|
4666 | break b;
|
4667 | }
|
4668 |
|
4669 | r = u + (i << 3) | 0;
|
4670 | k = b[r + 4 >> 2] | 0;
|
4671 |
|
4672 | if ((k & -117440513 | 0) == (j | 0) ? (b[r >> 2] | 0) == (d | 0) : 0) {
|
4673 | x = 78;
|
4674 | break;
|
4675 | }
|
4676 |
|
4677 | i = (i + 1 | 0) % (e | 0) | 0;
|
4678 | r = u + (i << 3) | 0;
|
4679 | if ((b[r >> 2] | 0) == (d | 0) ? (b[r + 4 >> 2] | 0) == (j | 0) : 0) { break; }else { g = g + 1 | 0; }
|
4680 | }
|
4681 |
|
4682 | if ((x | 0) == 78 ? (x = 0, 0 == 0 & (k & 117440512 | 0) == 100663296) : 0) { break; }
|
4683 | r = c + (f << 3) | 0;
|
4684 | b[r >> 2] = l;
|
4685 | b[r + 4 >> 2] = h;
|
4686 | f = f + 1 | 0;
|
4687 | } } while (0);
|
4688 |
|
4689 | a = a + 1 | 0;
|
4690 |
|
4691 | if ((a | 0) >= (e | 0)) {
|
4692 | e = n;
|
4693 | break d;
|
4694 | }
|
4695 |
|
4696 | h = w + (a << 3) | 0;
|
4697 | l = b[h >> 2] | 0;
|
4698 | h = b[h + 4 >> 2] | 0;
|
4699 | }
|
4700 | } else {
|
4701 | f = 0;
|
4702 | e = n;
|
4703 | }
|
4704 | } else {
|
4705 | f = 0;
|
4706 | e = 0;
|
4707 | } } while (0);
|
4708 |
|
4709 | Uc(u | 0, 0, v | 0) | 0;
|
4710 | Tc(w | 0, q | 0, e << 3 | 0) | 0;
|
4711 | Jc(q);
|
4712 | if (!e) { break a; }else { c = c + (f << 3) | 0; }
|
4713 | }
|
4714 |
|
4715 | if ((x | 0) == 33) {
|
4716 | Jc(w);
|
4717 | Jc(u);
|
4718 | x = -1;
|
4719 | return x | 0;
|
4720 | } else if ((x | 0) == 38) {
|
4721 | Jc(w);
|
4722 | Jc(u);
|
4723 | x = -2;
|
4724 | return x | 0;
|
4725 | } else if ((x | 0) == 83) {
|
4726 | Jc(q);
|
4727 | Jc(w);
|
4728 | Jc(u);
|
4729 | x = -1;
|
4730 | return x | 0;
|
4731 | } else if ((x | 0) == 84) {
|
4732 | Tc(c | 0, w | 0, e << 3 | 0) | 0;
|
4733 | break;
|
4734 | }
|
4735 | } } while (0);
|
4736 |
|
4737 | Jc(w);
|
4738 | Jc(u);
|
4739 | x = 0;
|
4740 | return x | 0;
|
4741 | }
|
4742 |
|
4743 | function wb(a, c, d, e, f) {
|
4744 | a = a | 0;
|
4745 | c = c | 0;
|
4746 | d = d | 0;
|
4747 | e = e | 0;
|
4748 | f = f | 0;
|
4749 | var g = 0,
|
4750 | h = 0,
|
4751 | i = 0,
|
4752 | j = 0,
|
4753 | k = 0,
|
4754 | l = 0;
|
4755 |
|
4756 | if ((c | 0) <= 0) {
|
4757 | f = 0;
|
4758 | return f | 0;
|
4759 | }
|
4760 |
|
4761 | if ((f | 0) >= 16) {
|
4762 | g = 0;
|
4763 |
|
4764 | while (1) {
|
4765 | l = a + (g << 3) | 0;
|
4766 |
|
4767 | if (!((b[l >> 2] | 0) == 0 & (b[l + 4 >> 2] | 0) == 0)) {
|
4768 | g = 14;
|
4769 | break;
|
4770 | }
|
4771 |
|
4772 | g = g + 1 | 0;
|
4773 |
|
4774 | if ((g | 0) >= (c | 0)) {
|
4775 | h = 0;
|
4776 | g = 16;
|
4777 | break;
|
4778 | }
|
4779 | }
|
4780 |
|
4781 | if ((g | 0) == 14) { return ((e | 0) > 0 ? -2 : -1) | 0; }else if ((g | 0) == 16) { return h | 0; }
|
4782 | }
|
4783 |
|
4784 | g = 0;
|
4785 | l = 0;
|
4786 |
|
4787 | a: while (1) {
|
4788 | k = a + (l << 3) | 0;
|
4789 | i = k;
|
4790 | h = b[i >> 2] | 0;
|
4791 | i = b[i + 4 >> 2] | 0;
|
4792 |
|
4793 | do { if (!((h | 0) == 0 & (i | 0) == 0)) {
|
4794 | if ((g | 0) >= (e | 0)) {
|
4795 | h = -1;
|
4796 | g = 16;
|
4797 | break a;
|
4798 | }
|
4799 |
|
4800 | j = Qc(h | 0, i | 0, 52) | 0;
|
4801 | F() | 0;
|
4802 | j = j & 15;
|
4803 |
|
4804 | if ((j | 0) > (f | 0)) {
|
4805 | h = -2;
|
4806 | g = 16;
|
4807 | break a;
|
4808 | }
|
4809 |
|
4810 | if ((j | 0) == (f | 0)) {
|
4811 | k = d + (g << 3) | 0;
|
4812 | b[k >> 2] = h;
|
4813 | b[k + 4 >> 2] = i;
|
4814 | g = g + 1 | 0;
|
4815 | break;
|
4816 | }
|
4817 |
|
4818 | h = (hc(7, f - j | 0) | 0) + g | 0;
|
4819 |
|
4820 | if ((h | 0) > (e | 0)) {
|
4821 | h = -1;
|
4822 | g = 16;
|
4823 | break a;
|
4824 | }
|
4825 |
|
4826 | sb(b[k >> 2] | 0, b[k + 4 >> 2] | 0, f, d + (g << 3) | 0);
|
4827 | g = h;
|
4828 | } } while (0);
|
4829 |
|
4830 | l = l + 1 | 0;
|
4831 |
|
4832 | if ((l | 0) >= (c | 0)) {
|
4833 | h = 0;
|
4834 | g = 16;
|
4835 | break;
|
4836 | }
|
4837 | }
|
4838 |
|
4839 | if ((g | 0) == 16) { return h | 0; }
|
4840 | return 0;
|
4841 | }
|
4842 |
|
4843 | function xb(a, c, d) {
|
4844 | a = a | 0;
|
4845 | c = c | 0;
|
4846 | d = d | 0;
|
4847 | var e = 0,
|
4848 | f = 0,
|
4849 | g = 0,
|
4850 | h = 0;
|
4851 |
|
4852 | if ((c | 0) <= 0) {
|
4853 | d = 0;
|
4854 | return d | 0;
|
4855 | }
|
4856 |
|
4857 | if ((d | 0) >= 16) {
|
4858 | e = 0;
|
4859 |
|
4860 | while (1) {
|
4861 | h = a + (e << 3) | 0;
|
4862 |
|
4863 | if (!((b[h >> 2] | 0) == 0 & (b[h + 4 >> 2] | 0) == 0)) {
|
4864 | e = -1;
|
4865 | f = 13;
|
4866 | break;
|
4867 | }
|
4868 |
|
4869 | e = e + 1 | 0;
|
4870 |
|
4871 | if ((e | 0) >= (c | 0)) {
|
4872 | e = 0;
|
4873 | f = 13;
|
4874 | break;
|
4875 | }
|
4876 | }
|
4877 |
|
4878 | if ((f | 0) == 13) { return e | 0; }
|
4879 | }
|
4880 |
|
4881 | e = 0;
|
4882 | h = 0;
|
4883 |
|
4884 | a: while (1) {
|
4885 | f = a + (h << 3) | 0;
|
4886 | g = b[f >> 2] | 0;
|
4887 | f = b[f + 4 >> 2] | 0;
|
4888 |
|
4889 | do { if (!((g | 0) == 0 & (f | 0) == 0)) {
|
4890 | f = Qc(g | 0, f | 0, 52) | 0;
|
4891 | F() | 0;
|
4892 | f = f & 15;
|
4893 |
|
4894 | if ((f | 0) > (d | 0)) {
|
4895 | e = -1;
|
4896 | f = 13;
|
4897 | break a;
|
4898 | }
|
4899 |
|
4900 | if ((f | 0) == (d | 0)) {
|
4901 | e = e + 1 | 0;
|
4902 | break;
|
4903 | } else {
|
4904 | e = (hc(7, d - f | 0) | 0) + e | 0;
|
4905 | break;
|
4906 | }
|
4907 | } } while (0);
|
4908 |
|
4909 | h = h + 1 | 0;
|
4910 |
|
4911 | if ((h | 0) >= (c | 0)) {
|
4912 | f = 13;
|
4913 | break;
|
4914 | }
|
4915 | }
|
4916 |
|
4917 | if ((f | 0) == 13) { return e | 0; }
|
4918 | return 0;
|
4919 | }
|
4920 |
|
4921 | function yb(a, b) {
|
4922 | a = a | 0;
|
4923 | b = b | 0;
|
4924 | b = Qc(a | 0, b | 0, 52) | 0;
|
4925 | F() | 0;
|
4926 | return b & 1 | 0;
|
4927 | }
|
4928 |
|
4929 | function zb(a, b) {
|
4930 | a = a | 0;
|
4931 | b = b | 0;
|
4932 | var c = 0,
|
4933 | d = 0,
|
4934 | e = 0;
|
4935 | e = Qc(a | 0, b | 0, 52) | 0;
|
4936 | F() | 0;
|
4937 | e = e & 15;
|
4938 |
|
4939 | if (!e) {
|
4940 | e = 0;
|
4941 | return e | 0;
|
4942 | }
|
4943 |
|
4944 | d = 1;
|
4945 |
|
4946 | while (1) {
|
4947 | c = Qc(a | 0, b | 0, (15 - d | 0) * 3 | 0) | 0;
|
4948 | F() | 0;
|
4949 | c = c & 7;
|
4950 |
|
4951 | if (c | 0) {
|
4952 | d = 5;
|
4953 | break;
|
4954 | }
|
4955 |
|
4956 | if (d >>> 0 < e >>> 0) { d = d + 1 | 0; }else {
|
4957 | c = 0;
|
4958 | d = 5;
|
4959 | break;
|
4960 | }
|
4961 | }
|
4962 |
|
4963 | if ((d | 0) == 5) { return c | 0; }
|
4964 | return 0;
|
4965 | }
|
4966 |
|
4967 | function Ab(a, b) {
|
4968 | a = a | 0;
|
4969 | b = b | 0;
|
4970 | var c = 0,
|
4971 | d = 0,
|
4972 | e = 0,
|
4973 | f = 0,
|
4974 | g = 0,
|
4975 | h = 0,
|
4976 | i = 0;
|
4977 | i = Qc(a | 0, b | 0, 52) | 0;
|
4978 | F() | 0;
|
4979 | i = i & 15;
|
4980 |
|
4981 | if (!i) {
|
4982 | h = b;
|
4983 | i = a;
|
4984 | E(h | 0);
|
4985 | return i | 0;
|
4986 | }
|
4987 |
|
4988 | h = 1;
|
4989 | c = 0;
|
4990 |
|
4991 | while (1) {
|
4992 | f = (15 - h | 0) * 3 | 0;
|
4993 | d = Rc(7, 0, f | 0) | 0;
|
4994 | e = F() | 0;
|
4995 | g = Qc(a | 0, b | 0, f | 0) | 0;
|
4996 | F() | 0;
|
4997 | f = Rc(Ka(g & 7) | 0, 0, f | 0) | 0;
|
4998 | g = F() | 0;
|
4999 | a = f | a & ~d;
|
5000 | b = g | b & ~e;
|
5001 |
|
5002 | a: do { if (!c) { if (!((f & d | 0) == 0 & (g & e | 0) == 0)) {
|
5003 | d = Qc(a | 0, b | 0, 52) | 0;
|
5004 | F() | 0;
|
5005 | d = d & 15;
|
5006 | if (!d) { c = 1; }else {
|
5007 | c = 1;
|
5008 |
|
5009 | b: while (1) {
|
5010 | g = Qc(a | 0, b | 0, (15 - c | 0) * 3 | 0) | 0;
|
5011 | F() | 0;
|
5012 |
|
5013 | switch (g & 7) {
|
5014 | case 1:
|
5015 | break b;
|
5016 |
|
5017 | case 0:
|
5018 | break;
|
5019 |
|
5020 | default:
|
5021 | {
|
5022 | c = 1;
|
5023 | break a;
|
5024 | }
|
5025 | }
|
5026 |
|
5027 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else {
|
5028 | c = 1;
|
5029 | break a;
|
5030 | }
|
5031 | }
|
5032 |
|
5033 | c = 1;
|
5034 |
|
5035 | while (1) {
|
5036 | g = (15 - c | 0) * 3 | 0;
|
5037 | e = Qc(a | 0, b | 0, g | 0) | 0;
|
5038 | F() | 0;
|
5039 | f = Rc(7, 0, g | 0) | 0;
|
5040 | b = b & ~(F() | 0);
|
5041 | g = Rc(Ka(e & 7) | 0, 0, g | 0) | 0;
|
5042 | a = a & ~f | g;
|
5043 | b = b | (F() | 0);
|
5044 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else {
|
5045 | c = 1;
|
5046 | break;
|
5047 | }
|
5048 | }
|
5049 | }
|
5050 | } else { c = 0; } } } while (0);
|
5051 |
|
5052 | if (h >>> 0 < i >>> 0) { h = h + 1 | 0; }else { break; }
|
5053 | }
|
5054 |
|
5055 | E(b | 0);
|
5056 | return a | 0;
|
5057 | }
|
5058 |
|
5059 | function Bb(a, b) {
|
5060 | a = a | 0;
|
5061 | b = b | 0;
|
5062 | var c = 0,
|
5063 | d = 0,
|
5064 | e = 0,
|
5065 | f = 0,
|
5066 | g = 0;
|
5067 | d = Qc(a | 0, b | 0, 52) | 0;
|
5068 | F() | 0;
|
5069 | d = d & 15;
|
5070 |
|
5071 | if (!d) {
|
5072 | c = b;
|
5073 | d = a;
|
5074 | E(c | 0);
|
5075 | return d | 0;
|
5076 | }
|
5077 |
|
5078 | c = 1;
|
5079 |
|
5080 | while (1) {
|
5081 | f = (15 - c | 0) * 3 | 0;
|
5082 | g = Qc(a | 0, b | 0, f | 0) | 0;
|
5083 | F() | 0;
|
5084 | e = Rc(7, 0, f | 0) | 0;
|
5085 | b = b & ~(F() | 0);
|
5086 | f = Rc(Ka(g & 7) | 0, 0, f | 0) | 0;
|
5087 | a = f | a & ~e;
|
5088 | b = F() | 0 | b;
|
5089 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else { break; }
|
5090 | }
|
5091 |
|
5092 | E(b | 0);
|
5093 | return a | 0;
|
5094 | }
|
5095 |
|
5096 | function Cb(a, b) {
|
5097 | a = a | 0;
|
5098 | b = b | 0;
|
5099 | var c = 0,
|
5100 | d = 0,
|
5101 | e = 0,
|
5102 | f = 0,
|
5103 | g = 0,
|
5104 | h = 0,
|
5105 | i = 0;
|
5106 | i = Qc(a | 0, b | 0, 52) | 0;
|
5107 | F() | 0;
|
5108 | i = i & 15;
|
5109 |
|
5110 | if (!i) {
|
5111 | h = b;
|
5112 | i = a;
|
5113 | E(h | 0);
|
5114 | return i | 0;
|
5115 | }
|
5116 |
|
5117 | h = 1;
|
5118 | c = 0;
|
5119 |
|
5120 | while (1) {
|
5121 | f = (15 - h | 0) * 3 | 0;
|
5122 | d = Rc(7, 0, f | 0) | 0;
|
5123 | e = F() | 0;
|
5124 | g = Qc(a | 0, b | 0, f | 0) | 0;
|
5125 | F() | 0;
|
5126 | f = Rc(La(g & 7) | 0, 0, f | 0) | 0;
|
5127 | g = F() | 0;
|
5128 | a = f | a & ~d;
|
5129 | b = g | b & ~e;
|
5130 |
|
5131 | a: do { if (!c) { if (!((f & d | 0) == 0 & (g & e | 0) == 0)) {
|
5132 | d = Qc(a | 0, b | 0, 52) | 0;
|
5133 | F() | 0;
|
5134 | d = d & 15;
|
5135 | if (!d) { c = 1; }else {
|
5136 | c = 1;
|
5137 |
|
5138 | b: while (1) {
|
5139 | g = Qc(a | 0, b | 0, (15 - c | 0) * 3 | 0) | 0;
|
5140 | F() | 0;
|
5141 |
|
5142 | switch (g & 7) {
|
5143 | case 1:
|
5144 | break b;
|
5145 |
|
5146 | case 0:
|
5147 | break;
|
5148 |
|
5149 | default:
|
5150 | {
|
5151 | c = 1;
|
5152 | break a;
|
5153 | }
|
5154 | }
|
5155 |
|
5156 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else {
|
5157 | c = 1;
|
5158 | break a;
|
5159 | }
|
5160 | }
|
5161 |
|
5162 | c = 1;
|
5163 |
|
5164 | while (1) {
|
5165 | e = (15 - c | 0) * 3 | 0;
|
5166 | f = Rc(7, 0, e | 0) | 0;
|
5167 | g = b & ~(F() | 0);
|
5168 | b = Qc(a | 0, b | 0, e | 0) | 0;
|
5169 | F() | 0;
|
5170 | b = Rc(La(b & 7) | 0, 0, e | 0) | 0;
|
5171 | a = a & ~f | b;
|
5172 | b = g | (F() | 0);
|
5173 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else {
|
5174 | c = 1;
|
5175 | break;
|
5176 | }
|
5177 | }
|
5178 | }
|
5179 | } else { c = 0; } } } while (0);
|
5180 |
|
5181 | if (h >>> 0 < i >>> 0) { h = h + 1 | 0; }else { break; }
|
5182 | }
|
5183 |
|
5184 | E(b | 0);
|
5185 | return a | 0;
|
5186 | }
|
5187 |
|
5188 | function Db(a, b) {
|
5189 | a = a | 0;
|
5190 | b = b | 0;
|
5191 | var c = 0,
|
5192 | d = 0,
|
5193 | e = 0,
|
5194 | f = 0,
|
5195 | g = 0;
|
5196 | d = Qc(a | 0, b | 0, 52) | 0;
|
5197 | F() | 0;
|
5198 | d = d & 15;
|
5199 |
|
5200 | if (!d) {
|
5201 | c = b;
|
5202 | d = a;
|
5203 | E(c | 0);
|
5204 | return d | 0;
|
5205 | }
|
5206 |
|
5207 | c = 1;
|
5208 |
|
5209 | while (1) {
|
5210 | g = (15 - c | 0) * 3 | 0;
|
5211 | f = Rc(7, 0, g | 0) | 0;
|
5212 | e = b & ~(F() | 0);
|
5213 | b = Qc(a | 0, b | 0, g | 0) | 0;
|
5214 | F() | 0;
|
5215 | b = Rc(La(b & 7) | 0, 0, g | 0) | 0;
|
5216 | a = b | a & ~f;
|
5217 | b = F() | 0 | e;
|
5218 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else { break; }
|
5219 | }
|
5220 |
|
5221 | E(b | 0);
|
5222 | return a | 0;
|
5223 | }
|
5224 |
|
5225 | function Eb(a, c) {
|
5226 | a = a | 0;
|
5227 | c = c | 0;
|
5228 | var d = 0,
|
5229 | e = 0,
|
5230 | f = 0,
|
5231 | g = 0,
|
5232 | h = 0,
|
5233 | i = 0,
|
5234 | j = 0,
|
5235 | k = 0,
|
5236 | l = 0;
|
5237 | j = R;
|
5238 | R = R + 64 | 0;
|
5239 | i = j + 40 | 0;
|
5240 | e = j + 24 | 0;
|
5241 | f = j + 12 | 0;
|
5242 | g = j;
|
5243 | Rc(c | 0, 0, 52) | 0;
|
5244 | d = F() | 0 | 134225919;
|
5245 |
|
5246 | if (!c) {
|
5247 | if ((b[a + 4 >> 2] | 0) > 2) {
|
5248 | h = 0;
|
5249 | i = 0;
|
5250 | E(h | 0);
|
5251 | R = j;
|
5252 | return i | 0;
|
5253 | }
|
5254 |
|
5255 | if ((b[a + 8 >> 2] | 0) > 2) {
|
5256 | h = 0;
|
5257 | i = 0;
|
5258 | E(h | 0);
|
5259 | R = j;
|
5260 | return i | 0;
|
5261 | }
|
5262 |
|
5263 | if ((b[a + 12 >> 2] | 0) > 2) {
|
5264 | h = 0;
|
5265 | i = 0;
|
5266 | E(h | 0);
|
5267 | R = j;
|
5268 | return i | 0;
|
5269 | }
|
5270 |
|
5271 | Rc(ka(a) | 0, 0, 45) | 0;
|
5272 | h = F() | 0 | d;
|
5273 | i = -1;
|
5274 | E(h | 0);
|
5275 | R = j;
|
5276 | return i | 0;
|
5277 | }
|
5278 | b[i >> 2] = b[a >> 2];
|
5279 | b[i + 4 >> 2] = b[a + 4 >> 2];
|
5280 | b[i + 8 >> 2] = b[a + 8 >> 2];
|
5281 | b[i + 12 >> 2] = b[a + 12 >> 2];
|
5282 | h = i + 4 | 0;
|
5283 |
|
5284 | if ((c | 0) > 0) {
|
5285 | a = -1;
|
5286 |
|
5287 | while (1) {
|
5288 | b[e >> 2] = b[h >> 2];
|
5289 | b[e + 4 >> 2] = b[h + 4 >> 2];
|
5290 | b[e + 8 >> 2] = b[h + 8 >> 2];
|
5291 |
|
5292 | if (!(c & 1)) {
|
5293 | Ea(h);
|
5294 | b[f >> 2] = b[h >> 2];
|
5295 | b[f + 4 >> 2] = b[h + 4 >> 2];
|
5296 | b[f + 8 >> 2] = b[h + 8 >> 2];
|
5297 | Ga(f);
|
5298 | } else {
|
5299 | Da(h);
|
5300 | b[f >> 2] = b[h >> 2];
|
5301 | b[f + 4 >> 2] = b[h + 4 >> 2];
|
5302 | b[f + 8 >> 2] = b[h + 8 >> 2];
|
5303 | Fa(f);
|
5304 | }
|
5305 |
|
5306 | Aa(e, f, g);
|
5307 | xa(g);
|
5308 | l = (15 - c | 0) * 3 | 0;
|
5309 | k = Rc(7, 0, l | 0) | 0;
|
5310 | d = d & ~(F() | 0);
|
5311 | l = Rc(Ca(g) | 0, 0, l | 0) | 0;
|
5312 | a = l | a & ~k;
|
5313 | d = F() | 0 | d;
|
5314 | if ((c | 0) > 1) { c = c + -1 | 0; }else { break; }
|
5315 | }
|
5316 | } else { a = -1; }
|
5317 |
|
5318 | a: do { if (((b[h >> 2] | 0) <= 2 ? (b[i + 8 >> 2] | 0) <= 2 : 0) ? (b[i + 12 >> 2] | 0) <= 2 : 0) {
|
5319 | e = ka(i) | 0;
|
5320 | c = Rc(e | 0, 0, 45) | 0;
|
5321 | c = c | a;
|
5322 | a = F() | 0 | d & -1040385;
|
5323 | g = la(i) | 0;
|
5324 |
|
5325 | if (!(ia(e) | 0)) {
|
5326 | if ((g | 0) <= 0) { break; }
|
5327 | f = 0;
|
5328 |
|
5329 | while (1) {
|
5330 | e = Qc(c | 0, a | 0, 52) | 0;
|
5331 | F() | 0;
|
5332 | e = e & 15;
|
5333 |
|
5334 | if (e) {
|
5335 | d = 1;
|
5336 |
|
5337 | while (1) {
|
5338 | l = (15 - d | 0) * 3 | 0;
|
5339 | i = Qc(c | 0, a | 0, l | 0) | 0;
|
5340 | F() | 0;
|
5341 | k = Rc(7, 0, l | 0) | 0;
|
5342 | a = a & ~(F() | 0);
|
5343 | l = Rc(Ka(i & 7) | 0, 0, l | 0) | 0;
|
5344 | c = c & ~k | l;
|
5345 | a = a | (F() | 0);
|
5346 | if (d >>> 0 < e >>> 0) { d = d + 1 | 0; }else { break; }
|
5347 | }
|
5348 | }
|
5349 |
|
5350 | f = f + 1 | 0;
|
5351 | if ((f | 0) == (g | 0)) { break a; }
|
5352 | }
|
5353 | }
|
5354 |
|
5355 | f = Qc(c | 0, a | 0, 52) | 0;
|
5356 | F() | 0;
|
5357 | f = f & 15;
|
5358 |
|
5359 | b: do { if (f) {
|
5360 | d = 1;
|
5361 |
|
5362 | c: while (1) {
|
5363 | l = Qc(c | 0, a | 0, (15 - d | 0) * 3 | 0) | 0;
|
5364 | F() | 0;
|
5365 |
|
5366 | switch (l & 7) {
|
5367 | case 1:
|
5368 | break c;
|
5369 |
|
5370 | case 0:
|
5371 | break;
|
5372 |
|
5373 | default:
|
5374 | break b;
|
5375 | }
|
5376 |
|
5377 | if (d >>> 0 < f >>> 0) { d = d + 1 | 0; }else { break b; }
|
5378 | }
|
5379 |
|
5380 | if (ma(e, b[i >> 2] | 0) | 0) {
|
5381 | d = 1;
|
5382 |
|
5383 | while (1) {
|
5384 | i = (15 - d | 0) * 3 | 0;
|
5385 | k = Rc(7, 0, i | 0) | 0;
|
5386 | l = a & ~(F() | 0);
|
5387 | a = Qc(c | 0, a | 0, i | 0) | 0;
|
5388 | F() | 0;
|
5389 | a = Rc(La(a & 7) | 0, 0, i | 0) | 0;
|
5390 | c = c & ~k | a;
|
5391 | a = l | (F() | 0);
|
5392 | if (d >>> 0 < f >>> 0) { d = d + 1 | 0; }else { break; }
|
5393 | }
|
5394 | } else {
|
5395 | d = 1;
|
5396 |
|
5397 | while (1) {
|
5398 | l = (15 - d | 0) * 3 | 0;
|
5399 | i = Qc(c | 0, a | 0, l | 0) | 0;
|
5400 | F() | 0;
|
5401 | k = Rc(7, 0, l | 0) | 0;
|
5402 | a = a & ~(F() | 0);
|
5403 | l = Rc(Ka(i & 7) | 0, 0, l | 0) | 0;
|
5404 | c = c & ~k | l;
|
5405 | a = a | (F() | 0);
|
5406 | if (d >>> 0 < f >>> 0) { d = d + 1 | 0; }else { break; }
|
5407 | }
|
5408 | }
|
5409 | } } while (0);
|
5410 |
|
5411 | if ((g | 0) > 0) {
|
5412 | d = 0;
|
5413 |
|
5414 | do {
|
5415 | c = Ab(c, a) | 0;
|
5416 | a = F() | 0;
|
5417 | d = d + 1 | 0;
|
5418 | } while ((d | 0) != (g | 0));
|
5419 | }
|
5420 | } else {
|
5421 | c = 0;
|
5422 | a = 0;
|
5423 | } } while (0);
|
5424 |
|
5425 | k = a;
|
5426 | l = c;
|
5427 | E(k | 0);
|
5428 | R = j;
|
5429 | return l | 0;
|
5430 | }
|
5431 |
|
5432 | function Fb(a) {
|
5433 | a = a | 0;
|
5434 | return (a | 0) % 2 | 0 | 0;
|
5435 | }
|
5436 |
|
5437 | function Gb(a, c) {
|
5438 | a = a | 0;
|
5439 | c = c | 0;
|
5440 | var d = 0,
|
5441 | e = 0;
|
5442 | e = R;
|
5443 | R = R + 16 | 0;
|
5444 | d = e;
|
5445 |
|
5446 | if ((c >>> 0 <= 15 ? !((b[a + 4 >> 2] & 2146435072 | 0) == 2146435072) : 0) ? !((b[a + 8 + 4 >> 2] & 2146435072 | 0) == 2146435072) : 0) {
|
5447 | Ta(a, c, d);
|
5448 | c = Eb(d, c) | 0;
|
5449 | a = F() | 0;
|
5450 | } else {
|
5451 | a = 0;
|
5452 | c = 0;
|
5453 | }
|
5454 |
|
5455 | E(a | 0);
|
5456 | R = e;
|
5457 | return c | 0;
|
5458 | }
|
5459 |
|
5460 | function Hb(a, c, d) {
|
5461 | a = a | 0;
|
5462 | c = c | 0;
|
5463 | d = d | 0;
|
5464 | var e = 0,
|
5465 | f = 0,
|
5466 | g = 0,
|
5467 | h = 0;
|
5468 | f = d + 4 | 0;
|
5469 | g = Qc(a | 0, c | 0, 52) | 0;
|
5470 | F() | 0;
|
5471 | g = g & 15;
|
5472 | h = Qc(a | 0, c | 0, 45) | 0;
|
5473 | F() | 0;
|
5474 | e = (g | 0) == 0;
|
5475 |
|
5476 | if (!(ia(h & 127) | 0)) {
|
5477 | if (e) {
|
5478 | h = 0;
|
5479 | return h | 0;
|
5480 | }
|
5481 |
|
5482 | if ((b[f >> 2] | 0) == 0 ? (b[d + 8 >> 2] | 0) == 0 : 0) { e = (b[d + 12 >> 2] | 0) != 0 & 1; }else { e = 1; }
|
5483 | } else if (e) {
|
5484 | h = 1;
|
5485 | return h | 0;
|
5486 | } else { e = 1; }
|
5487 |
|
5488 | d = 1;
|
5489 |
|
5490 | while (1) {
|
5491 | if (!(d & 1)) { Ga(f); }else { Fa(f); }
|
5492 | h = Qc(a | 0, c | 0, (15 - d | 0) * 3 | 0) | 0;
|
5493 | F() | 0;
|
5494 | Ha(f, h & 7);
|
5495 | if (d >>> 0 < g >>> 0) { d = d + 1 | 0; }else { break; }
|
5496 | }
|
5497 |
|
5498 | return e | 0;
|
5499 | }
|
5500 |
|
5501 | function Ib(a, c, d) {
|
5502 | a = a | 0;
|
5503 | c = c | 0;
|
5504 | d = d | 0;
|
5505 | var e = 0,
|
5506 | f = 0,
|
5507 | g = 0,
|
5508 | h = 0,
|
5509 | i = 0,
|
5510 | j = 0,
|
5511 | k = 0,
|
5512 | l = 0;
|
5513 | l = R;
|
5514 | R = R + 16 | 0;
|
5515 | j = l;
|
5516 | k = Qc(a | 0, c | 0, 45) | 0;
|
5517 | F() | 0;
|
5518 | k = k & 127;
|
5519 |
|
5520 | a: do { if ((ia(k) | 0) != 0 ? (g = Qc(a | 0, c | 0, 52) | 0, F() | 0, g = g & 15, (g | 0) != 0) : 0) {
|
5521 | e = 1;
|
5522 |
|
5523 | b: while (1) {
|
5524 | i = Qc(a | 0, c | 0, (15 - e | 0) * 3 | 0) | 0;
|
5525 | F() | 0;
|
5526 |
|
5527 | switch (i & 7) {
|
5528 | case 5:
|
5529 | break b;
|
5530 |
|
5531 | case 0:
|
5532 | break;
|
5533 |
|
5534 | default:
|
5535 | {
|
5536 | e = c;
|
5537 | break a;
|
5538 | }
|
5539 | }
|
5540 |
|
5541 | if (e >>> 0 < g >>> 0) { e = e + 1 | 0; }else {
|
5542 | e = c;
|
5543 | break a;
|
5544 | }
|
5545 | }
|
5546 |
|
5547 | f = 1;
|
5548 | e = c;
|
5549 |
|
5550 | while (1) {
|
5551 | c = (15 - f | 0) * 3 | 0;
|
5552 | h = Rc(7, 0, c | 0) | 0;
|
5553 | i = e & ~(F() | 0);
|
5554 | e = Qc(a | 0, e | 0, c | 0) | 0;
|
5555 | F() | 0;
|
5556 | e = Rc(La(e & 7) | 0, 0, c | 0) | 0;
|
5557 | a = a & ~h | e;
|
5558 | e = i | (F() | 0);
|
5559 | if (f >>> 0 < g >>> 0) { f = f + 1 | 0; }else { break; }
|
5560 | }
|
5561 | } else { e = c; } } while (0);
|
5562 |
|
5563 | i = 7728 + (k * 28 | 0) | 0;
|
5564 | b[d >> 2] = b[i >> 2];
|
5565 | b[d + 4 >> 2] = b[i + 4 >> 2];
|
5566 | b[d + 8 >> 2] = b[i + 8 >> 2];
|
5567 | b[d + 12 >> 2] = b[i + 12 >> 2];
|
5568 |
|
5569 | if (!(Hb(a, e, d) | 0)) {
|
5570 | R = l;
|
5571 | return;
|
5572 | }
|
5573 |
|
5574 | h = d + 4 | 0;
|
5575 | b[j >> 2] = b[h >> 2];
|
5576 | b[j + 4 >> 2] = b[h + 4 >> 2];
|
5577 | b[j + 8 >> 2] = b[h + 8 >> 2];
|
5578 | g = Qc(a | 0, e | 0, 52) | 0;
|
5579 | F() | 0;
|
5580 | i = g & 15;
|
5581 | if (!(g & 1)) { g = i; }else {
|
5582 | Ga(h);
|
5583 | g = i + 1 | 0;
|
5584 | }
|
5585 | if (!(ia(k) | 0)) { e = 0; }else {
|
5586 | c: do { if (!i) { e = 0; }else {
|
5587 | c = 1;
|
5588 |
|
5589 | while (1) {
|
5590 | f = Qc(a | 0, e | 0, (15 - c | 0) * 3 | 0) | 0;
|
5591 | F() | 0;
|
5592 | f = f & 7;
|
5593 |
|
5594 | if (f | 0) {
|
5595 | e = f;
|
5596 | break c;
|
5597 | }
|
5598 |
|
5599 | if (c >>> 0 < i >>> 0) { c = c + 1 | 0; }else {
|
5600 | e = 0;
|
5601 | break;
|
5602 | }
|
5603 | }
|
5604 | } } while (0);
|
5605 |
|
5606 | e = (e | 0) == 4 & 1;
|
5607 | }
|
5608 |
|
5609 | if (!(Za(d, g, e, 0) | 0)) {
|
5610 | if ((g | 0) != (i | 0)) {
|
5611 | b[h >> 2] = b[j >> 2];
|
5612 | b[h + 4 >> 2] = b[j + 4 >> 2];
|
5613 | b[h + 8 >> 2] = b[j + 8 >> 2];
|
5614 | }
|
5615 | } else {
|
5616 | if (ia(k) | 0) { do {} while ((Za(d, g, 0, 0) | 0) != 0); }
|
5617 | if ((g | 0) != (i | 0)) { Ea(h); }
|
5618 | }
|
5619 |
|
5620 | R = l;
|
5621 | return;
|
5622 | }
|
5623 |
|
5624 | function Jb(a, b, c) {
|
5625 | a = a | 0;
|
5626 | b = b | 0;
|
5627 | c = c | 0;
|
5628 | var d = 0,
|
5629 | e = 0;
|
5630 | d = R;
|
5631 | R = R + 16 | 0;
|
5632 | e = d;
|
5633 | Ib(a, b, e);
|
5634 | b = Qc(a | 0, b | 0, 52) | 0;
|
5635 | F() | 0;
|
5636 | Wa(e, b & 15, c);
|
5637 | R = d;
|
5638 | return;
|
5639 | }
|
5640 |
|
5641 | function Kb(a, b, c) {
|
5642 | a = a | 0;
|
5643 | b = b | 0;
|
5644 | c = c | 0;
|
5645 | var d = 0,
|
5646 | e = 0,
|
5647 | f = 0,
|
5648 | g = 0,
|
5649 | h = 0;
|
5650 | h = R;
|
5651 | R = R + 16 | 0;
|
5652 | f = h;
|
5653 | Ib(a, b, f);
|
5654 | g = Qc(a | 0, b | 0, 52) | 0;
|
5655 | F() | 0;
|
5656 | g = g & 15;
|
5657 | e = Qc(a | 0, b | 0, 45) | 0;
|
5658 | F() | 0;
|
5659 |
|
5660 | if (!(ia(e & 127) | 0)) {
|
5661 | b = 0;
|
5662 | $a(f, g, b, c);
|
5663 | R = h;
|
5664 | return;
|
5665 | }
|
5666 |
|
5667 | a: do { if (!g) { d = 0; }else {
|
5668 | e = 1;
|
5669 |
|
5670 | while (1) {
|
5671 | d = Qc(a | 0, b | 0, (15 - e | 0) * 3 | 0) | 0;
|
5672 | F() | 0;
|
5673 | d = d & 7;
|
5674 | if (d | 0) { break a; }
|
5675 | if (e >>> 0 < g >>> 0) { e = e + 1 | 0; }else {
|
5676 | d = 0;
|
5677 | break;
|
5678 | }
|
5679 | }
|
5680 | } } while (0);
|
5681 |
|
5682 | b = (d | 0) == 0 & 1;
|
5683 | $a(f, g, b, c);
|
5684 | R = h;
|
5685 | return;
|
5686 | }
|
5687 |
|
5688 | function Lb(a, b) {
|
5689 | a = a | 0;
|
5690 | b = b | 0;
|
5691 | var c = 0,
|
5692 | d = 0,
|
5693 | e = 0;
|
5694 | d = Qc(a | 0, b | 0, 45) | 0;
|
5695 | F() | 0;
|
5696 |
|
5697 | if (!(ia(d & 127) | 0)) {
|
5698 | d = 2;
|
5699 | return d | 0;
|
5700 | }
|
5701 |
|
5702 | d = Qc(a | 0, b | 0, 52) | 0;
|
5703 | F() | 0;
|
5704 | d = d & 15;
|
5705 |
|
5706 | if (!d) {
|
5707 | d = 5;
|
5708 | return d | 0;
|
5709 | }
|
5710 |
|
5711 | c = 1;
|
5712 |
|
5713 | while (1) {
|
5714 | e = Rc(7, 0, (15 - c | 0) * 3 | 0) | 0;
|
5715 |
|
5716 | if (!((e & a | 0) == 0 & ((F() | 0) & b | 0) == 0)) {
|
5717 | c = 2;
|
5718 | a = 6;
|
5719 | break;
|
5720 | }
|
5721 |
|
5722 | if (c >>> 0 < d >>> 0) { c = c + 1 | 0; }else {
|
5723 | c = 5;
|
5724 | a = 6;
|
5725 | break;
|
5726 | }
|
5727 | }
|
5728 |
|
5729 | if ((a | 0) == 6) { return c | 0; }
|
5730 | return 0;
|
5731 | }
|
5732 |
|
5733 | function Mb(a, c, d) {
|
5734 | a = a | 0;
|
5735 | c = c | 0;
|
5736 | d = d | 0;
|
5737 | var e = 0,
|
5738 | f = 0,
|
5739 | g = 0,
|
5740 | h = 0,
|
5741 | i = 0,
|
5742 | j = 0,
|
5743 | k = 0,
|
5744 | l = 0,
|
5745 | m = 0;
|
5746 | m = R;
|
5747 | R = R + 128 | 0;
|
5748 | k = m + 112 | 0;
|
5749 | g = m + 96 | 0;
|
5750 | l = m;
|
5751 | f = Qc(a | 0, c | 0, 52) | 0;
|
5752 | F() | 0;
|
5753 | i = f & 15;
|
5754 | b[k >> 2] = i;
|
5755 | h = Qc(a | 0, c | 0, 45) | 0;
|
5756 | F() | 0;
|
5757 | h = h & 127;
|
5758 |
|
5759 | a: do { if (ia(h) | 0) {
|
5760 | if (i | 0) {
|
5761 | e = 1;
|
5762 |
|
5763 | while (1) {
|
5764 | j = Rc(7, 0, (15 - e | 0) * 3 | 0) | 0;
|
5765 |
|
5766 | if (!((j & a | 0) == 0 & ((F() | 0) & c | 0) == 0)) {
|
5767 | f = 0;
|
5768 | break a;
|
5769 | }
|
5770 |
|
5771 | if (e >>> 0 < i >>> 0) { e = e + 1 | 0; }else { break; }
|
5772 | }
|
5773 | }
|
5774 |
|
5775 | if (!(f & 1)) {
|
5776 | j = Rc(i + 1 | 0, 0, 52) | 0;
|
5777 | l = F() | 0 | c & -15728641;
|
5778 | k = Rc(7, 0, (14 - i | 0) * 3 | 0) | 0;
|
5779 | Mb((j | a) & ~k, l & ~(F() | 0), d);
|
5780 | R = m;
|
5781 | return;
|
5782 | } else { f = 1; }
|
5783 | } else { f = 0; } } while (0);
|
5784 |
|
5785 | Ib(a, c, g);
|
5786 |
|
5787 | if (f) {
|
5788 | Ya(g, k, l);
|
5789 | j = 5;
|
5790 | } else {
|
5791 | ab(g, k, l);
|
5792 | j = 6;
|
5793 | }
|
5794 |
|
5795 | b: do { if (ia(h) | 0) {
|
5796 | if (!i) { e = 20; }else {
|
5797 | e = 1;
|
5798 |
|
5799 | while (1) {
|
5800 | h = Rc(7, 0, (15 - e | 0) * 3 | 0) | 0;
|
5801 |
|
5802 | if (!((h & a | 0) == 0 & ((F() | 0) & c | 0) == 0)) {
|
5803 | e = 8;
|
5804 | break b;
|
5805 | }
|
5806 |
|
5807 | if (e >>> 0 < i >>> 0) { e = e + 1 | 0; }else {
|
5808 | e = 20;
|
5809 | break;
|
5810 | }
|
5811 | }
|
5812 | }
|
5813 | } else { e = 8; } } while (0);
|
5814 |
|
5815 | Uc(d | 0, -1, e | 0) | 0;
|
5816 |
|
5817 | if (f) {
|
5818 | f = 0;
|
5819 |
|
5820 | do {
|
5821 | g = l + (f << 4) | 0;
|
5822 | _a(g, b[k >> 2] | 0) | 0;
|
5823 | g = b[g >> 2] | 0;
|
5824 | e = 0;
|
5825 |
|
5826 | while (1) {
|
5827 | h = d + (e << 2) | 0;
|
5828 | i = b[h >> 2] | 0;
|
5829 | if ((i | 0) == -1 | (i | 0) == (g | 0)) { break; }else { e = e + 1 | 0; }
|
5830 | }
|
5831 |
|
5832 | b[h >> 2] = g;
|
5833 | f = f + 1 | 0;
|
5834 | } while ((f | 0) != (j | 0));
|
5835 | } else {
|
5836 | f = 0;
|
5837 |
|
5838 | do {
|
5839 | g = l + (f << 4) | 0;
|
5840 | Za(g, b[k >> 2] | 0, 0, 1) | 0;
|
5841 | g = b[g >> 2] | 0;
|
5842 | e = 0;
|
5843 |
|
5844 | while (1) {
|
5845 | h = d + (e << 2) | 0;
|
5846 | i = b[h >> 2] | 0;
|
5847 | if ((i | 0) == -1 | (i | 0) == (g | 0)) { break; }else { e = e + 1 | 0; }
|
5848 | }
|
5849 |
|
5850 | b[h >> 2] = g;
|
5851 | f = f + 1 | 0;
|
5852 | } while ((f | 0) != (j | 0));
|
5853 | }
|
5854 |
|
5855 | R = m;
|
5856 | return;
|
5857 | }
|
5858 |
|
5859 | function Nb() {
|
5860 | return 12;
|
5861 | }
|
5862 |
|
5863 | function Ob(a, c) {
|
5864 | a = a | 0;
|
5865 | c = c | 0;
|
5866 | var d = 0,
|
5867 | e = 0,
|
5868 | f = 0,
|
5869 | g = 0,
|
5870 | h = 0,
|
5871 | i = 0,
|
5872 | j = 0;
|
5873 | Rc(a | 0, 0, 52) | 0;
|
5874 | i = F() | 0 | 134225919;
|
5875 |
|
5876 | if ((a | 0) < 1) {
|
5877 | e = 0;
|
5878 | d = 0;
|
5879 |
|
5880 | do {
|
5881 | if (ia(e) | 0) {
|
5882 | Rc(e | 0, 0, 45) | 0;
|
5883 | h = i | (F() | 0);
|
5884 | a = c + (d << 3) | 0;
|
5885 | b[a >> 2] = -1;
|
5886 | b[a + 4 >> 2] = h;
|
5887 | d = d + 1 | 0;
|
5888 | }
|
5889 |
|
5890 | e = e + 1 | 0;
|
5891 | } while ((e | 0) != 122);
|
5892 |
|
5893 | return;
|
5894 | }
|
5895 |
|
5896 | h = 0;
|
5897 | d = 0;
|
5898 |
|
5899 | do {
|
5900 | if (ia(h) | 0) {
|
5901 | Rc(h | 0, 0, 45) | 0;
|
5902 | e = 1;
|
5903 | f = -1;
|
5904 | g = i | (F() | 0);
|
5905 |
|
5906 | while (1) {
|
5907 | j = Rc(7, 0, (15 - e | 0) * 3 | 0) | 0;
|
5908 | f = f & ~j;
|
5909 | g = g & ~(F() | 0);
|
5910 | if ((e | 0) == (a | 0)) { break; }else { e = e + 1 | 0; }
|
5911 | }
|
5912 |
|
5913 | j = c + (d << 3) | 0;
|
5914 | b[j >> 2] = f;
|
5915 | b[j + 4 >> 2] = g;
|
5916 | d = d + 1 | 0;
|
5917 | }
|
5918 |
|
5919 | h = h + 1 | 0;
|
5920 | } while ((h | 0) != 122);
|
5921 |
|
5922 | return;
|
5923 | }
|
5924 |
|
5925 | function Pb(a, c, d, e) {
|
5926 | a = a | 0;
|
5927 | c = c | 0;
|
5928 | d = d | 0;
|
5929 | e = e | 0;
|
5930 | var f = 0,
|
5931 | g = 0,
|
5932 | h = 0,
|
5933 | i = 0,
|
5934 | j = 0,
|
5935 | k = 0;
|
5936 | i = R;
|
5937 | R = R + 64 | 0;
|
5938 | h = i;
|
5939 |
|
5940 | if ((a | 0) == (d | 0) & (c | 0) == (e | 0) | (0 != 0 | (c & 2013265920 | 0) != 134217728 | (0 != 0 | (e & 2013265920 | 0) != 134217728))) {
|
5941 | h = 0;
|
5942 | R = i;
|
5943 | return h | 0;
|
5944 | }
|
5945 |
|
5946 | f = Qc(a | 0, c | 0, 52) | 0;
|
5947 | F() | 0;
|
5948 | f = f & 15;
|
5949 | g = Qc(d | 0, e | 0, 52) | 0;
|
5950 | F() | 0;
|
5951 |
|
5952 | if ((f | 0) != (g & 15 | 0)) {
|
5953 | h = 0;
|
5954 | R = i;
|
5955 | return h | 0;
|
5956 | }
|
5957 |
|
5958 | g = f + -1 | 0;
|
5959 |
|
5960 | if (f >>> 0 > 1 ? (k = qb(a, c, g) | 0, j = F() | 0, g = qb(d, e, g) | 0, (k | 0) == (g | 0) & (j | 0) == (F() | 0)) : 0) {
|
5961 | g = (f ^ 15) * 3 | 0;
|
5962 | f = Qc(a | 0, c | 0, g | 0) | 0;
|
5963 | F() | 0;
|
5964 | f = f & 7;
|
5965 | g = Qc(d | 0, e | 0, g | 0) | 0;
|
5966 | F() | 0;
|
5967 | g = g & 7;
|
5968 |
|
5969 | if ((f | 0) == 0 | (g | 0) == 0) {
|
5970 | k = 1;
|
5971 | R = i;
|
5972 | return k | 0;
|
5973 | }
|
5974 |
|
5975 | if ((b[21136 + (f << 2) >> 2] | 0) == (g | 0)) {
|
5976 | k = 1;
|
5977 | R = i;
|
5978 | return k | 0;
|
5979 | }
|
5980 |
|
5981 | if ((b[21168 + (f << 2) >> 2] | 0) == (g | 0)) {
|
5982 | k = 1;
|
5983 | R = i;
|
5984 | return k | 0;
|
5985 | }
|
5986 | }
|
5987 |
|
5988 | f = h;
|
5989 | g = f + 56 | 0;
|
5990 |
|
5991 | do {
|
5992 | b[f >> 2] = 0;
|
5993 | f = f + 4 | 0;
|
5994 | } while ((f | 0) < (g | 0));
|
5995 |
|
5996 | _(a, c, 1, h);
|
5997 |
|
5998 | k = h;
|
5999 |
|
6000 | if (((((!((b[k >> 2] | 0) == (d | 0) ? (b[k + 4 >> 2] | 0) == (e | 0) : 0) ? (k = h + 8 | 0, !((b[k >> 2] | 0) == (d | 0) ? (b[k + 4 >> 2] | 0) == (e | 0) : 0)) : 0) ? (k = h + 16 | 0, !((b[k >> 2] | 0) == (d | 0) ? (b[k + 4 >> 2] | 0) == (e | 0) : 0)) : 0) ? (k = h + 24 | 0, !((b[k >> 2] | 0) == (d | 0) ? (b[k + 4 >> 2] | 0) == (e | 0) : 0)) : 0) ? (k = h + 32 | 0, !((b[k >> 2] | 0) == (d | 0) ? (b[k + 4 >> 2] | 0) == (e | 0) : 0)) : 0) ? (k = h + 40 | 0, !((b[k >> 2] | 0) == (d | 0) ? (b[k + 4 >> 2] | 0) == (e | 0) : 0)) : 0) {
|
6001 | f = h + 48 | 0;
|
6002 | f = ((b[f >> 2] | 0) == (d | 0) ? (b[f + 4 >> 2] | 0) == (e | 0) : 0) & 1;
|
6003 | } else { f = 1; }
|
6004 |
|
6005 | k = f;
|
6006 | R = i;
|
6007 | return k | 0;
|
6008 | }
|
6009 |
|
6010 | function Qb(a, c, d, e) {
|
6011 | a = a | 0;
|
6012 | c = c | 0;
|
6013 | d = d | 0;
|
6014 | e = e | 0;
|
6015 | var f = 0,
|
6016 | g = 0,
|
6017 | h = 0,
|
6018 | i = 0;
|
6019 | h = R;
|
6020 | R = R + 16 | 0;
|
6021 | f = h;
|
6022 |
|
6023 | if (!(Pb(a, c, d, e) | 0)) {
|
6024 | a = 0;
|
6025 | g = 0;
|
6026 | E(a | 0);
|
6027 | R = h;
|
6028 | return g | 0;
|
6029 | }
|
6030 |
|
6031 | g = c & -2130706433;
|
6032 | b[f >> 2] = 0;
|
6033 | i = ca(a, c, 1, f) | 0;
|
6034 |
|
6035 | if (!((i | 0) == (d | 0) & (F() | 0) == (e | 0))) {
|
6036 | b[f >> 2] = 0;
|
6037 | i = ca(a, c, 2, f) | 0;
|
6038 |
|
6039 | if (!((i | 0) == (d | 0) & (F() | 0) == (e | 0))) {
|
6040 | b[f >> 2] = 0;
|
6041 | i = ca(a, c, 3, f) | 0;
|
6042 |
|
6043 | if (!((i | 0) == (d | 0) & (F() | 0) == (e | 0))) {
|
6044 | b[f >> 2] = 0;
|
6045 | i = ca(a, c, 4, f) | 0;
|
6046 |
|
6047 | if (!((i | 0) == (d | 0) & (F() | 0) == (e | 0))) {
|
6048 | b[f >> 2] = 0;
|
6049 | i = ca(a, c, 5, f) | 0;
|
6050 |
|
6051 | if (!((i | 0) == (d | 0) & (F() | 0) == (e | 0))) {
|
6052 | b[f >> 2] = 0;
|
6053 | i = ca(a, c, 6, f) | 0;
|
6054 |
|
6055 | if ((i | 0) == (d | 0) & (F() | 0) == (e | 0)) {
|
6056 | c = 0;
|
6057 | d = 100663296;
|
6058 | } else {
|
6059 | g = 0;
|
6060 | i = 0;
|
6061 | E(g | 0);
|
6062 | R = h;
|
6063 | return i | 0;
|
6064 | }
|
6065 | } else {
|
6066 | c = 0;
|
6067 | d = 83886080;
|
6068 | }
|
6069 | } else {
|
6070 | c = 0;
|
6071 | d = 67108864;
|
6072 | }
|
6073 | } else {
|
6074 | c = 0;
|
6075 | d = 50331648;
|
6076 | }
|
6077 | } else {
|
6078 | c = 0;
|
6079 | d = 33554432;
|
6080 | }
|
6081 | } else {
|
6082 | c = 0;
|
6083 | d = 16777216;
|
6084 | }
|
6085 |
|
6086 | g = g | d | 268435456;
|
6087 | i = a | c;
|
6088 | E(g | 0);
|
6089 | R = h;
|
6090 | return i | 0;
|
6091 | }
|
6092 |
|
6093 | function Rb(a, b) {
|
6094 | a = a | 0;
|
6095 | b = b | 0;
|
6096 | var c = 0;
|
6097 | c = 0 == 0 & (b & 2013265920 | 0) == 268435456;
|
6098 | E((c ? b & -2130706433 | 134217728 : 0) | 0);
|
6099 | return (c ? a : 0) | 0;
|
6100 | }
|
6101 |
|
6102 | function Sb(a, c) {
|
6103 | a = a | 0;
|
6104 | c = c | 0;
|
6105 | var d = 0,
|
6106 | e = 0,
|
6107 | f = 0;
|
6108 | e = R;
|
6109 | R = R + 16 | 0;
|
6110 | d = e;
|
6111 |
|
6112 | if (!(0 == 0 & (c & 2013265920 | 0) == 268435456)) {
|
6113 | c = 0;
|
6114 | d = 0;
|
6115 | E(c | 0);
|
6116 | R = e;
|
6117 | return d | 0;
|
6118 | }
|
6119 |
|
6120 | f = Qc(a | 0, c | 0, 56) | 0;
|
6121 | F() | 0;
|
6122 | b[d >> 2] = 0;
|
6123 | d = ca(a, c & -2130706433 | 134217728, f & 7, d) | 0;
|
6124 | c = F() | 0;
|
6125 | E(c | 0);
|
6126 | R = e;
|
6127 | return d | 0;
|
6128 | }
|
6129 |
|
6130 | function Tb(a, b) {
|
6131 | a = a | 0;
|
6132 | b = b | 0;
|
6133 | var c = 0;
|
6134 |
|
6135 | if (!(0 == 0 & (b & 2013265920 | 0) == 268435456)) {
|
6136 | c = 0;
|
6137 | return c | 0;
|
6138 | }
|
6139 |
|
6140 | c = Qc(a | 0, b | 0, 56) | 0;
|
6141 | F() | 0;
|
6142 |
|
6143 | switch (c & 7) {
|
6144 | case 0:
|
6145 | case 7:
|
6146 | {
|
6147 | c = 0;
|
6148 | return c | 0;
|
6149 | }
|
6150 |
|
6151 | default:
|
6152 |
|
6153 | }
|
6154 |
|
6155 | c = b & -2130706433 | 134217728;
|
6156 |
|
6157 | if (0 == 0 & (b & 117440512 | 0) == 16777216 & (tb(a, c) | 0) != 0) {
|
6158 | c = 0;
|
6159 | return c | 0;
|
6160 | }
|
6161 |
|
6162 | c = pb(a, c) | 0;
|
6163 | return c | 0;
|
6164 | }
|
6165 |
|
6166 | function Ub(a, c, d) {
|
6167 | a = a | 0;
|
6168 | c = c | 0;
|
6169 | d = d | 0;
|
6170 | var e = 0,
|
6171 | f = 0,
|
6172 | g = 0,
|
6173 | h = 0,
|
6174 | i = 0;
|
6175 | g = R;
|
6176 | R = R + 16 | 0;
|
6177 | e = g;
|
6178 | h = 0 == 0 & (c & 2013265920 | 0) == 268435456;
|
6179 | f = c & -2130706433 | 134217728;
|
6180 | i = d;
|
6181 | b[i >> 2] = h ? a : 0;
|
6182 | b[i + 4 >> 2] = h ? f : 0;
|
6183 |
|
6184 | if (h) {
|
6185 | c = Qc(a | 0, c | 0, 56) | 0;
|
6186 | F() | 0;
|
6187 | b[e >> 2] = 0;
|
6188 | a = ca(a, f, c & 7, e) | 0;
|
6189 | c = F() | 0;
|
6190 | } else {
|
6191 | a = 0;
|
6192 | c = 0;
|
6193 | }
|
6194 |
|
6195 | i = d + 8 | 0;
|
6196 | b[i >> 2] = a;
|
6197 | b[i + 4 >> 2] = c;
|
6198 | R = g;
|
6199 | return;
|
6200 | }
|
6201 |
|
6202 | function Vb(a, c, d) {
|
6203 | a = a | 0;
|
6204 | c = c | 0;
|
6205 | d = d | 0;
|
6206 | var e = 0,
|
6207 | f = 0;
|
6208 | f = (tb(a, c) | 0) == 0;
|
6209 | c = c & -2130706433;
|
6210 | e = d;
|
6211 | b[e >> 2] = f ? a : 0;
|
6212 | b[e + 4 >> 2] = f ? c | 285212672 : 0;
|
6213 | e = d + 8 | 0;
|
6214 | b[e >> 2] = a;
|
6215 | b[e + 4 >> 2] = c | 301989888;
|
6216 | e = d + 16 | 0;
|
6217 | b[e >> 2] = a;
|
6218 | b[e + 4 >> 2] = c | 318767104;
|
6219 | e = d + 24 | 0;
|
6220 | b[e >> 2] = a;
|
6221 | b[e + 4 >> 2] = c | 335544320;
|
6222 | e = d + 32 | 0;
|
6223 | b[e >> 2] = a;
|
6224 | b[e + 4 >> 2] = c | 352321536;
|
6225 | d = d + 40 | 0;
|
6226 | b[d >> 2] = a;
|
6227 | b[d + 4 >> 2] = c | 369098752;
|
6228 | return;
|
6229 | }
|
6230 |
|
6231 | function Wb(a, c, d) {
|
6232 | a = a | 0;
|
6233 | c = c | 0;
|
6234 | d = d | 0;
|
6235 | var e = 0,
|
6236 | f = 0,
|
6237 | g = 0,
|
6238 | h = 0,
|
6239 | i = 0,
|
6240 | j = 0,
|
6241 | k = 0,
|
6242 | l = 0;
|
6243 | l = R;
|
6244 | R = R + 368 | 0;
|
6245 | f = l + 352 | 0;
|
6246 | i = l + 184 | 0;
|
6247 | j = l + 16 | 0;
|
6248 | k = l;
|
6249 | Uc(i | 0, 0, 168) | 0;
|
6250 | Uc(j | 0, 0, 168) | 0;
|
6251 | b[k >> 2] = 0;
|
6252 | b[k + 4 >> 2] = 0;
|
6253 | b[k + 8 >> 2] = 0;
|
6254 | b[k + 12 >> 2] = 0;
|
6255 | h = 0 == 0 & (c & 2013265920 | 0) == 268435456;
|
6256 | e = c & -2130706433 | 134217728;
|
6257 | Kb(h ? a : 0, h ? e : 0, i);
|
6258 |
|
6259 | if (h) {
|
6260 | c = Qc(a | 0, c | 0, 56) | 0;
|
6261 | F() | 0;
|
6262 | b[f >> 2] = 0;
|
6263 | a = ca(a, e, c & 7, f) | 0;
|
6264 | c = F() | 0;
|
6265 | } else {
|
6266 | a = 0;
|
6267 | c = 0;
|
6268 | }
|
6269 |
|
6270 | Kb(a, c, j);
|
6271 |
|
6272 | if ((b[i >> 2] | 0) <= 0) {
|
6273 | k = 0;
|
6274 | b[d >> 2] = k;
|
6275 | R = l;
|
6276 | return;
|
6277 | }
|
6278 |
|
6279 | h = i + 24 | 0;
|
6280 | a = 0;
|
6281 | c = 0;
|
6282 | g = 0;
|
6283 |
|
6284 | do {
|
6285 | f = i + 8 + (g << 4) | 0;
|
6286 |
|
6287 | a: do { if ((b[j >> 2] | 0) > 0) {
|
6288 | e = 0;
|
6289 |
|
6290 | while (1) {
|
6291 | if (cb(f, j + 8 + (e << 4) | 0, 1.0e-06) | 0) { break; }
|
6292 | e = e + 1 | 0;
|
6293 | if ((e | 0) >= (b[j >> 2] | 0)) { break a; }
|
6294 | }
|
6295 |
|
6296 | b: do { if (!g) {
|
6297 | if ((b[j >> 2] | 0) > 0) {
|
6298 | e = 0;
|
6299 |
|
6300 | do {
|
6301 | if (cb(h, j + 8 + (e << 4) | 0, 1.0e-06) | 0) { break b; }
|
6302 | e = e + 1 | 0;
|
6303 | } while ((e | 0) < (b[j >> 2] | 0));
|
6304 | }
|
6305 | b[k >> 2] = b[f >> 2];
|
6306 | b[k + 4 >> 2] = b[f + 4 >> 2];
|
6307 | b[k + 8 >> 2] = b[f + 8 >> 2];
|
6308 | b[k + 12 >> 2] = b[f + 12 >> 2];
|
6309 | c = 1;
|
6310 | break a;
|
6311 | } } while (0);
|
6312 |
|
6313 | e = d + 8 + (a << 4) | 0;
|
6314 | b[e >> 2] = b[f >> 2];
|
6315 | b[e + 4 >> 2] = b[f + 4 >> 2];
|
6316 | b[e + 8 >> 2] = b[f + 8 >> 2];
|
6317 | b[e + 12 >> 2] = b[f + 12 >> 2];
|
6318 | a = a + 1 | 0;
|
6319 | } } while (0);
|
6320 |
|
6321 | g = g + 1 | 0;
|
6322 | } while ((g | 0) < (b[i >> 2] | 0));
|
6323 |
|
6324 | if (!c) {
|
6325 | k = a;
|
6326 | b[d >> 2] = k;
|
6327 | R = l;
|
6328 | return;
|
6329 | }
|
6330 |
|
6331 | j = d + 8 + (a << 4) | 0;
|
6332 | b[j >> 2] = b[k >> 2];
|
6333 | b[j + 4 >> 2] = b[k + 4 >> 2];
|
6334 | b[j + 8 >> 2] = b[k + 8 >> 2];
|
6335 | b[j + 12 >> 2] = b[k + 12 >> 2];
|
6336 | k = a + 1 | 0;
|
6337 | b[d >> 2] = k;
|
6338 | R = l;
|
6339 | return;
|
6340 | }
|
6341 |
|
6342 | function Xb(a) {
|
6343 | a = a | 0;
|
6344 | var c = 0,
|
6345 | d = 0,
|
6346 | e = 0;
|
6347 | c = Kc(1, 12) | 0;
|
6348 | if (!c) { G(22330, 22285, 46, 22343); }
|
6349 | d = a + 4 | 0;
|
6350 | e = b[d >> 2] | 0;
|
6351 |
|
6352 | if (e | 0) {
|
6353 | e = e + 8 | 0;
|
6354 | b[e >> 2] = c;
|
6355 | b[d >> 2] = c;
|
6356 | return c | 0;
|
6357 | }
|
6358 |
|
6359 | if (b[a >> 2] | 0) { G(22360, 22285, 58, 22383); }
|
6360 | e = a;
|
6361 | b[e >> 2] = c;
|
6362 | b[d >> 2] = c;
|
6363 | return c | 0;
|
6364 | }
|
6365 |
|
6366 | function Yb(a, c) {
|
6367 | a = a | 0;
|
6368 | c = c | 0;
|
6369 | var d = 0,
|
6370 | e = 0;
|
6371 | e = Ic(24) | 0;
|
6372 | if (!e) { G(22397, 22285, 75, 22411); }
|
6373 | b[e >> 2] = b[c >> 2];
|
6374 | b[e + 4 >> 2] = b[c + 4 >> 2];
|
6375 | b[e + 8 >> 2] = b[c + 8 >> 2];
|
6376 | b[e + 12 >> 2] = b[c + 12 >> 2];
|
6377 | b[e + 16 >> 2] = 0;
|
6378 | c = a + 4 | 0;
|
6379 | d = b[c >> 2] | 0;
|
6380 |
|
6381 | if (d | 0) {
|
6382 | b[d + 16 >> 2] = e;
|
6383 | b[c >> 2] = e;
|
6384 | return e | 0;
|
6385 | }
|
6386 |
|
6387 | if (b[a >> 2] | 0) { G(22426, 22285, 79, 22411); }
|
6388 | b[a >> 2] = e;
|
6389 | b[c >> 2] = e;
|
6390 | return e | 0;
|
6391 | }
|
6392 |
|
6393 | function Zb(a) {
|
6394 | a = a | 0;
|
6395 | var c = 0,
|
6396 | d = 0,
|
6397 | e = 0,
|
6398 | f = 0;
|
6399 | if (!a) { return; }
|
6400 | e = 1;
|
6401 |
|
6402 | while (1) {
|
6403 | c = b[a >> 2] | 0;
|
6404 | if (c | 0) { do {
|
6405 | d = b[c >> 2] | 0;
|
6406 | if (d | 0) { do {
|
6407 | f = d;
|
6408 | d = b[d + 16 >> 2] | 0;
|
6409 | Jc(f);
|
6410 | } while ((d | 0) != 0); }
|
6411 | f = c;
|
6412 | c = b[c + 8 >> 2] | 0;
|
6413 | Jc(f);
|
6414 | } while ((c | 0) != 0); }
|
6415 | c = a;
|
6416 | a = b[a + 8 >> 2] | 0;
|
6417 | if (!e) { Jc(c); }
|
6418 | if (!a) { break; }else { e = 0; }
|
6419 | }
|
6420 |
|
6421 | return;
|
6422 | }
|
6423 |
|
6424 | function _b(a) {
|
6425 | a = a | 0;
|
6426 | var c = 0,
|
6427 | d = 0,
|
6428 | f = 0,
|
6429 | g = 0,
|
6430 | h = 0.0,
|
6431 | i = 0,
|
6432 | j = 0.0,
|
6433 | k = 0.0,
|
6434 | l = 0,
|
6435 | m = 0,
|
6436 | n = 0,
|
6437 | o = 0,
|
6438 | p = 0,
|
6439 | r = 0,
|
6440 | s = 0.0,
|
6441 | t = 0.0,
|
6442 | u = 0.0,
|
6443 | v = 0.0,
|
6444 | w = 0.0,
|
6445 | x = 0.0,
|
6446 | y = 0,
|
6447 | z = 0,
|
6448 | A = 0,
|
6449 | B = 0,
|
6450 | C = 0,
|
6451 | D = 0,
|
6452 | E = 0,
|
6453 | F = 0,
|
6454 | H = 0,
|
6455 | I = 0,
|
6456 | J = 0,
|
6457 | K = 0;
|
6458 | g = a + 8 | 0;
|
6459 |
|
6460 | if (b[g >> 2] | 0) {
|
6461 | K = 1;
|
6462 | return K | 0;
|
6463 | }
|
6464 |
|
6465 | f = b[a >> 2] | 0;
|
6466 |
|
6467 | if (!f) {
|
6468 | K = 0;
|
6469 | return K | 0;
|
6470 | }
|
6471 |
|
6472 | c = f;
|
6473 | d = 0;
|
6474 |
|
6475 | do {
|
6476 | d = d + 1 | 0;
|
6477 | c = b[c + 8 >> 2] | 0;
|
6478 | } while ((c | 0) != 0);
|
6479 |
|
6480 | if (d >>> 0 < 2) {
|
6481 | K = 0;
|
6482 | return K | 0;
|
6483 | }
|
6484 |
|
6485 | I = Ic(d << 2) | 0;
|
6486 | if (!I) { G(22446, 22285, 312, 22465); }
|
6487 | H = Ic(d << 5) | 0;
|
6488 | if (!H) { G(22487, 22285, 316, 22465); }
|
6489 | b[a >> 2] = 0;
|
6490 | z = a + 4 | 0;
|
6491 | b[z >> 2] = 0;
|
6492 | b[g >> 2] = 0;
|
6493 | d = 0;
|
6494 | F = 0;
|
6495 | y = 0;
|
6496 | n = 0;
|
6497 |
|
6498 | a: while (1) {
|
6499 | m = b[f >> 2] | 0;
|
6500 |
|
6501 | if (m) {
|
6502 | h = 0.0;
|
6503 | i = m;
|
6504 |
|
6505 | do {
|
6506 | k = +e[i + 8 >> 3];
|
6507 | c = i;
|
6508 | i = b[i + 16 >> 2] | 0;
|
6509 | l = (i | 0) == 0;
|
6510 | g = l ? m : i;
|
6511 | j = +e[g + 8 >> 3];
|
6512 |
|
6513 | if (+q(+(k - j)) > 3.141592653589793) {
|
6514 | K = 14;
|
6515 | break;
|
6516 | }
|
6517 |
|
6518 | h = h + (j - k) * (+e[c >> 3] + +e[g >> 3]);
|
6519 | } while (!l);
|
6520 |
|
6521 | if ((K | 0) == 14) {
|
6522 | K = 0;
|
6523 | h = 0.0;
|
6524 | c = m;
|
6525 |
|
6526 | do {
|
6527 | x = +e[c + 8 >> 3];
|
6528 | E = c + 16 | 0;
|
6529 | D = b[E >> 2] | 0;
|
6530 | D = (D | 0) == 0 ? m : D;
|
6531 | w = +e[D + 8 >> 3];
|
6532 | h = h + (+e[c >> 3] + +e[D >> 3]) * ((w < 0.0 ? w + 6.283185307179586 : w) - (x < 0.0 ? x + 6.283185307179586 : x));
|
6533 | c = b[((c | 0) == 0 ? f : E) >> 2] | 0;
|
6534 | } while ((c | 0) != 0);
|
6535 | }
|
6536 |
|
6537 | if (h > 0.0) {
|
6538 | b[I + (F << 2) >> 2] = f;
|
6539 | F = F + 1 | 0;
|
6540 | g = y;
|
6541 | c = n;
|
6542 | } else { K = 19; }
|
6543 | } else { K = 19; }
|
6544 |
|
6545 | if ((K | 0) == 19) {
|
6546 | K = 0;
|
6547 |
|
6548 | do { if (!d) {
|
6549 | if (!n) {
|
6550 | if (!(b[a >> 2] | 0)) {
|
6551 | g = z;
|
6552 | i = a;
|
6553 | c = f;
|
6554 | d = a;
|
6555 | break;
|
6556 | } else {
|
6557 | K = 27;
|
6558 | break a;
|
6559 | }
|
6560 | } else {
|
6561 | g = z;
|
6562 | i = n + 8 | 0;
|
6563 | c = f;
|
6564 | d = a;
|
6565 | break;
|
6566 | }
|
6567 | } else {
|
6568 | c = d + 8 | 0;
|
6569 |
|
6570 | if (b[c >> 2] | 0) {
|
6571 | K = 21;
|
6572 | break a;
|
6573 | }
|
6574 |
|
6575 | d = Kc(1, 12) | 0;
|
6576 |
|
6577 | if (!d) {
|
6578 | K = 23;
|
6579 | break a;
|
6580 | }
|
6581 |
|
6582 | b[c >> 2] = d;
|
6583 | g = d + 4 | 0;
|
6584 | i = d;
|
6585 | c = n;
|
6586 | } } while (0);
|
6587 |
|
6588 | b[i >> 2] = f;
|
6589 | b[g >> 2] = f;
|
6590 | i = H + (y << 5) | 0;
|
6591 | l = b[f >> 2] | 0;
|
6592 |
|
6593 | if (l) {
|
6594 | m = H + (y << 5) + 8 | 0;
|
6595 | e[m >> 3] = 1797693134862315708145274.0e284;
|
6596 | n = H + (y << 5) + 24 | 0;
|
6597 | e[n >> 3] = 1797693134862315708145274.0e284;
|
6598 | e[i >> 3] = -1797693134862315708145274.0e284;
|
6599 | o = H + (y << 5) + 16 | 0;
|
6600 | e[o >> 3] = -1797693134862315708145274.0e284;
|
6601 | u = 1797693134862315708145274.0e284;
|
6602 | v = -1797693134862315708145274.0e284;
|
6603 | g = 0;
|
6604 | p = l;
|
6605 | k = 1797693134862315708145274.0e284;
|
6606 | s = 1797693134862315708145274.0e284;
|
6607 | t = -1797693134862315708145274.0e284;
|
6608 | j = -1797693134862315708145274.0e284;
|
6609 |
|
6610 | while (1) {
|
6611 | h = +e[p >> 3];
|
6612 | x = +e[p + 8 >> 3];
|
6613 | p = b[p + 16 >> 2] | 0;
|
6614 | r = (p | 0) == 0;
|
6615 | w = +e[(r ? l : p) + 8 >> 3];
|
6616 |
|
6617 | if (h < k) {
|
6618 | e[m >> 3] = h;
|
6619 | k = h;
|
6620 | }
|
6621 |
|
6622 | if (x < s) {
|
6623 | e[n >> 3] = x;
|
6624 | s = x;
|
6625 | }
|
6626 |
|
6627 | if (h > t) { e[i >> 3] = h; }else { h = t; }
|
6628 |
|
6629 | if (x > j) {
|
6630 | e[o >> 3] = x;
|
6631 | j = x;
|
6632 | }
|
6633 |
|
6634 | u = x > 0.0 & x < u ? x : u;
|
6635 | v = x < 0.0 & x > v ? x : v;
|
6636 | g = g | +q(+(x - w)) > 3.141592653589793;
|
6637 | if (r) { break; }else { t = h; }
|
6638 | }
|
6639 |
|
6640 | if (g) {
|
6641 | e[o >> 3] = v;
|
6642 | e[n >> 3] = u;
|
6643 | }
|
6644 | } else {
|
6645 | b[i >> 2] = 0;
|
6646 | b[i + 4 >> 2] = 0;
|
6647 | b[i + 8 >> 2] = 0;
|
6648 | b[i + 12 >> 2] = 0;
|
6649 | b[i + 16 >> 2] = 0;
|
6650 | b[i + 20 >> 2] = 0;
|
6651 | b[i + 24 >> 2] = 0;
|
6652 | b[i + 28 >> 2] = 0;
|
6653 | }
|
6654 |
|
6655 | g = y + 1 | 0;
|
6656 | }
|
6657 |
|
6658 | E = f + 8 | 0;
|
6659 | f = b[E >> 2] | 0;
|
6660 | b[E >> 2] = 0;
|
6661 |
|
6662 | if (!f) {
|
6663 | K = 45;
|
6664 | break;
|
6665 | } else {
|
6666 | y = g;
|
6667 | n = c;
|
6668 | }
|
6669 | }
|
6670 |
|
6671 | if ((K | 0) == 21) { G(22263, 22285, 32, 22297); }else if ((K | 0) == 23) { G(22317, 22285, 34, 22297); }else if ((K | 0) == 27) { G(22360, 22285, 58, 22383); }else if ((K | 0) == 45) {
|
6672 | b: do { if ((F | 0) > 0) {
|
6673 | E = (g | 0) == 0;
|
6674 | C = g << 2;
|
6675 | D = (a | 0) == 0;
|
6676 | B = 0;
|
6677 | c = 0;
|
6678 |
|
6679 | while (1) {
|
6680 | A = b[I + (B << 2) >> 2] | 0;
|
6681 |
|
6682 | if (!E) {
|
6683 | y = Ic(C) | 0;
|
6684 |
|
6685 | if (!y) {
|
6686 | K = 50;
|
6687 | break;
|
6688 | }
|
6689 |
|
6690 | z = Ic(C) | 0;
|
6691 |
|
6692 | if (!z) {
|
6693 | K = 52;
|
6694 | break;
|
6695 | }
|
6696 |
|
6697 | c: do { if (!D) {
|
6698 | g = 0;
|
6699 | d = 0;
|
6700 | i = a;
|
6701 |
|
6702 | while (1) {
|
6703 | f = H + (g << 5) | 0;
|
6704 |
|
6705 | if ($b(b[i >> 2] | 0, f, b[A >> 2] | 0) | 0) {
|
6706 | b[y + (d << 2) >> 2] = i;
|
6707 | b[z + (d << 2) >> 2] = f;
|
6708 | r = d + 1 | 0;
|
6709 | } else { r = d; }
|
6710 |
|
6711 | i = b[i + 8 >> 2] | 0;
|
6712 | if (!i) { break; }else {
|
6713 | g = g + 1 | 0;
|
6714 | d = r;
|
6715 | }
|
6716 | }
|
6717 |
|
6718 | if ((r | 0) > 0) {
|
6719 | f = b[y >> 2] | 0;
|
6720 | if ((r | 0) == 1) { d = f; }else {
|
6721 | o = 0;
|
6722 | p = -1;
|
6723 | d = f;
|
6724 | n = f;
|
6725 |
|
6726 | while (1) {
|
6727 | l = b[n >> 2] | 0;
|
6728 | f = 0;
|
6729 | i = 0;
|
6730 |
|
6731 | while (1) {
|
6732 | g = b[b[y + (i << 2) >> 2] >> 2] | 0;
|
6733 | if ((g | 0) == (l | 0)) { m = f; }else { m = f + (($b(g, b[z + (i << 2) >> 2] | 0, b[l >> 2] | 0) | 0) & 1) | 0; }
|
6734 | i = i + 1 | 0;
|
6735 | if ((i | 0) == (r | 0)) { break; }else { f = m; }
|
6736 | }
|
6737 |
|
6738 | g = (m | 0) > (p | 0);
|
6739 | d = g ? n : d;
|
6740 | f = o + 1 | 0;
|
6741 | if ((f | 0) == (r | 0)) { break c; }
|
6742 | o = f;
|
6743 | p = g ? m : p;
|
6744 | n = b[y + (f << 2) >> 2] | 0;
|
6745 | }
|
6746 | }
|
6747 | } else { d = 0; }
|
6748 | } else { d = 0; } } while (0);
|
6749 |
|
6750 | Jc(y);
|
6751 | Jc(z);
|
6752 |
|
6753 | if (d) {
|
6754 | g = d + 4 | 0;
|
6755 | f = b[g >> 2] | 0;
|
6756 |
|
6757 | if (!f) {
|
6758 | if (b[d >> 2] | 0) {
|
6759 | K = 70;
|
6760 | break;
|
6761 | }
|
6762 | } else { d = f + 8 | 0; }
|
6763 |
|
6764 | b[d >> 2] = A;
|
6765 | b[g >> 2] = A;
|
6766 | } else { K = 73; }
|
6767 | } else { K = 73; }
|
6768 |
|
6769 | if ((K | 0) == 73) {
|
6770 | K = 0;
|
6771 | c = b[A >> 2] | 0;
|
6772 | if (c | 0) { do {
|
6773 | z = c;
|
6774 | c = b[c + 16 >> 2] | 0;
|
6775 | Jc(z);
|
6776 | } while ((c | 0) != 0); }
|
6777 | Jc(A);
|
6778 | c = 2;
|
6779 | }
|
6780 |
|
6781 | B = B + 1 | 0;
|
6782 |
|
6783 | if ((B | 0) >= (F | 0)) {
|
6784 | J = c;
|
6785 | break b;
|
6786 | }
|
6787 | }
|
6788 |
|
6789 | if ((K | 0) == 50) { G(22502, 22285, 246, 22521); }else if ((K | 0) == 52) { G(22540, 22285, 248, 22521); }else if ((K | 0) == 70) { G(22360, 22285, 58, 22383); }
|
6790 | } else { J = 0; } } while (0);
|
6791 |
|
6792 | Jc(I);
|
6793 | Jc(H);
|
6794 | K = J;
|
6795 | return K | 0;
|
6796 | }
|
6797 | return 0;
|
6798 | }
|
6799 |
|
6800 | function $b(a, c, d) {
|
6801 | a = a | 0;
|
6802 | c = c | 0;
|
6803 | d = d | 0;
|
6804 | var f = 0.0,
|
6805 | g = 0.0,
|
6806 | h = 0.0,
|
6807 | i = 0.0,
|
6808 | j = 0.0,
|
6809 | k = 0.0,
|
6810 | l = 0.0,
|
6811 | m = 0;
|
6812 |
|
6813 | if (!(ta(c, d) | 0)) {
|
6814 | a = 0;
|
6815 | return a | 0;
|
6816 | }
|
6817 |
|
6818 | c = ra(c) | 0;
|
6819 | l = +e[d >> 3];
|
6820 | f = +e[d + 8 >> 3];
|
6821 | f = c & f < 0.0 ? f + 6.283185307179586 : f;
|
6822 | a = b[a >> 2] | 0;
|
6823 |
|
6824 | if (!a) {
|
6825 | a = 0;
|
6826 | return a | 0;
|
6827 | }
|
6828 |
|
6829 | if (c) {
|
6830 | c = 0;
|
6831 | d = a;
|
6832 |
|
6833 | a: while (1) {
|
6834 | while (1) {
|
6835 | i = +e[d >> 3];
|
6836 | k = +e[d + 8 >> 3];
|
6837 | d = d + 16 | 0;
|
6838 | m = b[d >> 2] | 0;
|
6839 | m = (m | 0) == 0 ? a : m;
|
6840 | h = +e[m >> 3];
|
6841 | g = +e[m + 8 >> 3];
|
6842 |
|
6843 | if (i > h) {
|
6844 | j = i;
|
6845 | i = k;
|
6846 | } else {
|
6847 | j = h;
|
6848 | h = i;
|
6849 | i = g;
|
6850 | g = k;
|
6851 | }
|
6852 |
|
6853 | if (!(l < h | l > j)) { break; }
|
6854 | d = b[d >> 2] | 0;
|
6855 |
|
6856 | if (!d) {
|
6857 | d = 22;
|
6858 | break a;
|
6859 | }
|
6860 | }
|
6861 |
|
6862 | k = g < 0.0 ? g + 6.283185307179586 : g;
|
6863 | i = i < 0.0 ? i + 6.283185307179586 : i;
|
6864 | f = i == f | k == f ? f + -2.220446049250313e-16 : f;
|
6865 | k = k + (l - h) / (j - h) * (i - k);
|
6866 | if ((k < 0.0 ? k + 6.283185307179586 : k) > f) { c = c ^ 1; }
|
6867 | d = b[d >> 2] | 0;
|
6868 |
|
6869 | if (!d) {
|
6870 | d = 22;
|
6871 | break;
|
6872 | }
|
6873 | }
|
6874 |
|
6875 | if ((d | 0) == 22) { return c | 0; }
|
6876 | } else {
|
6877 | c = 0;
|
6878 | d = a;
|
6879 |
|
6880 | b: while (1) {
|
6881 | while (1) {
|
6882 | i = +e[d >> 3];
|
6883 | k = +e[d + 8 >> 3];
|
6884 | d = d + 16 | 0;
|
6885 | m = b[d >> 2] | 0;
|
6886 | m = (m | 0) == 0 ? a : m;
|
6887 | h = +e[m >> 3];
|
6888 | g = +e[m + 8 >> 3];
|
6889 |
|
6890 | if (i > h) {
|
6891 | j = i;
|
6892 | i = k;
|
6893 | } else {
|
6894 | j = h;
|
6895 | h = i;
|
6896 | i = g;
|
6897 | g = k;
|
6898 | }
|
6899 |
|
6900 | if (!(l < h | l > j)) { break; }
|
6901 | d = b[d >> 2] | 0;
|
6902 |
|
6903 | if (!d) {
|
6904 | d = 22;
|
6905 | break b;
|
6906 | }
|
6907 | }
|
6908 |
|
6909 | f = i == f | g == f ? f + -2.220446049250313e-16 : f;
|
6910 | if (g + (l - h) / (j - h) * (i - g) > f) { c = c ^ 1; }
|
6911 | d = b[d >> 2] | 0;
|
6912 |
|
6913 | if (!d) {
|
6914 | d = 22;
|
6915 | break;
|
6916 | }
|
6917 | }
|
6918 |
|
6919 | if ((d | 0) == 22) { return c | 0; }
|
6920 | }
|
6921 |
|
6922 | return 0;
|
6923 | }
|
6924 |
|
6925 | function ac(c, d, e, f, g) {
|
6926 | c = c | 0;
|
6927 | d = d | 0;
|
6928 | e = e | 0;
|
6929 | f = f | 0;
|
6930 | g = g | 0;
|
6931 | var h = 0,
|
6932 | i = 0,
|
6933 | j = 0,
|
6934 | k = 0,
|
6935 | l = 0,
|
6936 | m = 0,
|
6937 | n = 0,
|
6938 | o = 0,
|
6939 | p = 0,
|
6940 | q = 0,
|
6941 | r = 0,
|
6942 | s = 0,
|
6943 | t = 0,
|
6944 | u = 0;
|
6945 | u = R;
|
6946 | R = R + 32 | 0;
|
6947 | t = u + 16 | 0;
|
6948 | s = u;
|
6949 | h = Qc(c | 0, d | 0, 52) | 0;
|
6950 | F() | 0;
|
6951 | h = h & 15;
|
6952 | p = Qc(e | 0, f | 0, 52) | 0;
|
6953 | F() | 0;
|
6954 |
|
6955 | if ((h | 0) != (p & 15 | 0)) {
|
6956 | t = 1;
|
6957 | R = u;
|
6958 | return t | 0;
|
6959 | }
|
6960 |
|
6961 | l = Qc(c | 0, d | 0, 45) | 0;
|
6962 | F() | 0;
|
6963 | l = l & 127;
|
6964 | m = Qc(e | 0, f | 0, 45) | 0;
|
6965 | F() | 0;
|
6966 | m = m & 127;
|
6967 | p = (l | 0) != (m | 0);
|
6968 |
|
6969 | if (p) {
|
6970 | j = oa(l, m) | 0;
|
6971 |
|
6972 | if ((j | 0) == 7) {
|
6973 | t = 2;
|
6974 | R = u;
|
6975 | return t | 0;
|
6976 | }
|
6977 |
|
6978 | k = oa(m, l) | 0;
|
6979 | if ((k | 0) == 7) { G(22564, 22588, 151, 22598); }else {
|
6980 | q = j;
|
6981 | i = k;
|
6982 | }
|
6983 | } else {
|
6984 | q = 0;
|
6985 | i = 0;
|
6986 | }
|
6987 |
|
6988 | n = ia(l) | 0;
|
6989 | o = ia(m) | 0;
|
6990 | b[t >> 2] = 0;
|
6991 | b[t + 4 >> 2] = 0;
|
6992 | b[t + 8 >> 2] = 0;
|
6993 | b[t + 12 >> 2] = 0;
|
6994 |
|
6995 | do { if (!q) {
|
6996 | Hb(e, f, t) | 0;
|
6997 |
|
6998 | if ((n | 0) != 0 & (o | 0) != 0) {
|
6999 | if ((m | 0) != (l | 0)) { G(22716, 22588, 243, 22598); }
|
7000 | i = zb(c, d) | 0;
|
7001 | h = zb(e, f) | 0;
|
7002 |
|
7003 | if (!(a[22032 + (i * 7 | 0) + h >> 0] | 0)) {
|
7004 | i = b[21200 + (i * 28 | 0) + (h << 2) >> 2] | 0;
|
7005 |
|
7006 | if ((i | 0) > 0) {
|
7007 | j = t + 4 | 0;
|
7008 | h = 0;
|
7009 |
|
7010 | do {
|
7011 | Ja(j);
|
7012 | h = h + 1 | 0;
|
7013 | } while ((h | 0) != (i | 0));
|
7014 |
|
7015 | r = 50;
|
7016 | } else { r = 50; }
|
7017 | } else { h = 5; }
|
7018 | } else { r = 50; }
|
7019 | } else {
|
7020 | m = b[4304 + (l * 28 | 0) + (q << 2) >> 2] | 0;
|
7021 | j = (m | 0) > 0;
|
7022 | if (!o) {
|
7023 | if (j) {
|
7024 | l = 0;
|
7025 | k = e;
|
7026 | j = f;
|
7027 |
|
7028 | do {
|
7029 | k = Db(k, j) | 0;
|
7030 | j = F() | 0;
|
7031 | i = La(i) | 0;
|
7032 | l = l + 1 | 0;
|
7033 | } while ((l | 0) != (m | 0));
|
7034 |
|
7035 | m = i;
|
7036 | l = k;
|
7037 | k = j;
|
7038 | } else {
|
7039 | m = i;
|
7040 | l = e;
|
7041 | k = f;
|
7042 | }
|
7043 | } else if (j) {
|
7044 | l = 0;
|
7045 | k = e;
|
7046 | j = f;
|
7047 |
|
7048 | do {
|
7049 | k = Cb(k, j) | 0;
|
7050 | j = F() | 0;
|
7051 | i = La(i) | 0;
|
7052 | if ((i | 0) == 1) { i = La(1) | 0; }
|
7053 | l = l + 1 | 0;
|
7054 | } while ((l | 0) != (m | 0));
|
7055 |
|
7056 | m = i;
|
7057 | l = k;
|
7058 | k = j;
|
7059 | } else {
|
7060 | m = i;
|
7061 | l = e;
|
7062 | k = f;
|
7063 | }
|
7064 | Hb(l, k, t) | 0;
|
7065 | if (!p) { G(22611, 22588, 181, 22598); }
|
7066 | j = (n | 0) != 0;
|
7067 | i = (o | 0) != 0;
|
7068 | if (j & i) { G(22638, 22588, 182, 22598); }
|
7069 | if (!j) {
|
7070 | if (i) {
|
7071 | i = zb(l, k) | 0;
|
7072 |
|
7073 | if (a[22032 + (i * 7 | 0) + m >> 0] | 0) {
|
7074 | h = 4;
|
7075 | break;
|
7076 | }
|
7077 |
|
7078 | l = 0;
|
7079 | k = b[21200 + (m * 28 | 0) + (i << 2) >> 2] | 0;
|
7080 | r = 26;
|
7081 | } else { i = 0; }
|
7082 | } else {
|
7083 | i = zb(c, d) | 0;
|
7084 |
|
7085 | if (a[22032 + (i * 7 | 0) + q >> 0] | 0) {
|
7086 | h = 3;
|
7087 | break;
|
7088 | }
|
7089 |
|
7090 | k = b[21200 + (i * 28 | 0) + (q << 2) >> 2] | 0;
|
7091 | l = k;
|
7092 | r = 26;
|
7093 | }
|
7094 |
|
7095 | if ((r | 0) == 26) {
|
7096 | if ((k | 0) <= -1) { G(22669, 22588, 212, 22598); }
|
7097 | if ((l | 0) <= -1) { G(22692, 22588, 213, 22598); }
|
7098 |
|
7099 | if ((k | 0) > 0) {
|
7100 | j = t + 4 | 0;
|
7101 | i = 0;
|
7102 |
|
7103 | do {
|
7104 | Ja(j);
|
7105 | i = i + 1 | 0;
|
7106 | } while ((i | 0) != (k | 0));
|
7107 |
|
7108 | i = l;
|
7109 | } else { i = l; }
|
7110 | }
|
7111 | b[s >> 2] = 0;
|
7112 | b[s + 4 >> 2] = 0;
|
7113 | b[s + 8 >> 2] = 0;
|
7114 | Ha(s, q);
|
7115 | if (h | 0) { while (1) {
|
7116 | if (!(Fb(h) | 0)) { Ga(s); }else { Fa(s); }
|
7117 | if ((h | 0) > 1) { h = h + -1 | 0; }else { break; }
|
7118 | } }
|
7119 |
|
7120 | if ((i | 0) > 0) {
|
7121 | h = 0;
|
7122 |
|
7123 | do {
|
7124 | Ja(s);
|
7125 | h = h + 1 | 0;
|
7126 | } while ((h | 0) != (i | 0));
|
7127 | }
|
7128 |
|
7129 | r = t + 4 | 0;
|
7130 | za(r, s, r);
|
7131 | xa(r);
|
7132 | r = 50;
|
7133 | } } while (0);
|
7134 |
|
7135 | if ((r | 0) == 50) {
|
7136 | h = t + 4 | 0;
|
7137 | b[g >> 2] = b[h >> 2];
|
7138 | b[g + 4 >> 2] = b[h + 4 >> 2];
|
7139 | b[g + 8 >> 2] = b[h + 8 >> 2];
|
7140 | h = 0;
|
7141 | }
|
7142 |
|
7143 | t = h;
|
7144 | R = u;
|
7145 | return t | 0;
|
7146 | }
|
7147 |
|
7148 | function bc(a, c, d, e) {
|
7149 | a = a | 0;
|
7150 | c = c | 0;
|
7151 | d = d | 0;
|
7152 | e = e | 0;
|
7153 | var f = 0,
|
7154 | g = 0,
|
7155 | h = 0,
|
7156 | i = 0,
|
7157 | j = 0,
|
7158 | k = 0,
|
7159 | l = 0,
|
7160 | m = 0,
|
7161 | n = 0,
|
7162 | o = 0,
|
7163 | p = 0,
|
7164 | q = 0,
|
7165 | r = 0,
|
7166 | s = 0,
|
7167 | t = 0;
|
7168 | p = R;
|
7169 | R = R + 48 | 0;
|
7170 | h = p + 36 | 0;
|
7171 | i = p + 24 | 0;
|
7172 | j = p + 12 | 0;
|
7173 | k = p;
|
7174 | g = Qc(a | 0, c | 0, 52) | 0;
|
7175 | F() | 0;
|
7176 | g = g & 15;
|
7177 | n = Qc(a | 0, c | 0, 45) | 0;
|
7178 | F() | 0;
|
7179 | n = n & 127;
|
7180 | l = ia(n) | 0;
|
7181 | Rc(g | 0, 0, 52) | 0;
|
7182 | r = F() | 0 | 134225919;
|
7183 | q = e;
|
7184 | b[q >> 2] = -1;
|
7185 | b[q + 4 >> 2] = r;
|
7186 |
|
7187 | if (!g) {
|
7188 | if ((b[d >> 2] | 0) > 1) {
|
7189 | r = 1;
|
7190 | R = p;
|
7191 | return r | 0;
|
7192 | }
|
7193 |
|
7194 | if ((b[d + 4 >> 2] | 0) > 1) {
|
7195 | r = 1;
|
7196 | R = p;
|
7197 | return r | 0;
|
7198 | }
|
7199 |
|
7200 | if ((b[d + 8 >> 2] | 0) > 1) {
|
7201 | r = 1;
|
7202 | R = p;
|
7203 | return r | 0;
|
7204 | }
|
7205 |
|
7206 | f = na(n, Ca(d) | 0) | 0;
|
7207 |
|
7208 | if ((f | 0) == 127) {
|
7209 | r = 1;
|
7210 | R = p;
|
7211 | return r | 0;
|
7212 | }
|
7213 |
|
7214 | o = Rc(f | 0, 0, 45) | 0;
|
7215 | q = F() | 0;
|
7216 | n = e;
|
7217 | q = b[n + 4 >> 2] & -1040385 | q;
|
7218 | r = e;
|
7219 | b[r >> 2] = b[n >> 2] | o;
|
7220 | b[r + 4 >> 2] = q;
|
7221 | r = 0;
|
7222 | R = p;
|
7223 | return r | 0;
|
7224 | }
|
7225 | b[h >> 2] = b[d >> 2];
|
7226 | b[h + 4 >> 2] = b[d + 4 >> 2];
|
7227 | b[h + 8 >> 2] = b[d + 8 >> 2];
|
7228 |
|
7229 | while (1) {
|
7230 | b[i >> 2] = b[h >> 2];
|
7231 | b[i + 4 >> 2] = b[h + 4 >> 2];
|
7232 | b[i + 8 >> 2] = b[h + 8 >> 2];
|
7233 |
|
7234 | if (!(Fb(g) | 0)) {
|
7235 | Ea(h);
|
7236 | b[j >> 2] = b[h >> 2];
|
7237 | b[j + 4 >> 2] = b[h + 4 >> 2];
|
7238 | b[j + 8 >> 2] = b[h + 8 >> 2];
|
7239 | Ga(j);
|
7240 | } else {
|
7241 | Da(h);
|
7242 | b[j >> 2] = b[h >> 2];
|
7243 | b[j + 4 >> 2] = b[h + 4 >> 2];
|
7244 | b[j + 8 >> 2] = b[h + 8 >> 2];
|
7245 | Fa(j);
|
7246 | }
|
7247 |
|
7248 | Aa(i, j, k);
|
7249 | xa(k);
|
7250 | q = e;
|
7251 | s = b[q >> 2] | 0;
|
7252 | q = b[q + 4 >> 2] | 0;
|
7253 | t = (15 - g | 0) * 3 | 0;
|
7254 | d = Rc(7, 0, t | 0) | 0;
|
7255 | q = q & ~(F() | 0);
|
7256 | t = Rc(Ca(k) | 0, 0, t | 0) | 0;
|
7257 | q = F() | 0 | q;
|
7258 | r = e;
|
7259 | b[r >> 2] = t | s & ~d;
|
7260 | b[r + 4 >> 2] = q;
|
7261 | if ((g | 0) > 1) { g = g + -1 | 0; }else { break; }
|
7262 | }
|
7263 |
|
7264 | a: do { if (((b[h >> 2] | 0) <= 1 ? (b[h + 4 >> 2] | 0) <= 1 : 0) ? (b[h + 8 >> 2] | 0) <= 1 : 0) {
|
7265 | g = Ca(h) | 0;
|
7266 | i = na(n, g) | 0;
|
7267 | if ((i | 0) == 127) { k = 0; }else { k = ia(i) | 0; }
|
7268 |
|
7269 | b: do { if (!g) {
|
7270 | if ((l | 0) != 0 & (k | 0) != 0) {
|
7271 | t = zb(a, c) | 0;
|
7272 | g = e;
|
7273 | g = 21408 + (t * 28 | 0) + ((zb(b[g >> 2] | 0, b[g + 4 >> 2] | 0) | 0) << 2) | 0;
|
7274 | g = b[g >> 2] | 0;
|
7275 | if ((g | 0) <= -1) { G(22840, 22588, 433, 22773); }
|
7276 |
|
7277 | if (!g) {
|
7278 | f = i;
|
7279 | g = 55;
|
7280 | } else {
|
7281 | h = e;
|
7282 | f = 0;
|
7283 | d = b[h >> 2] | 0;
|
7284 | h = b[h + 4 >> 2] | 0;
|
7285 |
|
7286 | do {
|
7287 | d = Bb(d, h) | 0;
|
7288 | h = F() | 0;
|
7289 | t = e;
|
7290 | b[t >> 2] = d;
|
7291 | b[t + 4 >> 2] = h;
|
7292 | f = f + 1 | 0;
|
7293 | } while ((f | 0) < (g | 0));
|
7294 |
|
7295 | f = i;
|
7296 | g = 54;
|
7297 | }
|
7298 | } else {
|
7299 | f = i;
|
7300 | g = 54;
|
7301 | }
|
7302 | } else {
|
7303 | if (l) {
|
7304 | h = 21408 + ((zb(a, c) | 0) * 28 | 0) + (g << 2) | 0;
|
7305 | h = b[h >> 2] | 0;
|
7306 |
|
7307 | if ((h | 0) > 0) {
|
7308 | d = 0;
|
7309 |
|
7310 | do {
|
7311 | g = Ka(g) | 0;
|
7312 | d = d + 1 | 0;
|
7313 | } while ((d | 0) != (h | 0));
|
7314 | }
|
7315 |
|
7316 | if ((g | 0) == 1) {
|
7317 | f = 3;
|
7318 | break a;
|
7319 | }
|
7320 |
|
7321 | d = na(n, g) | 0;
|
7322 | if ((d | 0) == 127) { G(22743, 22588, 376, 22773); }
|
7323 |
|
7324 | if (!(ia(d) | 0)) {
|
7325 | o = h;
|
7326 | m = g;
|
7327 | f = d;
|
7328 | } else { G(22786, 22588, 377, 22773); }
|
7329 | } else {
|
7330 | o = 0;
|
7331 | m = g;
|
7332 | f = i;
|
7333 | }
|
7334 |
|
7335 | j = b[4304 + (n * 28 | 0) + (m << 2) >> 2] | 0;
|
7336 | if ((j | 0) <= -1) { G(22817, 22588, 384, 22773); }
|
7337 |
|
7338 | if (!k) {
|
7339 | if ((o | 0) <= -1) { G(22669, 22588, 417, 22773); }
|
7340 |
|
7341 | if (o | 0) {
|
7342 | h = e;
|
7343 | g = 0;
|
7344 | d = b[h >> 2] | 0;
|
7345 | h = b[h + 4 >> 2] | 0;
|
7346 |
|
7347 | do {
|
7348 | d = Bb(d, h) | 0;
|
7349 | h = F() | 0;
|
7350 | t = e;
|
7351 | b[t >> 2] = d;
|
7352 | b[t + 4 >> 2] = h;
|
7353 | g = g + 1 | 0;
|
7354 | } while ((g | 0) < (o | 0));
|
7355 | }
|
7356 |
|
7357 | if ((j | 0) <= 0) {
|
7358 | g = 54;
|
7359 | break;
|
7360 | }
|
7361 |
|
7362 | h = e;
|
7363 | g = 0;
|
7364 | d = b[h >> 2] | 0;
|
7365 | h = b[h + 4 >> 2] | 0;
|
7366 |
|
7367 | while (1) {
|
7368 | d = Bb(d, h) | 0;
|
7369 | h = F() | 0;
|
7370 | t = e;
|
7371 | b[t >> 2] = d;
|
7372 | b[t + 4 >> 2] = h;
|
7373 | g = g + 1 | 0;
|
7374 |
|
7375 | if ((g | 0) == (j | 0)) {
|
7376 | g = 54;
|
7377 | break b;
|
7378 | }
|
7379 | }
|
7380 | }
|
7381 |
|
7382 | i = oa(f, n) | 0;
|
7383 | if ((i | 0) == 7) { G(22564, 22588, 393, 22773); }
|
7384 | g = e;
|
7385 | d = b[g >> 2] | 0;
|
7386 | g = b[g + 4 >> 2] | 0;
|
7387 |
|
7388 | if ((j | 0) > 0) {
|
7389 | h = 0;
|
7390 |
|
7391 | do {
|
7392 | d = Bb(d, g) | 0;
|
7393 | g = F() | 0;
|
7394 | t = e;
|
7395 | b[t >> 2] = d;
|
7396 | b[t + 4 >> 2] = g;
|
7397 | h = h + 1 | 0;
|
7398 | } while ((h | 0) != (j | 0));
|
7399 | }
|
7400 |
|
7401 | d = zb(d, g) | 0;
|
7402 | t = ja(f) | 0;
|
7403 | d = b[(t ? 21824 : 21616) + (i * 28 | 0) + (d << 2) >> 2] | 0;
|
7404 | if ((d | 0) <= -1) { G(22669, 22588, 412, 22773); }
|
7405 | if (!d) { g = 54; }else {
|
7406 | i = e;
|
7407 | g = 0;
|
7408 | h = b[i >> 2] | 0;
|
7409 | i = b[i + 4 >> 2] | 0;
|
7410 |
|
7411 | do {
|
7412 | h = Ab(h, i) | 0;
|
7413 | i = F() | 0;
|
7414 | t = e;
|
7415 | b[t >> 2] = h;
|
7416 | b[t + 4 >> 2] = i;
|
7417 | g = g + 1 | 0;
|
7418 | } while ((g | 0) < (d | 0));
|
7419 |
|
7420 | g = 54;
|
7421 | }
|
7422 | } } while (0);
|
7423 |
|
7424 | if ((g | 0) == 54) { if (k) { g = 55; } }
|
7425 |
|
7426 | if ((g | 0) == 55) {
|
7427 | t = e;
|
7428 |
|
7429 | if ((zb(b[t >> 2] | 0, b[t + 4 >> 2] | 0) | 0) == 1) {
|
7430 | f = 4;
|
7431 | break;
|
7432 | }
|
7433 | }
|
7434 |
|
7435 | t = e;
|
7436 | r = b[t >> 2] | 0;
|
7437 | t = b[t + 4 >> 2] & -1040385;
|
7438 | s = Rc(f | 0, 0, 45) | 0;
|
7439 | t = t | (F() | 0);
|
7440 | f = e;
|
7441 | b[f >> 2] = r | s;
|
7442 | b[f + 4 >> 2] = t;
|
7443 | f = 0;
|
7444 | } else { f = 2; } } while (0);
|
7445 |
|
7446 | t = f;
|
7447 | R = p;
|
7448 | return t | 0;
|
7449 | }
|
7450 |
|
7451 | function cc(a, b, c, d, e) {
|
7452 | a = a | 0;
|
7453 | b = b | 0;
|
7454 | c = c | 0;
|
7455 | d = d | 0;
|
7456 | e = e | 0;
|
7457 | var f = 0,
|
7458 | g = 0;
|
7459 | g = R;
|
7460 | R = R + 16 | 0;
|
7461 | f = g;
|
7462 | a = ac(a, b, c, d, f) | 0;
|
7463 |
|
7464 | if (!a) {
|
7465 | Pa(f, e);
|
7466 | a = 0;
|
7467 | }
|
7468 |
|
7469 | R = g;
|
7470 | return a | 0;
|
7471 | }
|
7472 |
|
7473 | function dc(a, b, c, d) {
|
7474 | a = a | 0;
|
7475 | b = b | 0;
|
7476 | c = c | 0;
|
7477 | d = d | 0;
|
7478 | var e = 0,
|
7479 | f = 0;
|
7480 | e = R;
|
7481 | R = R + 16 | 0;
|
7482 | f = e;
|
7483 | Qa(c, f);
|
7484 | d = bc(a, b, f, d) | 0;
|
7485 | R = e;
|
7486 | return d | 0;
|
7487 | }
|
7488 |
|
7489 | function ec(a, b, c, d) {
|
7490 | a = a | 0;
|
7491 | b = b | 0;
|
7492 | c = c | 0;
|
7493 | d = d | 0;
|
7494 | var e = 0,
|
7495 | f = 0,
|
7496 | g = 0;
|
7497 | g = R;
|
7498 | R = R + 32 | 0;
|
7499 | e = g + 12 | 0;
|
7500 | f = g;
|
7501 | if ((ac(a, b, a, b, e) | 0) == 0 ? (ac(a, b, c, d, f) | 0) == 0 : 0) { a = Oa(e, f) | 0; }else { a = -1; }
|
7502 | R = g;
|
7503 | return a | 0;
|
7504 | }
|
7505 |
|
7506 | function fc(a, b, c, d) {
|
7507 | a = a | 0;
|
7508 | b = b | 0;
|
7509 | c = c | 0;
|
7510 | d = d | 0;
|
7511 | var e = 0,
|
7512 | f = 0,
|
7513 | g = 0;
|
7514 | g = R;
|
7515 | R = R + 32 | 0;
|
7516 | e = g + 12 | 0;
|
7517 | f = g;
|
7518 | if ((ac(a, b, a, b, e) | 0) == 0 ? (ac(a, b, c, d, f) | 0) == 0 : 0) { a = Oa(e, f) | 0; }else { a = -1; }
|
7519 | R = g;
|
7520 | return (a >>> 31 ^ 1) + a | 0;
|
7521 | }
|
7522 |
|
7523 | function gc(a, c, d, e, f) {
|
7524 | a = a | 0;
|
7525 | c = c | 0;
|
7526 | d = d | 0;
|
7527 | e = e | 0;
|
7528 | f = f | 0;
|
7529 | var g = 0,
|
7530 | h = 0,
|
7531 | i = 0.0,
|
7532 | j = 0.0,
|
7533 | k = 0,
|
7534 | l = 0,
|
7535 | m = 0,
|
7536 | n = 0,
|
7537 | o = 0.0,
|
7538 | p = 0.0,
|
7539 | r = 0.0,
|
7540 | s = 0,
|
7541 | t = 0,
|
7542 | u = 0,
|
7543 | v = 0,
|
7544 | w = 0,
|
7545 | x = 0,
|
7546 | y = 0.0;
|
7547 | x = R;
|
7548 | R = R + 48 | 0;
|
7549 | g = x + 24 | 0;
|
7550 | h = x + 12 | 0;
|
7551 | w = x;
|
7552 |
|
7553 | if ((ac(a, c, a, c, g) | 0) == 0 ? (ac(a, c, d, e, h) | 0) == 0 : 0) {
|
7554 | v = Oa(g, h) | 0;
|
7555 |
|
7556 | if ((v | 0) < 0) {
|
7557 | w = v;
|
7558 | R = x;
|
7559 | return w | 0;
|
7560 | }
|
7561 | b[g >> 2] = 0;
|
7562 | b[g + 4 >> 2] = 0;
|
7563 | b[g + 8 >> 2] = 0;
|
7564 | b[h >> 2] = 0;
|
7565 | b[h + 4 >> 2] = 0;
|
7566 | b[h + 8 >> 2] = 0;
|
7567 | ac(a, c, a, c, g) | 0;
|
7568 | ac(a, c, d, e, h) | 0;
|
7569 | Ra(g);
|
7570 | Ra(h);
|
7571 |
|
7572 | if (!v) {
|
7573 | e = g + 4 | 0;
|
7574 | n = g + 8 | 0;
|
7575 | s = e;
|
7576 | t = n;
|
7577 | u = g;
|
7578 | d = b[g >> 2] | 0;
|
7579 | e = b[e >> 2] | 0;
|
7580 | g = b[n >> 2] | 0;
|
7581 | p = 0.0;
|
7582 | r = 0.0;
|
7583 | o = 0.0;
|
7584 | } else {
|
7585 | l = b[g >> 2] | 0;
|
7586 | o = +(v | 0);
|
7587 | s = g + 4 | 0;
|
7588 | m = b[s >> 2] | 0;
|
7589 | t = g + 8 | 0;
|
7590 | n = b[t >> 2] | 0;
|
7591 | u = g;
|
7592 | d = l;
|
7593 | e = m;
|
7594 | g = n;
|
7595 | p = +((b[h >> 2] | 0) - l | 0) / o;
|
7596 | r = +((b[h + 4 >> 2] | 0) - m | 0) / o;
|
7597 | o = +((b[h + 8 >> 2] | 0) - n | 0) / o;
|
7598 | }
|
7599 |
|
7600 | b[w >> 2] = d;
|
7601 | n = w + 4 | 0;
|
7602 | b[n >> 2] = e;
|
7603 | m = w + 8 | 0;
|
7604 | b[m >> 2] = g;
|
7605 | l = 0;
|
7606 |
|
7607 | while (1) {
|
7608 | j = +(l | 0);
|
7609 | y = p * j + +(d | 0);
|
7610 | i = r * j + +(b[s >> 2] | 0);
|
7611 | j = o * j + +(b[t >> 2] | 0);
|
7612 | e = ~~+Sc(+y);
|
7613 | h = ~~+Sc(+i);
|
7614 | d = ~~+Sc(+j);
|
7615 | y = +q(+(+(e | 0) - y));
|
7616 | i = +q(+(+(h | 0) - i));
|
7617 | j = +q(+(+(d | 0) - j));
|
7618 |
|
7619 | do { if (!(y > i & y > j)) {
|
7620 | k = 0 - e | 0;
|
7621 |
|
7622 | if (i > j) {
|
7623 | g = k - d | 0;
|
7624 | break;
|
7625 | } else {
|
7626 | g = h;
|
7627 | d = k - h | 0;
|
7628 | break;
|
7629 | }
|
7630 | } else {
|
7631 | e = 0 - (h + d) | 0;
|
7632 | g = h;
|
7633 | } } while (0);
|
7634 |
|
7635 | b[w >> 2] = e;
|
7636 | b[n >> 2] = g;
|
7637 | b[m >> 2] = d;
|
7638 | Sa(w);
|
7639 | bc(a, c, w, f + (l << 3) | 0) | 0;
|
7640 | if ((l | 0) == (v | 0)) { break; }
|
7641 | l = l + 1 | 0;
|
7642 | d = b[u >> 2] | 0;
|
7643 | }
|
7644 |
|
7645 | w = 0;
|
7646 | R = x;
|
7647 | return w | 0;
|
7648 | }
|
7649 |
|
7650 | w = -1;
|
7651 | R = x;
|
7652 | return w | 0;
|
7653 | }
|
7654 |
|
7655 | function hc(a, b) {
|
7656 | a = a | 0;
|
7657 | b = b | 0;
|
7658 | var c = 0;
|
7659 |
|
7660 | if (!b) {
|
7661 | c = 1;
|
7662 | return c | 0;
|
7663 | }
|
7664 |
|
7665 | c = a;
|
7666 | a = 1;
|
7667 |
|
7668 | do {
|
7669 | a = B((b & 1 | 0) == 0 ? 1 : c, a) | 0;
|
7670 | b = b >> 1;
|
7671 | c = B(c, c) | 0;
|
7672 | } while ((b | 0) != 0);
|
7673 |
|
7674 | return a | 0;
|
7675 | }
|
7676 |
|
7677 | function ic(a, c, d) {
|
7678 | a = a | 0;
|
7679 | c = c | 0;
|
7680 | d = d | 0;
|
7681 | var f = 0.0,
|
7682 | g = 0.0,
|
7683 | h = 0.0,
|
7684 | i = 0.0,
|
7685 | j = 0.0,
|
7686 | k = 0.0,
|
7687 | l = 0,
|
7688 | m = 0,
|
7689 | n = 0,
|
7690 | o = 0.0;
|
7691 |
|
7692 | if (!(ta(c, d) | 0)) {
|
7693 | n = 0;
|
7694 | return n | 0;
|
7695 | }
|
7696 |
|
7697 | c = ra(c) | 0;
|
7698 | o = +e[d >> 3];
|
7699 | f = +e[d + 8 >> 3];
|
7700 | f = c & f < 0.0 ? f + 6.283185307179586 : f;
|
7701 | n = b[a >> 2] | 0;
|
7702 |
|
7703 | if ((n | 0) <= 0) {
|
7704 | n = 0;
|
7705 | return n | 0;
|
7706 | }
|
7707 |
|
7708 | m = b[a + 4 >> 2] | 0;
|
7709 |
|
7710 | if (c) {
|
7711 | c = 0;
|
7712 | d = -1;
|
7713 | a = 0;
|
7714 |
|
7715 | a: while (1) {
|
7716 | l = a;
|
7717 |
|
7718 | while (1) {
|
7719 | i = +e[m + (l << 4) >> 3];
|
7720 | k = +e[m + (l << 4) + 8 >> 3];
|
7721 | a = (d + 2 | 0) % (n | 0) | 0;
|
7722 | h = +e[m + (a << 4) >> 3];
|
7723 | g = +e[m + (a << 4) + 8 >> 3];
|
7724 |
|
7725 | if (i > h) {
|
7726 | j = i;
|
7727 | i = k;
|
7728 | } else {
|
7729 | j = h;
|
7730 | h = i;
|
7731 | i = g;
|
7732 | g = k;
|
7733 | }
|
7734 |
|
7735 | if (!(o < h | o > j)) { break; }
|
7736 | d = l + 1 | 0;
|
7737 |
|
7738 | if ((d | 0) < (n | 0)) {
|
7739 | a = l;
|
7740 | l = d;
|
7741 | d = a;
|
7742 | } else {
|
7743 | d = 22;
|
7744 | break a;
|
7745 | }
|
7746 | }
|
7747 |
|
7748 | k = g < 0.0 ? g + 6.283185307179586 : g;
|
7749 | i = i < 0.0 ? i + 6.283185307179586 : i;
|
7750 | f = i == f | k == f ? f + -2.220446049250313e-16 : f;
|
7751 | k = k + (o - h) / (j - h) * (i - k);
|
7752 | if ((k < 0.0 ? k + 6.283185307179586 : k) > f) { c = c ^ 1; }
|
7753 | a = l + 1 | 0;
|
7754 |
|
7755 | if ((a | 0) >= (n | 0)) {
|
7756 | d = 22;
|
7757 | break;
|
7758 | } else { d = l; }
|
7759 | }
|
7760 |
|
7761 | if ((d | 0) == 22) { return c | 0; }
|
7762 | } else {
|
7763 | c = 0;
|
7764 | d = -1;
|
7765 | a = 0;
|
7766 |
|
7767 | b: while (1) {
|
7768 | l = a;
|
7769 |
|
7770 | while (1) {
|
7771 | i = +e[m + (l << 4) >> 3];
|
7772 | k = +e[m + (l << 4) + 8 >> 3];
|
7773 | a = (d + 2 | 0) % (n | 0) | 0;
|
7774 | h = +e[m + (a << 4) >> 3];
|
7775 | g = +e[m + (a << 4) + 8 >> 3];
|
7776 |
|
7777 | if (i > h) {
|
7778 | j = i;
|
7779 | i = k;
|
7780 | } else {
|
7781 | j = h;
|
7782 | h = i;
|
7783 | i = g;
|
7784 | g = k;
|
7785 | }
|
7786 |
|
7787 | if (!(o < h | o > j)) { break; }
|
7788 | d = l + 1 | 0;
|
7789 |
|
7790 | if ((d | 0) < (n | 0)) {
|
7791 | a = l;
|
7792 | l = d;
|
7793 | d = a;
|
7794 | } else {
|
7795 | d = 22;
|
7796 | break b;
|
7797 | }
|
7798 | }
|
7799 |
|
7800 | f = i == f | g == f ? f + -2.220446049250313e-16 : f;
|
7801 | if (g + (o - h) / (j - h) * (i - g) > f) { c = c ^ 1; }
|
7802 | a = l + 1 | 0;
|
7803 |
|
7804 | if ((a | 0) >= (n | 0)) {
|
7805 | d = 22;
|
7806 | break;
|
7807 | } else { d = l; }
|
7808 | }
|
7809 |
|
7810 | if ((d | 0) == 22) { return c | 0; }
|
7811 | }
|
7812 |
|
7813 | return 0;
|
7814 | }
|
7815 |
|
7816 | function jc(a, c) {
|
7817 | a = a | 0;
|
7818 | c = c | 0;
|
7819 | var d = 0.0,
|
7820 | f = 0.0,
|
7821 | g = 0.0,
|
7822 | h = 0.0,
|
7823 | i = 0.0,
|
7824 | j = 0.0,
|
7825 | k = 0.0,
|
7826 | l = 0.0,
|
7827 | m = 0.0,
|
7828 | n = 0,
|
7829 | o = 0,
|
7830 | p = 0,
|
7831 | r = 0,
|
7832 | s = 0,
|
7833 | t = 0,
|
7834 | u = 0,
|
7835 | v = 0;
|
7836 | r = b[a >> 2] | 0;
|
7837 |
|
7838 | if (!r) {
|
7839 | b[c >> 2] = 0;
|
7840 | b[c + 4 >> 2] = 0;
|
7841 | b[c + 8 >> 2] = 0;
|
7842 | b[c + 12 >> 2] = 0;
|
7843 | b[c + 16 >> 2] = 0;
|
7844 | b[c + 20 >> 2] = 0;
|
7845 | b[c + 24 >> 2] = 0;
|
7846 | b[c + 28 >> 2] = 0;
|
7847 | return;
|
7848 | }
|
7849 |
|
7850 | s = c + 8 | 0;
|
7851 | e[s >> 3] = 1797693134862315708145274.0e284;
|
7852 | t = c + 24 | 0;
|
7853 | e[t >> 3] = 1797693134862315708145274.0e284;
|
7854 | e[c >> 3] = -1797693134862315708145274.0e284;
|
7855 | u = c + 16 | 0;
|
7856 | e[u >> 3] = -1797693134862315708145274.0e284;
|
7857 | if ((r | 0) <= 0) { return; }
|
7858 | o = b[a + 4 >> 2] | 0;
|
7859 | l = 1797693134862315708145274.0e284;
|
7860 | m = -1797693134862315708145274.0e284;
|
7861 | n = 0;
|
7862 | a = -1;
|
7863 | h = 1797693134862315708145274.0e284;
|
7864 | i = 1797693134862315708145274.0e284;
|
7865 | k = -1797693134862315708145274.0e284;
|
7866 | f = -1797693134862315708145274.0e284;
|
7867 | p = 0;
|
7868 |
|
7869 | while (1) {
|
7870 | d = +e[o + (p << 4) >> 3];
|
7871 | j = +e[o + (p << 4) + 8 >> 3];
|
7872 | a = a + 2 | 0;
|
7873 | g = +e[o + (((a | 0) == (r | 0) ? 0 : a) << 4) + 8 >> 3];
|
7874 |
|
7875 | if (d < h) {
|
7876 | e[s >> 3] = d;
|
7877 | h = d;
|
7878 | }
|
7879 |
|
7880 | if (j < i) {
|
7881 | e[t >> 3] = j;
|
7882 | i = j;
|
7883 | }
|
7884 |
|
7885 | if (d > k) { e[c >> 3] = d; }else { d = k; }
|
7886 |
|
7887 | if (j > f) {
|
7888 | e[u >> 3] = j;
|
7889 | f = j;
|
7890 | }
|
7891 |
|
7892 | l = j > 0.0 & j < l ? j : l;
|
7893 | m = j < 0.0 & j > m ? j : m;
|
7894 | n = n | +q(+(j - g)) > 3.141592653589793;
|
7895 | a = p + 1 | 0;
|
7896 | if ((a | 0) == (r | 0)) { break; }else {
|
7897 | v = p;
|
7898 | k = d;
|
7899 | p = a;
|
7900 | a = v;
|
7901 | }
|
7902 | }
|
7903 |
|
7904 | if (!n) { return; }
|
7905 | e[u >> 3] = m;
|
7906 | e[t >> 3] = l;
|
7907 | return;
|
7908 | }
|
7909 |
|
7910 | function kc(a, c) {
|
7911 | a = a | 0;
|
7912 | c = c | 0;
|
7913 | var d = 0,
|
7914 | f = 0,
|
7915 | g = 0,
|
7916 | h = 0.0,
|
7917 | i = 0.0,
|
7918 | j = 0.0,
|
7919 | k = 0.0,
|
7920 | l = 0.0,
|
7921 | m = 0.0,
|
7922 | n = 0.0,
|
7923 | o = 0.0,
|
7924 | p = 0.0,
|
7925 | r = 0,
|
7926 | s = 0,
|
7927 | t = 0,
|
7928 | u = 0,
|
7929 | v = 0,
|
7930 | w = 0,
|
7931 | x = 0,
|
7932 | y = 0,
|
7933 | z = 0,
|
7934 | A = 0;
|
7935 | r = b[a >> 2] | 0;
|
7936 |
|
7937 | if (r) {
|
7938 | s = c + 8 | 0;
|
7939 | e[s >> 3] = 1797693134862315708145274.0e284;
|
7940 | t = c + 24 | 0;
|
7941 | e[t >> 3] = 1797693134862315708145274.0e284;
|
7942 | e[c >> 3] = -1797693134862315708145274.0e284;
|
7943 | u = c + 16 | 0;
|
7944 | e[u >> 3] = -1797693134862315708145274.0e284;
|
7945 |
|
7946 | if ((r | 0) > 0) {
|
7947 | g = b[a + 4 >> 2] | 0;
|
7948 | o = 1797693134862315708145274.0e284;
|
7949 | p = -1797693134862315708145274.0e284;
|
7950 | f = 0;
|
7951 | d = -1;
|
7952 | k = 1797693134862315708145274.0e284;
|
7953 | l = 1797693134862315708145274.0e284;
|
7954 | n = -1797693134862315708145274.0e284;
|
7955 | i = -1797693134862315708145274.0e284;
|
7956 | v = 0;
|
7957 |
|
7958 | while (1) {
|
7959 | h = +e[g + (v << 4) >> 3];
|
7960 | m = +e[g + (v << 4) + 8 >> 3];
|
7961 | z = d + 2 | 0;
|
7962 | j = +e[g + (((z | 0) == (r | 0) ? 0 : z) << 4) + 8 >> 3];
|
7963 |
|
7964 | if (h < k) {
|
7965 | e[s >> 3] = h;
|
7966 | k = h;
|
7967 | }
|
7968 |
|
7969 | if (m < l) {
|
7970 | e[t >> 3] = m;
|
7971 | l = m;
|
7972 | }
|
7973 |
|
7974 | if (h > n) { e[c >> 3] = h; }else { h = n; }
|
7975 |
|
7976 | if (m > i) {
|
7977 | e[u >> 3] = m;
|
7978 | i = m;
|
7979 | }
|
7980 |
|
7981 | o = m > 0.0 & m < o ? m : o;
|
7982 | p = m < 0.0 & m > p ? m : p;
|
7983 | f = f | +q(+(m - j)) > 3.141592653589793;
|
7984 | d = v + 1 | 0;
|
7985 | if ((d | 0) == (r | 0)) { break; }else {
|
7986 | z = v;
|
7987 | n = h;
|
7988 | v = d;
|
7989 | d = z;
|
7990 | }
|
7991 | }
|
7992 |
|
7993 | if (f) {
|
7994 | e[u >> 3] = p;
|
7995 | e[t >> 3] = o;
|
7996 | }
|
7997 | }
|
7998 | } else {
|
7999 | b[c >> 2] = 0;
|
8000 | b[c + 4 >> 2] = 0;
|
8001 | b[c + 8 >> 2] = 0;
|
8002 | b[c + 12 >> 2] = 0;
|
8003 | b[c + 16 >> 2] = 0;
|
8004 | b[c + 20 >> 2] = 0;
|
8005 | b[c + 24 >> 2] = 0;
|
8006 | b[c + 28 >> 2] = 0;
|
8007 | }
|
8008 |
|
8009 | z = a + 8 | 0;
|
8010 | d = b[z >> 2] | 0;
|
8011 | if ((d | 0) <= 0) { return; }
|
8012 | y = a + 12 | 0;
|
8013 | x = 0;
|
8014 |
|
8015 | do {
|
8016 | g = b[y >> 2] | 0;
|
8017 | f = x;
|
8018 | x = x + 1 | 0;
|
8019 | t = c + (x << 5) | 0;
|
8020 | u = b[g + (f << 3) >> 2] | 0;
|
8021 |
|
8022 | if (u) {
|
8023 | v = c + (x << 5) + 8 | 0;
|
8024 | e[v >> 3] = 1797693134862315708145274.0e284;
|
8025 | a = c + (x << 5) + 24 | 0;
|
8026 | e[a >> 3] = 1797693134862315708145274.0e284;
|
8027 | e[t >> 3] = -1797693134862315708145274.0e284;
|
8028 | w = c + (x << 5) + 16 | 0;
|
8029 | e[w >> 3] = -1797693134862315708145274.0e284;
|
8030 |
|
8031 | if ((u | 0) > 0) {
|
8032 | r = b[g + (f << 3) + 4 >> 2] | 0;
|
8033 | o = 1797693134862315708145274.0e284;
|
8034 | p = -1797693134862315708145274.0e284;
|
8035 | g = 0;
|
8036 | f = -1;
|
8037 | s = 0;
|
8038 | k = 1797693134862315708145274.0e284;
|
8039 | l = 1797693134862315708145274.0e284;
|
8040 | m = -1797693134862315708145274.0e284;
|
8041 | i = -1797693134862315708145274.0e284;
|
8042 |
|
8043 | while (1) {
|
8044 | h = +e[r + (s << 4) >> 3];
|
8045 | n = +e[r + (s << 4) + 8 >> 3];
|
8046 | f = f + 2 | 0;
|
8047 | j = +e[r + (((f | 0) == (u | 0) ? 0 : f) << 4) + 8 >> 3];
|
8048 |
|
8049 | if (h < k) {
|
8050 | e[v >> 3] = h;
|
8051 | k = h;
|
8052 | }
|
8053 |
|
8054 | if (n < l) {
|
8055 | e[a >> 3] = n;
|
8056 | l = n;
|
8057 | }
|
8058 |
|
8059 | if (h > m) { e[t >> 3] = h; }else { h = m; }
|
8060 |
|
8061 | if (n > i) {
|
8062 | e[w >> 3] = n;
|
8063 | i = n;
|
8064 | }
|
8065 |
|
8066 | o = n > 0.0 & n < o ? n : o;
|
8067 | p = n < 0.0 & n > p ? n : p;
|
8068 | g = g | +q(+(n - j)) > 3.141592653589793;
|
8069 | f = s + 1 | 0;
|
8070 | if ((f | 0) == (u | 0)) { break; }else {
|
8071 | A = s;
|
8072 | s = f;
|
8073 | m = h;
|
8074 | f = A;
|
8075 | }
|
8076 | }
|
8077 |
|
8078 | if (g) {
|
8079 | e[w >> 3] = p;
|
8080 | e[a >> 3] = o;
|
8081 | }
|
8082 | }
|
8083 | } else {
|
8084 | b[t >> 2] = 0;
|
8085 | b[t + 4 >> 2] = 0;
|
8086 | b[t + 8 >> 2] = 0;
|
8087 | b[t + 12 >> 2] = 0;
|
8088 | b[t + 16 >> 2] = 0;
|
8089 | b[t + 20 >> 2] = 0;
|
8090 | b[t + 24 >> 2] = 0;
|
8091 | b[t + 28 >> 2] = 0;
|
8092 | d = b[z >> 2] | 0;
|
8093 | }
|
8094 | } while ((x | 0) < (d | 0));
|
8095 |
|
8096 | return;
|
8097 | }
|
8098 |
|
8099 | function lc(a, c, d) {
|
8100 | a = a | 0;
|
8101 | c = c | 0;
|
8102 | d = d | 0;
|
8103 | var e = 0,
|
8104 | f = 0,
|
8105 | g = 0;
|
8106 |
|
8107 | if (!(ic(a, c, d) | 0)) {
|
8108 | f = 0;
|
8109 | return f | 0;
|
8110 | }
|
8111 |
|
8112 | f = a + 8 | 0;
|
8113 |
|
8114 | if ((b[f >> 2] | 0) <= 0) {
|
8115 | f = 1;
|
8116 | return f | 0;
|
8117 | }
|
8118 |
|
8119 | e = a + 12 | 0;
|
8120 | a = 0;
|
8121 |
|
8122 | while (1) {
|
8123 | g = a;
|
8124 | a = a + 1 | 0;
|
8125 |
|
8126 | if (ic((b[e >> 2] | 0) + (g << 3) | 0, c + (a << 5) | 0, d) | 0) {
|
8127 | a = 0;
|
8128 | e = 6;
|
8129 | break;
|
8130 | }
|
8131 |
|
8132 | if ((a | 0) >= (b[f >> 2] | 0)) {
|
8133 | a = 1;
|
8134 | e = 6;
|
8135 | break;
|
8136 | }
|
8137 | }
|
8138 |
|
8139 | if ((e | 0) == 6) { return a | 0; }
|
8140 | return 0;
|
8141 | }
|
8142 |
|
8143 | function mc() {
|
8144 | return 8;
|
8145 | }
|
8146 |
|
8147 | function nc() {
|
8148 | return 16;
|
8149 | }
|
8150 |
|
8151 | function oc() {
|
8152 | return 168;
|
8153 | }
|
8154 |
|
8155 | function pc() {
|
8156 | return 8;
|
8157 | }
|
8158 |
|
8159 | function qc() {
|
8160 | return 16;
|
8161 | }
|
8162 |
|
8163 | function rc() {
|
8164 | return 12;
|
8165 | }
|
8166 |
|
8167 | function sc() {
|
8168 | return 8;
|
8169 | }
|
8170 |
|
8171 | function tc(a) {
|
8172 | a = a | 0;
|
8173 | var b = 0.0,
|
8174 | c = 0.0;
|
8175 | c = +e[a >> 3];
|
8176 | b = +e[a + 8 >> 3];
|
8177 | return + +r(+(c * c + b * b));
|
8178 | }
|
8179 |
|
8180 | function uc(a, b, c, d, f) {
|
8181 | a = a | 0;
|
8182 | b = b | 0;
|
8183 | c = c | 0;
|
8184 | d = d | 0;
|
8185 | f = f | 0;
|
8186 | var g = 0.0,
|
8187 | h = 0.0,
|
8188 | i = 0.0,
|
8189 | j = 0.0,
|
8190 | k = 0.0,
|
8191 | l = 0.0,
|
8192 | m = 0.0,
|
8193 | n = 0.0;
|
8194 | k = +e[a >> 3];
|
8195 | j = +e[b >> 3] - k;
|
8196 | i = +e[a + 8 >> 3];
|
8197 | h = +e[b + 8 >> 3] - i;
|
8198 | m = +e[c >> 3];
|
8199 | g = +e[d >> 3] - m;
|
8200 | n = +e[c + 8 >> 3];
|
8201 | l = +e[d + 8 >> 3] - n;
|
8202 | g = (g * (i - n) - (k - m) * l) / (j * l - h * g);
|
8203 | e[f >> 3] = k + j * g;
|
8204 | e[f + 8 >> 3] = i + h * g;
|
8205 | return;
|
8206 | }
|
8207 |
|
8208 | function vc(a, b) {
|
8209 | a = a | 0;
|
8210 | b = b | 0;
|
8211 |
|
8212 | if (!(+e[a >> 3] == +e[b >> 3])) {
|
8213 | b = 0;
|
8214 | return b | 0;
|
8215 | }
|
8216 |
|
8217 | b = +e[a + 8 >> 3] == +e[b + 8 >> 3];
|
8218 | return b | 0;
|
8219 | }
|
8220 |
|
8221 | function wc(a, b) {
|
8222 | a = a | 0;
|
8223 | b = b | 0;
|
8224 | var c = 0.0,
|
8225 | d = 0.0,
|
8226 | f = 0.0;
|
8227 | f = +e[a >> 3] - +e[b >> 3];
|
8228 | d = +e[a + 8 >> 3] - +e[b + 8 >> 3];
|
8229 | c = +e[a + 16 >> 3] - +e[b + 16 >> 3];
|
8230 | return +(f * f + d * d + c * c);
|
8231 | }
|
8232 |
|
8233 | function xc(a, b) {
|
8234 | a = a | 0;
|
8235 | b = b | 0;
|
8236 | var c = 0.0,
|
8237 | d = 0.0,
|
8238 | f = 0.0;
|
8239 | c = +e[a >> 3];
|
8240 | d = +t(+c);
|
8241 | c = +u(+c);
|
8242 | e[b + 16 >> 3] = c;
|
8243 | c = +e[a + 8 >> 3];
|
8244 | f = d * +t(+c);
|
8245 | e[b >> 3] = f;
|
8246 | c = d * +u(+c);
|
8247 | e[b + 8 >> 3] = c;
|
8248 | return;
|
8249 | }
|
8250 |
|
8251 | function yc(a, c, d) {
|
8252 | a = a | 0;
|
8253 | c = c | 0;
|
8254 | d = d | 0;
|
8255 | var e = 0;
|
8256 |
|
8257 | if ((c | 0) > 0) {
|
8258 | e = Kc(c, 4) | 0;
|
8259 | b[a >> 2] = e;
|
8260 | if (!e) { G(22869, 22892, 37, 22906); }
|
8261 | } else { b[a >> 2] = 0; }
|
8262 |
|
8263 | b[a + 4 >> 2] = c;
|
8264 | b[a + 8 >> 2] = 0;
|
8265 | b[a + 12 >> 2] = d;
|
8266 | return;
|
8267 | }
|
8268 |
|
8269 | function zc(a) {
|
8270 | a = a | 0;
|
8271 | var c = 0,
|
8272 | d = 0,
|
8273 | f = 0,
|
8274 | g = 0,
|
8275 | h = 0,
|
8276 | i = 0,
|
8277 | j = 0;
|
8278 | g = a + 4 | 0;
|
8279 | h = a + 12 | 0;
|
8280 | i = a + 8 | 0;
|
8281 |
|
8282 | a: while (1) {
|
8283 | d = b[g >> 2] | 0;
|
8284 | c = 0;
|
8285 |
|
8286 | while (1) {
|
8287 | if ((c | 0) >= (d | 0)) { break a; }
|
8288 | f = b[a >> 2] | 0;
|
8289 | j = b[f + (c << 2) >> 2] | 0;
|
8290 | if (!j) { c = c + 1 | 0; }else { break; }
|
8291 | }
|
8292 |
|
8293 | c = f + (~~(+q(+(+s(10.0, + +(15 - (b[h >> 2] | 0) | 0)) * (+e[j >> 3] + +e[j + 8 >> 3]))) % +(d | 0)) >>> 0 << 2) | 0;
|
8294 | d = b[c >> 2] | 0;
|
8295 |
|
8296 | b: do { if (d | 0) {
|
8297 | f = j + 32 | 0;
|
8298 | if ((d | 0) == (j | 0)) { b[c >> 2] = b[f >> 2]; }else {
|
8299 | d = d + 32 | 0;
|
8300 | c = b[d >> 2] | 0;
|
8301 | if (!c) { break; }
|
8302 |
|
8303 | while (1) {
|
8304 | if ((c | 0) == (j | 0)) { break; }
|
8305 | d = c + 32 | 0;
|
8306 | c = b[d >> 2] | 0;
|
8307 | if (!c) { break b; }
|
8308 | }
|
8309 |
|
8310 | b[d >> 2] = b[f >> 2];
|
8311 | }
|
8312 | Jc(j);
|
8313 | b[i >> 2] = (b[i >> 2] | 0) + -1;
|
8314 | } } while (0);
|
8315 | }
|
8316 |
|
8317 | Jc(b[a >> 2] | 0);
|
8318 | return;
|
8319 | }
|
8320 |
|
8321 | function Ac(a) {
|
8322 | a = a | 0;
|
8323 | var c = 0,
|
8324 | d = 0,
|
8325 | e = 0;
|
8326 | e = b[a + 4 >> 2] | 0;
|
8327 | d = 0;
|
8328 |
|
8329 | while (1) {
|
8330 | if ((d | 0) >= (e | 0)) {
|
8331 | c = 0;
|
8332 | d = 4;
|
8333 | break;
|
8334 | }
|
8335 |
|
8336 | c = b[(b[a >> 2] | 0) + (d << 2) >> 2] | 0;
|
8337 | if (!c) { d = d + 1 | 0; }else {
|
8338 | d = 4;
|
8339 | break;
|
8340 | }
|
8341 | }
|
8342 |
|
8343 | if ((d | 0) == 4) { return c | 0; }
|
8344 | return 0;
|
8345 | }
|
8346 |
|
8347 | function Bc(a, c) {
|
8348 | a = a | 0;
|
8349 | c = c | 0;
|
8350 | var d = 0,
|
8351 | f = 0,
|
8352 | g = 0,
|
8353 | h = 0;
|
8354 | d = ~~(+q(+(+s(10.0, + +(15 - (b[a + 12 >> 2] | 0) | 0)) * (+e[c >> 3] + +e[c + 8 >> 3]))) % +(b[a + 4 >> 2] | 0)) >>> 0;
|
8355 | d = (b[a >> 2] | 0) + (d << 2) | 0;
|
8356 | f = b[d >> 2] | 0;
|
8357 |
|
8358 | if (!f) {
|
8359 | h = 1;
|
8360 | return h | 0;
|
8361 | }
|
8362 |
|
8363 | h = c + 32 | 0;
|
8364 |
|
8365 | do { if ((f | 0) != (c | 0)) {
|
8366 | d = b[f + 32 >> 2] | 0;
|
8367 |
|
8368 | if (!d) {
|
8369 | h = 1;
|
8370 | return h | 0;
|
8371 | }
|
8372 |
|
8373 | g = d;
|
8374 |
|
8375 | while (1) {
|
8376 | if ((g | 0) == (c | 0)) {
|
8377 | g = 8;
|
8378 | break;
|
8379 | }
|
8380 |
|
8381 | d = b[g + 32 >> 2] | 0;
|
8382 |
|
8383 | if (!d) {
|
8384 | d = 1;
|
8385 | g = 10;
|
8386 | break;
|
8387 | } else {
|
8388 | f = g;
|
8389 | g = d;
|
8390 | }
|
8391 | }
|
8392 |
|
8393 | if ((g | 0) == 8) {
|
8394 | b[f + 32 >> 2] = b[h >> 2];
|
8395 | break;
|
8396 | } else if ((g | 0) == 10) { return d | 0; }
|
8397 | } else { b[d >> 2] = b[h >> 2]; } } while (0);
|
8398 |
|
8399 | Jc(c);
|
8400 | h = a + 8 | 0;
|
8401 | b[h >> 2] = (b[h >> 2] | 0) + -1;
|
8402 | h = 0;
|
8403 | return h | 0;
|
8404 | }
|
8405 |
|
8406 | function Cc(a, c, d) {
|
8407 | a = a | 0;
|
8408 | c = c | 0;
|
8409 | d = d | 0;
|
8410 | var f = 0,
|
8411 | g = 0,
|
8412 | h = 0,
|
8413 | i = 0;
|
8414 | h = Ic(40) | 0;
|
8415 | if (!h) { G(22922, 22892, 95, 22935); }
|
8416 | b[h >> 2] = b[c >> 2];
|
8417 | b[h + 4 >> 2] = b[c + 4 >> 2];
|
8418 | b[h + 8 >> 2] = b[c + 8 >> 2];
|
8419 | b[h + 12 >> 2] = b[c + 12 >> 2];
|
8420 | g = h + 16 | 0;
|
8421 | b[g >> 2] = b[d >> 2];
|
8422 | b[g + 4 >> 2] = b[d + 4 >> 2];
|
8423 | b[g + 8 >> 2] = b[d + 8 >> 2];
|
8424 | b[g + 12 >> 2] = b[d + 12 >> 2];
|
8425 | b[h + 32 >> 2] = 0;
|
8426 | g = ~~(+q(+(+s(10.0, + +(15 - (b[a + 12 >> 2] | 0) | 0)) * (+e[c >> 3] + +e[c + 8 >> 3]))) % +(b[a + 4 >> 2] | 0)) >>> 0;
|
8427 | g = (b[a >> 2] | 0) + (g << 2) | 0;
|
8428 | f = b[g >> 2] | 0;
|
8429 |
|
8430 | do { if (!f) { b[g >> 2] = h; }else {
|
8431 | while (1) {
|
8432 | if (db(f, c) | 0 ? db(f + 16 | 0, d) | 0 : 0) { break; }
|
8433 | g = b[f + 32 >> 2] | 0;
|
8434 | f = (g | 0) == 0 ? f : g;
|
8435 |
|
8436 | if (!(b[f + 32 >> 2] | 0)) {
|
8437 | i = 10;
|
8438 | break;
|
8439 | }
|
8440 | }
|
8441 |
|
8442 | if ((i | 0) == 10) {
|
8443 | b[f + 32 >> 2] = h;
|
8444 | break;
|
8445 | }
|
8446 |
|
8447 | Jc(h);
|
8448 | i = f;
|
8449 | return i | 0;
|
8450 | } } while (0);
|
8451 |
|
8452 | i = a + 8 | 0;
|
8453 | b[i >> 2] = (b[i >> 2] | 0) + 1;
|
8454 | i = h;
|
8455 | return i | 0;
|
8456 | }
|
8457 |
|
8458 | function Dc(a, c, d) {
|
8459 | a = a | 0;
|
8460 | c = c | 0;
|
8461 | d = d | 0;
|
8462 | var f = 0,
|
8463 | g = 0;
|
8464 | g = ~~(+q(+(+s(10.0, + +(15 - (b[a + 12 >> 2] | 0) | 0)) * (+e[c >> 3] + +e[c + 8 >> 3]))) % +(b[a + 4 >> 2] | 0)) >>> 0;
|
8465 | g = b[(b[a >> 2] | 0) + (g << 2) >> 2] | 0;
|
8466 |
|
8467 | if (!g) {
|
8468 | d = 0;
|
8469 | return d | 0;
|
8470 | }
|
8471 |
|
8472 | if (!d) {
|
8473 | a = g;
|
8474 |
|
8475 | while (1) {
|
8476 | if (db(a, c) | 0) {
|
8477 | f = 10;
|
8478 | break;
|
8479 | }
|
8480 |
|
8481 | a = b[a + 32 >> 2] | 0;
|
8482 |
|
8483 | if (!a) {
|
8484 | a = 0;
|
8485 | f = 10;
|
8486 | break;
|
8487 | }
|
8488 | }
|
8489 |
|
8490 | if ((f | 0) == 10) { return a | 0; }
|
8491 | }
|
8492 |
|
8493 | a = g;
|
8494 |
|
8495 | while (1) {
|
8496 | if (db(a, c) | 0 ? db(a + 16 | 0, d) | 0 : 0) {
|
8497 | f = 10;
|
8498 | break;
|
8499 | }
|
8500 |
|
8501 | a = b[a + 32 >> 2] | 0;
|
8502 |
|
8503 | if (!a) {
|
8504 | a = 0;
|
8505 | f = 10;
|
8506 | break;
|
8507 | }
|
8508 | }
|
8509 |
|
8510 | if ((f | 0) == 10) { return a | 0; }
|
8511 | return 0;
|
8512 | }
|
8513 |
|
8514 | function Ec(a, c) {
|
8515 | a = a | 0;
|
8516 | c = c | 0;
|
8517 | var d = 0;
|
8518 | d = ~~(+q(+(+s(10.0, + +(15 - (b[a + 12 >> 2] | 0) | 0)) * (+e[c >> 3] + +e[c + 8 >> 3]))) % +(b[a + 4 >> 2] | 0)) >>> 0;
|
8519 | a = b[(b[a >> 2] | 0) + (d << 2) >> 2] | 0;
|
8520 |
|
8521 | if (!a) {
|
8522 | d = 0;
|
8523 | return d | 0;
|
8524 | }
|
8525 |
|
8526 | while (1) {
|
8527 | if (db(a, c) | 0) {
|
8528 | c = 5;
|
8529 | break;
|
8530 | }
|
8531 |
|
8532 | a = b[a + 32 >> 2] | 0;
|
8533 |
|
8534 | if (!a) {
|
8535 | a = 0;
|
8536 | c = 5;
|
8537 | break;
|
8538 | }
|
8539 | }
|
8540 |
|
8541 | if ((c | 0) == 5) { return a | 0; }
|
8542 | return 0;
|
8543 | }
|
8544 |
|
8545 | function Fc() {
|
8546 | return 22960;
|
8547 | }
|
8548 |
|
8549 | function Gc(a) {
|
8550 | a = +a;
|
8551 | return + +Vc(+a);
|
8552 | }
|
8553 |
|
8554 | function Hc(a) {
|
8555 | a = +a;
|
8556 | return ~~+Gc(a) | 0;
|
8557 | }
|
8558 |
|
8559 | function Ic(a) {
|
8560 | a = a | 0;
|
8561 | var c = 0,
|
8562 | d = 0,
|
8563 | e = 0,
|
8564 | f = 0,
|
8565 | g = 0,
|
8566 | h = 0,
|
8567 | i = 0,
|
8568 | j = 0,
|
8569 | k = 0,
|
8570 | l = 0,
|
8571 | m = 0,
|
8572 | n = 0,
|
8573 | o = 0,
|
8574 | p = 0,
|
8575 | q = 0,
|
8576 | r = 0,
|
8577 | s = 0,
|
8578 | t = 0,
|
8579 | u = 0,
|
8580 | v = 0,
|
8581 | w = 0;
|
8582 | w = R;
|
8583 | R = R + 16 | 0;
|
8584 | n = w;
|
8585 |
|
8586 | do { if (a >>> 0 < 245) {
|
8587 | k = a >>> 0 < 11 ? 16 : a + 11 & -8;
|
8588 | a = k >>> 3;
|
8589 | m = b[5741] | 0;
|
8590 | d = m >>> a;
|
8591 |
|
8592 | if (d & 3 | 0) {
|
8593 | c = (d & 1 ^ 1) + a | 0;
|
8594 | a = 23004 + (c << 1 << 2) | 0;
|
8595 | d = a + 8 | 0;
|
8596 | e = b[d >> 2] | 0;
|
8597 | f = e + 8 | 0;
|
8598 | g = b[f >> 2] | 0;
|
8599 | if ((g | 0) == (a | 0)) { b[5741] = m & ~(1 << c); }else {
|
8600 | b[g + 12 >> 2] = a;
|
8601 | b[d >> 2] = g;
|
8602 | }
|
8603 | v = c << 3;
|
8604 | b[e + 4 >> 2] = v | 3;
|
8605 | v = e + v + 4 | 0;
|
8606 | b[v >> 2] = b[v >> 2] | 1;
|
8607 | v = f;
|
8608 | R = w;
|
8609 | return v | 0;
|
8610 | }
|
8611 |
|
8612 | l = b[5743] | 0;
|
8613 |
|
8614 | if (k >>> 0 > l >>> 0) {
|
8615 | if (d | 0) {
|
8616 | c = 2 << a;
|
8617 | c = d << a & (c | 0 - c);
|
8618 | c = (c & 0 - c) + -1 | 0;
|
8619 | i = c >>> 12 & 16;
|
8620 | c = c >>> i;
|
8621 | d = c >>> 5 & 8;
|
8622 | c = c >>> d;
|
8623 | g = c >>> 2 & 4;
|
8624 | c = c >>> g;
|
8625 | a = c >>> 1 & 2;
|
8626 | c = c >>> a;
|
8627 | e = c >>> 1 & 1;
|
8628 | e = (d | i | g | a | e) + (c >>> e) | 0;
|
8629 | c = 23004 + (e << 1 << 2) | 0;
|
8630 | a = c + 8 | 0;
|
8631 | g = b[a >> 2] | 0;
|
8632 | i = g + 8 | 0;
|
8633 | d = b[i >> 2] | 0;
|
8634 |
|
8635 | if ((d | 0) == (c | 0)) {
|
8636 | a = m & ~(1 << e);
|
8637 | b[5741] = a;
|
8638 | } else {
|
8639 | b[d + 12 >> 2] = c;
|
8640 | b[a >> 2] = d;
|
8641 | a = m;
|
8642 | }
|
8643 |
|
8644 | v = e << 3;
|
8645 | h = v - k | 0;
|
8646 | b[g + 4 >> 2] = k | 3;
|
8647 | f = g + k | 0;
|
8648 | b[f + 4 >> 2] = h | 1;
|
8649 | b[g + v >> 2] = h;
|
8650 |
|
8651 | if (l | 0) {
|
8652 | e = b[5746] | 0;
|
8653 | c = l >>> 3;
|
8654 | d = 23004 + (c << 1 << 2) | 0;
|
8655 | c = 1 << c;
|
8656 |
|
8657 | if (!(a & c)) {
|
8658 | b[5741] = a | c;
|
8659 | c = d;
|
8660 | a = d + 8 | 0;
|
8661 | } else {
|
8662 | a = d + 8 | 0;
|
8663 | c = b[a >> 2] | 0;
|
8664 | }
|
8665 |
|
8666 | b[a >> 2] = e;
|
8667 | b[c + 12 >> 2] = e;
|
8668 | b[e + 8 >> 2] = c;
|
8669 | b[e + 12 >> 2] = d;
|
8670 | }
|
8671 |
|
8672 | b[5743] = h;
|
8673 | b[5746] = f;
|
8674 | v = i;
|
8675 | R = w;
|
8676 | return v | 0;
|
8677 | }
|
8678 |
|
8679 | g = b[5742] | 0;
|
8680 |
|
8681 | if (g) {
|
8682 | d = (g & 0 - g) + -1 | 0;
|
8683 | f = d >>> 12 & 16;
|
8684 | d = d >>> f;
|
8685 | e = d >>> 5 & 8;
|
8686 | d = d >>> e;
|
8687 | h = d >>> 2 & 4;
|
8688 | d = d >>> h;
|
8689 | i = d >>> 1 & 2;
|
8690 | d = d >>> i;
|
8691 | j = d >>> 1 & 1;
|
8692 | j = b[23268 + ((e | f | h | i | j) + (d >>> j) << 2) >> 2] | 0;
|
8693 | d = j;
|
8694 | i = j;
|
8695 | j = (b[j + 4 >> 2] & -8) - k | 0;
|
8696 |
|
8697 | while (1) {
|
8698 | a = b[d + 16 >> 2] | 0;
|
8699 |
|
8700 | if (!a) {
|
8701 | a = b[d + 20 >> 2] | 0;
|
8702 | if (!a) { break; }
|
8703 | }
|
8704 |
|
8705 | h = (b[a + 4 >> 2] & -8) - k | 0;
|
8706 | f = h >>> 0 < j >>> 0;
|
8707 | d = a;
|
8708 | i = f ? a : i;
|
8709 | j = f ? h : j;
|
8710 | }
|
8711 |
|
8712 | h = i + k | 0;
|
8713 |
|
8714 | if (h >>> 0 > i >>> 0) {
|
8715 | f = b[i + 24 >> 2] | 0;
|
8716 | c = b[i + 12 >> 2] | 0;
|
8717 |
|
8718 | do { if ((c | 0) == (i | 0)) {
|
8719 | a = i + 20 | 0;
|
8720 | c = b[a >> 2] | 0;
|
8721 |
|
8722 | if (!c) {
|
8723 | a = i + 16 | 0;
|
8724 | c = b[a >> 2] | 0;
|
8725 |
|
8726 | if (!c) {
|
8727 | d = 0;
|
8728 | break;
|
8729 | }
|
8730 | }
|
8731 |
|
8732 | while (1) {
|
8733 | e = c + 20 | 0;
|
8734 | d = b[e >> 2] | 0;
|
8735 |
|
8736 | if (!d) {
|
8737 | e = c + 16 | 0;
|
8738 | d = b[e >> 2] | 0;
|
8739 | if (!d) { break; }else {
|
8740 | c = d;
|
8741 | a = e;
|
8742 | }
|
8743 | } else {
|
8744 | c = d;
|
8745 | a = e;
|
8746 | }
|
8747 | }
|
8748 |
|
8749 | b[a >> 2] = 0;
|
8750 | d = c;
|
8751 | } else {
|
8752 | d = b[i + 8 >> 2] | 0;
|
8753 | b[d + 12 >> 2] = c;
|
8754 | b[c + 8 >> 2] = d;
|
8755 | d = c;
|
8756 | } } while (0);
|
8757 |
|
8758 | do { if (f | 0) {
|
8759 | c = b[i + 28 >> 2] | 0;
|
8760 | a = 23268 + (c << 2) | 0;
|
8761 |
|
8762 | if ((i | 0) == (b[a >> 2] | 0)) {
|
8763 | b[a >> 2] = d;
|
8764 |
|
8765 | if (!d) {
|
8766 | b[5742] = g & ~(1 << c);
|
8767 | break;
|
8768 | }
|
8769 | } else {
|
8770 | v = f + 16 | 0;
|
8771 | b[((b[v >> 2] | 0) == (i | 0) ? v : f + 20 | 0) >> 2] = d;
|
8772 | if (!d) { break; }
|
8773 | }
|
8774 |
|
8775 | b[d + 24 >> 2] = f;
|
8776 | c = b[i + 16 >> 2] | 0;
|
8777 |
|
8778 | if (c | 0) {
|
8779 | b[d + 16 >> 2] = c;
|
8780 | b[c + 24 >> 2] = d;
|
8781 | }
|
8782 |
|
8783 | c = b[i + 20 >> 2] | 0;
|
8784 |
|
8785 | if (c | 0) {
|
8786 | b[d + 20 >> 2] = c;
|
8787 | b[c + 24 >> 2] = d;
|
8788 | }
|
8789 | } } while (0);
|
8790 |
|
8791 | if (j >>> 0 < 16) {
|
8792 | v = j + k | 0;
|
8793 | b[i + 4 >> 2] = v | 3;
|
8794 | v = i + v + 4 | 0;
|
8795 | b[v >> 2] = b[v >> 2] | 1;
|
8796 | } else {
|
8797 | b[i + 4 >> 2] = k | 3;
|
8798 | b[h + 4 >> 2] = j | 1;
|
8799 | b[h + j >> 2] = j;
|
8800 |
|
8801 | if (l | 0) {
|
8802 | e = b[5746] | 0;
|
8803 | c = l >>> 3;
|
8804 | d = 23004 + (c << 1 << 2) | 0;
|
8805 | c = 1 << c;
|
8806 |
|
8807 | if (!(c & m)) {
|
8808 | b[5741] = c | m;
|
8809 | c = d;
|
8810 | a = d + 8 | 0;
|
8811 | } else {
|
8812 | a = d + 8 | 0;
|
8813 | c = b[a >> 2] | 0;
|
8814 | }
|
8815 |
|
8816 | b[a >> 2] = e;
|
8817 | b[c + 12 >> 2] = e;
|
8818 | b[e + 8 >> 2] = c;
|
8819 | b[e + 12 >> 2] = d;
|
8820 | }
|
8821 |
|
8822 | b[5743] = j;
|
8823 | b[5746] = h;
|
8824 | }
|
8825 |
|
8826 | v = i + 8 | 0;
|
8827 | R = w;
|
8828 | return v | 0;
|
8829 | } else { m = k; }
|
8830 | } else { m = k; }
|
8831 | } else { m = k; }
|
8832 | } else if (a >>> 0 <= 4294967231) {
|
8833 | a = a + 11 | 0;
|
8834 | k = a & -8;
|
8835 | e = b[5742] | 0;
|
8836 |
|
8837 | if (e) {
|
8838 | f = 0 - k | 0;
|
8839 | a = a >>> 8;
|
8840 | if (a) {
|
8841 | if (k >>> 0 > 16777215) { j = 31; }else {
|
8842 | m = (a + 1048320 | 0) >>> 16 & 8;
|
8843 | q = a << m;
|
8844 | i = (q + 520192 | 0) >>> 16 & 4;
|
8845 | q = q << i;
|
8846 | j = (q + 245760 | 0) >>> 16 & 2;
|
8847 | j = 14 - (i | m | j) + (q << j >>> 15) | 0;
|
8848 | j = k >>> (j + 7 | 0) & 1 | j << 1;
|
8849 | }
|
8850 | } else { j = 0; }
|
8851 | d = b[23268 + (j << 2) >> 2] | 0;
|
8852 |
|
8853 | a: do { if (!d) {
|
8854 | d = 0;
|
8855 | a = 0;
|
8856 | q = 61;
|
8857 | } else {
|
8858 | a = 0;
|
8859 | i = k << ((j | 0) == 31 ? 0 : 25 - (j >>> 1) | 0);
|
8860 | g = 0;
|
8861 |
|
8862 | while (1) {
|
8863 | h = (b[d + 4 >> 2] & -8) - k | 0;
|
8864 | if (h >>> 0 < f >>> 0) { if (!h) {
|
8865 | a = d;
|
8866 | f = 0;
|
8867 | q = 65;
|
8868 | break a;
|
8869 | } else {
|
8870 | a = d;
|
8871 | f = h;
|
8872 | } }
|
8873 | q = b[d + 20 >> 2] | 0;
|
8874 | d = b[d + 16 + (i >>> 31 << 2) >> 2] | 0;
|
8875 | g = (q | 0) == 0 | (q | 0) == (d | 0) ? g : q;
|
8876 |
|
8877 | if (!d) {
|
8878 | d = g;
|
8879 | q = 61;
|
8880 | break;
|
8881 | } else { i = i << 1; }
|
8882 | }
|
8883 | } } while (0);
|
8884 |
|
8885 | if ((q | 0) == 61) {
|
8886 | if ((d | 0) == 0 & (a | 0) == 0) {
|
8887 | a = 2 << j;
|
8888 | a = (a | 0 - a) & e;
|
8889 |
|
8890 | if (!a) {
|
8891 | m = k;
|
8892 | break;
|
8893 | }
|
8894 |
|
8895 | m = (a & 0 - a) + -1 | 0;
|
8896 | h = m >>> 12 & 16;
|
8897 | m = m >>> h;
|
8898 | g = m >>> 5 & 8;
|
8899 | m = m >>> g;
|
8900 | i = m >>> 2 & 4;
|
8901 | m = m >>> i;
|
8902 | j = m >>> 1 & 2;
|
8903 | m = m >>> j;
|
8904 | d = m >>> 1 & 1;
|
8905 | a = 0;
|
8906 | d = b[23268 + ((g | h | i | j | d) + (m >>> d) << 2) >> 2] | 0;
|
8907 | }
|
8908 |
|
8909 | if (!d) {
|
8910 | i = a;
|
8911 | h = f;
|
8912 | } else { q = 65; }
|
8913 | }
|
8914 |
|
8915 | if ((q | 0) == 65) {
|
8916 | g = d;
|
8917 |
|
8918 | while (1) {
|
8919 | m = (b[g + 4 >> 2] & -8) - k | 0;
|
8920 | d = m >>> 0 < f >>> 0;
|
8921 | f = d ? m : f;
|
8922 | a = d ? g : a;
|
8923 | d = b[g + 16 >> 2] | 0;
|
8924 | if (!d) { d = b[g + 20 >> 2] | 0; }
|
8925 |
|
8926 | if (!d) {
|
8927 | i = a;
|
8928 | h = f;
|
8929 | break;
|
8930 | } else { g = d; }
|
8931 | }
|
8932 | }
|
8933 |
|
8934 | if (((i | 0) != 0 ? h >>> 0 < ((b[5743] | 0) - k | 0) >>> 0 : 0) ? (l = i + k | 0, l >>> 0 > i >>> 0) : 0) {
|
8935 | g = b[i + 24 >> 2] | 0;
|
8936 | c = b[i + 12 >> 2] | 0;
|
8937 |
|
8938 | do { if ((c | 0) == (i | 0)) {
|
8939 | a = i + 20 | 0;
|
8940 | c = b[a >> 2] | 0;
|
8941 |
|
8942 | if (!c) {
|
8943 | a = i + 16 | 0;
|
8944 | c = b[a >> 2] | 0;
|
8945 |
|
8946 | if (!c) {
|
8947 | c = 0;
|
8948 | break;
|
8949 | }
|
8950 | }
|
8951 |
|
8952 | while (1) {
|
8953 | f = c + 20 | 0;
|
8954 | d = b[f >> 2] | 0;
|
8955 |
|
8956 | if (!d) {
|
8957 | f = c + 16 | 0;
|
8958 | d = b[f >> 2] | 0;
|
8959 | if (!d) { break; }else {
|
8960 | c = d;
|
8961 | a = f;
|
8962 | }
|
8963 | } else {
|
8964 | c = d;
|
8965 | a = f;
|
8966 | }
|
8967 | }
|
8968 |
|
8969 | b[a >> 2] = 0;
|
8970 | } else {
|
8971 | v = b[i + 8 >> 2] | 0;
|
8972 | b[v + 12 >> 2] = c;
|
8973 | b[c + 8 >> 2] = v;
|
8974 | } } while (0);
|
8975 |
|
8976 | do { if (g) {
|
8977 | a = b[i + 28 >> 2] | 0;
|
8978 | d = 23268 + (a << 2) | 0;
|
8979 |
|
8980 | if ((i | 0) == (b[d >> 2] | 0)) {
|
8981 | b[d >> 2] = c;
|
8982 |
|
8983 | if (!c) {
|
8984 | e = e & ~(1 << a);
|
8985 | b[5742] = e;
|
8986 | break;
|
8987 | }
|
8988 | } else {
|
8989 | v = g + 16 | 0;
|
8990 | b[((b[v >> 2] | 0) == (i | 0) ? v : g + 20 | 0) >> 2] = c;
|
8991 | if (!c) { break; }
|
8992 | }
|
8993 |
|
8994 | b[c + 24 >> 2] = g;
|
8995 | a = b[i + 16 >> 2] | 0;
|
8996 |
|
8997 | if (a | 0) {
|
8998 | b[c + 16 >> 2] = a;
|
8999 | b[a + 24 >> 2] = c;
|
9000 | }
|
9001 |
|
9002 | a = b[i + 20 >> 2] | 0;
|
9003 |
|
9004 | if (a) {
|
9005 | b[c + 20 >> 2] = a;
|
9006 | b[a + 24 >> 2] = c;
|
9007 | }
|
9008 | } } while (0);
|
9009 |
|
9010 | b: do { if (h >>> 0 < 16) {
|
9011 | v = h + k | 0;
|
9012 | b[i + 4 >> 2] = v | 3;
|
9013 | v = i + v + 4 | 0;
|
9014 | b[v >> 2] = b[v >> 2] | 1;
|
9015 | } else {
|
9016 | b[i + 4 >> 2] = k | 3;
|
9017 | b[l + 4 >> 2] = h | 1;
|
9018 | b[l + h >> 2] = h;
|
9019 | c = h >>> 3;
|
9020 |
|
9021 | if (h >>> 0 < 256) {
|
9022 | d = 23004 + (c << 1 << 2) | 0;
|
9023 | a = b[5741] | 0;
|
9024 | c = 1 << c;
|
9025 |
|
9026 | if (!(a & c)) {
|
9027 | b[5741] = a | c;
|
9028 | c = d;
|
9029 | a = d + 8 | 0;
|
9030 | } else {
|
9031 | a = d + 8 | 0;
|
9032 | c = b[a >> 2] | 0;
|
9033 | }
|
9034 |
|
9035 | b[a >> 2] = l;
|
9036 | b[c + 12 >> 2] = l;
|
9037 | b[l + 8 >> 2] = c;
|
9038 | b[l + 12 >> 2] = d;
|
9039 | break;
|
9040 | }
|
9041 |
|
9042 | c = h >>> 8;
|
9043 | if (c) {
|
9044 | if (h >>> 0 > 16777215) { d = 31; }else {
|
9045 | u = (c + 1048320 | 0) >>> 16 & 8;
|
9046 | v = c << u;
|
9047 | t = (v + 520192 | 0) >>> 16 & 4;
|
9048 | v = v << t;
|
9049 | d = (v + 245760 | 0) >>> 16 & 2;
|
9050 | d = 14 - (t | u | d) + (v << d >>> 15) | 0;
|
9051 | d = h >>> (d + 7 | 0) & 1 | d << 1;
|
9052 | }
|
9053 | } else { d = 0; }
|
9054 | c = 23268 + (d << 2) | 0;
|
9055 | b[l + 28 >> 2] = d;
|
9056 | a = l + 16 | 0;
|
9057 | b[a + 4 >> 2] = 0;
|
9058 | b[a >> 2] = 0;
|
9059 | a = 1 << d;
|
9060 |
|
9061 | if (!(e & a)) {
|
9062 | b[5742] = e | a;
|
9063 | b[c >> 2] = l;
|
9064 | b[l + 24 >> 2] = c;
|
9065 | b[l + 12 >> 2] = l;
|
9066 | b[l + 8 >> 2] = l;
|
9067 | break;
|
9068 | }
|
9069 |
|
9070 | c = b[c >> 2] | 0;
|
9071 |
|
9072 | c: do { if ((b[c + 4 >> 2] & -8 | 0) != (h | 0)) {
|
9073 | e = h << ((d | 0) == 31 ? 0 : 25 - (d >>> 1) | 0);
|
9074 |
|
9075 | while (1) {
|
9076 | d = c + 16 + (e >>> 31 << 2) | 0;
|
9077 | a = b[d >> 2] | 0;
|
9078 | if (!a) { break; }
|
9079 |
|
9080 | if ((b[a + 4 >> 2] & -8 | 0) == (h | 0)) {
|
9081 | c = a;
|
9082 | break c;
|
9083 | } else {
|
9084 | e = e << 1;
|
9085 | c = a;
|
9086 | }
|
9087 | }
|
9088 |
|
9089 | b[d >> 2] = l;
|
9090 | b[l + 24 >> 2] = c;
|
9091 | b[l + 12 >> 2] = l;
|
9092 | b[l + 8 >> 2] = l;
|
9093 | break b;
|
9094 | } } while (0);
|
9095 |
|
9096 | u = c + 8 | 0;
|
9097 | v = b[u >> 2] | 0;
|
9098 | b[v + 12 >> 2] = l;
|
9099 | b[u >> 2] = l;
|
9100 | b[l + 8 >> 2] = v;
|
9101 | b[l + 12 >> 2] = c;
|
9102 | b[l + 24 >> 2] = 0;
|
9103 | } } while (0);
|
9104 |
|
9105 | v = i + 8 | 0;
|
9106 | R = w;
|
9107 | return v | 0;
|
9108 | } else { m = k; }
|
9109 | } else { m = k; }
|
9110 | } else { m = -1; } } while (0);
|
9111 |
|
9112 | d = b[5743] | 0;
|
9113 |
|
9114 | if (d >>> 0 >= m >>> 0) {
|
9115 | c = d - m | 0;
|
9116 | a = b[5746] | 0;
|
9117 |
|
9118 | if (c >>> 0 > 15) {
|
9119 | v = a + m | 0;
|
9120 | b[5746] = v;
|
9121 | b[5743] = c;
|
9122 | b[v + 4 >> 2] = c | 1;
|
9123 | b[a + d >> 2] = c;
|
9124 | b[a + 4 >> 2] = m | 3;
|
9125 | } else {
|
9126 | b[5743] = 0;
|
9127 | b[5746] = 0;
|
9128 | b[a + 4 >> 2] = d | 3;
|
9129 | v = a + d + 4 | 0;
|
9130 | b[v >> 2] = b[v >> 2] | 1;
|
9131 | }
|
9132 |
|
9133 | v = a + 8 | 0;
|
9134 | R = w;
|
9135 | return v | 0;
|
9136 | }
|
9137 |
|
9138 | h = b[5744] | 0;
|
9139 |
|
9140 | if (h >>> 0 > m >>> 0) {
|
9141 | t = h - m | 0;
|
9142 | b[5744] = t;
|
9143 | v = b[5747] | 0;
|
9144 | u = v + m | 0;
|
9145 | b[5747] = u;
|
9146 | b[u + 4 >> 2] = t | 1;
|
9147 | b[v + 4 >> 2] = m | 3;
|
9148 | v = v + 8 | 0;
|
9149 | R = w;
|
9150 | return v | 0;
|
9151 | }
|
9152 |
|
9153 | if (!(b[5859] | 0)) {
|
9154 | b[5861] = 4096;
|
9155 | b[5860] = 4096;
|
9156 | b[5862] = -1;
|
9157 | b[5863] = -1;
|
9158 | b[5864] = 0;
|
9159 | b[5852] = 0;
|
9160 | b[5859] = n & -16 ^ 1431655768;
|
9161 | a = 4096;
|
9162 | } else { a = b[5861] | 0; }
|
9163 |
|
9164 | i = m + 48 | 0;
|
9165 | j = m + 47 | 0;
|
9166 | g = a + j | 0;
|
9167 | f = 0 - a | 0;
|
9168 | k = g & f;
|
9169 |
|
9170 | if (k >>> 0 <= m >>> 0) {
|
9171 | v = 0;
|
9172 | R = w;
|
9173 | return v | 0;
|
9174 | }
|
9175 |
|
9176 | a = b[5851] | 0;
|
9177 |
|
9178 | if (a | 0 ? (l = b[5849] | 0, n = l + k | 0, n >>> 0 <= l >>> 0 | n >>> 0 > a >>> 0) : 0) {
|
9179 | v = 0;
|
9180 | R = w;
|
9181 | return v | 0;
|
9182 | }
|
9183 |
|
9184 | d: do { if (!(b[5852] & 4)) {
|
9185 | d = b[5747] | 0;
|
9186 |
|
9187 | e: do { if (d) {
|
9188 | e = 23412;
|
9189 |
|
9190 | while (1) {
|
9191 | n = b[e >> 2] | 0;
|
9192 | if (n >>> 0 <= d >>> 0 ? (n + (b[e + 4 >> 2] | 0) | 0) >>> 0 > d >>> 0 : 0) { break; }
|
9193 | a = b[e + 8 >> 2] | 0;
|
9194 |
|
9195 | if (!a) {
|
9196 | q = 128;
|
9197 | break e;
|
9198 | } else { e = a; }
|
9199 | }
|
9200 |
|
9201 | c = g - h & f;
|
9202 |
|
9203 | if (c >>> 0 < 2147483647) {
|
9204 | a = Wc(c | 0) | 0;
|
9205 |
|
9206 | if ((a | 0) == ((b[e >> 2] | 0) + (b[e + 4 >> 2] | 0) | 0)) {
|
9207 | if ((a | 0) != (-1 | 0)) {
|
9208 | h = c;
|
9209 | g = a;
|
9210 | q = 145;
|
9211 | break d;
|
9212 | }
|
9213 | } else {
|
9214 | e = a;
|
9215 | q = 136;
|
9216 | }
|
9217 | } else { c = 0; }
|
9218 | } else { q = 128; } } while (0);
|
9219 |
|
9220 | do { if ((q | 0) == 128) {
|
9221 | d = Wc(0) | 0;
|
9222 |
|
9223 | if ((d | 0) != (-1 | 0) ? (c = d, o = b[5860] | 0, p = o + -1 | 0, c = ((p & c | 0) == 0 ? 0 : (p + c & 0 - o) - c | 0) + k | 0, o = b[5849] | 0, p = c + o | 0, c >>> 0 > m >>> 0 & c >>> 0 < 2147483647) : 0) {
|
9224 | n = b[5851] | 0;
|
9225 |
|
9226 | if (n | 0 ? p >>> 0 <= o >>> 0 | p >>> 0 > n >>> 0 : 0) {
|
9227 | c = 0;
|
9228 | break;
|
9229 | }
|
9230 |
|
9231 | a = Wc(c | 0) | 0;
|
9232 |
|
9233 | if ((a | 0) == (d | 0)) {
|
9234 | h = c;
|
9235 | g = d;
|
9236 | q = 145;
|
9237 | break d;
|
9238 | } else {
|
9239 | e = a;
|
9240 | q = 136;
|
9241 | }
|
9242 | } else { c = 0; }
|
9243 | } } while (0);
|
9244 |
|
9245 | do { if ((q | 0) == 136) {
|
9246 | d = 0 - c | 0;
|
9247 | if (!(i >>> 0 > c >>> 0 & (c >>> 0 < 2147483647 & (e | 0) != (-1 | 0)))) { if ((e | 0) == (-1 | 0)) {
|
9248 | c = 0;
|
9249 | break;
|
9250 | } else {
|
9251 | h = c;
|
9252 | g = e;
|
9253 | q = 145;
|
9254 | break d;
|
9255 | } }
|
9256 | a = b[5861] | 0;
|
9257 | a = j - c + a & 0 - a;
|
9258 |
|
9259 | if (a >>> 0 >= 2147483647) {
|
9260 | h = c;
|
9261 | g = e;
|
9262 | q = 145;
|
9263 | break d;
|
9264 | }
|
9265 |
|
9266 | if ((Wc(a | 0) | 0) == (-1 | 0)) {
|
9267 | Wc(d | 0) | 0;
|
9268 | c = 0;
|
9269 | break;
|
9270 | } else {
|
9271 | h = a + c | 0;
|
9272 | g = e;
|
9273 | q = 145;
|
9274 | break d;
|
9275 | }
|
9276 | } } while (0);
|
9277 |
|
9278 | b[5852] = b[5852] | 4;
|
9279 | q = 143;
|
9280 | } else {
|
9281 | c = 0;
|
9282 | q = 143;
|
9283 | } } while (0);
|
9284 |
|
9285 | if (((q | 0) == 143 ? k >>> 0 < 2147483647 : 0) ? (t = Wc(k | 0) | 0, p = Wc(0) | 0, r = p - t | 0, s = r >>> 0 > (m + 40 | 0) >>> 0, !((t | 0) == (-1 | 0) | s ^ 1 | t >>> 0 < p >>> 0 & ((t | 0) != (-1 | 0) & (p | 0) != (-1 | 0)) ^ 1)) : 0) {
|
9286 | h = s ? r : c;
|
9287 | g = t;
|
9288 | q = 145;
|
9289 | }
|
9290 |
|
9291 | if ((q | 0) == 145) {
|
9292 | c = (b[5849] | 0) + h | 0;
|
9293 | b[5849] = c;
|
9294 | if (c >>> 0 > (b[5850] | 0) >>> 0) { b[5850] = c; }
|
9295 | j = b[5747] | 0;
|
9296 |
|
9297 | f: do { if (j) {
|
9298 | c = 23412;
|
9299 |
|
9300 | while (1) {
|
9301 | a = b[c >> 2] | 0;
|
9302 | d = b[c + 4 >> 2] | 0;
|
9303 |
|
9304 | if ((g | 0) == (a + d | 0)) {
|
9305 | q = 154;
|
9306 | break;
|
9307 | }
|
9308 |
|
9309 | e = b[c + 8 >> 2] | 0;
|
9310 | if (!e) { break; }else { c = e; }
|
9311 | }
|
9312 |
|
9313 | if (((q | 0) == 154 ? (u = c + 4 | 0, (b[c + 12 >> 2] & 8 | 0) == 0) : 0) ? g >>> 0 > j >>> 0 & a >>> 0 <= j >>> 0 : 0) {
|
9314 | b[u >> 2] = d + h;
|
9315 | v = (b[5744] | 0) + h | 0;
|
9316 | t = j + 8 | 0;
|
9317 | t = (t & 7 | 0) == 0 ? 0 : 0 - t & 7;
|
9318 | u = j + t | 0;
|
9319 | t = v - t | 0;
|
9320 | b[5747] = u;
|
9321 | b[5744] = t;
|
9322 | b[u + 4 >> 2] = t | 1;
|
9323 | b[j + v + 4 >> 2] = 40;
|
9324 | b[5748] = b[5863];
|
9325 | break;
|
9326 | }
|
9327 |
|
9328 | if (g >>> 0 < (b[5745] | 0) >>> 0) { b[5745] = g; }
|
9329 | d = g + h | 0;
|
9330 | c = 23412;
|
9331 |
|
9332 | while (1) {
|
9333 | if ((b[c >> 2] | 0) == (d | 0)) {
|
9334 | q = 162;
|
9335 | break;
|
9336 | }
|
9337 |
|
9338 | a = b[c + 8 >> 2] | 0;
|
9339 | if (!a) { break; }else { c = a; }
|
9340 | }
|
9341 |
|
9342 | if ((q | 0) == 162 ? (b[c + 12 >> 2] & 8 | 0) == 0 : 0) {
|
9343 | b[c >> 2] = g;
|
9344 | l = c + 4 | 0;
|
9345 | b[l >> 2] = (b[l >> 2] | 0) + h;
|
9346 | l = g + 8 | 0;
|
9347 | l = g + ((l & 7 | 0) == 0 ? 0 : 0 - l & 7) | 0;
|
9348 | c = d + 8 | 0;
|
9349 | c = d + ((c & 7 | 0) == 0 ? 0 : 0 - c & 7) | 0;
|
9350 | k = l + m | 0;
|
9351 | i = c - l - m | 0;
|
9352 | b[l + 4 >> 2] = m | 3;
|
9353 |
|
9354 | g: do { if ((j | 0) == (c | 0)) {
|
9355 | v = (b[5744] | 0) + i | 0;
|
9356 | b[5744] = v;
|
9357 | b[5747] = k;
|
9358 | b[k + 4 >> 2] = v | 1;
|
9359 | } else {
|
9360 | if ((b[5746] | 0) == (c | 0)) {
|
9361 | v = (b[5743] | 0) + i | 0;
|
9362 | b[5743] = v;
|
9363 | b[5746] = k;
|
9364 | b[k + 4 >> 2] = v | 1;
|
9365 | b[k + v >> 2] = v;
|
9366 | break;
|
9367 | }
|
9368 |
|
9369 | a = b[c + 4 >> 2] | 0;
|
9370 |
|
9371 | if ((a & 3 | 0) == 1) {
|
9372 | h = a & -8;
|
9373 | e = a >>> 3;
|
9374 |
|
9375 | h: do { if (a >>> 0 < 256) {
|
9376 | a = b[c + 8 >> 2] | 0;
|
9377 | d = b[c + 12 >> 2] | 0;
|
9378 |
|
9379 | if ((d | 0) == (a | 0)) {
|
9380 | b[5741] = b[5741] & ~(1 << e);
|
9381 | break;
|
9382 | } else {
|
9383 | b[a + 12 >> 2] = d;
|
9384 | b[d + 8 >> 2] = a;
|
9385 | break;
|
9386 | }
|
9387 | } else {
|
9388 | g = b[c + 24 >> 2] | 0;
|
9389 | a = b[c + 12 >> 2] | 0;
|
9390 |
|
9391 | do { if ((a | 0) == (c | 0)) {
|
9392 | d = c + 16 | 0;
|
9393 | e = d + 4 | 0;
|
9394 | a = b[e >> 2] | 0;
|
9395 |
|
9396 | if (!a) {
|
9397 | a = b[d >> 2] | 0;
|
9398 |
|
9399 | if (!a) {
|
9400 | a = 0;
|
9401 | break;
|
9402 | }
|
9403 | } else { d = e; }
|
9404 |
|
9405 | while (1) {
|
9406 | f = a + 20 | 0;
|
9407 | e = b[f >> 2] | 0;
|
9408 |
|
9409 | if (!e) {
|
9410 | f = a + 16 | 0;
|
9411 | e = b[f >> 2] | 0;
|
9412 | if (!e) { break; }else {
|
9413 | a = e;
|
9414 | d = f;
|
9415 | }
|
9416 | } else {
|
9417 | a = e;
|
9418 | d = f;
|
9419 | }
|
9420 | }
|
9421 |
|
9422 | b[d >> 2] = 0;
|
9423 | } else {
|
9424 | v = b[c + 8 >> 2] | 0;
|
9425 | b[v + 12 >> 2] = a;
|
9426 | b[a + 8 >> 2] = v;
|
9427 | } } while (0);
|
9428 |
|
9429 | if (!g) { break; }
|
9430 | d = b[c + 28 >> 2] | 0;
|
9431 | e = 23268 + (d << 2) | 0;
|
9432 |
|
9433 | do { if ((b[e >> 2] | 0) != (c | 0)) {
|
9434 | v = g + 16 | 0;
|
9435 | b[((b[v >> 2] | 0) == (c | 0) ? v : g + 20 | 0) >> 2] = a;
|
9436 | if (!a) { break h; }
|
9437 | } else {
|
9438 | b[e >> 2] = a;
|
9439 | if (a | 0) { break; }
|
9440 | b[5742] = b[5742] & ~(1 << d);
|
9441 | break h;
|
9442 | } } while (0);
|
9443 |
|
9444 | b[a + 24 >> 2] = g;
|
9445 | d = c + 16 | 0;
|
9446 | e = b[d >> 2] | 0;
|
9447 |
|
9448 | if (e | 0) {
|
9449 | b[a + 16 >> 2] = e;
|
9450 | b[e + 24 >> 2] = a;
|
9451 | }
|
9452 |
|
9453 | d = b[d + 4 >> 2] | 0;
|
9454 | if (!d) { break; }
|
9455 | b[a + 20 >> 2] = d;
|
9456 | b[d + 24 >> 2] = a;
|
9457 | } } while (0);
|
9458 |
|
9459 | c = c + h | 0;
|
9460 | f = h + i | 0;
|
9461 | } else { f = i; }
|
9462 |
|
9463 | c = c + 4 | 0;
|
9464 | b[c >> 2] = b[c >> 2] & -2;
|
9465 | b[k + 4 >> 2] = f | 1;
|
9466 | b[k + f >> 2] = f;
|
9467 | c = f >>> 3;
|
9468 |
|
9469 | if (f >>> 0 < 256) {
|
9470 | d = 23004 + (c << 1 << 2) | 0;
|
9471 | a = b[5741] | 0;
|
9472 | c = 1 << c;
|
9473 |
|
9474 | if (!(a & c)) {
|
9475 | b[5741] = a | c;
|
9476 | c = d;
|
9477 | a = d + 8 | 0;
|
9478 | } else {
|
9479 | a = d + 8 | 0;
|
9480 | c = b[a >> 2] | 0;
|
9481 | }
|
9482 |
|
9483 | b[a >> 2] = k;
|
9484 | b[c + 12 >> 2] = k;
|
9485 | b[k + 8 >> 2] = c;
|
9486 | b[k + 12 >> 2] = d;
|
9487 | break;
|
9488 | }
|
9489 |
|
9490 | c = f >>> 8;
|
9491 |
|
9492 | do { if (!c) { e = 0; }else {
|
9493 | if (f >>> 0 > 16777215) {
|
9494 | e = 31;
|
9495 | break;
|
9496 | }
|
9497 |
|
9498 | u = (c + 1048320 | 0) >>> 16 & 8;
|
9499 | v = c << u;
|
9500 | t = (v + 520192 | 0) >>> 16 & 4;
|
9501 | v = v << t;
|
9502 | e = (v + 245760 | 0) >>> 16 & 2;
|
9503 | e = 14 - (t | u | e) + (v << e >>> 15) | 0;
|
9504 | e = f >>> (e + 7 | 0) & 1 | e << 1;
|
9505 | } } while (0);
|
9506 |
|
9507 | c = 23268 + (e << 2) | 0;
|
9508 | b[k + 28 >> 2] = e;
|
9509 | a = k + 16 | 0;
|
9510 | b[a + 4 >> 2] = 0;
|
9511 | b[a >> 2] = 0;
|
9512 | a = b[5742] | 0;
|
9513 | d = 1 << e;
|
9514 |
|
9515 | if (!(a & d)) {
|
9516 | b[5742] = a | d;
|
9517 | b[c >> 2] = k;
|
9518 | b[k + 24 >> 2] = c;
|
9519 | b[k + 12 >> 2] = k;
|
9520 | b[k + 8 >> 2] = k;
|
9521 | break;
|
9522 | }
|
9523 |
|
9524 | c = b[c >> 2] | 0;
|
9525 |
|
9526 | i: do { if ((b[c + 4 >> 2] & -8 | 0) != (f | 0)) {
|
9527 | e = f << ((e | 0) == 31 ? 0 : 25 - (e >>> 1) | 0);
|
9528 |
|
9529 | while (1) {
|
9530 | d = c + 16 + (e >>> 31 << 2) | 0;
|
9531 | a = b[d >> 2] | 0;
|
9532 | if (!a) { break; }
|
9533 |
|
9534 | if ((b[a + 4 >> 2] & -8 | 0) == (f | 0)) {
|
9535 | c = a;
|
9536 | break i;
|
9537 | } else {
|
9538 | e = e << 1;
|
9539 | c = a;
|
9540 | }
|
9541 | }
|
9542 |
|
9543 | b[d >> 2] = k;
|
9544 | b[k + 24 >> 2] = c;
|
9545 | b[k + 12 >> 2] = k;
|
9546 | b[k + 8 >> 2] = k;
|
9547 | break g;
|
9548 | } } while (0);
|
9549 |
|
9550 | u = c + 8 | 0;
|
9551 | v = b[u >> 2] | 0;
|
9552 | b[v + 12 >> 2] = k;
|
9553 | b[u >> 2] = k;
|
9554 | b[k + 8 >> 2] = v;
|
9555 | b[k + 12 >> 2] = c;
|
9556 | b[k + 24 >> 2] = 0;
|
9557 | } } while (0);
|
9558 |
|
9559 | v = l + 8 | 0;
|
9560 | R = w;
|
9561 | return v | 0;
|
9562 | }
|
9563 |
|
9564 | c = 23412;
|
9565 |
|
9566 | while (1) {
|
9567 | a = b[c >> 2] | 0;
|
9568 | if (a >>> 0 <= j >>> 0 ? (v = a + (b[c + 4 >> 2] | 0) | 0, v >>> 0 > j >>> 0) : 0) { break; }
|
9569 | c = b[c + 8 >> 2] | 0;
|
9570 | }
|
9571 |
|
9572 | f = v + -47 | 0;
|
9573 | a = f + 8 | 0;
|
9574 | a = f + ((a & 7 | 0) == 0 ? 0 : 0 - a & 7) | 0;
|
9575 | f = j + 16 | 0;
|
9576 | a = a >>> 0 < f >>> 0 ? j : a;
|
9577 | c = a + 8 | 0;
|
9578 | d = h + -40 | 0;
|
9579 | t = g + 8 | 0;
|
9580 | t = (t & 7 | 0) == 0 ? 0 : 0 - t & 7;
|
9581 | u = g + t | 0;
|
9582 | t = d - t | 0;
|
9583 | b[5747] = u;
|
9584 | b[5744] = t;
|
9585 | b[u + 4 >> 2] = t | 1;
|
9586 | b[g + d + 4 >> 2] = 40;
|
9587 | b[5748] = b[5863];
|
9588 | d = a + 4 | 0;
|
9589 | b[d >> 2] = 27;
|
9590 | b[c >> 2] = b[5853];
|
9591 | b[c + 4 >> 2] = b[5854];
|
9592 | b[c + 8 >> 2] = b[5855];
|
9593 | b[c + 12 >> 2] = b[5856];
|
9594 | b[5853] = g;
|
9595 | b[5854] = h;
|
9596 | b[5856] = 0;
|
9597 | b[5855] = c;
|
9598 | c = a + 24 | 0;
|
9599 |
|
9600 | do {
|
9601 | u = c;
|
9602 | c = c + 4 | 0;
|
9603 | b[c >> 2] = 7;
|
9604 | } while ((u + 8 | 0) >>> 0 < v >>> 0);
|
9605 |
|
9606 | if ((a | 0) != (j | 0)) {
|
9607 | g = a - j | 0;
|
9608 | b[d >> 2] = b[d >> 2] & -2;
|
9609 | b[j + 4 >> 2] = g | 1;
|
9610 | b[a >> 2] = g;
|
9611 | c = g >>> 3;
|
9612 |
|
9613 | if (g >>> 0 < 256) {
|
9614 | d = 23004 + (c << 1 << 2) | 0;
|
9615 | a = b[5741] | 0;
|
9616 | c = 1 << c;
|
9617 |
|
9618 | if (!(a & c)) {
|
9619 | b[5741] = a | c;
|
9620 | c = d;
|
9621 | a = d + 8 | 0;
|
9622 | } else {
|
9623 | a = d + 8 | 0;
|
9624 | c = b[a >> 2] | 0;
|
9625 | }
|
9626 |
|
9627 | b[a >> 2] = j;
|
9628 | b[c + 12 >> 2] = j;
|
9629 | b[j + 8 >> 2] = c;
|
9630 | b[j + 12 >> 2] = d;
|
9631 | break;
|
9632 | }
|
9633 |
|
9634 | c = g >>> 8;
|
9635 | if (c) {
|
9636 | if (g >>> 0 > 16777215) { e = 31; }else {
|
9637 | u = (c + 1048320 | 0) >>> 16 & 8;
|
9638 | v = c << u;
|
9639 | t = (v + 520192 | 0) >>> 16 & 4;
|
9640 | v = v << t;
|
9641 | e = (v + 245760 | 0) >>> 16 & 2;
|
9642 | e = 14 - (t | u | e) + (v << e >>> 15) | 0;
|
9643 | e = g >>> (e + 7 | 0) & 1 | e << 1;
|
9644 | }
|
9645 | } else { e = 0; }
|
9646 | d = 23268 + (e << 2) | 0;
|
9647 | b[j + 28 >> 2] = e;
|
9648 | b[j + 20 >> 2] = 0;
|
9649 | b[f >> 2] = 0;
|
9650 | c = b[5742] | 0;
|
9651 | a = 1 << e;
|
9652 |
|
9653 | if (!(c & a)) {
|
9654 | b[5742] = c | a;
|
9655 | b[d >> 2] = j;
|
9656 | b[j + 24 >> 2] = d;
|
9657 | b[j + 12 >> 2] = j;
|
9658 | b[j + 8 >> 2] = j;
|
9659 | break;
|
9660 | }
|
9661 |
|
9662 | c = b[d >> 2] | 0;
|
9663 |
|
9664 | j: do { if ((b[c + 4 >> 2] & -8 | 0) != (g | 0)) {
|
9665 | e = g << ((e | 0) == 31 ? 0 : 25 - (e >>> 1) | 0);
|
9666 |
|
9667 | while (1) {
|
9668 | d = c + 16 + (e >>> 31 << 2) | 0;
|
9669 | a = b[d >> 2] | 0;
|
9670 | if (!a) { break; }
|
9671 |
|
9672 | if ((b[a + 4 >> 2] & -8 | 0) == (g | 0)) {
|
9673 | c = a;
|
9674 | break j;
|
9675 | } else {
|
9676 | e = e << 1;
|
9677 | c = a;
|
9678 | }
|
9679 | }
|
9680 |
|
9681 | b[d >> 2] = j;
|
9682 | b[j + 24 >> 2] = c;
|
9683 | b[j + 12 >> 2] = j;
|
9684 | b[j + 8 >> 2] = j;
|
9685 | break f;
|
9686 | } } while (0);
|
9687 |
|
9688 | u = c + 8 | 0;
|
9689 | v = b[u >> 2] | 0;
|
9690 | b[v + 12 >> 2] = j;
|
9691 | b[u >> 2] = j;
|
9692 | b[j + 8 >> 2] = v;
|
9693 | b[j + 12 >> 2] = c;
|
9694 | b[j + 24 >> 2] = 0;
|
9695 | }
|
9696 | } else {
|
9697 | v = b[5745] | 0;
|
9698 | if ((v | 0) == 0 | g >>> 0 < v >>> 0) { b[5745] = g; }
|
9699 | b[5853] = g;
|
9700 | b[5854] = h;
|
9701 | b[5856] = 0;
|
9702 | b[5750] = b[5859];
|
9703 | b[5749] = -1;
|
9704 | b[5754] = 23004;
|
9705 | b[5753] = 23004;
|
9706 | b[5756] = 23012;
|
9707 | b[5755] = 23012;
|
9708 | b[5758] = 23020;
|
9709 | b[5757] = 23020;
|
9710 | b[5760] = 23028;
|
9711 | b[5759] = 23028;
|
9712 | b[5762] = 23036;
|
9713 | b[5761] = 23036;
|
9714 | b[5764] = 23044;
|
9715 | b[5763] = 23044;
|
9716 | b[5766] = 23052;
|
9717 | b[5765] = 23052;
|
9718 | b[5768] = 23060;
|
9719 | b[5767] = 23060;
|
9720 | b[5770] = 23068;
|
9721 | b[5769] = 23068;
|
9722 | b[5772] = 23076;
|
9723 | b[5771] = 23076;
|
9724 | b[5774] = 23084;
|
9725 | b[5773] = 23084;
|
9726 | b[5776] = 23092;
|
9727 | b[5775] = 23092;
|
9728 | b[5778] = 23100;
|
9729 | b[5777] = 23100;
|
9730 | b[5780] = 23108;
|
9731 | b[5779] = 23108;
|
9732 | b[5782] = 23116;
|
9733 | b[5781] = 23116;
|
9734 | b[5784] = 23124;
|
9735 | b[5783] = 23124;
|
9736 | b[5786] = 23132;
|
9737 | b[5785] = 23132;
|
9738 | b[5788] = 23140;
|
9739 | b[5787] = 23140;
|
9740 | b[5790] = 23148;
|
9741 | b[5789] = 23148;
|
9742 | b[5792] = 23156;
|
9743 | b[5791] = 23156;
|
9744 | b[5794] = 23164;
|
9745 | b[5793] = 23164;
|
9746 | b[5796] = 23172;
|
9747 | b[5795] = 23172;
|
9748 | b[5798] = 23180;
|
9749 | b[5797] = 23180;
|
9750 | b[5800] = 23188;
|
9751 | b[5799] = 23188;
|
9752 | b[5802] = 23196;
|
9753 | b[5801] = 23196;
|
9754 | b[5804] = 23204;
|
9755 | b[5803] = 23204;
|
9756 | b[5806] = 23212;
|
9757 | b[5805] = 23212;
|
9758 | b[5808] = 23220;
|
9759 | b[5807] = 23220;
|
9760 | b[5810] = 23228;
|
9761 | b[5809] = 23228;
|
9762 | b[5812] = 23236;
|
9763 | b[5811] = 23236;
|
9764 | b[5814] = 23244;
|
9765 | b[5813] = 23244;
|
9766 | b[5816] = 23252;
|
9767 | b[5815] = 23252;
|
9768 | v = h + -40 | 0;
|
9769 | t = g + 8 | 0;
|
9770 | t = (t & 7 | 0) == 0 ? 0 : 0 - t & 7;
|
9771 | u = g + t | 0;
|
9772 | t = v - t | 0;
|
9773 | b[5747] = u;
|
9774 | b[5744] = t;
|
9775 | b[u + 4 >> 2] = t | 1;
|
9776 | b[g + v + 4 >> 2] = 40;
|
9777 | b[5748] = b[5863];
|
9778 | } } while (0);
|
9779 |
|
9780 | c = b[5744] | 0;
|
9781 |
|
9782 | if (c >>> 0 > m >>> 0) {
|
9783 | t = c - m | 0;
|
9784 | b[5744] = t;
|
9785 | v = b[5747] | 0;
|
9786 | u = v + m | 0;
|
9787 | b[5747] = u;
|
9788 | b[u + 4 >> 2] = t | 1;
|
9789 | b[v + 4 >> 2] = m | 3;
|
9790 | v = v + 8 | 0;
|
9791 | R = w;
|
9792 | return v | 0;
|
9793 | }
|
9794 | }
|
9795 |
|
9796 | v = Fc() | 0;
|
9797 | b[v >> 2] = 12;
|
9798 | v = 0;
|
9799 | R = w;
|
9800 | return v | 0;
|
9801 | }
|
9802 |
|
9803 | function Jc(a) {
|
9804 | a = a | 0;
|
9805 | var c = 0,
|
9806 | d = 0,
|
9807 | e = 0,
|
9808 | f = 0,
|
9809 | g = 0,
|
9810 | h = 0,
|
9811 | i = 0,
|
9812 | j = 0;
|
9813 | if (!a) { return; }
|
9814 | d = a + -8 | 0;
|
9815 | f = b[5745] | 0;
|
9816 | a = b[a + -4 >> 2] | 0;
|
9817 | c = a & -8;
|
9818 | j = d + c | 0;
|
9819 |
|
9820 | do { if (!(a & 1)) {
|
9821 | e = b[d >> 2] | 0;
|
9822 | if (!(a & 3)) { return; }
|
9823 | h = d + (0 - e) | 0;
|
9824 | g = e + c | 0;
|
9825 | if (h >>> 0 < f >>> 0) { return; }
|
9826 |
|
9827 | if ((b[5746] | 0) == (h | 0)) {
|
9828 | a = j + 4 | 0;
|
9829 | c = b[a >> 2] | 0;
|
9830 |
|
9831 | if ((c & 3 | 0) != 3) {
|
9832 | i = h;
|
9833 | c = g;
|
9834 | break;
|
9835 | }
|
9836 |
|
9837 | b[5743] = g;
|
9838 | b[a >> 2] = c & -2;
|
9839 | b[h + 4 >> 2] = g | 1;
|
9840 | b[h + g >> 2] = g;
|
9841 | return;
|
9842 | }
|
9843 |
|
9844 | d = e >>> 3;
|
9845 |
|
9846 | if (e >>> 0 < 256) {
|
9847 | a = b[h + 8 >> 2] | 0;
|
9848 | c = b[h + 12 >> 2] | 0;
|
9849 |
|
9850 | if ((c | 0) == (a | 0)) {
|
9851 | b[5741] = b[5741] & ~(1 << d);
|
9852 | i = h;
|
9853 | c = g;
|
9854 | break;
|
9855 | } else {
|
9856 | b[a + 12 >> 2] = c;
|
9857 | b[c + 8 >> 2] = a;
|
9858 | i = h;
|
9859 | c = g;
|
9860 | break;
|
9861 | }
|
9862 | }
|
9863 |
|
9864 | f = b[h + 24 >> 2] | 0;
|
9865 | a = b[h + 12 >> 2] | 0;
|
9866 |
|
9867 | do { if ((a | 0) == (h | 0)) {
|
9868 | c = h + 16 | 0;
|
9869 | d = c + 4 | 0;
|
9870 | a = b[d >> 2] | 0;
|
9871 |
|
9872 | if (!a) {
|
9873 | a = b[c >> 2] | 0;
|
9874 |
|
9875 | if (!a) {
|
9876 | a = 0;
|
9877 | break;
|
9878 | }
|
9879 | } else { c = d; }
|
9880 |
|
9881 | while (1) {
|
9882 | e = a + 20 | 0;
|
9883 | d = b[e >> 2] | 0;
|
9884 |
|
9885 | if (!d) {
|
9886 | e = a + 16 | 0;
|
9887 | d = b[e >> 2] | 0;
|
9888 | if (!d) { break; }else {
|
9889 | a = d;
|
9890 | c = e;
|
9891 | }
|
9892 | } else {
|
9893 | a = d;
|
9894 | c = e;
|
9895 | }
|
9896 | }
|
9897 |
|
9898 | b[c >> 2] = 0;
|
9899 | } else {
|
9900 | i = b[h + 8 >> 2] | 0;
|
9901 | b[i + 12 >> 2] = a;
|
9902 | b[a + 8 >> 2] = i;
|
9903 | } } while (0);
|
9904 |
|
9905 | if (f) {
|
9906 | c = b[h + 28 >> 2] | 0;
|
9907 | d = 23268 + (c << 2) | 0;
|
9908 |
|
9909 | if ((b[d >> 2] | 0) == (h | 0)) {
|
9910 | b[d >> 2] = a;
|
9911 |
|
9912 | if (!a) {
|
9913 | b[5742] = b[5742] & ~(1 << c);
|
9914 | i = h;
|
9915 | c = g;
|
9916 | break;
|
9917 | }
|
9918 | } else {
|
9919 | i = f + 16 | 0;
|
9920 | b[((b[i >> 2] | 0) == (h | 0) ? i : f + 20 | 0) >> 2] = a;
|
9921 |
|
9922 | if (!a) {
|
9923 | i = h;
|
9924 | c = g;
|
9925 | break;
|
9926 | }
|
9927 | }
|
9928 |
|
9929 | b[a + 24 >> 2] = f;
|
9930 | c = h + 16 | 0;
|
9931 | d = b[c >> 2] | 0;
|
9932 |
|
9933 | if (d | 0) {
|
9934 | b[a + 16 >> 2] = d;
|
9935 | b[d + 24 >> 2] = a;
|
9936 | }
|
9937 |
|
9938 | c = b[c + 4 >> 2] | 0;
|
9939 |
|
9940 | if (c) {
|
9941 | b[a + 20 >> 2] = c;
|
9942 | b[c + 24 >> 2] = a;
|
9943 | i = h;
|
9944 | c = g;
|
9945 | } else {
|
9946 | i = h;
|
9947 | c = g;
|
9948 | }
|
9949 | } else {
|
9950 | i = h;
|
9951 | c = g;
|
9952 | }
|
9953 | } else {
|
9954 | i = d;
|
9955 | h = d;
|
9956 | } } while (0);
|
9957 |
|
9958 | if (h >>> 0 >= j >>> 0) { return; }
|
9959 | a = j + 4 | 0;
|
9960 | e = b[a >> 2] | 0;
|
9961 | if (!(e & 1)) { return; }
|
9962 |
|
9963 | if (!(e & 2)) {
|
9964 | if ((b[5747] | 0) == (j | 0)) {
|
9965 | j = (b[5744] | 0) + c | 0;
|
9966 | b[5744] = j;
|
9967 | b[5747] = i;
|
9968 | b[i + 4 >> 2] = j | 1;
|
9969 | if ((i | 0) != (b[5746] | 0)) { return; }
|
9970 | b[5746] = 0;
|
9971 | b[5743] = 0;
|
9972 | return;
|
9973 | }
|
9974 |
|
9975 | if ((b[5746] | 0) == (j | 0)) {
|
9976 | j = (b[5743] | 0) + c | 0;
|
9977 | b[5743] = j;
|
9978 | b[5746] = h;
|
9979 | b[i + 4 >> 2] = j | 1;
|
9980 | b[h + j >> 2] = j;
|
9981 | return;
|
9982 | }
|
9983 |
|
9984 | f = (e & -8) + c | 0;
|
9985 | d = e >>> 3;
|
9986 |
|
9987 | do { if (e >>> 0 < 256) {
|
9988 | c = b[j + 8 >> 2] | 0;
|
9989 | a = b[j + 12 >> 2] | 0;
|
9990 |
|
9991 | if ((a | 0) == (c | 0)) {
|
9992 | b[5741] = b[5741] & ~(1 << d);
|
9993 | break;
|
9994 | } else {
|
9995 | b[c + 12 >> 2] = a;
|
9996 | b[a + 8 >> 2] = c;
|
9997 | break;
|
9998 | }
|
9999 | } else {
|
10000 | g = b[j + 24 >> 2] | 0;
|
10001 | a = b[j + 12 >> 2] | 0;
|
10002 |
|
10003 | do { if ((a | 0) == (j | 0)) {
|
10004 | c = j + 16 | 0;
|
10005 | d = c + 4 | 0;
|
10006 | a = b[d >> 2] | 0;
|
10007 |
|
10008 | if (!a) {
|
10009 | a = b[c >> 2] | 0;
|
10010 |
|
10011 | if (!a) {
|
10012 | d = 0;
|
10013 | break;
|
10014 | }
|
10015 | } else { c = d; }
|
10016 |
|
10017 | while (1) {
|
10018 | e = a + 20 | 0;
|
10019 | d = b[e >> 2] | 0;
|
10020 |
|
10021 | if (!d) {
|
10022 | e = a + 16 | 0;
|
10023 | d = b[e >> 2] | 0;
|
10024 | if (!d) { break; }else {
|
10025 | a = d;
|
10026 | c = e;
|
10027 | }
|
10028 | } else {
|
10029 | a = d;
|
10030 | c = e;
|
10031 | }
|
10032 | }
|
10033 |
|
10034 | b[c >> 2] = 0;
|
10035 | d = a;
|
10036 | } else {
|
10037 | d = b[j + 8 >> 2] | 0;
|
10038 | b[d + 12 >> 2] = a;
|
10039 | b[a + 8 >> 2] = d;
|
10040 | d = a;
|
10041 | } } while (0);
|
10042 |
|
10043 | if (g | 0) {
|
10044 | a = b[j + 28 >> 2] | 0;
|
10045 | c = 23268 + (a << 2) | 0;
|
10046 |
|
10047 | if ((b[c >> 2] | 0) == (j | 0)) {
|
10048 | b[c >> 2] = d;
|
10049 |
|
10050 | if (!d) {
|
10051 | b[5742] = b[5742] & ~(1 << a);
|
10052 | break;
|
10053 | }
|
10054 | } else {
|
10055 | e = g + 16 | 0;
|
10056 | b[((b[e >> 2] | 0) == (j | 0) ? e : g + 20 | 0) >> 2] = d;
|
10057 | if (!d) { break; }
|
10058 | }
|
10059 |
|
10060 | b[d + 24 >> 2] = g;
|
10061 | a = j + 16 | 0;
|
10062 | c = b[a >> 2] | 0;
|
10063 |
|
10064 | if (c | 0) {
|
10065 | b[d + 16 >> 2] = c;
|
10066 | b[c + 24 >> 2] = d;
|
10067 | }
|
10068 |
|
10069 | a = b[a + 4 >> 2] | 0;
|
10070 |
|
10071 | if (a | 0) {
|
10072 | b[d + 20 >> 2] = a;
|
10073 | b[a + 24 >> 2] = d;
|
10074 | }
|
10075 | }
|
10076 | } } while (0);
|
10077 |
|
10078 | b[i + 4 >> 2] = f | 1;
|
10079 | b[h + f >> 2] = f;
|
10080 |
|
10081 | if ((i | 0) == (b[5746] | 0)) {
|
10082 | b[5743] = f;
|
10083 | return;
|
10084 | }
|
10085 | } else {
|
10086 | b[a >> 2] = e & -2;
|
10087 | b[i + 4 >> 2] = c | 1;
|
10088 | b[h + c >> 2] = c;
|
10089 | f = c;
|
10090 | }
|
10091 |
|
10092 | a = f >>> 3;
|
10093 |
|
10094 | if (f >>> 0 < 256) {
|
10095 | d = 23004 + (a << 1 << 2) | 0;
|
10096 | c = b[5741] | 0;
|
10097 | a = 1 << a;
|
10098 |
|
10099 | if (!(c & a)) {
|
10100 | b[5741] = c | a;
|
10101 | a = d;
|
10102 | c = d + 8 | 0;
|
10103 | } else {
|
10104 | c = d + 8 | 0;
|
10105 | a = b[c >> 2] | 0;
|
10106 | }
|
10107 |
|
10108 | b[c >> 2] = i;
|
10109 | b[a + 12 >> 2] = i;
|
10110 | b[i + 8 >> 2] = a;
|
10111 | b[i + 12 >> 2] = d;
|
10112 | return;
|
10113 | }
|
10114 |
|
10115 | a = f >>> 8;
|
10116 | if (a) {
|
10117 | if (f >>> 0 > 16777215) { e = 31; }else {
|
10118 | h = (a + 1048320 | 0) >>> 16 & 8;
|
10119 | j = a << h;
|
10120 | g = (j + 520192 | 0) >>> 16 & 4;
|
10121 | j = j << g;
|
10122 | e = (j + 245760 | 0) >>> 16 & 2;
|
10123 | e = 14 - (g | h | e) + (j << e >>> 15) | 0;
|
10124 | e = f >>> (e + 7 | 0) & 1 | e << 1;
|
10125 | }
|
10126 | } else { e = 0; }
|
10127 | a = 23268 + (e << 2) | 0;
|
10128 | b[i + 28 >> 2] = e;
|
10129 | b[i + 20 >> 2] = 0;
|
10130 | b[i + 16 >> 2] = 0;
|
10131 | c = b[5742] | 0;
|
10132 | d = 1 << e;
|
10133 |
|
10134 | a: do { if (!(c & d)) {
|
10135 | b[5742] = c | d;
|
10136 | b[a >> 2] = i;
|
10137 | b[i + 24 >> 2] = a;
|
10138 | b[i + 12 >> 2] = i;
|
10139 | b[i + 8 >> 2] = i;
|
10140 | } else {
|
10141 | a = b[a >> 2] | 0;
|
10142 |
|
10143 | b: do { if ((b[a + 4 >> 2] & -8 | 0) != (f | 0)) {
|
10144 | e = f << ((e | 0) == 31 ? 0 : 25 - (e >>> 1) | 0);
|
10145 |
|
10146 | while (1) {
|
10147 | d = a + 16 + (e >>> 31 << 2) | 0;
|
10148 | c = b[d >> 2] | 0;
|
10149 | if (!c) { break; }
|
10150 |
|
10151 | if ((b[c + 4 >> 2] & -8 | 0) == (f | 0)) {
|
10152 | a = c;
|
10153 | break b;
|
10154 | } else {
|
10155 | e = e << 1;
|
10156 | a = c;
|
10157 | }
|
10158 | }
|
10159 |
|
10160 | b[d >> 2] = i;
|
10161 | b[i + 24 >> 2] = a;
|
10162 | b[i + 12 >> 2] = i;
|
10163 | b[i + 8 >> 2] = i;
|
10164 | break a;
|
10165 | } } while (0);
|
10166 |
|
10167 | h = a + 8 | 0;
|
10168 | j = b[h >> 2] | 0;
|
10169 | b[j + 12 >> 2] = i;
|
10170 | b[h >> 2] = i;
|
10171 | b[i + 8 >> 2] = j;
|
10172 | b[i + 12 >> 2] = a;
|
10173 | b[i + 24 >> 2] = 0;
|
10174 | } } while (0);
|
10175 |
|
10176 | j = (b[5749] | 0) + -1 | 0;
|
10177 | b[5749] = j;
|
10178 | if (j | 0) { return; }
|
10179 | a = 23420;
|
10180 |
|
10181 | while (1) {
|
10182 | a = b[a >> 2] | 0;
|
10183 | if (!a) { break; }else { a = a + 8 | 0; }
|
10184 | }
|
10185 |
|
10186 | b[5749] = -1;
|
10187 | return;
|
10188 | }
|
10189 |
|
10190 | function Kc(a, c) {
|
10191 | a = a | 0;
|
10192 | c = c | 0;
|
10193 | var d = 0;
|
10194 |
|
10195 | if (a) {
|
10196 | d = B(c, a) | 0;
|
10197 | if ((c | a) >>> 0 > 65535) { d = ((d >>> 0) / (a >>> 0) | 0 | 0) == (c | 0) ? d : -1; }
|
10198 | } else { d = 0; }
|
10199 |
|
10200 | a = Ic(d) | 0;
|
10201 | if (!a) { return a | 0; }
|
10202 | if (!(b[a + -4 >> 2] & 3)) { return a | 0; }
|
10203 | Uc(a | 0, 0, d | 0) | 0;
|
10204 | return a | 0;
|
10205 | }
|
10206 |
|
10207 | function Lc(a, b, c, d) {
|
10208 | a = a | 0;
|
10209 | b = b | 0;
|
10210 | c = c | 0;
|
10211 | d = d | 0;
|
10212 | c = a + c >>> 0;
|
10213 | return (E(b + d + (c >>> 0 < a >>> 0 | 0) >>> 0 | 0), c | 0) | 0;
|
10214 | }
|
10215 |
|
10216 | function Mc(a, b, c, d) {
|
10217 | a = a | 0;
|
10218 | b = b | 0;
|
10219 | c = c | 0;
|
10220 | d = d | 0;
|
10221 | d = b - d - (c >>> 0 > a >>> 0 | 0) >>> 0;
|
10222 | return (E(d | 0), a - c >>> 0 | 0) | 0;
|
10223 | }
|
10224 |
|
10225 | function Nc(a) {
|
10226 | a = a | 0;
|
10227 | return (a ? 31 - (C(a ^ a - 1) | 0) | 0 : 32) | 0;
|
10228 | }
|
10229 |
|
10230 | function Oc(a, c, d, e, f) {
|
10231 | a = a | 0;
|
10232 | c = c | 0;
|
10233 | d = d | 0;
|
10234 | e = e | 0;
|
10235 | f = f | 0;
|
10236 | var g = 0,
|
10237 | h = 0,
|
10238 | i = 0,
|
10239 | j = 0,
|
10240 | k = 0,
|
10241 | l = 0,
|
10242 | m = 0,
|
10243 | n = 0,
|
10244 | o = 0,
|
10245 | p = 0;
|
10246 | l = a;
|
10247 | j = c;
|
10248 | k = j;
|
10249 | h = d;
|
10250 | n = e;
|
10251 | i = n;
|
10252 |
|
10253 | if (!k) {
|
10254 | g = (f | 0) != 0;
|
10255 |
|
10256 | if (!i) {
|
10257 | if (g) {
|
10258 | b[f >> 2] = (l >>> 0) % (h >>> 0);
|
10259 | b[f + 4 >> 2] = 0;
|
10260 | }
|
10261 |
|
10262 | n = 0;
|
10263 | f = (l >>> 0) / (h >>> 0) >>> 0;
|
10264 | return (E(n | 0), f) | 0;
|
10265 | } else {
|
10266 | if (!g) {
|
10267 | n = 0;
|
10268 | f = 0;
|
10269 | return (E(n | 0), f) | 0;
|
10270 | }
|
10271 |
|
10272 | b[f >> 2] = a | 0;
|
10273 | b[f + 4 >> 2] = c & 0;
|
10274 | n = 0;
|
10275 | f = 0;
|
10276 | return (E(n | 0), f) | 0;
|
10277 | }
|
10278 | }
|
10279 |
|
10280 | g = (i | 0) == 0;
|
10281 |
|
10282 | do { if (h) {
|
10283 | if (!g) {
|
10284 | g = (C(i | 0) | 0) - (C(k | 0) | 0) | 0;
|
10285 |
|
10286 | if (g >>> 0 <= 31) {
|
10287 | m = g + 1 | 0;
|
10288 | i = 31 - g | 0;
|
10289 | c = g - 31 >> 31;
|
10290 | h = m;
|
10291 | a = l >>> (m >>> 0) & c | k << i;
|
10292 | c = k >>> (m >>> 0) & c;
|
10293 | g = 0;
|
10294 | i = l << i;
|
10295 | break;
|
10296 | }
|
10297 |
|
10298 | if (!f) {
|
10299 | n = 0;
|
10300 | f = 0;
|
10301 | return (E(n | 0), f) | 0;
|
10302 | }
|
10303 |
|
10304 | b[f >> 2] = a | 0;
|
10305 | b[f + 4 >> 2] = j | c & 0;
|
10306 | n = 0;
|
10307 | f = 0;
|
10308 | return (E(n | 0), f) | 0;
|
10309 | }
|
10310 |
|
10311 | g = h - 1 | 0;
|
10312 |
|
10313 | if (g & h | 0) {
|
10314 | i = (C(h | 0) | 0) + 33 - (C(k | 0) | 0) | 0;
|
10315 | p = 64 - i | 0;
|
10316 | m = 32 - i | 0;
|
10317 | j = m >> 31;
|
10318 | o = i - 32 | 0;
|
10319 | c = o >> 31;
|
10320 | h = i;
|
10321 | a = m - 1 >> 31 & k >>> (o >>> 0) | (k << m | l >>> (i >>> 0)) & c;
|
10322 | c = c & k >>> (i >>> 0);
|
10323 | g = l << p & j;
|
10324 | i = (k << p | l >>> (o >>> 0)) & j | l << m & i - 33 >> 31;
|
10325 | break;
|
10326 | }
|
10327 |
|
10328 | if (f | 0) {
|
10329 | b[f >> 2] = g & l;
|
10330 | b[f + 4 >> 2] = 0;
|
10331 | }
|
10332 |
|
10333 | if ((h | 0) == 1) {
|
10334 | o = j | c & 0;
|
10335 | p = a | 0 | 0;
|
10336 | return (E(o | 0), p) | 0;
|
10337 | } else {
|
10338 | p = Nc(h | 0) | 0;
|
10339 | o = k >>> (p >>> 0) | 0;
|
10340 | p = k << 32 - p | l >>> (p >>> 0) | 0;
|
10341 | return (E(o | 0), p) | 0;
|
10342 | }
|
10343 | } else {
|
10344 | if (g) {
|
10345 | if (f | 0) {
|
10346 | b[f >> 2] = (k >>> 0) % (h >>> 0);
|
10347 | b[f + 4 >> 2] = 0;
|
10348 | }
|
10349 |
|
10350 | o = 0;
|
10351 | p = (k >>> 0) / (h >>> 0) >>> 0;
|
10352 | return (E(o | 0), p) | 0;
|
10353 | }
|
10354 |
|
10355 | if (!l) {
|
10356 | if (f | 0) {
|
10357 | b[f >> 2] = 0;
|
10358 | b[f + 4 >> 2] = (k >>> 0) % (i >>> 0);
|
10359 | }
|
10360 |
|
10361 | o = 0;
|
10362 | p = (k >>> 0) / (i >>> 0) >>> 0;
|
10363 | return (E(o | 0), p) | 0;
|
10364 | }
|
10365 |
|
10366 | g = i - 1 | 0;
|
10367 |
|
10368 | if (!(g & i)) {
|
10369 | if (f | 0) {
|
10370 | b[f >> 2] = a | 0;
|
10371 | b[f + 4 >> 2] = g & k | c & 0;
|
10372 | }
|
10373 |
|
10374 | o = 0;
|
10375 | p = k >>> ((Nc(i | 0) | 0) >>> 0);
|
10376 | return (E(o | 0), p) | 0;
|
10377 | }
|
10378 |
|
10379 | g = (C(i | 0) | 0) - (C(k | 0) | 0) | 0;
|
10380 |
|
10381 | if (g >>> 0 <= 30) {
|
10382 | c = g + 1 | 0;
|
10383 | i = 31 - g | 0;
|
10384 | h = c;
|
10385 | a = k << i | l >>> (c >>> 0);
|
10386 | c = k >>> (c >>> 0);
|
10387 | g = 0;
|
10388 | i = l << i;
|
10389 | break;
|
10390 | }
|
10391 |
|
10392 | if (!f) {
|
10393 | o = 0;
|
10394 | p = 0;
|
10395 | return (E(o | 0), p) | 0;
|
10396 | }
|
10397 |
|
10398 | b[f >> 2] = a | 0;
|
10399 | b[f + 4 >> 2] = j | c & 0;
|
10400 | o = 0;
|
10401 | p = 0;
|
10402 | return (E(o | 0), p) | 0;
|
10403 | } } while (0);
|
10404 |
|
10405 | if (!h) {
|
10406 | k = i;
|
10407 | j = 0;
|
10408 | i = 0;
|
10409 | } else {
|
10410 | m = d | 0 | 0;
|
10411 | l = n | e & 0;
|
10412 | k = Lc(m | 0, l | 0, -1, -1) | 0;
|
10413 | d = F() | 0;
|
10414 | j = i;
|
10415 | i = 0;
|
10416 |
|
10417 | do {
|
10418 | e = j;
|
10419 | j = g >>> 31 | j << 1;
|
10420 | g = i | g << 1;
|
10421 | e = a << 1 | e >>> 31 | 0;
|
10422 | n = a >>> 31 | c << 1 | 0;
|
10423 | Mc(k | 0, d | 0, e | 0, n | 0) | 0;
|
10424 | p = F() | 0;
|
10425 | o = p >> 31 | ((p | 0) < 0 ? -1 : 0) << 1;
|
10426 | i = o & 1;
|
10427 | a = Mc(e | 0, n | 0, o & m | 0, (((p | 0) < 0 ? -1 : 0) >> 31 | ((p | 0) < 0 ? -1 : 0) << 1) & l | 0) | 0;
|
10428 | c = F() | 0;
|
10429 | h = h - 1 | 0;
|
10430 | } while ((h | 0) != 0);
|
10431 |
|
10432 | k = j;
|
10433 | j = 0;
|
10434 | }
|
10435 |
|
10436 | h = 0;
|
10437 |
|
10438 | if (f | 0) {
|
10439 | b[f >> 2] = a;
|
10440 | b[f + 4 >> 2] = c;
|
10441 | }
|
10442 |
|
10443 | o = (g | 0) >>> 31 | (k | h) << 1 | (h << 1 | g >>> 31) & 0 | j;
|
10444 | p = (g << 1 | 0 >>> 31) & -2 | i;
|
10445 | return (E(o | 0), p) | 0;
|
10446 | }
|
10447 |
|
10448 | function Pc(a, c, d, e) {
|
10449 | a = a | 0;
|
10450 | c = c | 0;
|
10451 | d = d | 0;
|
10452 | e = e | 0;
|
10453 | var f = 0,
|
10454 | g = 0;
|
10455 | g = R;
|
10456 | R = R + 16 | 0;
|
10457 | f = g | 0;
|
10458 | Oc(a, c, d, e, f) | 0;
|
10459 | R = g;
|
10460 | return (E(b[f + 4 >> 2] | 0), b[f >> 2] | 0) | 0;
|
10461 | }
|
10462 |
|
10463 | function Qc(a, b, c) {
|
10464 | a = a | 0;
|
10465 | b = b | 0;
|
10466 | c = c | 0;
|
10467 |
|
10468 | if ((c | 0) < 32) {
|
10469 | E(b >>> c | 0);
|
10470 | return a >>> c | (b & (1 << c) - 1) << 32 - c;
|
10471 | }
|
10472 |
|
10473 | E(0);
|
10474 | return b >>> c - 32 | 0;
|
10475 | }
|
10476 |
|
10477 | function Rc(a, b, c) {
|
10478 | a = a | 0;
|
10479 | b = b | 0;
|
10480 | c = c | 0;
|
10481 |
|
10482 | if ((c | 0) < 32) {
|
10483 | E(b << c | (a & (1 << c) - 1 << 32 - c) >>> 32 - c | 0);
|
10484 | return a << c;
|
10485 | }
|
10486 |
|
10487 | E(a << c - 32 | 0);
|
10488 | return 0;
|
10489 | }
|
10490 |
|
10491 | function Sc(a) {
|
10492 | a = +a;
|
10493 | return a >= 0.0 ? +p(a + .5) : +A(a - .5);
|
10494 | }
|
10495 |
|
10496 | function Tc(c, d, e) {
|
10497 | c = c | 0;
|
10498 | d = d | 0;
|
10499 | e = e | 0;
|
10500 | var f = 0,
|
10501 | g = 0,
|
10502 | h = 0;
|
10503 |
|
10504 | if ((e | 0) >= 8192) {
|
10505 | J(c | 0, d | 0, e | 0) | 0;
|
10506 | return c | 0;
|
10507 | }
|
10508 |
|
10509 | h = c | 0;
|
10510 | g = c + e | 0;
|
10511 |
|
10512 | if ((c & 3) == (d & 3)) {
|
10513 | while (c & 3) {
|
10514 | if (!e) { return h | 0; }
|
10515 | a[c >> 0] = a[d >> 0] | 0;
|
10516 | c = c + 1 | 0;
|
10517 | d = d + 1 | 0;
|
10518 | e = e - 1 | 0;
|
10519 | }
|
10520 |
|
10521 | e = g & -4 | 0;
|
10522 | f = e - 64 | 0;
|
10523 |
|
10524 | while ((c | 0) <= (f | 0)) {
|
10525 | b[c >> 2] = b[d >> 2];
|
10526 | b[c + 4 >> 2] = b[d + 4 >> 2];
|
10527 | b[c + 8 >> 2] = b[d + 8 >> 2];
|
10528 | b[c + 12 >> 2] = b[d + 12 >> 2];
|
10529 | b[c + 16 >> 2] = b[d + 16 >> 2];
|
10530 | b[c + 20 >> 2] = b[d + 20 >> 2];
|
10531 | b[c + 24 >> 2] = b[d + 24 >> 2];
|
10532 | b[c + 28 >> 2] = b[d + 28 >> 2];
|
10533 | b[c + 32 >> 2] = b[d + 32 >> 2];
|
10534 | b[c + 36 >> 2] = b[d + 36 >> 2];
|
10535 | b[c + 40 >> 2] = b[d + 40 >> 2];
|
10536 | b[c + 44 >> 2] = b[d + 44 >> 2];
|
10537 | b[c + 48 >> 2] = b[d + 48 >> 2];
|
10538 | b[c + 52 >> 2] = b[d + 52 >> 2];
|
10539 | b[c + 56 >> 2] = b[d + 56 >> 2];
|
10540 | b[c + 60 >> 2] = b[d + 60 >> 2];
|
10541 | c = c + 64 | 0;
|
10542 | d = d + 64 | 0;
|
10543 | }
|
10544 |
|
10545 | while ((c | 0) < (e | 0)) {
|
10546 | b[c >> 2] = b[d >> 2];
|
10547 | c = c + 4 | 0;
|
10548 | d = d + 4 | 0;
|
10549 | }
|
10550 | } else {
|
10551 | e = g - 4 | 0;
|
10552 |
|
10553 | while ((c | 0) < (e | 0)) {
|
10554 | a[c >> 0] = a[d >> 0] | 0;
|
10555 | a[c + 1 >> 0] = a[d + 1 >> 0] | 0;
|
10556 | a[c + 2 >> 0] = a[d + 2 >> 0] | 0;
|
10557 | a[c + 3 >> 0] = a[d + 3 >> 0] | 0;
|
10558 | c = c + 4 | 0;
|
10559 | d = d + 4 | 0;
|
10560 | }
|
10561 | }
|
10562 |
|
10563 | while ((c | 0) < (g | 0)) {
|
10564 | a[c >> 0] = a[d >> 0] | 0;
|
10565 | c = c + 1 | 0;
|
10566 | d = d + 1 | 0;
|
10567 | }
|
10568 |
|
10569 | return h | 0;
|
10570 | }
|
10571 |
|
10572 | function Uc(c, d, e) {
|
10573 | c = c | 0;
|
10574 | d = d | 0;
|
10575 | e = e | 0;
|
10576 | var f = 0,
|
10577 | g = 0,
|
10578 | h = 0,
|
10579 | i = 0;
|
10580 | h = c + e | 0;
|
10581 | d = d & 255;
|
10582 |
|
10583 | if ((e | 0) >= 67) {
|
10584 | while (c & 3) {
|
10585 | a[c >> 0] = d;
|
10586 | c = c + 1 | 0;
|
10587 | }
|
10588 |
|
10589 | f = h & -4 | 0;
|
10590 | i = d | d << 8 | d << 16 | d << 24;
|
10591 | g = f - 64 | 0;
|
10592 |
|
10593 | while ((c | 0) <= (g | 0)) {
|
10594 | b[c >> 2] = i;
|
10595 | b[c + 4 >> 2] = i;
|
10596 | b[c + 8 >> 2] = i;
|
10597 | b[c + 12 >> 2] = i;
|
10598 | b[c + 16 >> 2] = i;
|
10599 | b[c + 20 >> 2] = i;
|
10600 | b[c + 24 >> 2] = i;
|
10601 | b[c + 28 >> 2] = i;
|
10602 | b[c + 32 >> 2] = i;
|
10603 | b[c + 36 >> 2] = i;
|
10604 | b[c + 40 >> 2] = i;
|
10605 | b[c + 44 >> 2] = i;
|
10606 | b[c + 48 >> 2] = i;
|
10607 | b[c + 52 >> 2] = i;
|
10608 | b[c + 56 >> 2] = i;
|
10609 | b[c + 60 >> 2] = i;
|
10610 | c = c + 64 | 0;
|
10611 | }
|
10612 |
|
10613 | while ((c | 0) < (f | 0)) {
|
10614 | b[c >> 2] = i;
|
10615 | c = c + 4 | 0;
|
10616 | }
|
10617 | }
|
10618 |
|
10619 | while ((c | 0) < (h | 0)) {
|
10620 | a[c >> 0] = d;
|
10621 | c = c + 1 | 0;
|
10622 | }
|
10623 |
|
10624 | return h - e | 0;
|
10625 | }
|
10626 |
|
10627 | function Vc(a) {
|
10628 | a = +a;
|
10629 | return a >= 0.0 ? +p(a + .5) : +A(a - .5);
|
10630 | }
|
10631 |
|
10632 | function Wc(a) {
|
10633 | a = a | 0;
|
10634 | var c = 0,
|
10635 | d = 0,
|
10636 | e = 0;
|
10637 | e = I() | 0;
|
10638 | d = b[g >> 2] | 0;
|
10639 | c = d + a | 0;
|
10640 |
|
10641 | if ((a | 0) > 0 & (c | 0) < (d | 0) | (c | 0) < 0) {
|
10642 | L(c | 0) | 0;
|
10643 | H(12);
|
10644 | return -1;
|
10645 | }
|
10646 |
|
10647 | if ((c | 0) > (e | 0)) { if (!(K(c | 0) | 0)) {
|
10648 | H(12);
|
10649 | return -1;
|
10650 | } }
|
10651 | b[g >> 2] = c;
|
10652 | return d | 0;
|
10653 | }
|
10654 |
|
10655 |
|
10656 | return {
|
10657 | ___uremdi3: Pc,
|
10658 | _bitshift64Lshr: Qc,
|
10659 | _bitshift64Shl: Rc,
|
10660 | _calloc: Kc,
|
10661 | _compact: vb,
|
10662 | _destroyLinkedPolygon: Zb,
|
10663 | _edgeLengthKm: lb,
|
10664 | _edgeLengthM: mb,
|
10665 | _emscripten_replace_memory: U,
|
10666 | _experimentalH3ToLocalIj: cc,
|
10667 | _experimentalLocalIjToH3: dc,
|
10668 | _free: Jc,
|
10669 | _geoToH3: Gb,
|
10670 | _getDestinationH3IndexFromUnidirectionalEdge: Sb,
|
10671 | _getH3IndexesFromUnidirectionalEdge: Ub,
|
10672 | _getH3UnidirectionalEdge: Qb,
|
10673 | _getH3UnidirectionalEdgeBoundary: Wb,
|
10674 | _getH3UnidirectionalEdgesFromHexagon: Vb,
|
10675 | _getOriginH3IndexFromUnidirectionalEdge: Rb,
|
10676 | _getPentagonIndexes: Ob,
|
10677 | _getRes0Indexes: qa,
|
10678 | _h3Distance: ec,
|
10679 | _h3GetBaseCell: ob,
|
10680 | _h3GetFaces: Mb,
|
10681 | _h3IndexesAreNeighbors: Pb,
|
10682 | _h3IsPentagon: tb,
|
10683 | _h3IsResClassIII: yb,
|
10684 | _h3IsValid: pb,
|
10685 | _h3Line: gc,
|
10686 | _h3LineSize: fc,
|
10687 | _h3SetToLinkedGeo: ha,
|
10688 | _h3ToCenterChild: ub,
|
10689 | _h3ToChildren: sb,
|
10690 | _h3ToGeo: Jb,
|
10691 | _h3ToGeoBoundary: Kb,
|
10692 | _h3ToParent: qb,
|
10693 | _h3UnidirectionalEdgeIsValid: Tb,
|
10694 | _hexAreaKm2: jb,
|
10695 | _hexAreaM2: kb,
|
10696 | _hexRing: da,
|
10697 | _i64Subtract: Mc,
|
10698 | _kRing: _,
|
10699 | _kRingDistances: $,
|
10700 | _llvm_round_f64: Sc,
|
10701 | _malloc: Ic,
|
10702 | _maxFaceCount: Lb,
|
10703 | _maxH3ToChildrenSize: rb,
|
10704 | _maxKringSize: Z,
|
10705 | _maxPolyfillSize: ea,
|
10706 | _maxUncompactSize: xb,
|
10707 | _memcpy: Tc,
|
10708 | _memset: Uc,
|
10709 | _numHexagons: nb,
|
10710 | _pentagonIndexCount: Nb,
|
10711 | _polyfill: fa,
|
10712 | _res0IndexCount: pa,
|
10713 | _round: Vc,
|
10714 | _sbrk: Wc,
|
10715 | _sizeOfCoordIJ: sc,
|
10716 | _sizeOfGeoBoundary: oc,
|
10717 | _sizeOfGeoCoord: nc,
|
10718 | _sizeOfGeoPolygon: qc,
|
10719 | _sizeOfGeofence: pc,
|
10720 | _sizeOfH3Index: mc,
|
10721 | _sizeOfLinkedGeoPolygon: rc,
|
10722 | _uncompact: wb,
|
10723 | establishStackSpace: Y,
|
10724 | stackAlloc: V,
|
10725 | stackRestore: X,
|
10726 | stackSave: W
|
10727 | };
|
10728 | }(
|
10729 | asmGlobalArg, asmLibraryArg, buffer);
|
10730 |
|
10731 | var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"];
|
10732 |
|
10733 | var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"];
|
10734 |
|
10735 | var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"];
|
10736 |
|
10737 | var _calloc = Module["_calloc"] = asm["_calloc"];
|
10738 |
|
10739 | var _compact = Module["_compact"] = asm["_compact"];
|
10740 |
|
10741 | var _destroyLinkedPolygon = Module["_destroyLinkedPolygon"] = asm["_destroyLinkedPolygon"];
|
10742 |
|
10743 | var _edgeLengthKm = Module["_edgeLengthKm"] = asm["_edgeLengthKm"];
|
10744 |
|
10745 | var _edgeLengthM = Module["_edgeLengthM"] = asm["_edgeLengthM"];
|
10746 |
|
10747 | var _emscripten_replace_memory = Module["_emscripten_replace_memory"] = asm["_emscripten_replace_memory"];
|
10748 |
|
10749 | var _experimentalH3ToLocalIj = Module["_experimentalH3ToLocalIj"] = asm["_experimentalH3ToLocalIj"];
|
10750 |
|
10751 | var _experimentalLocalIjToH3 = Module["_experimentalLocalIjToH3"] = asm["_experimentalLocalIjToH3"];
|
10752 |
|
10753 | var _free = Module["_free"] = asm["_free"];
|
10754 |
|
10755 | var _geoToH3 = Module["_geoToH3"] = asm["_geoToH3"];
|
10756 |
|
10757 | var _getDestinationH3IndexFromUnidirectionalEdge = Module["_getDestinationH3IndexFromUnidirectionalEdge"] = asm["_getDestinationH3IndexFromUnidirectionalEdge"];
|
10758 |
|
10759 | var _getH3IndexesFromUnidirectionalEdge = Module["_getH3IndexesFromUnidirectionalEdge"] = asm["_getH3IndexesFromUnidirectionalEdge"];
|
10760 |
|
10761 | var _getH3UnidirectionalEdge = Module["_getH3UnidirectionalEdge"] = asm["_getH3UnidirectionalEdge"];
|
10762 |
|
10763 | var _getH3UnidirectionalEdgeBoundary = Module["_getH3UnidirectionalEdgeBoundary"] = asm["_getH3UnidirectionalEdgeBoundary"];
|
10764 |
|
10765 | var _getH3UnidirectionalEdgesFromHexagon = Module["_getH3UnidirectionalEdgesFromHexagon"] = asm["_getH3UnidirectionalEdgesFromHexagon"];
|
10766 |
|
10767 | var _getOriginH3IndexFromUnidirectionalEdge = Module["_getOriginH3IndexFromUnidirectionalEdge"] = asm["_getOriginH3IndexFromUnidirectionalEdge"];
|
10768 |
|
10769 | var _getPentagonIndexes = Module["_getPentagonIndexes"] = asm["_getPentagonIndexes"];
|
10770 |
|
10771 | var _getRes0Indexes = Module["_getRes0Indexes"] = asm["_getRes0Indexes"];
|
10772 |
|
10773 | var _h3Distance = Module["_h3Distance"] = asm["_h3Distance"];
|
10774 |
|
10775 | var _h3GetBaseCell = Module["_h3GetBaseCell"] = asm["_h3GetBaseCell"];
|
10776 |
|
10777 | var _h3GetFaces = Module["_h3GetFaces"] = asm["_h3GetFaces"];
|
10778 |
|
10779 | var _h3IndexesAreNeighbors = Module["_h3IndexesAreNeighbors"] = asm["_h3IndexesAreNeighbors"];
|
10780 |
|
10781 | var _h3IsPentagon = Module["_h3IsPentagon"] = asm["_h3IsPentagon"];
|
10782 |
|
10783 | var _h3IsResClassIII = Module["_h3IsResClassIII"] = asm["_h3IsResClassIII"];
|
10784 |
|
10785 | var _h3IsValid = Module["_h3IsValid"] = asm["_h3IsValid"];
|
10786 |
|
10787 | var _h3Line = Module["_h3Line"] = asm["_h3Line"];
|
10788 |
|
10789 | var _h3LineSize = Module["_h3LineSize"] = asm["_h3LineSize"];
|
10790 |
|
10791 | var _h3SetToLinkedGeo = Module["_h3SetToLinkedGeo"] = asm["_h3SetToLinkedGeo"];
|
10792 |
|
10793 | var _h3ToCenterChild = Module["_h3ToCenterChild"] = asm["_h3ToCenterChild"];
|
10794 |
|
10795 | var _h3ToChildren = Module["_h3ToChildren"] = asm["_h3ToChildren"];
|
10796 |
|
10797 | var _h3ToGeo = Module["_h3ToGeo"] = asm["_h3ToGeo"];
|
10798 |
|
10799 | var _h3ToGeoBoundary = Module["_h3ToGeoBoundary"] = asm["_h3ToGeoBoundary"];
|
10800 |
|
10801 | var _h3ToParent = Module["_h3ToParent"] = asm["_h3ToParent"];
|
10802 |
|
10803 | var _h3UnidirectionalEdgeIsValid = Module["_h3UnidirectionalEdgeIsValid"] = asm["_h3UnidirectionalEdgeIsValid"];
|
10804 |
|
10805 | var _hexAreaKm2 = Module["_hexAreaKm2"] = asm["_hexAreaKm2"];
|
10806 |
|
10807 | var _hexAreaM2 = Module["_hexAreaM2"] = asm["_hexAreaM2"];
|
10808 |
|
10809 | var _hexRing = Module["_hexRing"] = asm["_hexRing"];
|
10810 |
|
10811 | var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"];
|
10812 |
|
10813 | var _kRing = Module["_kRing"] = asm["_kRing"];
|
10814 |
|
10815 | var _kRingDistances = Module["_kRingDistances"] = asm["_kRingDistances"];
|
10816 |
|
10817 | var _llvm_round_f64 = Module["_llvm_round_f64"] = asm["_llvm_round_f64"];
|
10818 |
|
10819 | var _malloc = Module["_malloc"] = asm["_malloc"];
|
10820 |
|
10821 | var _maxFaceCount = Module["_maxFaceCount"] = asm["_maxFaceCount"];
|
10822 |
|
10823 | var _maxH3ToChildrenSize = Module["_maxH3ToChildrenSize"] = asm["_maxH3ToChildrenSize"];
|
10824 |
|
10825 | var _maxKringSize = Module["_maxKringSize"] = asm["_maxKringSize"];
|
10826 |
|
10827 | var _maxPolyfillSize = Module["_maxPolyfillSize"] = asm["_maxPolyfillSize"];
|
10828 |
|
10829 | var _maxUncompactSize = Module["_maxUncompactSize"] = asm["_maxUncompactSize"];
|
10830 |
|
10831 | var _memcpy = Module["_memcpy"] = asm["_memcpy"];
|
10832 |
|
10833 | var _memset = Module["_memset"] = asm["_memset"];
|
10834 |
|
10835 | var _numHexagons = Module["_numHexagons"] = asm["_numHexagons"];
|
10836 |
|
10837 | var _pentagonIndexCount = Module["_pentagonIndexCount"] = asm["_pentagonIndexCount"];
|
10838 |
|
10839 | var _polyfill = Module["_polyfill"] = asm["_polyfill"];
|
10840 |
|
10841 | var _res0IndexCount = Module["_res0IndexCount"] = asm["_res0IndexCount"];
|
10842 |
|
10843 | var _round = Module["_round"] = asm["_round"];
|
10844 |
|
10845 | var _sbrk = Module["_sbrk"] = asm["_sbrk"];
|
10846 |
|
10847 | var _sizeOfCoordIJ = Module["_sizeOfCoordIJ"] = asm["_sizeOfCoordIJ"];
|
10848 |
|
10849 | var _sizeOfGeoBoundary = Module["_sizeOfGeoBoundary"] = asm["_sizeOfGeoBoundary"];
|
10850 |
|
10851 | var _sizeOfGeoCoord = Module["_sizeOfGeoCoord"] = asm["_sizeOfGeoCoord"];
|
10852 |
|
10853 | var _sizeOfGeoPolygon = Module["_sizeOfGeoPolygon"] = asm["_sizeOfGeoPolygon"];
|
10854 |
|
10855 | var _sizeOfGeofence = Module["_sizeOfGeofence"] = asm["_sizeOfGeofence"];
|
10856 |
|
10857 | var _sizeOfH3Index = Module["_sizeOfH3Index"] = asm["_sizeOfH3Index"];
|
10858 |
|
10859 | var _sizeOfLinkedGeoPolygon = Module["_sizeOfLinkedGeoPolygon"] = asm["_sizeOfLinkedGeoPolygon"];
|
10860 |
|
10861 | var _uncompact = Module["_uncompact"] = asm["_uncompact"];
|
10862 |
|
10863 | var establishStackSpace = Module["establishStackSpace"] = asm["establishStackSpace"];
|
10864 | var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"];
|
10865 | var stackRestore = Module["stackRestore"] = asm["stackRestore"];
|
10866 | var stackSave = Module["stackSave"] = asm["stackSave"];
|
10867 | Module["asm"] = asm;
|
10868 | Module["cwrap"] = cwrap;
|
10869 | Module["setValue"] = setValue;
|
10870 | Module["getValue"] = getValue;
|
10871 | Module["getTempRet0"] = getTempRet0;
|
10872 |
|
10873 | if (memoryInitializer) {
|
10874 | if (!isDataURI(memoryInitializer)) {
|
10875 | memoryInitializer = locateFile(memoryInitializer);
|
10876 | }
|
10877 |
|
10878 | {
|
10879 | addRunDependency("memory initializer");
|
10880 |
|
10881 | var applyMemoryInitializer = function (data) {
|
10882 | if (data.byteLength) { data = new Uint8Array(data); }
|
10883 | HEAPU8.set(data, GLOBAL_BASE);
|
10884 | if (Module["memoryInitializerRequest"]) { delete Module["memoryInitializerRequest"].response; }
|
10885 | removeRunDependency("memory initializer");
|
10886 | };
|
10887 |
|
10888 | var doBrowserLoad = function () {
|
10889 | readAsync(memoryInitializer, applyMemoryInitializer, function () {
|
10890 | throw "could not load memory initializer " + memoryInitializer;
|
10891 | });
|
10892 | };
|
10893 |
|
10894 | var memoryInitializerBytes = tryParseAsDataURI(memoryInitializer);
|
10895 |
|
10896 | if (memoryInitializerBytes) {
|
10897 | applyMemoryInitializer(memoryInitializerBytes.buffer);
|
10898 | } else if (Module["memoryInitializerRequest"]) {
|
10899 | var useRequest = function () {
|
10900 | var request = Module["memoryInitializerRequest"];
|
10901 | var response = request.response;
|
10902 |
|
10903 | if (request.status !== 200 && request.status !== 0) {
|
10904 | var data = tryParseAsDataURI(Module["memoryInitializerRequestURL"]);
|
10905 |
|
10906 | if (data) {
|
10907 | response = data.buffer;
|
10908 | } else {
|
10909 | console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: " + request.status + ", retrying " + memoryInitializer);
|
10910 | doBrowserLoad();
|
10911 | return;
|
10912 | }
|
10913 | }
|
10914 |
|
10915 | applyMemoryInitializer(response);
|
10916 | };
|
10917 |
|
10918 | if (Module["memoryInitializerRequest"].response) {
|
10919 | setTimeout(useRequest, 0);
|
10920 | } else {
|
10921 | Module["memoryInitializerRequest"].addEventListener("load", useRequest);
|
10922 | }
|
10923 | } else {
|
10924 | doBrowserLoad();
|
10925 | }
|
10926 | }
|
10927 | }
|
10928 |
|
10929 | var calledRun;
|
10930 |
|
10931 | dependenciesFulfilled = function runCaller() {
|
10932 | if (!calledRun) { run(); }
|
10933 | if (!calledRun) { dependenciesFulfilled = runCaller; }
|
10934 | };
|
10935 |
|
10936 | function run(args) {
|
10937 | args = args || arguments_;
|
10938 |
|
10939 | if (runDependencies > 0) {
|
10940 | return;
|
10941 | }
|
10942 |
|
10943 | preRun();
|
10944 | if (runDependencies > 0) { return; }
|
10945 |
|
10946 | function doRun() {
|
10947 | if (calledRun) { return; }
|
10948 | calledRun = true;
|
10949 | if (ABORT) { return; }
|
10950 | initRuntime();
|
10951 | preMain();
|
10952 | if (Module["onRuntimeInitialized"]) { Module["onRuntimeInitialized"](); }
|
10953 | postRun();
|
10954 | }
|
10955 |
|
10956 | if (Module["setStatus"]) {
|
10957 | Module["setStatus"]("Running...");
|
10958 | setTimeout(function () {
|
10959 | setTimeout(function () {
|
10960 | Module["setStatus"]("");
|
10961 | }, 1);
|
10962 | doRun();
|
10963 | }, 1);
|
10964 | } else {
|
10965 | doRun();
|
10966 | }
|
10967 | }
|
10968 |
|
10969 | Module["run"] = run;
|
10970 |
|
10971 | function abort(what) {
|
10972 | if (Module["onAbort"]) {
|
10973 | Module["onAbort"](what);
|
10974 | }
|
10975 |
|
10976 | what += "";
|
10977 | out(what);
|
10978 | err(what);
|
10979 | ABORT = true;
|
10980 | throw "abort(" + what + "). Build with -s ASSERTIONS=1 for more info.";
|
10981 | }
|
10982 |
|
10983 | Module["abort"] = abort;
|
10984 |
|
10985 | if (Module["preInit"]) {
|
10986 | if (typeof Module["preInit"] == "function") { Module["preInit"] = [Module["preInit"]]; }
|
10987 |
|
10988 | while (Module["preInit"].length > 0) {
|
10989 | Module["preInit"].pop()();
|
10990 | }
|
10991 | }
|
10992 | run();
|
10993 | return libh3;
|
10994 | }(typeof libh3 === 'object' ? libh3 : {});
|
10995 |
|
10996 |
|
10997 |
|
10998 |
|
10999 |
|
11000 |
|
11001 |
|
11002 |
|
11003 |
|
11004 |
|
11005 |
|
11006 |
|
11007 |
|
11008 |
|
11009 |
|
11010 |
|
11011 |
|
11012 |
|
11013 | var NUMBER = 'number';
|
11014 | var BOOLEAN = NUMBER;
|
11015 | var H3_LOWER = NUMBER;
|
11016 | var H3_UPPER = NUMBER;
|
11017 | var RESOLUTION = NUMBER;
|
11018 | var POINTER = NUMBER;
|
11019 |
|
11020 |
|
11021 |
|
11022 | var BINDINGS = [
|
11023 | ['sizeOfH3Index', NUMBER], ['sizeOfGeoCoord', NUMBER], ['sizeOfGeoBoundary', NUMBER], ['sizeOfGeoPolygon', NUMBER], ['sizeOfGeofence', NUMBER], ['sizeOfLinkedGeoPolygon', NUMBER], ['sizeOfCoordIJ', NUMBER],
|
11024 | ['h3IsValid', BOOLEAN, [H3_LOWER, H3_UPPER]], ['geoToH3', H3_LOWER, [NUMBER, NUMBER, RESOLUTION]], ['h3ToGeo', null, [H3_LOWER, H3_UPPER, POINTER]], ['h3ToGeoBoundary', null, [H3_LOWER, H3_UPPER, POINTER]], ['maxKringSize', NUMBER, [NUMBER]], ['kRing', null, [H3_LOWER, H3_UPPER, NUMBER, POINTER]], ['kRingDistances', null, [H3_LOWER, H3_UPPER, NUMBER, POINTER, POINTER]], ['hexRing', null, [H3_LOWER, H3_UPPER, NUMBER, POINTER]], ['maxPolyfillSize', NUMBER, [POINTER, RESOLUTION]], ['polyfill', null, [POINTER, RESOLUTION, POINTER]], ['h3SetToLinkedGeo', null, [POINTER, NUMBER, POINTER]], ['destroyLinkedPolygon', null, [POINTER]], ['compact', NUMBER, [POINTER, POINTER, NUMBER]], ['uncompact', NUMBER, [POINTER, NUMBER, POINTER, NUMBER, RESOLUTION]], ['maxUncompactSize', NUMBER, [POINTER, NUMBER, RESOLUTION]], ['h3IsPentagon', BOOLEAN, [H3_LOWER, H3_UPPER]], ['h3IsResClassIII', BOOLEAN, [H3_LOWER, H3_UPPER]], ['h3GetBaseCell', NUMBER, [H3_LOWER, H3_UPPER]], ['maxFaceCount', NUMBER, [H3_LOWER, H3_UPPER]], ['h3GetFaces', null, [H3_LOWER, H3_UPPER, POINTER]], ['h3ToParent', H3_LOWER, [H3_LOWER, H3_UPPER, RESOLUTION]], ['h3ToChildren', null, [H3_LOWER, H3_UPPER, RESOLUTION, POINTER]], ['h3ToCenterChild', H3_LOWER, [H3_LOWER, H3_UPPER, RESOLUTION]], ['maxH3ToChildrenSize', NUMBER, [H3_LOWER, H3_UPPER, RESOLUTION]], ['h3IndexesAreNeighbors', BOOLEAN, [H3_LOWER, H3_UPPER, H3_LOWER, H3_UPPER]], ['getH3UnidirectionalEdge', H3_LOWER, [H3_LOWER, H3_UPPER, H3_LOWER, H3_UPPER]], ['getOriginH3IndexFromUnidirectionalEdge', H3_LOWER, [H3_LOWER, H3_UPPER]], ['getDestinationH3IndexFromUnidirectionalEdge', H3_LOWER, [H3_LOWER, H3_UPPER]], ['h3UnidirectionalEdgeIsValid', BOOLEAN, [H3_LOWER, H3_UPPER]], ['getH3IndexesFromUnidirectionalEdge', null, [H3_LOWER, H3_UPPER, POINTER]], ['getH3UnidirectionalEdgesFromHexagon', null, [H3_LOWER, H3_UPPER, POINTER]], ['getH3UnidirectionalEdgeBoundary', null, [H3_LOWER, H3_UPPER, POINTER]], ['h3Distance', NUMBER, [H3_LOWER, H3_UPPER, H3_LOWER, H3_UPPER]], ['h3Line', NUMBER, [H3_LOWER, H3_UPPER, H3_LOWER, H3_UPPER, POINTER]], ['h3LineSize', NUMBER, [H3_LOWER, H3_UPPER, H3_LOWER, H3_UPPER]], ['experimentalH3ToLocalIj', NUMBER, [H3_LOWER, H3_UPPER, H3_LOWER, H3_UPPER, POINTER]], ['experimentalLocalIjToH3', NUMBER, [H3_LOWER, H3_UPPER, POINTER, POINTER]], ['hexAreaM2', NUMBER, [RESOLUTION]], ['hexAreaKm2', NUMBER, [RESOLUTION]], ['edgeLengthM', NUMBER, [RESOLUTION]], ['edgeLengthKm', NUMBER, [RESOLUTION]], ['numHexagons', NUMBER, [RESOLUTION]], ['getRes0Indexes', null, [POINTER]], ['res0IndexCount', NUMBER], ['getPentagonIndexes', null, [NUMBER, POINTER]], ['pentagonIndexCount', NUMBER]];
|
11025 |
|
11026 |
|
11027 |
|
11028 |
|
11029 |
|
11030 |
|
11031 |
|
11032 |
|
11033 |
|
11034 |
|
11035 |
|
11036 |
|
11037 |
|
11038 |
|
11039 |
|
11040 |
|
11041 |
|
11042 |
|
11043 |
|
11044 |
|
11045 |
|
11046 |
|
11047 | var H3 = {};
|
11048 |
|
11049 | BINDINGS.forEach(function bind(def) {
|
11050 | H3[def[0]] = libh3.cwrap.apply(libh3, def);
|
11051 | });
|
11052 |
|
11053 | var BASE_16 = 16;
|
11054 |
|
11055 |
|
11056 | var SZ_INT = 4;
|
11057 | var SZ_PTR = 4;
|
11058 | var SZ_DBL = 8;
|
11059 | var SZ_H3INDEX = H3.sizeOfH3Index();
|
11060 | var SZ_GEOCOORD = H3.sizeOfGeoCoord();
|
11061 | var SZ_GEOBOUNDARY = H3.sizeOfGeoBoundary();
|
11062 | var SZ_GEOPOLYGON = H3.sizeOfGeoPolygon();
|
11063 | var SZ_GEOFENCE = H3.sizeOfGeofence();
|
11064 | var SZ_LINKED_GEOPOLYGON = H3.sizeOfLinkedGeoPolygon();
|
11065 | var SZ_COORDIJ = H3.sizeOfCoordIJ();
|
11066 |
|
11067 |
|
11068 | var UNITS = {
|
11069 | m: 'm',
|
11070 | km: 'km',
|
11071 | m2: 'm2',
|
11072 | km2: 'km2'
|
11073 | };
|
11074 |
|
11075 |
|
11076 |
|
11077 |
|
11078 |
|
11079 |
|
11080 |
|
11081 |
|
11082 |
|
11083 | function validateRes(res) {
|
11084 | if (typeof res !== 'number' || res < 0 || res > 15 || Math.floor(res) !== res) {
|
11085 | throw new Error(("Invalid resolution: " + res));
|
11086 | }
|
11087 | }
|
11088 |
|
11089 |
|
11090 |
|
11091 |
|
11092 |
|
11093 |
|
11094 |
|
11095 |
|
11096 | function h3IndexToSplitLong(h3Index) {
|
11097 | if (typeof h3Index !== 'string') {
|
11098 | return [0, 0];
|
11099 | }
|
11100 |
|
11101 | var upper = parseInt(h3Index.substring(0, h3Index.length - 8), BASE_16);
|
11102 | var lower = parseInt(h3Index.substring(h3Index.length - 8), BASE_16);
|
11103 | return [lower, upper];
|
11104 | }
|
11105 |
|
11106 |
|
11107 |
|
11108 |
|
11109 |
|
11110 |
|
11111 |
|
11112 |
|
11113 | function hexFrom32Bit(num) {
|
11114 | if (num >= 0) {
|
11115 | return num.toString(BASE_16);
|
11116 | }
|
11117 |
|
11118 |
|
11119 | num = num & 0x7fffffff;
|
11120 | var tempStr = zeroPad(8, num.toString(BASE_16));
|
11121 | var topNum = (parseInt(tempStr[0], BASE_16) + 8).toString(BASE_16);
|
11122 | tempStr = topNum + tempStr.substring(1);
|
11123 | return tempStr;
|
11124 | }
|
11125 |
|
11126 |
|
11127 |
|
11128 |
|
11129 |
|
11130 |
|
11131 |
|
11132 |
|
11133 |
|
11134 | function splitLongToh3Index(lower, upper) {
|
11135 | return hexFrom32Bit(upper) + zeroPad(8, hexFrom32Bit(lower));
|
11136 | }
|
11137 |
|
11138 |
|
11139 |
|
11140 |
|
11141 |
|
11142 |
|
11143 |
|
11144 |
|
11145 |
|
11146 | function zeroPad(fullLen, numStr) {
|
11147 | var numZeroes = fullLen - numStr.length;
|
11148 | var outStr = '';
|
11149 |
|
11150 | for (var i = 0; i < numZeroes; i++) {
|
11151 | outStr += '0';
|
11152 | }
|
11153 |
|
11154 | outStr = outStr + numStr;
|
11155 | return outStr;
|
11156 | }
|
11157 |
|
11158 |
|
11159 |
|
11160 |
|
11161 |
|
11162 |
|
11163 |
|
11164 |
|
11165 |
|
11166 |
|
11167 | function polygonArrayToGeofence(polygonArray, geofence, isGeoJson) {
|
11168 | var numVerts = polygonArray.length;
|
11169 |
|
11170 | var geoCoordArray = libh3._calloc(numVerts, SZ_GEOCOORD);
|
11171 |
|
11172 |
|
11173 | var latIndex = isGeoJson ? 1 : 0;
|
11174 | var lngIndex = isGeoJson ? 0 : 1;
|
11175 |
|
11176 | for (var i = 0; i < numVerts * 2; i += 2) {
|
11177 | libh3.HEAPF64.set([polygonArray[i / 2][latIndex], polygonArray[i / 2][lngIndex]].map(degsToRads), geoCoordArray / SZ_DBL + i);
|
11178 | }
|
11179 |
|
11180 | libh3.HEAPU32.set([numVerts, geoCoordArray], geofence / SZ_INT);
|
11181 | return geofence;
|
11182 | }
|
11183 |
|
11184 |
|
11185 |
|
11186 |
|
11187 |
|
11188 |
|
11189 |
|
11190 |
|
11191 |
|
11192 | function coordinatesToGeoPolygon(coordinates, isGeoJson) {
|
11193 |
|
11194 | var numHoles = coordinates.length - 1;
|
11195 |
|
11196 | var geoPolygon = libh3._calloc(SZ_GEOPOLYGON);
|
11197 |
|
11198 |
|
11199 | var geofenceOffset = 0;
|
11200 | var numHolesOffset = geofenceOffset + SZ_GEOFENCE;
|
11201 | var holesOffset = numHolesOffset + SZ_INT;
|
11202 |
|
11203 | polygonArrayToGeofence(coordinates[0], geoPolygon + geofenceOffset, isGeoJson);
|
11204 | var holes;
|
11205 |
|
11206 | if (numHoles > 0) {
|
11207 | holes = libh3._calloc(numHoles, SZ_GEOFENCE);
|
11208 |
|
11209 | for (var i = 0; i < numHoles; i++) {
|
11210 | polygonArrayToGeofence(coordinates[i + 1], holes + SZ_GEOFENCE * i, isGeoJson);
|
11211 | }
|
11212 | }
|
11213 |
|
11214 | libh3.setValue(geoPolygon + numHolesOffset, numHoles, 'i32');
|
11215 | libh3.setValue(geoPolygon + holesOffset, holes, 'i32');
|
11216 | return geoPolygon;
|
11217 | }
|
11218 |
|
11219 |
|
11220 |
|
11221 |
|
11222 |
|
11223 |
|
11224 |
|
11225 |
|
11226 | function destroyGeoPolygon(geoPolygon) {
|
11227 |
|
11228 | var geofenceOffset = 0;
|
11229 | var numHolesOffset = geofenceOffset + SZ_GEOFENCE;
|
11230 | var holesOffset = numHolesOffset + SZ_INT;
|
11231 |
|
11232 | libh3._free(libh3.getValue(geoPolygon + geofenceOffset, 'i8*'));
|
11233 |
|
11234 |
|
11235 | var numHoles = libh3.getValue(geoPolygon + numHolesOffset, 'i32');
|
11236 |
|
11237 | for (var i = 0; i < numHoles; i++) {
|
11238 | libh3._free(libh3.getValue(geoPolygon + holesOffset + SZ_GEOFENCE * i, 'i8*'));
|
11239 | }
|
11240 |
|
11241 | libh3._free(geoPolygon);
|
11242 | }
|
11243 |
|
11244 |
|
11245 |
|
11246 |
|
11247 |
|
11248 |
|
11249 |
|
11250 |
|
11251 |
|
11252 |
|
11253 |
|
11254 | function readLong(invocation) {
|
11255 |
|
11256 | var upper = libh3.getTempRet0();
|
11257 | return [invocation, upper];
|
11258 | }
|
11259 |
|
11260 |
|
11261 |
|
11262 |
|
11263 |
|
11264 |
|
11265 |
|
11266 |
|
11267 |
|
11268 |
|
11269 | function readH3Index(invocation) {
|
11270 | var ref = readLong(invocation);
|
11271 | var lower = ref[0];
|
11272 | var upper = ref[1];
|
11273 |
|
11274 |
|
11275 | return upper ? splitLongToh3Index(lower, upper) : null;
|
11276 | }
|
11277 |
|
11278 |
|
11279 |
|
11280 |
|
11281 |
|
11282 |
|
11283 |
|
11284 |
|
11285 |
|
11286 |
|
11287 | function readH3IndexFromPointer(cAddress, offset) {
|
11288 | if ( offset === void 0 ) offset = 0;
|
11289 |
|
11290 | var lower = libh3.getValue(cAddress + SZ_INT * offset * 2, 'i32');
|
11291 | var upper = libh3.getValue(cAddress + SZ_INT * (offset * 2 + 1), 'i32');
|
11292 |
|
11293 |
|
11294 | return upper ? splitLongToh3Index(lower, upper) : null;
|
11295 | }
|
11296 |
|
11297 |
|
11298 |
|
11299 |
|
11300 |
|
11301 |
|
11302 |
|
11303 |
|
11304 |
|
11305 |
|
11306 |
|
11307 | function storeH3Index(h3Index, cAddress, offset) {
|
11308 |
|
11309 |
|
11310 |
|
11311 |
|
11312 |
|
11313 | libh3.HEAPU32.set(h3IndexToSplitLong(h3Index), cAddress / SZ_INT + 2 * offset);
|
11314 | }
|
11315 |
|
11316 |
|
11317 |
|
11318 |
|
11319 |
|
11320 |
|
11321 |
|
11322 |
|
11323 |
|
11324 |
|
11325 |
|
11326 |
|
11327 | function readArrayOfHexagons(cAddress, maxCount) {
|
11328 | var out = [];
|
11329 |
|
11330 | for (var i = 0; i < maxCount; i++) {
|
11331 | var h3Index = readH3IndexFromPointer(cAddress, i);
|
11332 |
|
11333 | if (h3Index !== null) {
|
11334 | out.push(h3Index);
|
11335 | }
|
11336 | }
|
11337 |
|
11338 | return out;
|
11339 | }
|
11340 |
|
11341 |
|
11342 |
|
11343 |
|
11344 |
|
11345 |
|
11346 |
|
11347 |
|
11348 | function storeArrayOfHexagons(cAddress, hexagons) {
|
11349 |
|
11350 |
|
11351 | var count = hexagons.length;
|
11352 |
|
11353 | for (var i = 0; i < count; i++) {
|
11354 | storeH3Index(hexagons[i], cAddress, i);
|
11355 | }
|
11356 | }
|
11357 |
|
11358 | function readSingleCoord(cAddress) {
|
11359 | return radsToDegs(libh3.getValue(cAddress, 'double'));
|
11360 | }
|
11361 |
|
11362 |
|
11363 |
|
11364 |
|
11365 |
|
11366 |
|
11367 |
|
11368 |
|
11369 | function readGeoCoord(cAddress) {
|
11370 | return [readSingleCoord(cAddress), readSingleCoord(cAddress + SZ_DBL)];
|
11371 | }
|
11372 |
|
11373 |
|
11374 |
|
11375 |
|
11376 |
|
11377 |
|
11378 |
|
11379 |
|
11380 | function readGeoCoordGeoJson(cAddress) {
|
11381 | return [readSingleCoord(cAddress + SZ_DBL), readSingleCoord(cAddress)];
|
11382 | }
|
11383 |
|
11384 |
|
11385 |
|
11386 |
|
11387 |
|
11388 |
|
11389 |
|
11390 |
|
11391 |
|
11392 |
|
11393 | function readGeoBoundary(geoBoundary, geoJsonCoords, closedLoop) {
|
11394 | var numVerts = libh3.getValue(geoBoundary, 'i32');
|
11395 |
|
11396 |
|
11397 | var vertsPos = geoBoundary + SZ_DBL;
|
11398 | var out = [];
|
11399 |
|
11400 | var readCoord = geoJsonCoords ? readGeoCoordGeoJson : readGeoCoord;
|
11401 |
|
11402 | for (var i = 0; i < numVerts * 2; i += 2) {
|
11403 | out.push(readCoord(vertsPos + SZ_DBL * i));
|
11404 | }
|
11405 |
|
11406 | if (closedLoop) {
|
11407 |
|
11408 | out.push(out[0]);
|
11409 | }
|
11410 |
|
11411 | return out;
|
11412 | }
|
11413 |
|
11414 |
|
11415 |
|
11416 |
|
11417 |
|
11418 |
|
11419 |
|
11420 |
|
11421 |
|
11422 | function readMultiPolygon(polygon, formatAsGeoJson) {
|
11423 | var output = [];
|
11424 | var readCoord = formatAsGeoJson ? readGeoCoordGeoJson : readGeoCoord;
|
11425 | var loops;
|
11426 | var loop;
|
11427 | var coords;
|
11428 | var coord;
|
11429 |
|
11430 | while (polygon) {
|
11431 | output.push(loops = []);
|
11432 |
|
11433 | loop = libh3.getValue(polygon, 'i8*');
|
11434 |
|
11435 | while (loop) {
|
11436 | loops.push(coords = []);
|
11437 |
|
11438 | coord = libh3.getValue(loop, 'i8*');
|
11439 |
|
11440 | while (coord) {
|
11441 | coords.push(readCoord(coord));
|
11442 |
|
11443 | coord = libh3.getValue(coord + SZ_DBL * 2, 'i8*');
|
11444 | }
|
11445 |
|
11446 | if (formatAsGeoJson) {
|
11447 |
|
11448 | coords.push(coords[0]);
|
11449 | }
|
11450 |
|
11451 |
|
11452 | loop = libh3.getValue(loop + SZ_PTR * 2, 'i8*');
|
11453 | }
|
11454 |
|
11455 |
|
11456 | polygon = libh3.getValue(polygon + SZ_PTR * 2, 'i8*');
|
11457 | }
|
11458 |
|
11459 | return output;
|
11460 | }
|
11461 |
|
11462 |
|
11463 |
|
11464 |
|
11465 |
|
11466 |
|
11467 |
|
11468 |
|
11469 | function readCoordIJ(cAddress) {
|
11470 | return {
|
11471 | i: libh3.getValue(cAddress, 'i32'),
|
11472 | j: libh3.getValue(cAddress + SZ_INT, 'i32')
|
11473 | };
|
11474 | }
|
11475 |
|
11476 |
|
11477 |
|
11478 |
|
11479 |
|
11480 |
|
11481 |
|
11482 |
|
11483 | function storeCoordIJ(cAddress, ref) {
|
11484 | var i = ref.i;
|
11485 | var j = ref.j;
|
11486 |
|
11487 | libh3.setValue(cAddress, i, 'i32');
|
11488 | libh3.setValue(cAddress + SZ_INT, j, 'i32');
|
11489 | }
|
11490 |
|
11491 |
|
11492 |
|
11493 |
|
11494 |
|
11495 |
|
11496 |
|
11497 |
|
11498 |
|
11499 |
|
11500 | function readArrayOfPositiveIntegers(cAddress, count) {
|
11501 | var out = [];
|
11502 |
|
11503 | for (var i = 0; i < count; i++) {
|
11504 | var int = libh3.getValue(cAddress + SZ_INT * i, 'i32');
|
11505 |
|
11506 | if (int >= 0) {
|
11507 | out.push(int);
|
11508 | }
|
11509 | }
|
11510 |
|
11511 | return out;
|
11512 | }
|
11513 |
|
11514 |
|
11515 |
|
11516 |
|
11517 |
|
11518 |
|
11519 |
|
11520 |
|
11521 |
|
11522 |
|
11523 | function h3IsValid(h3Index) {
|
11524 | var ref = h3IndexToSplitLong(h3Index);
|
11525 | var lower = ref[0];
|
11526 | var upper = ref[1];
|
11527 | return Boolean(H3.h3IsValid(lower, upper));
|
11528 | }
|
11529 |
|
11530 |
|
11531 |
|
11532 |
|
11533 |
|
11534 |
|
11535 |
|
11536 | function h3IsPentagon(h3Index) {
|
11537 | var ref = h3IndexToSplitLong(h3Index);
|
11538 | var lower = ref[0];
|
11539 | var upper = ref[1];
|
11540 | return Boolean(H3.h3IsPentagon(lower, upper));
|
11541 | }
|
11542 |
|
11543 |
|
11544 |
|
11545 |
|
11546 |
|
11547 |
|
11548 |
|
11549 |
|
11550 |
|
11551 | function h3IsResClassIII(h3Index) {
|
11552 | var ref = h3IndexToSplitLong(h3Index);
|
11553 | var lower = ref[0];
|
11554 | var upper = ref[1];
|
11555 | return Boolean(H3.h3IsResClassIII(lower, upper));
|
11556 | }
|
11557 |
|
11558 |
|
11559 |
|
11560 |
|
11561 |
|
11562 |
|
11563 |
|
11564 | function h3GetBaseCell(h3Index) {
|
11565 | var ref = h3IndexToSplitLong(h3Index);
|
11566 | var lower = ref[0];
|
11567 | var upper = ref[1];
|
11568 | return H3.h3GetBaseCell(lower, upper);
|
11569 | }
|
11570 |
|
11571 |
|
11572 |
|
11573 |
|
11574 |
|
11575 |
|
11576 |
|
11577 | function h3GetFaces(h3Index) {
|
11578 | var ref = h3IndexToSplitLong(h3Index);
|
11579 | var lower = ref[0];
|
11580 | var upper = ref[1];
|
11581 | var count = H3.maxFaceCount(lower, upper);
|
11582 |
|
11583 | var faces = libh3._malloc(SZ_INT * count);
|
11584 |
|
11585 | H3.h3GetFaces(lower, upper, faces);
|
11586 | var out = readArrayOfPositiveIntegers(faces, count);
|
11587 |
|
11588 | libh3._free(faces);
|
11589 |
|
11590 | return out;
|
11591 | }
|
11592 |
|
11593 |
|
11594 |
|
11595 |
|
11596 |
|
11597 |
|
11598 |
|
11599 | function h3GetResolution(h3Index) {
|
11600 | if (typeof h3Index !== 'string') {
|
11601 | return -1;
|
11602 | }
|
11603 |
|
11604 | return parseInt(h3Index.charAt(1), BASE_16);
|
11605 | }
|
11606 |
|
11607 |
|
11608 |
|
11609 |
|
11610 |
|
11611 |
|
11612 |
|
11613 |
|
11614 |
|
11615 | function geoToH3(lat, lng, res) {
|
11616 | var latlng = libh3._malloc(SZ_GEOCOORD);
|
11617 |
|
11618 |
|
11619 | libh3.HEAPF64.set([lat, lng].map(degsToRads), latlng / SZ_DBL);
|
11620 |
|
11621 | var h3Index = readH3Index(H3.geoToH3(latlng, res));
|
11622 |
|
11623 | libh3._free(latlng);
|
11624 |
|
11625 | return h3Index;
|
11626 | }
|
11627 |
|
11628 |
|
11629 |
|
11630 |
|
11631 |
|
11632 |
|
11633 |
|
11634 | function h3ToGeo(h3Index) {
|
11635 | var latlng = libh3._malloc(SZ_GEOCOORD);
|
11636 |
|
11637 | var ref = h3IndexToSplitLong(h3Index);
|
11638 | var lower = ref[0];
|
11639 | var upper = ref[1];
|
11640 | H3.h3ToGeo(lower, upper, latlng);
|
11641 | var out = readGeoCoord(latlng);
|
11642 |
|
11643 | libh3._free(latlng);
|
11644 |
|
11645 | return out;
|
11646 | }
|
11647 |
|
11648 |
|
11649 |
|
11650 |
|
11651 |
|
11652 |
|
11653 |
|
11654 |
|
11655 |
|
11656 |
|
11657 | function h3ToGeoBoundary(h3Index, formatAsGeoJson) {
|
11658 | var geoBoundary = libh3._malloc(SZ_GEOBOUNDARY);
|
11659 |
|
11660 | var ref = h3IndexToSplitLong(h3Index);
|
11661 | var lower = ref[0];
|
11662 | var upper = ref[1];
|
11663 | H3.h3ToGeoBoundary(lower, upper, geoBoundary);
|
11664 | var out = readGeoBoundary(geoBoundary, formatAsGeoJson, formatAsGeoJson);
|
11665 |
|
11666 | libh3._free(geoBoundary);
|
11667 |
|
11668 | return out;
|
11669 | }
|
11670 |
|
11671 |
|
11672 |
|
11673 |
|
11674 |
|
11675 |
|
11676 |
|
11677 |
|
11678 |
|
11679 |
|
11680 | function h3ToParent(h3Index, res) {
|
11681 | var ref = h3IndexToSplitLong(h3Index);
|
11682 | var lower = ref[0];
|
11683 | var upper = ref[1];
|
11684 | return readH3Index(H3.h3ToParent(lower, upper, res));
|
11685 | }
|
11686 |
|
11687 |
|
11688 |
|
11689 |
|
11690 |
|
11691 |
|
11692 |
|
11693 |
|
11694 | function h3ToChildren(h3Index, res) {
|
11695 |
|
11696 |
|
11697 | if (!h3IsValid(h3Index)) {
|
11698 | return [];
|
11699 | }
|
11700 |
|
11701 | var ref = h3IndexToSplitLong(h3Index);
|
11702 | var lower = ref[0];
|
11703 | var upper = ref[1];
|
11704 | var maxCount = H3.maxH3ToChildrenSize(lower, upper, res);
|
11705 |
|
11706 | var hexagons = libh3._calloc(maxCount, SZ_H3INDEX);
|
11707 |
|
11708 | H3.h3ToChildren(lower, upper, res, hexagons);
|
11709 | var out = readArrayOfHexagons(hexagons, maxCount);
|
11710 |
|
11711 | libh3._free(hexagons);
|
11712 |
|
11713 | return out;
|
11714 | }
|
11715 |
|
11716 |
|
11717 |
|
11718 |
|
11719 |
|
11720 |
|
11721 |
|
11722 |
|
11723 | function h3ToCenterChild(h3Index, res) {
|
11724 | var ref = h3IndexToSplitLong(h3Index);
|
11725 | var lower = ref[0];
|
11726 | var upper = ref[1];
|
11727 | return readH3Index(H3.h3ToCenterChild(lower, upper, res));
|
11728 | }
|
11729 |
|
11730 |
|
11731 |
|
11732 |
|
11733 |
|
11734 |
|
11735 |
|
11736 |
|
11737 | function kRing(h3Index, ringSize) {
|
11738 | var ref = h3IndexToSplitLong(h3Index);
|
11739 | var lower = ref[0];
|
11740 | var upper = ref[1];
|
11741 | var maxCount = H3.maxKringSize(ringSize);
|
11742 |
|
11743 | var hexagons = libh3._calloc(maxCount, SZ_H3INDEX);
|
11744 |
|
11745 | H3.kRing(lower, upper, ringSize, hexagons);
|
11746 | var out = readArrayOfHexagons(hexagons, maxCount);
|
11747 |
|
11748 | libh3._free(hexagons);
|
11749 |
|
11750 | return out;
|
11751 | }
|
11752 |
|
11753 |
|
11754 |
|
11755 |
|
11756 |
|
11757 |
|
11758 |
|
11759 |
|
11760 |
|
11761 | function kRingDistances(h3Index, ringSize) {
|
11762 | var ref = h3IndexToSplitLong(h3Index);
|
11763 | var lower = ref[0];
|
11764 | var upper = ref[1];
|
11765 | var maxCount = H3.maxKringSize(ringSize);
|
11766 |
|
11767 | var kRings = libh3._calloc(maxCount, SZ_H3INDEX);
|
11768 |
|
11769 | var distances = libh3._calloc(maxCount, SZ_INT);
|
11770 |
|
11771 | H3.kRingDistances(lower, upper, ringSize, kRings, distances);
|
11772 |
|
11773 | var out = [];
|
11774 |
|
11775 | for (var i = 0; i < ringSize + 1; i++) {
|
11776 | out.push([]);
|
11777 | }
|
11778 |
|
11779 |
|
11780 | for (var i$1 = 0; i$1 < maxCount * 2; i$1 += 2) {
|
11781 | var hexLower = libh3.getValue(kRings + SZ_INT * i$1, 'i32');
|
11782 | var hexUpper = libh3.getValue(kRings + SZ_INT * (i$1 + 1), 'i32');
|
11783 | var index = libh3.getValue(distances + SZ_INT * (i$1 / 2), 'i32');
|
11784 |
|
11785 | if (hexLower !== 0 || hexUpper !== 0) {
|
11786 | out[index].push(splitLongToh3Index(hexLower, hexUpper));
|
11787 | }
|
11788 | }
|
11789 |
|
11790 | libh3._free(kRings);
|
11791 |
|
11792 | libh3._free(distances);
|
11793 |
|
11794 | return out;
|
11795 | }
|
11796 |
|
11797 |
|
11798 |
|
11799 |
|
11800 |
|
11801 |
|
11802 |
|
11803 |
|
11804 |
|
11805 |
|
11806 | function hexRing(h3Index, ringSize) {
|
11807 | var maxCount = ringSize === 0 ? 1 : 6 * ringSize;
|
11808 |
|
11809 | var hexagons = libh3._calloc(maxCount, SZ_H3INDEX);
|
11810 |
|
11811 | var retVal = H3.hexRing.apply(H3, h3IndexToSplitLong(h3Index).concat( [ringSize], [hexagons] ));
|
11812 |
|
11813 | if (retVal !== 0) {
|
11814 | libh3._free(hexagons);
|
11815 |
|
11816 | throw new Error('Failed to get hexRing (encountered a pentagon?)');
|
11817 | }
|
11818 |
|
11819 | var out = readArrayOfHexagons(hexagons, maxCount);
|
11820 |
|
11821 | libh3._free(hexagons);
|
11822 |
|
11823 | return out;
|
11824 | }
|
11825 |
|
11826 |
|
11827 |
|
11828 |
|
11829 |
|
11830 |
|
11831 |
|
11832 |
|
11833 |
|
11834 |
|
11835 |
|
11836 |
|
11837 |
|
11838 |
|
11839 |
|
11840 | function polyfill(coordinates, res, isGeoJson) {
|
11841 | validateRes(res);
|
11842 | isGeoJson = Boolean(isGeoJson);
|
11843 |
|
11844 | if (coordinates.length === 0 || coordinates[0].length === 0) {
|
11845 | return [];
|
11846 | }
|
11847 |
|
11848 |
|
11849 | if (typeof coordinates[0][0] === 'number') {
|
11850 | coordinates = [coordinates];
|
11851 | }
|
11852 |
|
11853 | var geoPolygon = coordinatesToGeoPolygon(coordinates, isGeoJson);
|
11854 | var arrayLen = H3.maxPolyfillSize(geoPolygon, res);
|
11855 |
|
11856 | var hexagons = libh3._calloc(arrayLen, SZ_H3INDEX);
|
11857 |
|
11858 | H3.polyfill(geoPolygon, res, hexagons);
|
11859 | var out = readArrayOfHexagons(hexagons, arrayLen);
|
11860 |
|
11861 | libh3._free(hexagons);
|
11862 |
|
11863 | destroyGeoPolygon(geoPolygon);
|
11864 | return out;
|
11865 | }
|
11866 |
|
11867 |
|
11868 |
|
11869 |
|
11870 |
|
11871 |
|
11872 |
|
11873 |
|
11874 |
|
11875 |
|
11876 |
|
11877 |
|
11878 | function h3SetToMultiPolygon(h3Indexes, formatAsGeoJson) {
|
11879 |
|
11880 | if (!h3Indexes || !h3Indexes.length) {
|
11881 | return [];
|
11882 | }
|
11883 |
|
11884 |
|
11885 | var indexCount = h3Indexes.length;
|
11886 |
|
11887 | var set = libh3._calloc(indexCount, SZ_H3INDEX);
|
11888 |
|
11889 | storeArrayOfHexagons(set, h3Indexes); // Allocate memory for output linked polygon
|
11890 |
|
11891 | var polygon = libh3._calloc(SZ_LINKED_GEOPOLYGON); // Store a reference to the first polygon - that's the one we need for
|
11892 | // memory deallocation
|
11893 |
|
11894 |
|
11895 | var originalPolygon = polygon;
|
11896 | H3.h3SetToLinkedGeo(set, indexCount, polygon);
|
11897 | var multiPolygon = readMultiPolygon(polygon, formatAsGeoJson); // Clean up
|
11898 |
|
11899 | H3.destroyLinkedPolygon(originalPolygon);
|
11900 |
|
11901 | libh3._free(originalPolygon);
|
11902 |
|
11903 | libh3._free(set);
|
11904 |
|
11905 | return multiPolygon;
|
11906 | }
|
11907 | /**
|
11908 | * Compact a set of hexagons of the same resolution into a set of hexagons across
|
11909 | * multiple levels that represents the same area.
|
11910 | * @static
|
11911 | * @param {H3Index[]} h3Set H3 indexes to compact
|
11912 | * @return {H3Index[]} Compacted H3 indexes
|
11913 | * @throws {Error} If the input is invalid (e.g. duplicate hexagons)
|
11914 | */
|
11915 |
|
11916 | function compact(h3Set) {
|
11917 | if (!h3Set || !h3Set.length) {
|
11918 | return [];
|
11919 | }
|
11920 |
|
11921 |
|
11922 | var count = h3Set.length;
|
11923 |
|
11924 | var set = libh3._calloc(count, SZ_H3INDEX);
|
11925 |
|
11926 | storeArrayOfHexagons(set, h3Set); // Allocate memory for compacted hexagons, worst-case is no compaction
|
11927 |
|
11928 | var compactedSet = libh3._calloc(count, SZ_H3INDEX);
|
11929 |
|
11930 | var retVal = H3.compact(set, compactedSet, count);
|
11931 |
|
11932 | if (retVal !== 0) {
|
11933 | libh3._free(set);
|
11934 |
|
11935 | libh3._free(compactedSet);
|
11936 |
|
11937 | throw new Error('Failed to compact, malformed input data (duplicate hexagons?)');
|
11938 | }
|
11939 |
|
11940 | var out = readArrayOfHexagons(compactedSet, count);
|
11941 |
|
11942 | libh3._free(set);
|
11943 |
|
11944 | libh3._free(compactedSet);
|
11945 |
|
11946 | return out;
|
11947 | }
|
11948 | /**
|
11949 | * Uncompact a compacted set of hexagons to hexagons of the same resolution
|
11950 | * @static
|
11951 | * @param {H3Index[]} compactedSet H3 indexes to uncompact
|
11952 | * @param {Number} res The resolution to uncompact to
|
11953 | * @return {H3Index[]} The uncompacted H3 indexes
|
11954 | * @throws {Error} If the input is invalid (e.g. invalid resolution)
|
11955 | */
|
11956 |
|
11957 | function uncompact(compactedSet, res) {
|
11958 | validateRes(res);
|
11959 |
|
11960 | if (!compactedSet || !compactedSet.length) {
|
11961 | return [];
|
11962 | }
|
11963 |
|
11964 |
|
11965 | var count = compactedSet.length;
|
11966 |
|
11967 | var set = libh3._calloc(count, SZ_H3INDEX);
|
11968 |
|
11969 | storeArrayOfHexagons(set, compactedSet); // Estimate how many hexagons we need (always overestimates if in error)
|
11970 |
|
11971 | var maxUncompactedNum = H3.maxUncompactSize(set, count, res); // Allocate memory for uncompacted hexagons
|
11972 |
|
11973 | var uncompactedSet = libh3._calloc(maxUncompactedNum, SZ_H3INDEX);
|
11974 |
|
11975 | var retVal = H3.uncompact(set, count, uncompactedSet, maxUncompactedNum, res);
|
11976 |
|
11977 | if (retVal !== 0) {
|
11978 | libh3._free(set);
|
11979 |
|
11980 | libh3._free(uncompactedSet);
|
11981 |
|
11982 | throw new Error('Failed to uncompact (bad resolution?)');
|
11983 | }
|
11984 |
|
11985 | var out = readArrayOfHexagons(uncompactedSet, maxUncompactedNum);
|
11986 |
|
11987 | libh3._free(set);
|
11988 |
|
11989 | libh3._free(uncompactedSet);
|
11990 |
|
11991 | return out;
|
11992 | } // ----------------------------------------------------------------------------
|
11993 | // Public API functions: Unidirectional edges
|
11994 |
|
11995 | /**
|
11996 | * Whether two H3 indexes are neighbors (share an edge)
|
11997 | * @static
|
11998 | * @param {H3Index} origin Origin hexagon index
|
11999 | * @param {H3Index} destination Destination hexagon index
|
12000 | * @return {Boolean} Whether the hexagons share an edge
|
12001 | */
|
12002 |
|
12003 | function h3IndexesAreNeighbors(origin, destination) {
|
12004 | var ref = h3IndexToSplitLong(origin);
|
12005 | var oLower = ref[0];
|
12006 | var oUpper = ref[1];
|
12007 | var ref$1 = h3IndexToSplitLong(destination);
|
12008 | var dLower = ref$1[0];
|
12009 | var dUpper = ref$1[1];
|
12010 | return Boolean(H3.h3IndexesAreNeighbors(oLower, oUpper, dLower, dUpper));
|
12011 | }
|
12012 |
|
12013 |
|
12014 |
|
12015 |
|
12016 |
|
12017 |
|
12018 |
|
12019 |
|
12020 | function getH3UnidirectionalEdge(origin, destination) {
|
12021 | var ref = h3IndexToSplitLong(origin);
|
12022 | var oLower = ref[0];
|
12023 | var oUpper = ref[1];
|
12024 | var ref$1 = h3IndexToSplitLong(destination);
|
12025 | var dLower = ref$1[0];
|
12026 | var dUpper = ref$1[1];
|
12027 | return readH3Index(H3.getH3UnidirectionalEdge(oLower, oUpper, dLower, dUpper));
|
12028 | }
|
12029 |
|
12030 |
|
12031 |
|
12032 |
|
12033 |
|
12034 |
|
12035 |
|
12036 | function getOriginH3IndexFromUnidirectionalEdge(edgeIndex) {
|
12037 | var ref = h3IndexToSplitLong(edgeIndex);
|
12038 | var lower = ref[0];
|
12039 | var upper = ref[1];
|
12040 | return readH3Index(H3.getOriginH3IndexFromUnidirectionalEdge(lower, upper));
|
12041 | }
|
12042 |
|
12043 |
|
12044 |
|
12045 |
|
12046 |
|
12047 |
|
12048 |
|
12049 | function getDestinationH3IndexFromUnidirectionalEdge(edgeIndex) {
|
12050 | var ref = h3IndexToSplitLong(edgeIndex);
|
12051 | var lower = ref[0];
|
12052 | var upper = ref[1];
|
12053 | return readH3Index(H3.getDestinationH3IndexFromUnidirectionalEdge(lower, upper));
|
12054 | }
|
12055 |
|
12056 |
|
12057 |
|
12058 |
|
12059 |
|
12060 |
|
12061 |
|
12062 | function h3UnidirectionalEdgeIsValid(edgeIndex) {
|
12063 | var ref = h3IndexToSplitLong(edgeIndex);
|
12064 | var lower = ref[0];
|
12065 | var upper = ref[1];
|
12066 | return Boolean(H3.h3UnidirectionalEdgeIsValid(lower, upper));
|
12067 | }
|
12068 |
|
12069 |
|
12070 |
|
12071 |
|
12072 |
|
12073 |
|
12074 |
|
12075 | function getH3IndexesFromUnidirectionalEdge(edgeIndex) {
|
12076 | var ref = h3IndexToSplitLong(edgeIndex);
|
12077 | var lower = ref[0];
|
12078 | var upper = ref[1];
|
12079 | var count = 2;
|
12080 |
|
12081 | var hexagons = libh3._calloc(count, SZ_H3INDEX);
|
12082 |
|
12083 | H3.getH3IndexesFromUnidirectionalEdge(lower, upper, hexagons);
|
12084 | var out = readArrayOfHexagons(hexagons, count);
|
12085 |
|
12086 | libh3._free(hexagons);
|
12087 |
|
12088 | return out;
|
12089 | }
|
12090 |
|
12091 |
|
12092 |
|
12093 |
|
12094 |
|
12095 |
|
12096 |
|
12097 |
|
12098 | function getH3UnidirectionalEdgesFromHexagon(h3Index) {
|
12099 | var ref = h3IndexToSplitLong(h3Index);
|
12100 | var lower = ref[0];
|
12101 | var upper = ref[1];
|
12102 | var count = 6;
|
12103 |
|
12104 | var edges = libh3._calloc(count, SZ_H3INDEX);
|
12105 |
|
12106 | H3.getH3UnidirectionalEdgesFromHexagon(lower, upper, edges);
|
12107 | var out = readArrayOfHexagons(edges, count);
|
12108 |
|
12109 | libh3._free(edges);
|
12110 |
|
12111 | return out;
|
12112 | }
|
12113 |
|
12114 |
|
12115 |
|
12116 |
|
12117 |
|
12118 |
|
12119 |
|
12120 |
|
12121 |
|
12122 | function getH3UnidirectionalEdgeBoundary(edgeIndex, formatAsGeoJson) {
|
12123 | var geoBoundary = libh3._malloc(SZ_GEOBOUNDARY);
|
12124 |
|
12125 | var ref = h3IndexToSplitLong(edgeIndex);
|
12126 | var lower = ref[0];
|
12127 | var upper = ref[1];
|
12128 | H3.getH3UnidirectionalEdgeBoundary(lower, upper, geoBoundary);
|
12129 | var out = readGeoBoundary(geoBoundary, formatAsGeoJson);
|
12130 |
|
12131 | libh3._free(geoBoundary);
|
12132 |
|
12133 | return out;
|
12134 | }
|
12135 |
|
12136 |
|
12137 |
|
12138 |
|
12139 |
|
12140 |
|
12141 |
|
12142 |
|
12143 |
|
12144 |
|
12145 |
|
12146 | function h3Distance(origin, destination) {
|
12147 | var ref = h3IndexToSplitLong(origin);
|
12148 | var oLower = ref[0];
|
12149 | var oUpper = ref[1];
|
12150 | var ref$1 = h3IndexToSplitLong(destination);
|
12151 | var dLower = ref$1[0];
|
12152 | var dUpper = ref$1[1];
|
12153 | return H3.h3Distance(oLower, oUpper, dLower, dUpper);
|
12154 | }
|
12155 |
|
12156 |
|
12157 |
|
12158 |
|
12159 |
|
12160 |
|
12161 |
|
12162 |
|
12163 |
|
12164 |
|
12165 |
|
12166 |
|
12167 |
|
12168 |
|
12169 |
|
12170 |
|
12171 |
|
12172 |
|
12173 |
|
12174 |
|
12175 |
|
12176 |
|
12177 |
|
12178 | function h3Line(origin, destination) {
|
12179 | var ref = h3IndexToSplitLong(origin);
|
12180 | var oLower = ref[0];
|
12181 | var oUpper = ref[1];
|
12182 | var ref$1 = h3IndexToSplitLong(destination);
|
12183 | var dLower = ref$1[0];
|
12184 | var dUpper = ref$1[1];
|
12185 | var count = H3.h3LineSize(oLower, oUpper, dLower, dUpper);
|
12186 |
|
12187 | if (count < 0) {
|
12188 |
|
12189 |
|
12190 | throw new Error('Line cannot be calculated');
|
12191 | }
|
12192 |
|
12193 | var hexagons = libh3._calloc(count, SZ_H3INDEX);
|
12194 |
|
12195 | H3.h3Line(oLower, oUpper, dLower, dUpper, hexagons);
|
12196 | var out = readArrayOfHexagons(hexagons, count);
|
12197 |
|
12198 | libh3._free(hexagons);
|
12199 |
|
12200 | return out;
|
12201 | }
|
12202 |
|
12203 |
|
12204 |
|
12205 |
|
12206 |
|
12207 |
|
12208 |
|
12209 |
|
12210 |
|
12211 |
|
12212 |
|
12213 |
|
12214 |
|
12215 |
|
12216 |
|
12217 |
|
12218 |
|
12219 |
|
12220 | function experimentalH3ToLocalIj(origin, destination) {
|
12221 | var ij = libh3._malloc(SZ_COORDIJ);
|
12222 |
|
12223 | var retVal = H3.experimentalH3ToLocalIj.apply(H3, h3IndexToSplitLong(origin).concat( h3IndexToSplitLong(destination), [ij] ));
|
12224 | var coords = readCoordIJ(ij);
|
12225 |
|
12226 | libh3._free(ij);
|
12227 |
|
12228 |
|
12229 |
|
12230 | switch (retVal) {
|
12231 | case 0:
|
12232 | return coords;
|
12233 |
|
12234 | case 1:
|
12235 | throw new Error('Incompatible origin and index.');
|
12236 |
|
12237 | case 2:
|
12238 | default:
|
12239 | throw new Error('Local IJ coordinates undefined for this origin and index pair. ' + 'The index may be too far from the origin.');
|
12240 |
|
12241 | case 3:
|
12242 | case 4:
|
12243 | case 5:
|
12244 | throw new Error('Encountered possible pentagon distortion');
|
12245 | }
|
12246 | }
|
12247 |
|
12248 |
|
12249 |
|
12250 |
|
12251 |
|
12252 |
|
12253 |
|
12254 |
|
12255 |
|
12256 |
|
12257 |
|
12258 |
|
12259 |
|
12260 |
|
12261 |
|
12262 |
|
12263 |
|
12264 |
|
12265 | function experimentalLocalIjToH3(origin, coords) {
|
12266 |
|
12267 | if (!coords || typeof coords.i !== 'number' || typeof coords.j !== 'number') {
|
12268 | throw new Error('Coordinates must be provided as an {i, j} object');
|
12269 | }
|
12270 |
|
12271 |
|
12272 | var ij = libh3._malloc(SZ_COORDIJ);
|
12273 |
|
12274 | var out = libh3._malloc(SZ_H3INDEX);
|
12275 |
|
12276 | storeCoordIJ(ij, coords);
|
12277 | var retVal = H3.experimentalLocalIjToH3.apply(H3, h3IndexToSplitLong(origin).concat( [ij], [out] ));
|
12278 | var h3Index = readH3IndexFromPointer(out);
|
12279 |
|
12280 | libh3._free(ij);
|
12281 |
|
12282 | libh3._free(out);
|
12283 |
|
12284 | if (retVal !== 0) {
|
12285 | throw new Error('Index not defined for this origin and IJ coordinates pair. ' + 'IJ coordinates may be too far from origin, or ' + 'a pentagon distortion was encountered.');
|
12286 | }
|
12287 |
|
12288 | return h3Index;
|
12289 | }
|
12290 |
|
12291 |
|
12292 |
|
12293 |
|
12294 |
|
12295 |
|
12296 |
|
12297 |
|
12298 |
|
12299 |
|
12300 |
|
12301 | function hexArea(res, unit) {
|
12302 | validateRes(res);
|
12303 |
|
12304 | switch (unit) {
|
12305 | case UNITS.m2:
|
12306 | return H3.hexAreaM2(res);
|
12307 |
|
12308 | case UNITS.km2:
|
12309 | return H3.hexAreaKm2(res);
|
12310 |
|
12311 | default:
|
12312 | throw new Error(("Unknown unit: " + unit));
|
12313 | }
|
12314 | }
|
12315 |
|
12316 |
|
12317 |
|
12318 |
|
12319 |
|
12320 |
|
12321 |
|
12322 |
|
12323 |
|
12324 | function edgeLength(res, unit) {
|
12325 | validateRes(res);
|
12326 |
|
12327 | switch (unit) {
|
12328 | case UNITS.m:
|
12329 | return H3.edgeLengthM(res);
|
12330 |
|
12331 | case UNITS.km:
|
12332 | return H3.edgeLengthKm(res);
|
12333 |
|
12334 | default:
|
12335 | throw new Error(("Unknown unit: " + unit));
|
12336 | }
|
12337 | }
|
12338 |
|
12339 |
|
12340 |
|
12341 |
|
12342 |
|
12343 |
|
12344 |
|
12345 |
|
12346 |
|
12347 | function numHexagons(res) {
|
12348 | validateRes(res);
|
12349 |
|
12350 | var ref = readLong(H3.numHexagons(res));
|
12351 | var lower = ref[0];
|
12352 | var upper = ref[1];
|
12353 |
|
12354 | if (!upper) {
|
12355 | return lower;
|
12356 | }
|
12357 |
|
12358 |
|
12359 | return upper * Math.pow(2, 32) + lower;
|
12360 | }
|
12361 |
|
12362 |
|
12363 |
|
12364 |
|
12365 |
|
12366 |
|
12367 |
|
12368 |
|
12369 | function getRes0Indexes() {
|
12370 | var count = H3.res0IndexCount();
|
12371 |
|
12372 | var hexagons = libh3._malloc(SZ_H3INDEX * count);
|
12373 |
|
12374 | H3.getRes0Indexes(hexagons);
|
12375 | var out = readArrayOfHexagons(hexagons, count);
|
12376 |
|
12377 | libh3._free(hexagons);
|
12378 |
|
12379 | return out;
|
12380 | }
|
12381 |
|
12382 |
|
12383 |
|
12384 |
|
12385 |
|
12386 |
|
12387 |
|
12388 | function getPentagonIndexes(res) {
|
12389 | validateRes(res);
|
12390 | var count = H3.pentagonIndexCount();
|
12391 |
|
12392 | var hexagons = libh3._malloc(SZ_H3INDEX * count);
|
12393 |
|
12394 | H3.getPentagonIndexes(res, hexagons);
|
12395 | var out = readArrayOfHexagons(hexagons, count);
|
12396 |
|
12397 | libh3._free(hexagons);
|
12398 |
|
12399 | return out;
|
12400 | }
|
12401 |
|
12402 |
|
12403 |
|
12404 |
|
12405 |
|
12406 |
|
12407 |
|
12408 | function degsToRads(deg) {
|
12409 | return deg * Math.PI / 180;
|
12410 | }
|
12411 |
|
12412 |
|
12413 |
|
12414 |
|
12415 |
|
12416 |
|
12417 |
|
12418 | function radsToDegs(rad) {
|
12419 | return rad * 180 / Math.PI;
|
12420 | }
|
12421 |
|
12422 | exports.UNITS = UNITS;
|
12423 | exports.h3IsValid = h3IsValid;
|
12424 | exports.h3IsPentagon = h3IsPentagon;
|
12425 | exports.h3IsResClassIII = h3IsResClassIII;
|
12426 | exports.h3GetBaseCell = h3GetBaseCell;
|
12427 | exports.h3GetFaces = h3GetFaces;
|
12428 | exports.h3GetResolution = h3GetResolution;
|
12429 | exports.geoToH3 = geoToH3;
|
12430 | exports.h3ToGeo = h3ToGeo;
|
12431 | exports.h3ToGeoBoundary = h3ToGeoBoundary;
|
12432 | exports.h3ToParent = h3ToParent;
|
12433 | exports.h3ToChildren = h3ToChildren;
|
12434 | exports.h3ToCenterChild = h3ToCenterChild;
|
12435 | exports.kRing = kRing;
|
12436 | exports.kRingDistances = kRingDistances;
|
12437 | exports.hexRing = hexRing;
|
12438 | exports.polyfill = polyfill;
|
12439 | exports.h3SetToMultiPolygon = h3SetToMultiPolygon;
|
12440 | exports.compact = compact;
|
12441 | exports.uncompact = uncompact;
|
12442 | exports.h3IndexesAreNeighbors = h3IndexesAreNeighbors;
|
12443 | exports.getH3UnidirectionalEdge = getH3UnidirectionalEdge;
|
12444 | exports.getOriginH3IndexFromUnidirectionalEdge = getOriginH3IndexFromUnidirectionalEdge;
|
12445 | exports.getDestinationH3IndexFromUnidirectionalEdge = getDestinationH3IndexFromUnidirectionalEdge;
|
12446 | exports.h3UnidirectionalEdgeIsValid = h3UnidirectionalEdgeIsValid;
|
12447 | exports.getH3IndexesFromUnidirectionalEdge = getH3IndexesFromUnidirectionalEdge;
|
12448 | exports.getH3UnidirectionalEdgesFromHexagon = getH3UnidirectionalEdgesFromHexagon;
|
12449 | exports.getH3UnidirectionalEdgeBoundary = getH3UnidirectionalEdgeBoundary;
|
12450 | exports.h3Distance = h3Distance;
|
12451 | exports.h3Line = h3Line;
|
12452 | exports.experimentalH3ToLocalIj = experimentalH3ToLocalIj;
|
12453 | exports.experimentalLocalIjToH3 = experimentalLocalIjToH3;
|
12454 | exports.hexArea = hexArea;
|
12455 | exports.edgeLength = edgeLength;
|
12456 | exports.numHexagons = numHexagons;
|
12457 | exports.getRes0Indexes = getRes0Indexes;
|
12458 | exports.getPentagonIndexes = getPentagonIndexes;
|
12459 | exports.degsToRads = degsToRads;
|
12460 | exports.radsToDegs = radsToDegs;
|
12461 |
|