-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathp.js
721 lines (721 loc) · 1010 KB
/
p.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
function detectIE(){var c=window.navigator.userAgent;var b=c.indexOf("MSIE ");if(b>0){return parseInt(c.substring(b+5,c.indexOf(".",b)),10)}var a=c.indexOf("Trident/");if(a>0){var e=c.indexOf("rv:");return parseInt(c.substring(e+3,c.indexOf(".",e)),10)}var d=c.indexOf("Edge/");if(d>0){return parseInt(c.substring(d+5,c.indexOf(".",d)),10)}return false}var ver=detectIE();if(ver && ver<12){var node=document.createElement("div");node.id="ie_alert";node.innerHTML='Internet Explorer doesn\'t support picdiet, you can use <a target="_blank" rel="nofollow" href="https://www.google.com/chrome/index.html">Chrome</a> or <a target="_blank" rel="nofollow" href="https://www.mozilla.org/en-US/firefox/">Firefox</a> ';document.body.appendChild(node)};var saveAs=saveAs||function(e){"use strict";if(typeof e==="undefined"||typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var t=e.document,n=function(){return e.URL||e.webkitURL||e},r=t.createElementNS("http://www.w3.org/1999/xhtml","a"),o="download"in r,a=function(e){var t=new MouseEvent("click");e.dispatchEvent(t)},i=/constructor/i.test(e.HTMLElement)||e.safari,f=/CriOS\/[\d]+/.test(navigator.userAgent),u=function(t){(e.setImmediate||e.setTimeout)(function(){throw t},0)},s="application/octet-stream",d=1e3*40,c=function(e){var t=function(){if(typeof e==="string"){n().revokeObjectURL(e)}else{e.remove()}};setTimeout(t,d)},l=function(e,t,n){t=[].concat(t);var r=t.length;while(r--){var o=e["on"+t[r]];if(typeof o==="function"){try{o.call(e,n||e)}catch(a){u(a)}}}},p=function(e){if(/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)){return new Blob([String.fromCharCode(65279),e],{type:e.type})}return e},v=function(t,u,d){if(!d){t=p(t)}var v=this,w=t.type,m=w===s,y,h=function(){l(v,"writestart progress write writeend".split(" "))},S=function(){if((f||m&&i)&&e.FileReader){var r=new FileReader;r.onloadend=function(){var t=f?r.result:r.result.replace(/^data:[^;]*;/,"data:attachment/file;");var n=e.open(t,"_blank");if(!n)e.location.href=t;t=undefined;v.readyState=v.DONE;h()};r.readAsDataURL(t);v.readyState=v.INIT;return}if(!y){y=n().createObjectURL(t)}if(m){e.location.href=y}else{var o=e.open(y,"_blank");if(!o){e.location.href=y}}v.readyState=v.DONE;h();c(y)};v.readyState=v.INIT;if(o){y=n().createObjectURL(t);setTimeout(function(){r.href=y;r.download=u;a(r);h();c(y);v.readyState=v.DONE});return}S()},w=v.prototype,m=function(e,t,n){return new v(e,t||e.name||"download",n)};if(typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob){return function(e,t,n){t=t||e.name||"download";if(!n){e=p(e)}return navigator.msSaveOrOpenBlob(e,t)}}w.abort=function(){};w.readyState=w.INIT=0;w.WRITING=1;w.DONE=2;w.error=w.onwritestart=w.onprogress=w.onwrite=w.onabort=w.onerror=w.onwriteend=null;return m}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);if(typeof module!=="undefined"&&module.exports){module.exports.saveAs=saveAs}else if(typeof define!=="undefined"&&define!==null&&define.amd!==null){define("FileSaver.js",function(){return saveAs})}!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.JSZip=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){"use strict";var d=a("./utils"),e=a("./support"),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";c.encode=function(a){for(var b,c,e,g,h,i,j,k=[],l=0,m=a.length,n=m,o="string"!==d.getTypeOf(a);l<a.length;)n=m-l,o?(b=a[l++],c=l<m?a[l++]:0,e=l<m?a[l++]:0):(b=a.charCodeAt(l++),c=l<m?a.charCodeAt(l++):0,e=l<m?a.charCodeAt(l++):0),g=b>>2,h=(3&b)<<4|c>>4,i=n>1?(15&c)<<2|e>>6:64,j=n>2?63&e:64,k.push(f.charAt(g)+f.charAt(h)+f.charAt(i)+f.charAt(j));return k.join("")},c.decode=function(a){var b,c,d,g,h,i,j,k=0,l=0,m="data:";if(a.substr(0,m.length)===m)throw new Error("Invalid base64 input, it looks like a data url.");a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");var n=3*a.length/4;if(a.charAt(a.length-1)===f.charAt(64)&&n--,a.charAt(a.length-2)===f.charAt(64)&&n--,n%1!==0)throw new Error("Invalid base64 input, bad content length.");var o;for(o=e.uint8array?new Uint8Array(0|n):new Array(0|n);k<a.length;)g=f.indexOf(a.charAt(k++)),h=f.indexOf(a.charAt(k++)),i=f.indexOf(a.charAt(k++)),j=f.indexOf(a.charAt(k++)),b=g<<2|h>>4,c=(15&h)<<4|i>>2,d=(3&i)<<6|j,o[l++]=b,64!==i&&(o[l++]=c),64!==j&&(o[l++]=d);return o}},{"./support":30,"./utils":32}],2:[function(a,b,c){"use strict";function d(a,b,c,d,e){this.compressedSize=a,this.uncompressedSize=b,this.crc32=c,this.compression=d,this.compressedContent=e}var e=a("./external"),f=a("./stream/DataWorker"),g=a("./stream/DataLengthProbe"),h=a("./stream/Crc32Probe"),g=a("./stream/DataLengthProbe");d.prototype={getContentWorker:function(){var a=new f(e.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new g("data_length")),b=this;return a.on("end",function(){if(this.streamInfo.data_length!==b.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),a},getCompressedWorker:function(){return new f(e.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},d.createWorkerFrom=function(a,b,c){return a.pipe(new h).pipe(new g("uncompressedSize")).pipe(b.compressWorker(c)).pipe(new g("compressedSize")).withStreamInfo("compression",b)},b.exports=d},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(a,b,c){"use strict";var d=a("./stream/GenericWorker");c.STORE={magic:"\0\0",compressWorker:function(a){return new d("STORE compression")},uncompressWorker:function(){return new d("STORE decompression")}},c.DEFLATE=a("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(a,b,c){"use strict";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=h,f=d+c;a^=-1;for(var g=d;g<f;g++)a=a>>>8^e[255&(a^b[g])];return a^-1}function f(a,b,c,d){var e=h,f=d+c;a^=-1;for(var g=d;g<f;g++)a=a>>>8^e[255&(a^b.charCodeAt(g))];return a^-1}var g=a("./utils"),h=d();b.exports=function(a,b){if("undefined"==typeof a||!a.length)return 0;var c="string"!==g.getTypeOf(a);return c?e(0|b,a,a.length,0):f(0|b,a,a.length,0)}},{"./utils":32}],5:[function(a,b,c){"use strict";c.base64=!1,c.binary=!1,c.dir=!1,c.createFolders=!0,c.date=null,c.compression=null,c.compressionOptions=null,c.comment=null,c.unixPermissions=null,c.dosPermissions=null},{}],6:[function(a,b,c){"use strict";var d=null;d="undefined"!=typeof Promise?Promise:a("lie"),b.exports={Promise:d}},{lie:58}],7:[function(a,b,c){"use strict";function d(a,b){h.call(this,"FlateWorker/"+a),this._pako=null,this._pakoAction=a,this._pakoOptions=b,this.meta={}}var e="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,f=a("pako"),g=a("./utils"),h=a("./stream/GenericWorker"),i=e?"uint8array":"array";c.magic="\b\0",g.inherits(d,h),d.prototype.processChunk=function(a){this.meta=a.meta,null===this._pako&&this._createPako(),this._pako.push(g.transformTo(i,a.data),!1)},d.prototype.flush=function(){h.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},d.prototype.cleanUp=function(){h.prototype.cleanUp.call(this),this._pako=null},d.prototype._createPako=function(){this._pako=new f[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var a=this;this._pako.onData=function(b){a.push({data:b,meta:a.meta})}},c.compressWorker=function(a){return new d("Deflate",a)},c.uncompressWorker=function(){return new d("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:59}],8:[function(a,b,c){"use strict";function d(a,b,c,d){f.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=b,this.zipPlatform=c,this.encodeFileName=d,this.streamFiles=a,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}var e=a("../utils"),f=a("../stream/GenericWorker"),g=a("../utf8"),h=a("../crc32"),i=a("../signature"),j=function(a,b){var c,d="";for(c=0;c<b;c++)d+=String.fromCharCode(255&a),a>>>=8;return d},k=function(a,b){var c=a;return a||(c=b?16893:33204),(65535&c)<<16},l=function(a,b){return 63&(a||0)},m=function(a,b,c,d,f,m){var n,o,p=a.file,q=a.compression,r=m!==g.utf8encode,s=e.transformTo("string",m(p.name)),t=e.transformTo("string",g.utf8encode(p.name)),u=p.comment,v=e.transformTo("string",m(u)),w=e.transformTo("string",g.utf8encode(u)),x=t.length!==p.name.length,y=w.length!==u.length,z="",A="",B="",C=p.dir,D=p.date,E={crc32:0,compressedSize:0,uncompressedSize:0};b&&!c||(E.crc32=a.crc32,E.compressedSize=a.compressedSize,E.uncompressedSize=a.uncompressedSize);var F=0;b&&(F|=8),r||!x&&!y||(F|=2048);var G=0,H=0;C&&(G|=16),"UNIX"===f?(H=798,G|=k(p.unixPermissions,C)):(H=20,G|=l(p.dosPermissions,C)),n=D.getUTCHours(),n<<=6,n|=D.getUTCMinutes(),n<<=5,n|=D.getUTCSeconds()/2,o=D.getUTCFullYear()-1980,o<<=4,o|=D.getUTCMonth()+1,o<<=5,o|=D.getUTCDate(),x&&(A=j(1,1)+j(h(s),4)+t,z+="up"+j(A.length,2)+A),y&&(B=j(1,1)+j(h(v),4)+w,z+="uc"+j(B.length,2)+B);var I="";I+="\n\0",I+=j(F,2),I+=q.magic,I+=j(n,2),I+=j(o,2),I+=j(E.crc32,4),I+=j(E.compressedSize,4),I+=j(E.uncompressedSize,4),I+=j(s.length,2),I+=j(z.length,2);var J=i.LOCAL_FILE_HEADER+I+s+z,K=i.CENTRAL_FILE_HEADER+j(H,2)+I+j(v.length,2)+"\0\0\0\0"+j(G,4)+j(d,4)+s+z+v;return{fileRecord:J,dirRecord:K}},n=function(a,b,c,d,f){var g="",h=e.transformTo("string",f(d));return g=i.CENTRAL_DIRECTORY_END+"\0\0\0\0"+j(a,2)+j(a,2)+j(b,4)+j(c,4)+j(h.length,2)+h},o=function(a){var b="";return b=i.DATA_DESCRIPTOR+j(a.crc32,4)+j(a.compressedSize,4)+j(a.uncompressedSize,4)};e.inherits(d,f),d.prototype.push=function(a){var b=a.meta.percent||0,c=this.entriesCount,d=this._sources.length;this.accumulate?this.contentBuffer.push(a):(this.bytesWritten+=a.data.length,f.prototype.push.call(this,{data:a.data,meta:{currentFile:this.currentFile,percent:c?(b+100*(c-d-1))/c:100}}))},d.prototype.openedSource=function(a){this.currentSourceOffset=this.bytesWritten,this.currentFile=a.file.name;var b=this.streamFiles&&!a.file.dir;if(b){var c=m(a,b,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:c.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(a){this.accumulate=!1;var b=this.streamFiles&&!a.file.dir,c=m(a,b,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(c.dirRecord),b)this.push({data:o(a),meta:{percent:100}});else for(this.push({data:c.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var a=this.bytesWritten,b=0;b<this.dirRecords.length;b++)this.push({data:this.dirRecords[b],meta:{percent:100}});var c=this.bytesWritten-a,d=n(this.dirRecords.length,c,a,this.zipComment,this.encodeFileName);this.push({data:d,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(a){this._sources.push(a);var b=this;return a.on("data",function(a){b.processChunk(a)}),a.on("end",function(){b.closedSource(b.previous.streamInfo),b._sources.length?b.prepareNextSource():b.end()}),a.on("error",function(a){b.error(a)}),this},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(a){var b=this._sources;if(!f.prototype.error.call(this,a))return!1;for(var c=0;c<b.length;c++)try{b[c].error(a)}catch(a){}return!0},d.prototype.lock=function(){f.prototype.lock.call(this);for(var a=this._sources,b=0;b<a.length;b++)a[b].lock()},b.exports=d},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(a,b,c){"use strict";var d=a("../compressions"),e=a("./ZipFileWorker"),f=function(a,b){var c=a||b,e=d[c];if(!e)throw new Error(c+" is not a valid compression method !");return e};c.generateWorker=function(a,b,c){var d=new e(b.streamFiles,c,b.platform,b.encodeFileName),g=0;try{a.forEach(function(a,c){g++;var e=f(c.options.compression,b.compression),h=c.options.compressionOptions||b.compressionOptions||{},i=c.dir,j=c.date;c._compressWorker(e,h).withStreamInfo("file",{name:a,dir:i,date:j,comment:c.comment||"",unixPermissions:c.unixPermissions,dosPermissions:c.dosPermissions}).pipe(d)}),d.entriesCount=g}catch(h){d.error(h)}return d}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(a,b,c){"use strict";function d(){if(!(this instanceof d))return new d;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files={},this.comment=null,this.root="",this.clone=function(){var a=new d;for(var b in this)"function"!=typeof this[b]&&(a[b]=this[b]);return a}}d.prototype=a("./object"),d.prototype.loadAsync=a("./load"),d.support=a("./support"),d.defaults=a("./defaults"),d.version="3.1.3",d.loadAsync=function(a,b){return(new d).loadAsync(a,b)},d.external=a("./external"),b.exports=d},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(a,b,c){"use strict";function d(a){return new f.Promise(function(b,c){var d=a.decompressed.getContentWorker().pipe(new i);d.on("error",function(a){c(a)}).on("end",function(){d.streamInfo.crc32!==a.decompressed.crc32?c(new Error("Corrupted zip : CRC32 mismatch")):b()}).resume()})}var e=a("./utils"),f=a("./external"),g=a("./utf8"),e=a("./utils"),h=a("./zipEntries"),i=a("./stream/Crc32Probe"),j=a("./nodejsUtils");b.exports=function(a,b){var c=this;return b=e.extend(b||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:g.utf8decode}),j.isNode&&j.isStream(a)?f.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):e.prepareContent("the loaded zip file",a,!0,b.optimizedBinaryString,b.base64).then(function(a){var c=new h(b);return c.load(a),c}).then(function(a){var c=[f.Promise.resolve(a)],e=a.files;if(b.checkCRC32)for(var g=0;g<e.length;g++)c.push(d(e[g]));return f.Promise.all(c)}).then(function(a){for(var d=a.shift(),e=d.files,f=0;f<e.length;f++){var g=e[f];c.file(g.fileNameStr,g.decompressed,{binary:!0,optimizedBinaryString:!0,date:g.date,dir:g.dir,comment:g.fileCommentStr.length?g.fileCommentStr:null,unixPermissions:g.unixPermissions,dosPermissions:g.dosPermissions,createFolders:b.createFolders})}return d.zipComment.length&&(c.comment=d.zipComment),c})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(a,b,c){"use strict";function d(a,b){f.call(this,"Nodejs stream input adapter for "+a),this._upstreamEnded=!1,this._bindStream(b)}var e=a("../utils"),f=a("../stream/GenericWorker");e.inherits(d,f),d.prototype._bindStream=function(a){var b=this;this._stream=a,a.pause(),a.on("data",function(a){b.push({data:a,meta:{percent:0}})}).on("error",function(a){b.isPaused?this.generatedError=a:b.error(a)}).on("end",function(){b.isPaused?b._upstreamEnded=!0:b.end()})},d.prototype.pause=function(){return!!f.prototype.pause.call(this)&&(this._stream.pause(),!0)},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},b.exports=d},{"../stream/GenericWorker":28,"../utils":32}],13:[function(a,b,c){"use strict";function d(a,b,c){e.call(this,b),this._helper=a;var d=this;a.on("data",function(a,b){d.push(a)||d._helper.pause(),c&&c(b)}).on("error",function(a){d.emit("error",a)}).on("end",function(){d.push(null)})}var e=a("readable-stream").Readable,f=a("../utils");f.inherits(d,e),d.prototype._read=function(){this._helper.resume()},b.exports=d},{"../utils":32,"readable-stream":16}],14:[function(a,b,c){"use strict";b.exports={isNode:"undefined"!=typeof Buffer,newBuffer:function(a,b){return new Buffer(a,b)},isBuffer:function(a){return Buffer.isBuffer(a)},isStream:function(a){return a&&"function"==typeof a.on&&"function"==typeof a.pause&&"function"==typeof a.resume}}},{}],15:[function(a,b,c){"use strict";function d(a){return"[object RegExp]"===Object.prototype.toString.call(a)}var e=a("./utf8"),f=a("./utils"),g=a("./stream/GenericWorker"),h=a("./stream/StreamHelper"),i=a("./defaults"),j=a("./compressedObject"),k=a("./zipObject"),l=a("./generate"),m=a("./nodejsUtils"),n=a("./nodejs/NodejsStreamInputAdapter"),o=function(a,b,c){var d,e=f.getTypeOf(b),h=f.extend(c||{},i);h.date=h.date||new Date,null!==h.compression&&(h.compression=h.compression.toUpperCase()),"string"==typeof h.unixPermissions&&(h.unixPermissions=parseInt(h.unixPermissions,8)),h.unixPermissions&&16384&h.unixPermissions&&(h.dir=!0),h.dosPermissions&&16&h.dosPermissions&&(h.dir=!0),h.dir&&(a=q(a)),h.createFolders&&(d=p(a))&&r.call(this,d,!0);var l="string"===e&&h.binary===!1&&h.base64===!1;c&&"undefined"!=typeof c.binary||(h.binary=!l);var o=b instanceof j&&0===b.uncompressedSize;(o||h.dir||!b||0===b.length)&&(h.base64=!1,h.binary=!0,b="",h.compression="STORE",e="string");var s=null;s=b instanceof j||b instanceof g?b:m.isNode&&m.isStream(b)?new n(a,b):f.prepareContent(a,b,h.binary,h.optimizedBinaryString,h.base64);var t=new k(a,s,h);this.files[a]=t},p=function(a){"/"===a.slice(-1)&&(a=a.substring(0,a.length-1));var b=a.lastIndexOf("/");return b>0?a.substring(0,b):""},q=function(a){return"/"!==a.slice(-1)&&(a+="/"),a},r=function(a,b){return b="undefined"!=typeof b?b:i.createFolders,a=q(a),this.files[a]||o.call(this,a,null,{dir:!0,createFolders:b}),this.files[a]},s={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(a){var b,c,d;for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],c=b.slice(this.root.length,b.length),c&&b.slice(0,this.root.length)===this.root&&a(c,d))},filter:function(a){var b=[];return this.forEach(function(c,d){a(c,d)&&b.push(d)}),b},file:function(a,b,c){if(1===arguments.length){if(d(a)){var e=a;return this.filter(function(a,b){return!b.dir&&e.test(a)})}var f=this.files[this.root+a];return f&&!f.dir?f:null}return a=this.root+a,o.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(d(a))return this.filter(function(b,c){return c.dir&&a.test(b)});var b=this.root+a,c=r.call(this,b),e=this.clone();return e.root=c.name,e},remove:function(a){a=this.root+a;var b=this.files[a];if(b||("/"!==a.slice(-1)&&(a+="/"),b=this.files[a]),b&&!b.dir)delete this.files[a];else for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d<c.length;d++)delete this.files[c[d].name];return this},generate:function(a){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(a){var b,c={};try{if(c=f.extend(a||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:e.utf8encode}),c.type=c.type.toLowerCase(),c.compression=c.compression.toUpperCase(),"binarystring"===c.type&&(c.type="string"),!c.type)throw new Error("No output type specified.");f.checkSupport(c.type),"darwin"!==c.platform&&"freebsd"!==c.platform&&"linux"!==c.platform&&"sunos"!==c.platform||(c.platform="UNIX"),"win32"===c.platform&&(c.platform="DOS");var d=c.comment||this.comment||"";b=l.generateWorker(this,c,d)}catch(i){b=new g("error"),b.error(i)}return new h(b,c.type||"string",c.mimeType)},generateAsync:function(a,b){return this.generateInternalStream(a).accumulate(b)},generateNodeStream:function(a,b){return a=a||{},a.type||(a.type="nodebuffer"),this.generateInternalStream(a).toNodejsStream(b)}};b.exports=s},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(a,b,c){b.exports=a("stream")},{stream:void 0}],17:[function(a,b,c){"use strict";function d(a){e.call(this,a);for(var b=0;b<this.data.length;b++)a[b]=255&a[b]}var e=a("./DataReader"),f=a("../utils");f.inherits(d,e),d.prototype.byteAt=function(a){return this.data[this.zero+a]},d.prototype.lastIndexOfSignature=function(a){for(var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.length-4;f>=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f-this.zero;return-1},d.prototype.readAndCheckSignature=function(a){var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.readData(4);return b===f[0]&&c===f[1]&&d===f[2]&&e===f[3]},d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return[];var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./DataReader":18}],18:[function(a,b,c){"use strict";function d(a){this.data=a,this.length=a.length,this.index=0,this.zero=0}var e=a("../utils");d.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.length<this.zero+a||a<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+a+"). Corrupted zip ?")},setIndex:function(a){this.checkIndex(a),this.index=a},skip:function(a){this.setIndex(this.index+a)},byteAt:function(a){},readInt:function(a){var b,c=0;for(this.checkOffset(a),b=this.index+a-1;b>=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return e.transformTo("string",this.readData(a))},readData:function(a){},lastIndexOfSignature:function(a){},readAndCheckSignature:function(a){},readDate:function(){var a=this.readInt(4);return new Date(Date.UTC((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1))}},b.exports=d},{"../utils":32}],19:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./Uint8ArrayReader"),f=a("../utils");f.inherits(d,e),d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./DataReader"),f=a("../utils");f.inherits(d,e),d.prototype.byteAt=function(a){return this.data.charCodeAt(this.zero+a)},d.prototype.lastIndexOfSignature=function(a){return this.data.lastIndexOf(a)-this.zero},d.prototype.readAndCheckSignature=function(a){var b=this.readData(4);return a===b},d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./DataReader":18}],21:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./ArrayReader"),f=a("../utils");f.inherits(d,e),d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return new Uint8Array(0);var b=this.data.subarray(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./ArrayReader":17}],22:[function(a,b,c){"use strict";var d=a("../utils"),e=a("../support"),f=a("./ArrayReader"),g=a("./StringReader"),h=a("./NodeBufferReader"),i=a("./Uint8ArrayReader");b.exports=function(a){var b=d.getTypeOf(a);return d.checkSupport(b),"string"!==b||e.uint8array?"nodebuffer"===b?new h(a):e.uint8array?new i(d.transformTo("uint8array",a)):new f(d.transformTo("array",a)):new g(a)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(a,b,c){"use strict";c.LOCAL_FILE_HEADER="PK",c.CENTRAL_FILE_HEADER="PK",c.CENTRAL_DIRECTORY_END="PK",c.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",c.ZIP64_CENTRAL_DIRECTORY_END="PK",c.DATA_DESCRIPTOR="PK\b"},{}],24:[function(a,b,c){"use strict";function d(a){e.call(this,"ConvertWorker to "+a),this.destType=a}var e=a("./GenericWorker"),f=a("../utils");f.inherits(d,e),d.prototype.processChunk=function(a){this.push({data:f.transformTo(this.destType,a.data),meta:a.meta})},b.exports=d},{"../utils":32,"./GenericWorker":28}],25:[function(a,b,c){"use strict";function d(){e.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}var e=a("./GenericWorker"),f=a("../crc32"),g=a("../utils");g.inherits(d,e),d.prototype.processChunk=function(a){this.streamInfo.crc32=f(a.data,this.streamInfo.crc32||0),this.push(a)},b.exports=d},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(a,b,c){"use strict";function d(a){f.call(this,"DataLengthProbe for "+a),this.propName=a,this.withStreamInfo(a,0)}var e=a("../utils"),f=a("./GenericWorker");e.inherits(d,f),d.prototype.processChunk=function(a){if(a){var b=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=b+a.data.length}f.prototype.processChunk.call(this,a)},b.exports=d},{"../utils":32,"./GenericWorker":28}],27:[function(a,b,c){"use strict";function d(a){f.call(this,"DataWorker");var b=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,a.then(function(a){b.dataIsReady=!0,b.data=a,b.max=a&&a.length||0,b.type=e.getTypeOf(a),b.isPaused||b._tickAndRepeat()},function(a){b.error(a)})}var e=a("../utils"),f=a("./GenericWorker"),g=16384;e.inherits(d,f),d.prototype.cleanUp=function(){f.prototype.cleanUp.call(this),this.data=null},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,e.delay(this._tickAndRepeat,[],this)),!0)},d.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(e.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},d.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var a=g,b=null,c=Math.min(this.max,this.index+a);if(this.index>=this.max)return this.end();switch(this.type){case"string":b=this.data.substring(this.index,c);break;case"uint8array":b=this.data.subarray(this.index,c);break;case"array":case"nodebuffer":b=this.data.slice(this.index,c)}return this.index=c,this.push({data:b,meta:{percent:this.max?this.index/this.max*100:0}})},b.exports=d},{"../utils":32,"./GenericWorker":28}],28:[function(a,b,c){"use strict";function d(a){this.name=a||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}d.prototype={push:function(a){this.emit("data",a)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(a){this.emit("error",a)}return!0},error:function(a){return!this.isFinished&&(this.isPaused?this.generatedError=a:(this.isFinished=!0,this.emit("error",a),this.previous&&this.previous.error(a),this.cleanUp()),!0)},on:function(a,b){return this._listeners[a].push(b),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(a,b){if(this._listeners[a])for(var c=0;c<this._listeners[a].length;c++)this._listeners[a][c].call(this,b)},pipe:function(a){return a.registerPrevious(this)},registerPrevious:function(a){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=a.streamInfo,this.mergeStreamInfo(),this.previous=a;var b=this;return a.on("data",function(a){b.processChunk(a)}),a.on("end",function(){b.end()}),a.on("error",function(a){b.error(a)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;this.isPaused=!1;var a=!1;return this.generatedError&&(this.error(this.generatedError),a=!0),this.previous&&this.previous.resume(),!a},flush:function(){},processChunk:function(a){this.push(a)},withStreamInfo:function(a,b){return this.extraStreamInfo[a]=b,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var a in this.extraStreamInfo)this.extraStreamInfo.hasOwnProperty(a)&&(this.streamInfo[a]=this.extraStreamInfo[a])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var a="Worker "+this.name;return this.previous?this.previous+" -> "+a:a}},b.exports=d},{}],29:[function(a,b,c){"use strict";function d(a,b,c,d){var f=null;switch(a){case"blob":return h.newBlob(c,d);case"base64":return f=e(b,c),k.encode(f);default:return f=e(b,c),h.transformTo(a,f)}}function e(a,b){var c,d=0,e=null,f=0;for(c=0;c<b.length;c++)f+=b[c].length;switch(a){case"string":return b.join("");case"array":return Array.prototype.concat.apply([],b);case"uint8array":for(e=new Uint8Array(f),c=0;c<b.length;c++)e.set(b[c],d),d+=b[c].length;return e;case"nodebuffer":return Buffer.concat(b);default:throw new Error("concat : unsupported type '"+a+"'")}}function f(a,b){return new m.Promise(function(c,e){var f=[],g=a._internalType,h=a._outputType,i=a._mimeType;a.on("data",function(a,c){f.push(a),b&&b(c)}).on("error",function(a){f=[],e(a)}).on("end",function(){try{var a=d(h,g,f,i);c(a)}catch(b){e(b)}f=[]}).resume()})}function g(a,b,c){var d=b;switch(b){case"blob":d="arraybuffer";break;case"arraybuffer":d="uint8array";break;case"base64":d="string"}try{this._internalType=d,this._outputType=b,this._mimeType=c,h.checkSupport(d),this._worker=a.pipe(new i(d)),a.lock()}catch(e){this._worker=new j("error"),this._worker.error(e)}}var h=a("../utils"),i=a("./ConvertWorker"),j=a("./GenericWorker"),k=a("../base64"),l=a("../support"),m=a("../external"),n=null;if(l.nodestream)try{n=a("../nodejs/NodejsStreamOutputAdapter")}catch(o){}g.prototype={accumulate:function(a){return f(this,a)},on:function(a,b){var c=this;return"data"===a?this._worker.on(a,function(a){b.call(c,a.data,a.meta)}):this._worker.on(a,function(){h.delay(b,arguments,c)}),this},resume:function(){return h.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(a){if(h.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new n(this,{objectMode:"nodebuffer"!==this._outputType},a)}},b.exports=g},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(a,b,c){"use strict";if(c.base64=!0,c.array=!0,c.string=!0,c.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,c.nodebuffer="undefined"!=typeof Buffer,c.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)c.blob=!1;else{var d=new ArrayBuffer(0);try{c.blob=0===new Blob([d],{type:"application/zip"}).size}catch(e){try{var f=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,g=new f;g.append(d),c.blob=0===g.getBlob("application/zip").size}catch(e){c.blob=!1}}}try{c.nodestream=!!a("readable-stream").Readable}catch(e){c.nodestream=!1}},{"readable-stream":16}],31:[function(a,b,c){"use strict";function d(){i.call(this,"utf-8 decode"),this.leftOver=null}function e(){i.call(this,"utf-8 encode")}for(var f=a("./utils"),g=a("./support"),h=a("./nodejsUtils"),i=a("./stream/GenericWorker"),j=new Array(256),k=0;k<256;k++)j[k]=k>=252?6:k>=248?5:k>=240?4:k>=224?3:k>=192?2:1;j[254]=j[254]=1;var l=function(a){var b,c,d,e,f,h=a.length,i=0;for(e=0;e<h;e++)c=a.charCodeAt(e),55296===(64512&c)&&e+1<h&&(d=a.charCodeAt(e+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),e++)),i+=c<128?1:c<2048?2:c<65536?3:4;for(b=g.uint8array?new Uint8Array(i):new Array(i),f=0,e=0;f<i;e++)c=a.charCodeAt(e),55296===(64512&c)&&e+1<h&&(d=a.charCodeAt(e+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),e++)),c<128?b[f++]=c:c<2048?(b[f++]=192|c>>>6,b[f++]=128|63&c):c<65536?(b[f++]=224|c>>>12,b[f++]=128|c>>>6&63,b[f++]=128|63&c):(b[f++]=240|c>>>18,b[f++]=128|c>>>12&63,b[f++]=128|c>>>6&63,b[f++]=128|63&c);return b},m=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+j[a[c]]>b?c:b},n=function(a){var b,c,d,e,g=a.length,h=new Array(2*g);for(c=0,b=0;b<g;)if(d=a[b++],d<128)h[c++]=d;else if(e=j[d],e>4)h[c++]=65533,b+=e-1;else{for(d&=2===e?31:3===e?15:7;e>1&&b<g;)d=d<<6|63&a[b++],e--;e>1?h[c++]=65533:d<65536?h[c++]=d:(d-=65536,h[c++]=55296|d>>10&1023,h[c++]=56320|1023&d)}return h.length!==c&&(h.subarray?h=h.subarray(0,c):h.length=c),f.applyFromCharCode(h)};c.utf8encode=function(a){return g.nodebuffer?h.newBuffer(a,"utf-8"):l(a)},c.utf8decode=function(a){return g.nodebuffer?f.transformTo("nodebuffer",a).toString("utf-8"):(a=f.transformTo(g.uint8array?"uint8array":"array",a),n(a))},f.inherits(d,i),d.prototype.processChunk=function(a){var b=f.transformTo(g.uint8array?"uint8array":"array",a.data);if(this.leftOver&&this.leftOver.length){if(g.uint8array){var d=b;b=new Uint8Array(d.length+this.leftOver.length),b.set(this.leftOver,0),b.set(d,this.leftOver.length)}else b=this.leftOver.concat(b);this.leftOver=null}var e=m(b),h=b;e!==b.length&&(g.uint8array?(h=b.subarray(0,e),this.leftOver=b.subarray(e,b.length)):(h=b.slice(0,e),this.leftOver=b.slice(e,b.length))),this.push({data:c.utf8decode(h),meta:a.meta})},d.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:c.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},c.Utf8DecodeWorker=d,f.inherits(e,i),e.prototype.processChunk=function(a){this.push({data:c.utf8encode(a.data),meta:a.meta})},c.Utf8EncodeWorker=e},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(a,b,c){"use strict";function d(a){var b=null;return b=i.uint8array?new Uint8Array(a.length):new Array(a.length),f(a,b)}function e(a){return a}function f(a,b){for(var c=0;c<a.length;++c)b[c]=255&a.charCodeAt(c);return b}function g(a){var b=65536,d=c.getTypeOf(a),e=!0;if("uint8array"===d?e=n.applyCanBeUsed.uint8array:"nodebuffer"===d&&(e=n.applyCanBeUsed.nodebuffer),e)for(;b>1;)try{return n.stringifyByChunk(a,d,b)}catch(f){b=Math.floor(b/2)}return n.stringifyByChar(a)}function h(a,b){for(var c=0;c<a.length;c++)b[c]=a[c];return b}var i=a("./support"),j=a("./base64"),k=a("./nodejsUtils"),l=a("core-js/library/fn/set-immediate"),m=a("./external");
c.newBlob=function(a,b){c.checkSupport("blob");try{return new Blob(a,{type:b})}catch(d){try{for(var e=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,f=new e,g=0;g<a.length;g++)f.append(a[g]);return f.getBlob(b)}catch(d){throw new Error("Bug : can't construct the Blob.")}}};var n={stringifyByChunk:function(a,b,c){var d=[],e=0,f=a.length;if(f<=c)return String.fromCharCode.apply(null,a);for(;e<f;)"array"===b||"nodebuffer"===b?d.push(String.fromCharCode.apply(null,a.slice(e,Math.min(e+c,f)))):d.push(String.fromCharCode.apply(null,a.subarray(e,Math.min(e+c,f)))),e+=c;return d.join("")},stringifyByChar:function(a){for(var b="",c=0;c<a.length;c++)b+=String.fromCharCode(a[c]);return b},applyCanBeUsed:{uint8array:function(){try{return i.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(a){return!1}}(),nodebuffer:function(){try{return i.nodebuffer&&1===String.fromCharCode.apply(null,k.newBuffer(1)).length}catch(a){return!1}}()}};c.applyFromCharCode=g;var o={};o.string={string:e,array:function(a){return f(a,new Array(a.length))},arraybuffer:function(a){return o.string.uint8array(a).buffer},uint8array:function(a){return f(a,new Uint8Array(a.length))},nodebuffer:function(a){return f(a,k.newBuffer(a.length))}},o.array={string:g,array:e,arraybuffer:function(a){return new Uint8Array(a).buffer},uint8array:function(a){return new Uint8Array(a)},nodebuffer:function(a){return k.newBuffer(a)}},o.arraybuffer={string:function(a){return g(new Uint8Array(a))},array:function(a){return h(new Uint8Array(a),new Array(a.byteLength))},arraybuffer:e,uint8array:function(a){return new Uint8Array(a)},nodebuffer:function(a){return k.newBuffer(new Uint8Array(a))}},o.uint8array={string:g,array:function(a){return h(a,new Array(a.length))},arraybuffer:function(a){var b=new Uint8Array(a.length);return a.length&&b.set(a,0),b.buffer},uint8array:e,nodebuffer:function(a){return k.newBuffer(a)}},o.nodebuffer={string:g,array:function(a){return h(a,new Array(a.length))},arraybuffer:function(a){return o.nodebuffer.uint8array(a).buffer},uint8array:function(a){return h(a,new Uint8Array(a.length))},nodebuffer:e},c.transformTo=function(a,b){if(b||(b=""),!a)return b;c.checkSupport(a);var d=c.getTypeOf(b),e=o[d][a](b);return e},c.getTypeOf=function(a){return"string"==typeof a?"string":"[object Array]"===Object.prototype.toString.call(a)?"array":i.nodebuffer&&k.isBuffer(a)?"nodebuffer":i.uint8array&&a instanceof Uint8Array?"uint8array":i.arraybuffer&&a instanceof ArrayBuffer?"arraybuffer":void 0},c.checkSupport=function(a){var b=i[a.toLowerCase()];if(!b)throw new Error(a+" is not supported by this platform")},c.MAX_VALUE_16BITS=65535,c.MAX_VALUE_32BITS=-1,c.pretty=function(a){var b,c,d="";for(c=0;c<(a||"").length;c++)b=a.charCodeAt(c),d+="\\x"+(b<16?"0":"")+b.toString(16).toUpperCase();return d},c.delay=function(a,b,c){l(function(){a.apply(c||null,b||[])})},c.inherits=function(a,b){var c=function(){};c.prototype=b.prototype,a.prototype=new c},c.extend=function(){var a,b,c={};for(a=0;a<arguments.length;a++)for(b in arguments[a])arguments[a].hasOwnProperty(b)&&"undefined"==typeof c[b]&&(c[b]=arguments[a][b]);return c},c.prepareContent=function(a,b,e,f,g){var h=m.Promise.resolve(b).then(function(a){var b=i.blob&&(a instanceof Blob||["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(a))!==-1);return b&&"undefined"!=typeof FileReader?new m.Promise(function(b,c){var d=new FileReader;d.onload=function(a){b(a.target.result)},d.onerror=function(a){c(a.target.error)},d.readAsArrayBuffer(a)}):a});return h.then(function(b){var h=c.getTypeOf(b);return h?("arraybuffer"===h?b=c.transformTo("uint8array",b):"string"===h&&(g?b=j.decode(b):e&&f!==!0&&(b=d(b))),b):m.Promise.reject(new Error("The data of '"+a+"' is in an unsupported format !"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,"core-js/library/fn/set-immediate":36}],33:[function(a,b,c){"use strict";function d(a){this.files=[],this.loadOptions=a}var e=a("./reader/readerFor"),f=a("./utils"),g=a("./signature"),h=a("./zipEntry"),i=(a("./utf8"),a("./support"));d.prototype={checkSignature:function(a){if(!this.reader.readAndCheckSignature(a)){this.reader.index-=4;var b=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+f.pretty(b)+", expected "+f.pretty(a)+")")}},isSignature:function(a,b){var c=this.reader.index;this.reader.setIndex(a);var d=this.reader.readString(4),e=d===b;return this.reader.setIndex(c),e},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var a=this.reader.readData(this.zipCommentLength),b=i.uint8array?"uint8array":"array",c=f.transformTo(b,a);this.zipComment=this.loadOptions.decodeFileName(c)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var a,b,c,d=this.zip64EndOfCentralSize-44,e=0;e<d;)a=this.reader.readInt(2),b=this.reader.readInt(4),c=this.reader.readData(b),this.zip64ExtensibleData[a]={id:a,length:b,value:c}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var a,b;for(a=0;a<this.files.length;a++)b=this.files[a],this.reader.setIndex(b.localHeaderOffset),this.checkSignature(g.LOCAL_FILE_HEADER),b.readLocalPart(this.reader),b.handleUTF8(),b.processAttributes()},readCentralDir:function(){var a;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(g.CENTRAL_FILE_HEADER);)a=new h({zip64:this.zip64},this.loadOptions),a.readCentralPart(this.reader),this.files.push(a);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var a=this.reader.lastIndexOfSignature(g.CENTRAL_DIRECTORY_END);if(a<0){var b=!this.isSignature(0,g.LOCAL_FILE_HEADER);throw b?new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip: can't find end of central directory")}this.reader.setIndex(a);var c=a;if(this.checkSignature(g.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===f.MAX_VALUE_16BITS||this.diskWithCentralDirStart===f.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===f.MAX_VALUE_16BITS||this.centralDirRecords===f.MAX_VALUE_16BITS||this.centralDirSize===f.MAX_VALUE_32BITS||this.centralDirOffset===f.MAX_VALUE_32BITS){if(this.zip64=!0,a=this.reader.lastIndexOfSignature(g.ZIP64_CENTRAL_DIRECTORY_LOCATOR),a<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(a),this.checkSignature(g.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,g.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(g.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(g.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var d=this.centralDirOffset+this.centralDirSize;this.zip64&&(d+=20,d+=12+this.zip64EndOfCentralSize);var e=c-d;if(e>0)this.isSignature(c,g.CENTRAL_FILE_HEADER)||(this.reader.zero=e);else if(e<0)throw new Error("Corrupted zip: missing "+Math.abs(e)+" bytes.")},prepareReader:function(a){this.reader=e(a)},load:function(a){this.prepareReader(a),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},b.exports=d},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utf8":31,"./utils":32,"./zipEntry":34}],34:[function(a,b,c){"use strict";function d(a,b){this.options=a,this.loadOptions=b}var e=a("./reader/readerFor"),f=a("./utils"),g=a("./compressedObject"),h=a("./crc32"),i=a("./utf8"),j=a("./compressions"),k=a("./support"),l=0,m=3,n=function(a){for(var b in j)if(j.hasOwnProperty(b)&&j[b].magic===a)return j[b];return null};d.prototype={isEncrypted:function(){return 1===(1&this.bitFlag)},useUTF8:function(){return 2048===(2048&this.bitFlag)},readLocalPart:function(a){var b,c;if(a.skip(22),this.fileNameLength=a.readInt(2),c=a.readInt(2),this.fileName=a.readData(this.fileNameLength),a.skip(c),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(b=n(this.compressionMethod),null===b)throw new Error("Corrupted zip : compression "+f.pretty(this.compressionMethod)+" unknown (inner file : "+f.transformTo("string",this.fileName)+")");this.decompressed=new g(this.compressedSize,this.uncompressedSize,this.crc32,b,a.readData(this.compressedSize))},readCentralPart:function(a){this.versionMadeBy=a.readInt(2),a.skip(2),this.bitFlag=a.readInt(2),this.compressionMethod=a.readString(2),this.date=a.readDate(),this.crc32=a.readInt(4),this.compressedSize=a.readInt(4),this.uncompressedSize=a.readInt(4);var b=a.readInt(2);if(this.extraFieldsLength=a.readInt(2),this.fileCommentLength=a.readInt(2),this.diskNumberStart=a.readInt(2),this.internalFileAttributes=a.readInt(2),this.externalFileAttributes=a.readInt(4),this.localHeaderOffset=a.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");a.skip(b),this.readExtraFields(a),this.parseZIP64ExtraField(a),this.fileComment=a.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var a=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),a===l&&(this.dosPermissions=63&this.externalFileAttributes),a===m&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(a){if(this.extraFields[1]){var b=e(this.extraFields[1].value);this.uncompressedSize===f.MAX_VALUE_32BITS&&(this.uncompressedSize=b.readInt(8)),this.compressedSize===f.MAX_VALUE_32BITS&&(this.compressedSize=b.readInt(8)),this.localHeaderOffset===f.MAX_VALUE_32BITS&&(this.localHeaderOffset=b.readInt(8)),this.diskNumberStart===f.MAX_VALUE_32BITS&&(this.diskNumberStart=b.readInt(4))}},readExtraFields:function(a){var b,c,d,e=a.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});a.index<e;)b=a.readInt(2),c=a.readInt(2),d=a.readData(c),this.extraFields[b]={id:b,length:c,value:d}},handleUTF8:function(){var a=k.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=i.utf8decode(this.fileName),this.fileCommentStr=i.utf8decode(this.fileComment);else{var b=this.findExtraFieldUnicodePath();if(null!==b)this.fileNameStr=b;else{var c=f.transformTo(a,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(c)}var d=this.findExtraFieldUnicodeComment();if(null!==d)this.fileCommentStr=d;else{var e=f.transformTo(a,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(e)}}},findExtraFieldUnicodePath:function(){var a=this.extraFields[28789];if(a){var b=e(a.value);return 1!==b.readInt(1)?null:h(this.fileName)!==b.readInt(4)?null:i.utf8decode(b.readData(a.length-5))}return null},findExtraFieldUnicodeComment:function(){var a=this.extraFields[25461];if(a){var b=e(a.value);return 1!==b.readInt(1)?null:h(this.fileComment)!==b.readInt(4)?null:i.utf8decode(b.readData(a.length-5))}return null}},b.exports=d},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(a,b,c){"use strict";var d=a("./stream/StreamHelper"),e=a("./stream/DataWorker"),f=a("./utf8"),g=a("./compressedObject"),h=a("./stream/GenericWorker"),i=function(a,b,c){this.name=a,this.dir=c.dir,this.date=c.date,this.comment=c.comment,this.unixPermissions=c.unixPermissions,this.dosPermissions=c.dosPermissions,this._data=b,this._dataBinary=c.binary,this.options={compression:c.compression,compressionOptions:c.compressionOptions}};i.prototype={internalStream:function(a){var b=a.toLowerCase(),c="string"===b||"text"===b;"binarystring"!==b&&"text"!==b||(b="string");var e=this._decompressWorker(),g=!this._dataBinary;return g&&!c&&(e=e.pipe(new f.Utf8EncodeWorker)),!g&&c&&(e=e.pipe(new f.Utf8DecodeWorker)),new d(e,b,"")},async:function(a,b){return this.internalStream(a).accumulate(b)},nodeStream:function(a,b){return this.internalStream(a||"nodebuffer").toNodejsStream(b)},_compressWorker:function(a,b){if(this._data instanceof g&&this._data.compression.magic===a.magic)return this._data.getCompressedWorker();var c=this._decompressWorker();return this._dataBinary||(c=c.pipe(new f.Utf8EncodeWorker)),g.createWorkerFrom(c,a,b)},_decompressWorker:function(){return this._data instanceof g?this._data.getContentWorker():this._data instanceof h?this._data:new e(this._data)}};for(var j=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],k=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},l=0;l<j.length;l++)i.prototype[j[l]]=k;b.exports=i},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(a,b,c){a("../modules/web.immediate"),b.exports=a("../modules/_core").setImmediate},{"../modules/_core":40,"../modules/web.immediate":56}],37:[function(a,b,c){b.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},{}],38:[function(a,b,c){var d=a("./_is-object");b.exports=function(a){if(!d(a))throw TypeError(a+" is not an object!");return a}},{"./_is-object":51}],39:[function(a,b,c){var d={}.toString;b.exports=function(a){return d.call(a).slice(8,-1)}},{}],40:[function(a,b,c){var d=b.exports={version:"2.3.0"};"number"==typeof __e&&(__e=d)},{}],41:[function(a,b,c){var d=a("./_a-function");b.exports=function(a,b,c){if(d(a),void 0===b)return a;switch(c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}}},{"./_a-function":37}],42:[function(a,b,c){b.exports=!a("./_fails")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{"./_fails":45}],43:[function(a,b,c){var d=a("./_is-object"),e=a("./_global").document,f=d(e)&&d(e.createElement);b.exports=function(a){return f?e.createElement(a):{}}},{"./_global":46,"./_is-object":51}],44:[function(a,b,c){var d=a("./_global"),e=a("./_core"),f=a("./_ctx"),g=a("./_hide"),h="prototype",i=function(a,b,c){var j,k,l,m=a&i.F,n=a&i.G,o=a&i.S,p=a&i.P,q=a&i.B,r=a&i.W,s=n?e:e[b]||(e[b]={}),t=s[h],u=n?d:o?d[b]:(d[b]||{})[h];n&&(c=b);for(j in c)k=!m&&u&&void 0!==u[j],k&&j in s||(l=k?u[j]:c[j],s[j]=n&&"function"!=typeof u[j]?c[j]:q&&k?f(l,d):r&&u[j]==l?function(a){var b=function(b,c,d){if(this instanceof a){switch(arguments.length){case 0:return new a;case 1:return new a(b);case 2:return new a(b,c)}return new a(b,c,d)}return a.apply(this,arguments)};return b[h]=a[h],b}(l):p&&"function"==typeof l?f(Function.call,l):l,p&&((s.virtual||(s.virtual={}))[j]=l,a&i.R&&t&&!t[j]&&g(t,j,l)))};i.F=1,i.G=2,i.S=4,i.P=8,i.B=16,i.W=32,i.U=64,i.R=128,b.exports=i},{"./_core":40,"./_ctx":41,"./_global":46,"./_hide":47}],45:[function(a,b,c){b.exports=function(a){try{return!!a()}catch(b){return!0}}},{}],46:[function(a,b,c){var d=b.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=d)},{}],47:[function(a,b,c){var d=a("./_object-dp"),e=a("./_property-desc");b.exports=a("./_descriptors")?function(a,b,c){return d.f(a,b,e(1,c))}:function(a,b,c){return a[b]=c,a}},{"./_descriptors":42,"./_object-dp":52,"./_property-desc":53}],48:[function(a,b,c){b.exports=a("./_global").document&&document.documentElement},{"./_global":46}],49:[function(a,b,c){b.exports=!a("./_descriptors")&&!a("./_fails")(function(){return 7!=Object.defineProperty(a("./_dom-create")("div"),"a",{get:function(){return 7}}).a})},{"./_descriptors":42,"./_dom-create":43,"./_fails":45}],50:[function(a,b,c){b.exports=function(a,b,c){var d=void 0===c;switch(b.length){case 0:return d?a():a.call(c);case 1:return d?a(b[0]):a.call(c,b[0]);case 2:return d?a(b[0],b[1]):a.call(c,b[0],b[1]);case 3:return d?a(b[0],b[1],b[2]):a.call(c,b[0],b[1],b[2]);case 4:return d?a(b[0],b[1],b[2],b[3]):a.call(c,b[0],b[1],b[2],b[3])}return a.apply(c,b)}},{}],51:[function(a,b,c){b.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},{}],52:[function(a,b,c){var d=a("./_an-object"),e=a("./_ie8-dom-define"),f=a("./_to-primitive"),g=Object.defineProperty;c.f=a("./_descriptors")?Object.defineProperty:function(a,b,c){if(d(a),b=f(b,!0),d(c),e)try{return g(a,b,c)}catch(h){}if("get"in c||"set"in c)throw TypeError("Accessors not supported!");return"value"in c&&(a[b]=c.value),a}},{"./_an-object":38,"./_descriptors":42,"./_ie8-dom-define":49,"./_to-primitive":55}],53:[function(a,b,c){b.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},{}],54:[function(a,b,c){var d,e,f,g=a("./_ctx"),h=a("./_invoke"),i=a("./_html"),j=a("./_dom-create"),k=a("./_global"),l=k.process,m=k.setImmediate,n=k.clearImmediate,o=k.MessageChannel,p=0,q={},r="onreadystatechange",s=function(){var a=+this;if(q.hasOwnProperty(a)){var b=q[a];delete q[a],b()}},t=function(a){s.call(a.data)};m&&n||(m=function(a){for(var b=[],c=1;arguments.length>c;)b.push(arguments[c++]);return q[++p]=function(){h("function"==typeof a?a:Function(a),b)},d(p),p},n=function(a){delete q[a]},"process"==a("./_cof")(l)?d=function(a){l.nextTick(g(s,a,1))}:o?(e=new o,f=e.port2,e.port1.onmessage=t,d=g(f.postMessage,f,1)):k.addEventListener&&"function"==typeof postMessage&&!k.importScripts?(d=function(a){k.postMessage(a+"","*")},k.addEventListener("message",t,!1)):d=r in j("script")?function(a){i.appendChild(j("script"))[r]=function(){i.removeChild(this),s.call(a)}}:function(a){setTimeout(g(s,a,1),0)}),b.exports={set:m,clear:n}},{"./_cof":39,"./_ctx":41,"./_dom-create":43,"./_global":46,"./_html":48,"./_invoke":50}],55:[function(a,b,c){var d=a("./_is-object");b.exports=function(a,b){if(!d(a))return a;var c,e;if(b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;if("function"==typeof(c=a.valueOf)&&!d(e=c.call(a)))return e;if(!b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;throw TypeError("Can't convert object to primitive value")}},{"./_is-object":51}],56:[function(a,b,c){var d=a("./_export"),e=a("./_task");d(d.G+d.B,{setImmediate:e.set,clearImmediate:e.clear})},{"./_export":44,"./_task":54}],57:[function(a,b,c){(function(a){"use strict";function c(){k=!0;for(var a,b,c=l.length;c;){for(b=l,l=[],a=-1;++a<c;)b[a]();c=l.length}k=!1}function d(a){1!==l.push(a)||k||e()}var e,f=a.MutationObserver||a.WebKitMutationObserver;if(f){var g=0,h=new f(c),i=a.document.createTextNode("");h.observe(i,{characterData:!0}),e=function(){i.data=g=++g%2}}else if(a.setImmediate||"undefined"==typeof a.MessageChannel)e="document"in a&&"onreadystatechange"in a.document.createElement("script")?function(){var b=a.document.createElement("script");b.onreadystatechange=function(){c(),b.onreadystatechange=null,b.parentNode.removeChild(b),b=null},a.document.documentElement.appendChild(b)}:function(){setTimeout(c,0)};else{var j=new a.MessageChannel;j.port1.onmessage=c,e=function(){j.port2.postMessage(0)}}var k,l=[];b.exports=d}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],58:[function(a,b,c){"use strict";function d(){}function e(a){if("function"!=typeof a)throw new TypeError("resolver must be a function");this.state=s,this.queue=[],this.outcome=void 0,a!==d&&i(this,a)}function f(a,b,c){this.promise=a,"function"==typeof b&&(this.onFulfilled=b,this.callFulfilled=this.otherCallFulfilled),"function"==typeof c&&(this.onRejected=c,this.callRejected=this.otherCallRejected)}function g(a,b,c){o(function(){var d;try{d=b(c)}catch(e){return p.reject(a,e)}d===a?p.reject(a,new TypeError("Cannot resolve promise with itself")):p.resolve(a,d)})}function h(a){var b=a&&a.then;if(a&&("object"==typeof a||"function"==typeof a)&&"function"==typeof b)return function(){b.apply(a,arguments)}}function i(a,b){function c(b){f||(f=!0,p.reject(a,b))}function d(b){f||(f=!0,p.resolve(a,b))}function e(){b(d,c)}var f=!1,g=j(e);"error"===g.status&&c(g.value)}function j(a,b){var c={};try{c.value=a(b),c.status="success"}catch(d){c.status="error",c.value=d}return c}function k(a){return a instanceof this?a:p.resolve(new this(d),a)}function l(a){var b=new this(d);return p.reject(b,a)}function m(a){function b(a,b){function d(a){g[b]=a,++h!==e||f||(f=!0,p.resolve(j,g))}c.resolve(a).then(d,function(a){f||(f=!0,p.reject(j,a))})}var c=this;if("[object Array]"!==Object.prototype.toString.call(a))return this.reject(new TypeError("must be an array"));var e=a.length,f=!1;if(!e)return this.resolve([]);for(var g=new Array(e),h=0,i=-1,j=new this(d);++i<e;)b(a[i],i);return j}function n(a){function b(a){c.resolve(a).then(function(a){f||(f=!0,p.resolve(h,a))},function(a){f||(f=!0,p.reject(h,a))})}var c=this;if("[object Array]"!==Object.prototype.toString.call(a))return this.reject(new TypeError("must be an array"));var e=a.length,f=!1;if(!e)return this.resolve([]);for(var g=-1,h=new this(d);++g<e;)b(a[g]);return h}var o=a("immediate"),p={},q=["REJECTED"],r=["FULFILLED"],s=["PENDING"];b.exports=e,e.prototype["catch"]=function(a){return this.then(null,a)},e.prototype.then=function(a,b){if("function"!=typeof a&&this.state===r||"function"!=typeof b&&this.state===q)return this;var c=new this.constructor(d);if(this.state!==s){var e=this.state===r?a:b;g(c,e,this.outcome)}else this.queue.push(new f(c,a,b));return c},f.prototype.callFulfilled=function(a){p.resolve(this.promise,a)},f.prototype.otherCallFulfilled=function(a){g(this.promise,this.onFulfilled,a)},f.prototype.callRejected=function(a){p.reject(this.promise,a)},f.prototype.otherCallRejected=function(a){g(this.promise,this.onRejected,a)},p.resolve=function(a,b){var c=j(h,b);if("error"===c.status)return p.reject(a,c.value);var d=c.value;if(d)i(a,d);else{a.state=r,a.outcome=b;for(var e=-1,f=a.queue.length;++e<f;)a.queue[e].callFulfilled(b)}return a},p.reject=function(a,b){a.state=q,a.outcome=b;for(var c=-1,d=a.queue.length;++c<d;)a.queue[c].callRejected(b);return a},e.resolve=k,e.reject=l,e.all=m,e.race=n},{immediate:57}],59:[function(a,b,c){"use strict";var d=a("./lib/utils/common").assign,e=a("./lib/deflate"),f=a("./lib/inflate"),g=a("./lib/zlib/constants"),h={};d(h,e,f,g),b.exports=h},{"./lib/deflate":60,"./lib/inflate":61,"./lib/utils/common":62,"./lib/zlib/constants":65}],60:[function(a,b,c){"use strict";function d(a){if(!(this instanceof d))return new d(a);this.options=i.assign({level:s,method:u,chunkSize:16384,windowBits:15,memLevel:8,strategy:t,to:""},a||{});var b=this.options;b.raw&&b.windowBits>0?b.windowBits=-b.windowBits:b.gzip&&b.windowBits>0&&b.windowBits<16&&(b.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=h.deflateInit2(this.strm,b.level,b.method,b.windowBits,b.memLevel,b.strategy);if(c!==p)throw new Error(k[c]);if(b.header&&h.deflateSetHeader(this.strm,b.header),b.dictionary){var e;if(e="string"==typeof b.dictionary?j.string2buf(b.dictionary):"[object ArrayBuffer]"===m.call(b.dictionary)?new Uint8Array(b.dictionary):b.dictionary,c=h.deflateSetDictionary(this.strm,e),c!==p)throw new Error(k[c]);this._dict_set=!0}}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg||k[c.err];return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}function g(a,b){return b=b||{},b.gzip=!0,e(a,b)}var h=a("./zlib/deflate"),i=a("./utils/common"),j=a("./utils/strings"),k=a("./zlib/messages"),l=a("./zlib/zstream"),m=Object.prototype.toString,n=0,o=4,p=0,q=1,r=2,s=-1,t=0,u=8;d.prototype.push=function(a,b){var c,d,e=this.strm,f=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?o:n,"string"==typeof a?e.input=j.string2buf(a):"[object ArrayBuffer]"===m.call(a)?e.input=new Uint8Array(a):e.input=a,e.next_in=0,e.avail_in=e.input.length;do{if(0===e.avail_out&&(e.output=new i.Buf8(f),e.next_out=0,e.avail_out=f),c=h.deflate(e,d),c!==q&&c!==p)return this.onEnd(c),this.ended=!0,!1;0!==e.avail_out&&(0!==e.avail_in||d!==o&&d!==r)||("string"===this.options.to?this.onData(j.buf2binstring(i.shrinkBuf(e.output,e.next_out))):this.onData(i.shrinkBuf(e.output,e.next_out)))}while((e.avail_in>0||0===e.avail_out)&&c!==q);return d===o?(c=h.deflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===p):d!==r||(this.onEnd(p),e.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===p&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Deflate=d,c.deflate=e,c.deflateRaw=f,c.gzip=g},{"./utils/common":62,"./utils/strings":63,"./zlib/deflate":67,"./zlib/messages":72,"./zlib/zstream":74}],61:[function(a,b,c){"use strict";function d(a){if(!(this instanceof d))return new d(a);this.options=h.assign({chunkSize:16384,windowBits:0,to:""},a||{});var b=this.options;b.raw&&b.windowBits>=0&&b.windowBits<16&&(b.windowBits=-b.windowBits,0===b.windowBits&&(b.windowBits=-15)),!(b.windowBits>=0&&b.windowBits<16)||a&&a.windowBits||(b.windowBits+=32),b.windowBits>15&&b.windowBits<48&&0===(15&b.windowBits)&&(b.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=g.inflateInit2(this.strm,b.windowBits);if(c!==j.Z_OK)throw new Error(k[c]);this.header=new m,g.inflateGetHeader(this.strm,this.header)}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg||k[c.err];return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}var g=a("./zlib/inflate"),h=a("./utils/common"),i=a("./utils/strings"),j=a("./zlib/constants"),k=a("./zlib/messages"),l=a("./zlib/zstream"),m=a("./zlib/gzheader"),n=Object.prototype.toString;d.prototype.push=function(a,b){var c,d,e,f,k,l,m=this.strm,o=this.options.chunkSize,p=this.options.dictionary,q=!1;if(this.ended)return!1;d=b===~~b?b:b===!0?j.Z_FINISH:j.Z_NO_FLUSH,"string"==typeof a?m.input=i.binstring2buf(a):"[object ArrayBuffer]"===n.call(a)?m.input=new Uint8Array(a):m.input=a,m.next_in=0,m.avail_in=m.input.length;do{if(0===m.avail_out&&(m.output=new h.Buf8(o),m.next_out=0,m.avail_out=o),c=g.inflate(m,j.Z_NO_FLUSH),c===j.Z_NEED_DICT&&p&&(l="string"==typeof p?i.string2buf(p):"[object ArrayBuffer]"===n.call(p)?new Uint8Array(p):p,c=g.inflateSetDictionary(this.strm,l)),c===j.Z_BUF_ERROR&&q===!0&&(c=j.Z_OK,q=!1),c!==j.Z_STREAM_END&&c!==j.Z_OK)return this.onEnd(c),this.ended=!0,!1;m.next_out&&(0!==m.avail_out&&c!==j.Z_STREAM_END&&(0!==m.avail_in||d!==j.Z_FINISH&&d!==j.Z_SYNC_FLUSH)||("string"===this.options.to?(e=i.utf8border(m.output,m.next_out),f=m.next_out-e,k=i.buf2string(m.output,e),m.next_out=f,m.avail_out=o-f,f&&h.arraySet(m.output,m.output,e,f,0),this.onData(k)):this.onData(h.shrinkBuf(m.output,m.next_out)))),0===m.avail_in&&0===m.avail_out&&(q=!0)}while((m.avail_in>0||0===m.avail_out)&&c!==j.Z_STREAM_END);return c===j.Z_STREAM_END&&(d=j.Z_FINISH),d===j.Z_FINISH?(c=g.inflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===j.Z_OK):d!==j.Z_SYNC_FLUSH||(this.onEnd(j.Z_OK),m.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===j.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=h.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Inflate=d,c.inflate=e,c.inflateRaw=f,c.ungzip=e},{"./utils/common":62,"./utils/strings":63,"./zlib/constants":65,"./zlib/gzheader":68,"./zlib/inflate":70,"./zlib/messages":72,"./zlib/zstream":74}],62:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if("object"!=typeof c)throw new TypeError(c+"must be non-object");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray&&a.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;f<d;f++)a[e+f]=b[c+f]},flattenChunks:function(a){var b,c,d,e,f,g;for(d=0,b=0,c=a.length;b<c;b++)d+=a[b].length;for(g=new Uint8Array(d),e=0,b=0,c=a.length;b<c;b++)f=a[b],g.set(f,e),e+=f.length;return g}},f={arraySet:function(a,b,c,d,e){for(var f=0;f<d;f++)a[e+f]=b[c+f]},flattenChunks:function(a){return[].concat.apply([],a)}};c.setTyped=function(a){a?(c.Buf8=Uint8Array,c.Buf16=Uint16Array,c.Buf32=Int32Array,c.assign(c,e)):(c.Buf8=Array,c.Buf16=Array,c.Buf32=Array,c.assign(c,f))},c.setTyped(d)},{}],63:[function(a,b,c){"use strict";function d(a,b){if(b<65537&&(a.subarray&&g||!a.subarray&&f))return String.fromCharCode.apply(null,e.shrinkBuf(a,b));for(var c="",d=0;d<b;d++)c+=String.fromCharCode(a[d]);return c}var e=a("./common"),f=!0,g=!0;try{String.fromCharCode.apply(null,[0])}catch(h){f=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(h){g=!1}for(var i=new e.Buf8(256),j=0;j<256;j++)i[j]=j>=252?6:j>=248?5:j>=240?4:j>=224?3:j>=192?2:1;i[254]=i[254]=1,c.string2buf=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;f<h;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),i+=c<128?1:c<2048?2:c<65536?3:4;for(b=new e.Buf8(i),g=0,f=0;g<i;f++)c=a.charCodeAt(f),55296===(64512&c)&&f+1<h&&(d=a.charCodeAt(f+1),56320===(64512&d)&&(c=65536+(c-55296<<10)+(d-56320),f++)),c<128?b[g++]=c:c<2048?(b[g++]=192|c>>>6,b[g++]=128|63&c):c<65536?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},c.buf2binstring=function(a){return d(a,a.length)},c.binstring2buf=function(a){for(var b=new e.Buf8(a.length),c=0,d=b.length;c<d;c++)b[c]=a.charCodeAt(c);return b},c.buf2string=function(a,b){var c,e,f,g,h=b||a.length,j=new Array(2*h);for(e=0,c=0;c<h;)if(f=a[c++],f<128)j[e++]=f;else if(g=i[f],g>4)j[e++]=65533,c+=g-1;else{for(f&=2===g?31:3===g?15:7;g>1&&c<h;)f=f<<6|63&a[c++],g--;g>1?j[e++]=65533:f<65536?j[e++]=f:(f-=65536,j[e++]=55296|f>>10&1023,j[e++]=56320|1023&f)}return d(j,e)},c.utf8border=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+i[a[c]]>b?c:b}},{"./common":62}],64:[function(a,b,c){"use strict";function d(a,b,c,d){for(var e=65535&a|0,f=a>>>16&65535|0,g=0;0!==c;){g=c>2e3?2e3:c,c-=g;do e=e+b[d++]|0,f=f+e|0;while(--g);e%=65521,f%=65521}return e|f<<16|0}b.exports=d},{}],65:[function(a,b,c){"use strict";b.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,
Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],66:[function(a,b,c){"use strict";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=f,g=d+c;a^=-1;for(var h=d;h<g;h++)a=a>>>8^e[255&(a^b[h])];return a^-1}var f=d();b.exports=e},{}],67:[function(a,b,c){"use strict";function d(a,b){return a.msg=I[b],b}function e(a){return(a<<1)-(a>4?9:0)}function f(a){for(var b=a.length;--b>=0;)a[b]=0}function g(a){var b=a.state,c=b.pending;c>a.avail_out&&(c=a.avail_out),0!==c&&(E.arraySet(a.output,b.pending_buf,b.pending_out,c,a.next_out),a.next_out+=c,b.pending_out+=c,a.total_out+=c,a.avail_out-=c,b.pending-=c,0===b.pending&&(b.pending_out=0))}function h(a,b){F._tr_flush_block(a,a.block_start>=0?a.block_start:-1,a.strstart-a.block_start,b),a.block_start=a.strstart,g(a.strm)}function i(a,b){a.pending_buf[a.pending++]=b}function j(a,b){a.pending_buf[a.pending++]=b>>>8&255,a.pending_buf[a.pending++]=255&b}function k(a,b,c,d){var e=a.avail_in;return e>d&&(e=d),0===e?0:(a.avail_in-=e,E.arraySet(b,a.input,a.next_in,e,c),1===a.state.wrap?a.adler=G(a.adler,b,e,c):2===a.state.wrap&&(a.adler=H(a.adler,b,e,c)),a.next_in+=e,a.total_in+=e,e)}function l(a,b){var c,d,e=a.max_chain_length,f=a.strstart,g=a.prev_length,h=a.nice_match,i=a.strstart>a.w_size-la?a.strstart-(a.w_size-la):0,j=a.window,k=a.w_mask,l=a.prev,m=a.strstart+ka,n=j[f+g-1],o=j[f+g];a.prev_length>=a.good_match&&(e>>=2),h>a.lookahead&&(h=a.lookahead);do if(c=b,j[c+g]===o&&j[c+g-1]===n&&j[c]===j[f]&&j[++c]===j[f+1]){f+=2,c++;do;while(j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&f<m);if(d=ka-(m-f),f=m-ka,d>g){if(a.match_start=b,g=d,d>=h)break;n=j[f+g-1],o=j[f+g]}}while((b=l[b&k])>i&&0!==--e);return g<=a.lookahead?g:a.lookahead}function m(a){var b,c,d,e,f,g=a.w_size;do{if(e=a.window_size-a.lookahead-a.strstart,a.strstart>=g+(g-la)){E.arraySet(a.window,a.window,g,g,0),a.match_start-=g,a.strstart-=g,a.block_start-=g,c=a.hash_size,b=c;do d=a.head[--b],a.head[b]=d>=g?d-g:0;while(--c);c=g,b=c;do d=a.prev[--b],a.prev[b]=d>=g?d-g:0;while(--c);e+=g}if(0===a.strm.avail_in)break;if(c=k(a.strm,a.window,a.strstart+a.lookahead,e),a.lookahead+=c,a.lookahead+a.insert>=ja)for(f=a.strstart-a.insert,a.ins_h=a.window[f],a.ins_h=(a.ins_h<<a.hash_shift^a.window[f+1])&a.hash_mask;a.insert&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[f+ja-1])&a.hash_mask,a.prev[f&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=f,f++,a.insert--,!(a.lookahead+a.insert<ja)););}while(a.lookahead<la&&0!==a.strm.avail_in)}function n(a,b){var c=65535;for(c>a.pending_buf_size-5&&(c=a.pending_buf_size-5);;){if(a.lookahead<=1){if(m(a),0===a.lookahead&&b===J)return ua;if(0===a.lookahead)break}a.strstart+=a.lookahead,a.lookahead=0;var d=a.block_start+c;if((0===a.strstart||a.strstart>=d)&&(a.lookahead=a.strstart-d,a.strstart=d,h(a,!1),0===a.strm.avail_out))return ua;if(a.strstart-a.block_start>=a.w_size-la&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.strstart>a.block_start&&(h(a,!1),0===a.strm.avail_out)?ua:ua}function o(a,b){for(var c,d;;){if(a.lookahead<la){if(m(a),a.lookahead<la&&b===J)return ua;if(0===a.lookahead)break}if(c=0,a.lookahead>=ja&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart),0!==c&&a.strstart-c<=a.w_size-la&&(a.match_length=l(a,c)),a.match_length>=ja)if(d=F._tr_tally(a,a.strstart-a.match_start,a.match_length-ja),a.lookahead-=a.match_length,a.match_length<=a.max_lazy_match&&a.lookahead>=ja){a.match_length--;do a.strstart++,a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart;while(0!==--a.match_length);a.strstart++}else a.strstart+=a.match_length,a.match_length=0,a.ins_h=a.window[a.strstart],a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+1])&a.hash_mask;else d=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++;if(d&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=a.strstart<ja-1?a.strstart:ja-1,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function p(a,b){for(var c,d,e;;){if(a.lookahead<la){if(m(a),a.lookahead<la&&b===J)return ua;if(0===a.lookahead)break}if(c=0,a.lookahead>=ja&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart),a.prev_length=a.match_length,a.prev_match=a.match_start,a.match_length=ja-1,0!==c&&a.prev_length<a.max_lazy_match&&a.strstart-c<=a.w_size-la&&(a.match_length=l(a,c),a.match_length<=5&&(a.strategy===U||a.match_length===ja&&a.strstart-a.match_start>4096)&&(a.match_length=ja-1)),a.prev_length>=ja&&a.match_length<=a.prev_length){e=a.strstart+a.lookahead-ja,d=F._tr_tally(a,a.strstart-1-a.prev_match,a.prev_length-ja),a.lookahead-=a.prev_length-1,a.prev_length-=2;do++a.strstart<=e&&(a.ins_h=(a.ins_h<<a.hash_shift^a.window[a.strstart+ja-1])&a.hash_mask,c=a.prev[a.strstart&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=a.strstart);while(0!==--a.prev_length);if(a.match_available=0,a.match_length=ja-1,a.strstart++,d&&(h(a,!1),0===a.strm.avail_out))return ua}else if(a.match_available){if(d=F._tr_tally(a,0,a.window[a.strstart-1]),d&&h(a,!1),a.strstart++,a.lookahead--,0===a.strm.avail_out)return ua}else a.match_available=1,a.strstart++,a.lookahead--}return a.match_available&&(d=F._tr_tally(a,0,a.window[a.strstart-1]),a.match_available=0),a.insert=a.strstart<ja-1?a.strstart:ja-1,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function q(a,b){for(var c,d,e,f,g=a.window;;){if(a.lookahead<=ka){if(m(a),a.lookahead<=ka&&b===J)return ua;if(0===a.lookahead)break}if(a.match_length=0,a.lookahead>=ja&&a.strstart>0&&(e=a.strstart-1,d=g[e],d===g[++e]&&d===g[++e]&&d===g[++e])){f=a.strstart+ka;do;while(d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&e<f);a.match_length=ka-(f-e),a.match_length>a.lookahead&&(a.match_length=a.lookahead)}if(a.match_length>=ja?(c=F._tr_tally(a,1,a.match_length-ja),a.lookahead-=a.match_length,a.strstart+=a.match_length,a.match_length=0):(c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++),c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function r(a,b){for(var c;;){if(0===a.lookahead&&(m(a),0===a.lookahead)){if(b===J)return ua;break}if(a.match_length=0,c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++,c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function s(a,b,c,d,e){this.good_length=a,this.max_lazy=b,this.nice_length=c,this.max_chain=d,this.func=e}function t(a){a.window_size=2*a.w_size,f(a.head),a.max_lazy_match=D[a.level].max_lazy,a.good_match=D[a.level].good_length,a.nice_match=D[a.level].nice_length,a.max_chain_length=D[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=ja-1,a.match_available=0,a.ins_h=0}function u(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=$,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new E.Buf16(2*ha),this.dyn_dtree=new E.Buf16(2*(2*fa+1)),this.bl_tree=new E.Buf16(2*(2*ga+1)),f(this.dyn_ltree),f(this.dyn_dtree),f(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new E.Buf16(ia+1),this.heap=new E.Buf16(2*ea+1),f(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new E.Buf16(2*ea+1),f(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function v(a){var b;return a&&a.state?(a.total_in=a.total_out=0,a.data_type=Z,b=a.state,b.pending=0,b.pending_out=0,b.wrap<0&&(b.wrap=-b.wrap),b.status=b.wrap?na:sa,a.adler=2===b.wrap?0:1,b.last_flush=J,F._tr_init(b),O):d(a,Q)}function w(a){var b=v(a);return b===O&&t(a.state),b}function x(a,b){return a&&a.state?2!==a.state.wrap?Q:(a.state.gzhead=b,O):Q}function y(a,b,c,e,f,g){if(!a)return Q;var h=1;if(b===T&&(b=6),e<0?(h=0,e=-e):e>15&&(h=2,e-=16),f<1||f>_||c!==$||e<8||e>15||b<0||b>9||g<0||g>X)return d(a,Q);8===e&&(e=9);var i=new u;return a.state=i,i.strm=a,i.wrap=h,i.gzhead=null,i.w_bits=e,i.w_size=1<<i.w_bits,i.w_mask=i.w_size-1,i.hash_bits=f+7,i.hash_size=1<<i.hash_bits,i.hash_mask=i.hash_size-1,i.hash_shift=~~((i.hash_bits+ja-1)/ja),i.window=new E.Buf8(2*i.w_size),i.head=new E.Buf16(i.hash_size),i.prev=new E.Buf16(i.w_size),i.lit_bufsize=1<<f+6,i.pending_buf_size=4*i.lit_bufsize,i.pending_buf=new E.Buf8(i.pending_buf_size),i.d_buf=1*i.lit_bufsize,i.l_buf=3*i.lit_bufsize,i.level=b,i.strategy=g,i.method=c,w(a)}function z(a,b){return y(a,b,$,aa,ba,Y)}function A(a,b){var c,h,k,l;if(!a||!a.state||b>N||b<0)return a?d(a,Q):Q;if(h=a.state,!a.output||!a.input&&0!==a.avail_in||h.status===ta&&b!==M)return d(a,0===a.avail_out?S:Q);if(h.strm=a,c=h.last_flush,h.last_flush=b,h.status===na)if(2===h.wrap)a.adler=0,i(h,31),i(h,139),i(h,8),h.gzhead?(i(h,(h.gzhead.text?1:0)+(h.gzhead.hcrc?2:0)+(h.gzhead.extra?4:0)+(h.gzhead.name?8:0)+(h.gzhead.comment?16:0)),i(h,255&h.gzhead.time),i(h,h.gzhead.time>>8&255),i(h,h.gzhead.time>>16&255),i(h,h.gzhead.time>>24&255),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(i(h,255&h.gzhead.extra.length),i(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(a.adler=H(a.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=oa):(i(h,0),i(h,0),i(h,0),i(h,0),i(h,0),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,ya),h.status=sa);else{var m=$+(h.w_bits-8<<4)<<8,n=-1;n=h.strategy>=V||h.level<2?0:h.level<6?1:6===h.level?2:3,m|=n<<6,0!==h.strstart&&(m|=ma),m+=31-m%31,h.status=sa,j(h,m),0!==h.strstart&&(j(h,a.adler>>>16),j(h,65535&a.adler)),a.adler=1}if(h.status===oa)if(h.gzhead.extra){for(k=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending!==h.pending_buf_size));)i(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=pa)}else h.status=pa;if(h.status===pa)if(h.gzhead.name){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindex<h.gzhead.name.length?255&h.gzhead.name.charCodeAt(h.gzindex++):0,i(h,l)}while(0!==l);h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.gzindex=0,h.status=qa)}else h.status=qa;if(h.status===qa)if(h.gzhead.comment){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindex<h.gzhead.comment.length?255&h.gzhead.comment.charCodeAt(h.gzindex++):0,i(h,l)}while(0!==l);h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.status=ra)}else h.status=ra;if(h.status===ra&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&g(a),h.pending+2<=h.pending_buf_size&&(i(h,255&a.adler),i(h,a.adler>>8&255),a.adler=0,h.status=sa)):h.status=sa),0!==h.pending){if(g(a),0===a.avail_out)return h.last_flush=-1,O}else if(0===a.avail_in&&e(b)<=e(c)&&b!==M)return d(a,S);if(h.status===ta&&0!==a.avail_in)return d(a,S);if(0!==a.avail_in||0!==h.lookahead||b!==J&&h.status!==ta){var o=h.strategy===V?r(h,b):h.strategy===W?q(h,b):D[h.level].func(h,b);if(o!==wa&&o!==xa||(h.status=ta),o===ua||o===wa)return 0===a.avail_out&&(h.last_flush=-1),O;if(o===va&&(b===K?F._tr_align(h):b!==N&&(F._tr_stored_block(h,0,0,!1),b===L&&(f(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),g(a),0===a.avail_out))return h.last_flush=-1,O}return b!==M?O:h.wrap<=0?P:(2===h.wrap?(i(h,255&a.adler),i(h,a.adler>>8&255),i(h,a.adler>>16&255),i(h,a.adler>>24&255),i(h,255&a.total_in),i(h,a.total_in>>8&255),i(h,a.total_in>>16&255),i(h,a.total_in>>24&255)):(j(h,a.adler>>>16),j(h,65535&a.adler)),g(a),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?O:P)}function B(a){var b;return a&&a.state?(b=a.state.status,b!==na&&b!==oa&&b!==pa&&b!==qa&&b!==ra&&b!==sa&&b!==ta?d(a,Q):(a.state=null,b===sa?d(a,R):O)):Q}function C(a,b){var c,d,e,g,h,i,j,k,l=b.length;if(!a||!a.state)return Q;if(c=a.state,g=c.wrap,2===g||1===g&&c.status!==na||c.lookahead)return Q;for(1===g&&(a.adler=G(a.adler,b,l,0)),c.wrap=0,l>=c.w_size&&(0===g&&(f(c.head),c.strstart=0,c.block_start=0,c.insert=0),k=new E.Buf8(c.w_size),E.arraySet(k,b,l-c.w_size,c.w_size,0),b=k,l=c.w_size),h=a.avail_in,i=a.next_in,j=a.input,a.avail_in=l,a.next_in=0,a.input=b,m(c);c.lookahead>=ja;){d=c.strstart,e=c.lookahead-(ja-1);do c.ins_h=(c.ins_h<<c.hash_shift^c.window[d+ja-1])&c.hash_mask,c.prev[d&c.w_mask]=c.head[c.ins_h],c.head[c.ins_h]=d,d++;while(--e);c.strstart=d,c.lookahead=ja-1,m(c)}return c.strstart+=c.lookahead,c.block_start=c.strstart,c.insert=c.lookahead,c.lookahead=0,c.match_length=c.prev_length=ja-1,c.match_available=0,a.next_in=i,a.input=j,a.avail_in=h,c.wrap=g,O}var D,E=a("../utils/common"),F=a("./trees"),G=a("./adler32"),H=a("./crc32"),I=a("./messages"),J=0,K=1,L=3,M=4,N=5,O=0,P=1,Q=-2,R=-3,S=-5,T=-1,U=1,V=2,W=3,X=4,Y=0,Z=2,$=8,_=9,aa=15,ba=8,ca=29,da=256,ea=da+1+ca,fa=30,ga=19,ha=2*ea+1,ia=15,ja=3,ka=258,la=ka+ja+1,ma=32,na=42,oa=69,pa=73,qa=91,ra=103,sa=113,ta=666,ua=1,va=2,wa=3,xa=4,ya=3;D=[new s(0,0,0,0,n),new s(4,4,8,4,o),new s(4,5,16,8,o),new s(4,6,32,32,o),new s(4,4,16,16,p),new s(8,16,32,32,p),new s(8,16,128,128,p),new s(8,32,128,256,p),new s(32,128,258,1024,p),new s(32,258,258,4096,p)],c.deflateInit=z,c.deflateInit2=y,c.deflateReset=w,c.deflateResetKeep=v,c.deflateSetHeader=x,c.deflate=A,c.deflateEnd=B,c.deflateSetDictionary=C,c.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":62,"./adler32":64,"./crc32":66,"./messages":72,"./trees":73}],68:[function(a,b,c){"use strict";function d(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}b.exports=d},{}],69:[function(a,b,c){"use strict";var d=30,e=12;b.exports=function(a,b){var c,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C;c=a.state,f=a.next_in,B=a.input,g=f+(a.avail_in-5),h=a.next_out,C=a.output,i=h-(b-a.avail_out),j=h+(a.avail_out-257),k=c.dmax,l=c.wsize,m=c.whave,n=c.wnext,o=c.window,p=c.hold,q=c.bits,r=c.lencode,s=c.distcode,t=(1<<c.lenbits)-1,u=(1<<c.distbits)-1;a:do{q<15&&(p+=B[f++]<<q,q+=8,p+=B[f++]<<q,q+=8),v=r[p&t];b:for(;;){if(w=v>>>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<<w)-1)];continue b}if(32&w){c.mode=e;break a}a.msg="invalid literal/length code",c.mode=d;break a}x=65535&v,w&=15,w&&(q<w&&(p+=B[f++]<<q,q+=8),x+=p&(1<<w)-1,p>>>=w,q-=w),q<15&&(p+=B[f++]<<q,q+=8,p+=B[f++]<<q,q+=8),v=s[p&u];c:for(;;){if(w=v>>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<<w)-1)];continue c}a.msg="invalid distance code",c.mode=d;break a}if(y=65535&v,w&=15,q<w&&(p+=B[f++]<<q,q+=8,q<w&&(p+=B[f++]<<q,q+=8)),y+=p&(1<<w)-1,y>k){a.msg="invalid distance too far back",c.mode=d;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&c.sane){a.msg="invalid distance too far back",c.mode=d;break a}if(z=0,A=o,0===n){if(z+=l-w,w<x){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}else if(n<w){if(z+=l+n-w,w-=n,w<x){x-=w;do C[h++]=o[z++];while(--w);if(z=0,n<x){w=n,x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}}else if(z+=n-w,w<x){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}for(;x>2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(f<g&&h<j);x=q>>3,f-=x,q-=x<<3,p&=(1<<q)-1,a.next_in=f,a.next_out=h,a.avail_in=f<g?5+(g-f):5-(f-g),a.avail_out=h<j?257+(j-h):257-(h-j),c.hold=p,c.bits=q}},{}],70:[function(a,b,c){"use strict";function d(a){return(a>>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,a.msg="",b.wrap&&(a.adler=1&b.wrap),b.mode=L,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=b.lendyn=new s.Buf32(pa),b.distcode=b.distdyn=new s.Buf32(qa),b.sane=1,b.back=-1,D):G}function g(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,f(a)):G}function h(a,b){var c,d;return a&&a.state?(d=a.state,b<0?(c=0,b=-b):(c=(b>>4)+1,b<48&&(b&=15)),b&&(b<8||b>15)?G:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,g(a))):G}function i(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=h(a,b),c!==D&&(a.state=null),c):G}function j(a){return i(a,sa)}function k(a){if(ta){var b;for(q=new s.Buf32(512),r=new s.Buf32(32),b=0;b<144;)a.lens[b++]=8;for(;b<256;)a.lens[b++]=9;for(;b<280;)a.lens[b++]=7;for(;b<288;)a.lens[b++]=8;for(w(y,a.lens,0,288,q,0,a.work,{bits:9}),b=0;b<32;)a.lens[b++]=5;w(z,a.lens,0,32,r,0,a.work,{bits:5}),ta=!1}a.lencode=q,a.lenbits=9,a.distcode=r,a.distbits=5}function l(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<<f.wbits,f.wnext=0,f.whave=0,f.window=new s.Buf8(f.wsize)),d>=f.wsize?(s.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),s.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(s.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whave<f.wsize&&(f.whave+=e))),0}function m(a,b){var c,e,f,g,h,i,j,m,n,o,p,q,r,pa,qa,ra,sa,ta,ua,va,wa,xa,ya,za,Aa=0,Ba=new s.Buf8(4),Ca=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!a||!a.state||!a.output||!a.input&&0!==a.avail_in)return G;c=a.state,c.mode===W&&(c.mode=X),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,o=i,p=j,xa=D;a:for(;;)switch(c.mode){case L:if(0===c.wrap){c.mode=X;break}for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(2&c.wrap&&35615===m){c.check=0,Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0),m=0,n=0,c.mode=M;break}if(c.flags=0,c.head&&(c.head.done=!1),!(1&c.wrap)||(((255&m)<<8)+(m>>8))%31){a.msg="incorrect header check",c.mode=ma;break}if((15&m)!==K){a.msg="unknown compression method",c.mode=ma;break}if(m>>>=4,n-=4,wa=(15&m)+8,0===c.wbits)c.wbits=wa;else if(wa>c.wbits){a.msg="invalid window size",c.mode=ma;break}c.dmax=1<<wa,a.adler=c.check=1,c.mode=512&m?U:W,m=0,n=0;break;case M:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(c.flags=m,(255&c.flags)!==K){a.msg="unknown compression method",c.mode=ma;break}if(57344&c.flags){a.msg="unknown header flags set",c.mode=ma;break}c.head&&(c.head.text=m>>8&1),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=N;case N:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.head&&(c.head.time=m),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,Ba[2]=m>>>16&255,Ba[3]=m>>>24&255,c.check=u(c.check,Ba,4,0)),m=0,n=0,c.mode=O;case O:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.head&&(c.head.xflags=255&m,c.head.os=m>>8),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=P;case P:if(1024&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.length=m,c.head&&(c.head.extra_len=m),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0}else c.head&&(c.head.extra=null);c.mode=Q;case Q:if(1024&c.flags&&(q=c.length,q>i&&(q=i),q&&(c.head&&(wa=c.head.extra_len-c.length,c.head.extra||(c.head.extra=new Array(c.head.extra_len)),s.arraySet(c.head.extra,e,g,q,wa)),512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,c.length-=q),c.length))break a;c.length=0,c.mode=R;case R:if(2048&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.name+=String.fromCharCode(wa));while(wa&&q<i);if(512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.name=null);c.length=0,c.mode=S;case S:if(4096&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.comment+=String.fromCharCode(wa));while(wa&&q<i);if(512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,wa)break a}else c.head&&(c.head.comment=null);c.mode=T;case T:if(512&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m!==(65535&c.check)){a.msg="header crc mismatch",c.mode=ma;break}m=0,n=0}c.head&&(c.head.hcrc=c.flags>>9&1,c.head.done=!0),a.adler=c.check=0,c.mode=W;break;case U:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}a.adler=c.check=d(m),m=0,n=0,c.mode=V;case V:if(0===c.havedict)return a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,F;a.adler=c.check=1,c.mode=W;case W:if(b===B||b===C)break a;case X:if(c.last){m>>>=7&n,n-=7&n,c.mode=ja;break}for(;n<3;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}switch(c.last=1&m,m>>>=1,n-=1,3&m){case 0:c.mode=Y;break;case 1:if(k(c),c.mode=ca,b===C){m>>>=2,n-=2;break a}break;case 2:c.mode=_;break;case 3:a.msg="invalid block type",c.mode=ma}m>>>=2,n-=2;break;case Y:for(m>>>=7&n,n-=7&n;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if((65535&m)!==(m>>>16^65535)){a.msg="invalid stored block lengths",c.mode=ma;break}if(c.length=65535&m,m=0,n=0,c.mode=Z,b===C)break a;case Z:c.mode=$;case $:if(q=c.length){if(q>i&&(q=i),q>j&&(q=j),0===q)break a;s.arraySet(f,e,g,q,h),i-=q,g+=q,j-=q,h+=q,c.length-=q;break}c.mode=W;break;case _:for(;n<14;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(c.nlen=(31&m)+257,m>>>=5,n-=5,c.ndist=(31&m)+1,m>>>=5,n-=5,c.ncode=(15&m)+4,m>>>=4,n-=4,c.nlen>286||c.ndist>30){a.msg="too many length or distance symbols",c.mode=ma;break}c.have=0,c.mode=aa;case aa:for(;c.have<c.ncode;){for(;n<3;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.lens[Ca[c.have++]]=7&m,m>>>=3,n-=3}for(;c.have<19;)c.lens[Ca[c.have++]]=0;if(c.lencode=c.lendyn,c.lenbits=7,ya={bits:c.lenbits},xa=w(x,c.lens,0,19,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid code lengths set",c.mode=ma;break}c.have=0,c.mode=ba;case ba:for(;c.have<c.nlen+c.ndist;){for(;Aa=c.lencode[m&(1<<c.lenbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(sa<16)m>>>=qa,n-=qa,c.lens[c.have++]=sa;else{if(16===sa){for(za=qa+2;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m>>>=qa,n-=qa,0===c.have){a.msg="invalid bit length repeat",c.mode=ma;break}wa=c.lens[c.have-1],q=3+(3&m),m>>>=2,n-=2}else if(17===sa){for(za=qa+3;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=qa,n-=qa,wa=0,q=3+(7&m),m>>>=3,n-=3}else{for(za=qa+7;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=qa,n-=qa,wa=0,q=11+(127&m),m>>>=7,n-=7}if(c.have+q>c.nlen+c.ndist){a.msg="invalid bit length repeat",c.mode=ma;break}for(;q--;)c.lens[c.have++]=wa}}if(c.mode===ma)break;if(0===c.lens[256]){a.msg="invalid code -- missing end-of-block",c.mode=ma;break}if(c.lenbits=9,ya={bits:c.lenbits},xa=w(y,c.lens,0,c.nlen,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid literal/lengths set",c.mode=ma;break}if(c.distbits=6,c.distcode=c.distdyn,ya={bits:c.distbits},xa=w(z,c.lens,c.nlen,c.ndist,c.distcode,0,c.work,ya),c.distbits=ya.bits,xa){a.msg="invalid distances set",c.mode=ma;break}if(c.mode=ca,b===C)break a;case ca:c.mode=da;case da:if(i>=6&&j>=258){a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,v(a,p),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,c.mode===W&&(c.back=-1);break}for(c.back=0;Aa=c.lencode[m&(1<<c.lenbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(ra&&0===(240&ra)){for(ta=qa,ua=ra,va=sa;Aa=c.lencode[va+((m&(1<<ta+ua)-1)>>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,c.length=sa,0===ra){c.mode=ia;break}if(32&ra){c.back=-1,c.mode=W;break}if(64&ra){a.msg="invalid literal/length code",c.mode=ma;break}c.extra=15&ra,c.mode=ea;case ea:if(c.extra){for(za=c.extra;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.length+=m&(1<<c.extra)-1,m>>>=c.extra,n-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=fa;case fa:for(;Aa=c.distcode[m&(1<<c.distbits)-1],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(0===(240&ra)){for(ta=qa,ua=ra,va=sa;Aa=c.distcode[va+((m&(1<<ta+ua)-1)>>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}m>>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,64&ra){a.msg="invalid distance code",c.mode=ma;break}c.offset=sa,c.extra=15&ra,c.mode=ga;case ga:if(c.extra){for(za=c.extra;n<za;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}c.offset+=m&(1<<c.extra)-1,m>>>=c.extra,n-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=ma;break}c.mode=ha;case ha:if(0===j)break a;if(q=p-j,c.offset>q){if(q=c.offset-q,q>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=ma;break}q>c.wnext?(q-=c.wnext,r=c.wsize-q):r=c.wnext-q,q>c.length&&(q=c.length),pa=c.window}else pa=f,r=h-c.offset,q=c.length;q>j&&(q=j),j-=q,c.length-=q;do f[h++]=pa[r++];while(--q);0===c.length&&(c.mode=da);break;case ia:if(0===j)break a;f[h++]=c.length,j--,c.mode=da;break;case ja:if(c.wrap){for(;n<32;){if(0===i)break a;i--,m|=e[g++]<<n,n+=8}if(p-=j,a.total_out+=p,c.total+=p,p&&(a.adler=c.check=c.flags?u(c.check,f,p,h-p):t(c.check,f,p,h-p)),p=j,(c.flags?m:d(m))!==c.check){a.msg="incorrect data check",c.mode=ma;break}m=0,n=0}c.mode=ka;case ka:if(c.wrap&&c.flags){for(;n<32;){if(0===i)break a;i--,m+=e[g++]<<n,n+=8}if(m!==(4294967295&c.total)){a.msg="incorrect length check",c.mode=ma;break}m=0,n=0}c.mode=la;case la:xa=E;break a;case ma:xa=H;break a;case na:return I;case oa:default:return G}return a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,(c.wsize||p!==a.avail_out&&c.mode<ma&&(c.mode<ja||b!==A))&&l(a,a.output,a.next_out,p-a.avail_out)?(c.mode=na,I):(o-=a.avail_in,p-=a.avail_out,a.total_in+=o,a.total_out+=p,c.total+=p,c.wrap&&p&&(a.adler=c.check=c.flags?u(c.check,f,p,a.next_out-p):t(c.check,f,p,a.next_out-p)),a.data_type=c.bits+(c.last?64:0)+(c.mode===W?128:0)+(c.mode===ca||c.mode===Z?256:0),(0===o&&0===p||b===A)&&xa===D&&(xa=J),xa)}function n(a){if(!a||!a.state)return G;var b=a.state;return b.window&&(b.window=null),a.state=null,D}function o(a,b){var c;return a&&a.state?(c=a.state,0===(2&c.wrap)?G:(c.head=b,b.done=!1,D)):G}function p(a,b){var c,d,e,f=b.length;return a&&a.state?(c=a.state,0!==c.wrap&&c.mode!==V?G:c.mode===V&&(d=1,d=t(d,b,f,0),d!==c.check)?H:(e=l(a,b,f,f))?(c.mode=na,I):(c.havedict=1,D)):G}var q,r,s=a("../utils/common"),t=a("./adler32"),u=a("./crc32"),v=a("./inffast"),w=a("./inftrees"),x=0,y=1,z=2,A=4,B=5,C=6,D=0,E=1,F=2,G=-2,H=-3,I=-4,J=-5,K=8,L=1,M=2,N=3,O=4,P=5,Q=6,R=7,S=8,T=9,U=10,V=11,W=12,X=13,Y=14,Z=15,$=16,_=17,aa=18,ba=19,ca=20,da=21,ea=22,fa=23,ga=24,ha=25,ia=26,ja=27,ka=28,la=29,ma=30,na=31,oa=32,pa=852,qa=592,ra=15,sa=ra,ta=!0;c.inflateReset=g,c.inflateReset2=h,c.inflateResetKeep=f,c.inflateInit=j,c.inflateInit2=i,c.inflate=m,c.inflateEnd=n,c.inflateGetHeader=o,c.inflateSetDictionary=p,c.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":62,"./adler32":64,"./crc32":66,"./inffast":69,"./inftrees":71}],71:[function(a,b,c){"use strict";var d=a("../utils/common"),e=15,f=852,g=592,h=0,i=1,j=2,k=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],l=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],m=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],n=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];b.exports=function(a,b,c,o,p,q,r,s){var t,u,v,w,x,y,z,A,B,C=s.bits,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=null,O=0,P=new d.Buf16(e+1),Q=new d.Buf16(e+1),R=null,S=0;for(D=0;D<=e;D++)P[D]=0;for(E=0;E<o;E++)P[b[c+E]]++;for(H=C,G=e;G>=1&&0===P[G];G--);if(H>G&&(H=G),0===G)return p[q++]=20971520,p[q++]=20971520,s.bits=1,0;for(F=1;F<G&&0===P[F];F++);for(H<F&&(H=F),K=1,D=1;D<=e;D++)if(K<<=1,K-=P[D],K<0)return-1;if(K>0&&(a===h||1!==G))return-1;for(Q[1]=0,D=1;D<e;D++)Q[D+1]=Q[D]+P[D];for(E=0;E<o;E++)0!==b[c+E]&&(r[Q[b[c+E]]++]=E);if(a===h?(N=R=r,y=19):a===i?(N=k,O-=257,R=l,S-=257,y=256):(N=m,R=n,y=-1),M=0,E=0,D=F,x=q,I=H,J=0,v=-1,L=1<<H,w=L-1,a===i&&L>f||a===j&&L>g)return 1;for(;;){z=D-J,r[E]<y?(A=0,B=r[E]):r[E]>y?(A=R[S+r[E]],B=N[O+r[E]]):(A=96,B=0),t=1<<D-J,u=1<<I,F=u;do u-=t,p[x+(M>>J)+u]=z<<24|A<<16|B|0;while(0!==u);for(t=1<<D-1;M&t;)t>>=1;if(0!==t?(M&=t-1,M+=t):M=0,E++,0===--P[D]){if(D===G)break;D=b[c+r[E]]}if(D>H&&(M&w)!==v){for(0===J&&(J=H),x+=F,I=D-J,K=1<<I;I+J<G&&(K-=P[I+J],!(K<=0));)I++,K<<=1;if(L+=1<<I,a===i&&L>f||a===j&&L>g)return 1;v=M&w,p[v]=H<<24|I<<16|x-q|0}}return 0!==M&&(p[x+M]=D-J<<24|64<<16|0),s.bits=H,0}},{"../utils/common":62}],72:[function(a,b,c){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],73:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b>=0;)a[b]=0}function e(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length}function f(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b}function g(a){return a<256?ia[a]:ia[256+(a>>>7)]}function h(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function i(a,b,c){a.bi_valid>X-c?(a.bi_buf|=b<<a.bi_valid&65535,h(a,a.bi_buf),a.bi_buf=b>>X-a.bi_valid,a.bi_valid+=c-X):(a.bi_buf|=b<<a.bi_valid&65535,a.bi_valid+=c)}function j(a,b,c){i(a,c[2*b],c[2*b+1])}function k(a,b){var c=0;do c|=1&a,a>>>=1,c<<=1;while(--b>0);return c>>>1}function l(a){16===a.bi_valid?(h(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function m(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;f<=W;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,c=a.heap_max+1;c<V;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;
a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function n(a,b,c){var d,e,f=new Array(W+1),g=0;for(d=1;d<=W;d++)f[d]=g=g+c[d-1]<<1;for(e=0;e<=b;e++){var h=a[2*e+1];0!==h&&(a[2*e]=k(f[h]++,h))}}function o(){var a,b,c,d,f,g=new Array(W+1);for(c=0,d=0;d<Q-1;d++)for(ka[d]=c,a=0;a<1<<ba[d];a++)ja[c++]=d;for(ja[c-1]=d,f=0,d=0;d<16;d++)for(la[d]=f,a=0;a<1<<ca[d];a++)ia[f++]=d;for(f>>=7;d<T;d++)for(la[d]=f<<7,a=0;a<1<<ca[d]-7;a++)ia[256+f++]=d;for(b=0;b<=W;b++)g[b]=0;for(a=0;a<=143;)ga[2*a+1]=8,a++,g[8]++;for(;a<=255;)ga[2*a+1]=9,a++,g[9]++;for(;a<=279;)ga[2*a+1]=7,a++,g[7]++;for(;a<=287;)ga[2*a+1]=8,a++,g[8]++;for(n(ga,S+1,g),a=0;a<T;a++)ha[2*a+1]=5,ha[2*a]=k(a,5);ma=new e(ga,ba,R+1,S,W),na=new e(ha,ca,0,T,W),oa=new e(new Array(0),da,0,U,Y)}function p(a){var b;for(b=0;b<S;b++)a.dyn_ltree[2*b]=0;for(b=0;b<T;b++)a.dyn_dtree[2*b]=0;for(b=0;b<U;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*Z]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function q(a){a.bi_valid>8?h(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function r(a,b,c,d){q(a),d&&(h(a,c),h(a,~c)),G.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function s(a,b,c,d){var e=2*b,f=2*c;return a[e]<a[f]||a[e]===a[f]&&d[b]<=d[c]}function t(a,b,c){for(var d=a.heap[c],e=c<<1;e<=a.heap_len&&(e<a.heap_len&&s(b,a.heap[e+1],a.heap[e],a.depth)&&e++,!s(b,d,a.heap[e],a.depth));)a.heap[c]=a.heap[e],c=e,e<<=1;a.heap[c]=d}function u(a,b,c){var d,e,f,h,k=0;if(0!==a.last_lit)do d=a.pending_buf[a.d_buf+2*k]<<8|a.pending_buf[a.d_buf+2*k+1],e=a.pending_buf[a.l_buf+k],k++,0===d?j(a,e,b):(f=ja[e],j(a,f+R+1,b),h=ba[f],0!==h&&(e-=ka[f],i(a,e,h)),d--,f=g(d),j(a,f,c),h=ca[f],0!==h&&(d-=la[f],i(a,d,h)));while(k<a.last_lit);j(a,Z,b)}function v(a,b){var c,d,e,f=b.dyn_tree,g=b.stat_desc.static_tree,h=b.stat_desc.has_stree,i=b.stat_desc.elems,j=-1;for(a.heap_len=0,a.heap_max=V,c=0;c<i;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=j<2?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)t(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],t(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,t(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],m(a,b),n(f,j,a.bl_count)}function w(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;d<=c;d++)e=g,g=b[2*(d+1)+1],++h<i&&e===g||(h<j?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*$]++):h<=10?a.bl_tree[2*_]++:a.bl_tree[2*aa]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4))}function x(a,b,c){var d,e,f=-1,g=b[1],h=0,k=7,l=4;for(0===g&&(k=138,l=3),d=0;d<=c;d++)if(e=g,g=b[2*(d+1)+1],!(++h<k&&e===g)){if(h<l){do j(a,e,a.bl_tree);while(0!==--h)}else 0!==e?(e!==f&&(j(a,e,a.bl_tree),h--),j(a,$,a.bl_tree),i(a,h-3,2)):h<=10?(j(a,_,a.bl_tree),i(a,h-3,3)):(j(a,aa,a.bl_tree),i(a,h-11,7));h=0,f=e,0===g?(k=138,l=3):e===g?(k=6,l=3):(k=7,l=4)}}function y(a){var b;for(w(a,a.dyn_ltree,a.l_desc.max_code),w(a,a.dyn_dtree,a.d_desc.max_code),v(a,a.bl_desc),b=U-1;b>=3&&0===a.bl_tree[2*ea[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function z(a,b,c,d){var e;for(i(a,b-257,5),i(a,c-1,5),i(a,d-4,4),e=0;e<d;e++)i(a,a.bl_tree[2*ea[e]+1],3);x(a,a.dyn_ltree,b-1),x(a,a.dyn_dtree,c-1)}function A(a){var b,c=4093624447;for(b=0;b<=31;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return I;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return J;for(b=32;b<R;b++)if(0!==a.dyn_ltree[2*b])return J;return I}function B(a){pa||(o(),pa=!0),a.l_desc=new f(a.dyn_ltree,ma),a.d_desc=new f(a.dyn_dtree,na),a.bl_desc=new f(a.bl_tree,oa),a.bi_buf=0,a.bi_valid=0,p(a)}function C(a,b,c,d){i(a,(L<<1)+(d?1:0),3),r(a,b,c,!0)}function D(a){i(a,M<<1,3),j(a,Z,ga),l(a)}function E(a,b,c,d){var e,f,g=0;a.level>0?(a.strm.data_type===K&&(a.strm.data_type=A(a)),v(a,a.l_desc),v(a,a.d_desc),g=y(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,f<=e&&(e=f)):e=f=c+5,c+4<=e&&b!==-1?C(a,b,c,d):a.strategy===H||f===e?(i(a,(M<<1)+(d?1:0),3),u(a,ga,ha)):(i(a,(N<<1)+(d?1:0),3),z(a,a.l_desc.max_code+1,a.d_desc.max_code+1,g+1),u(a,a.dyn_ltree,a.dyn_dtree)),p(a),d&&q(a)}function F(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(ja[c]+R+1)]++,a.dyn_dtree[2*g(b)]++),a.last_lit===a.lit_bufsize-1}var G=a("../utils/common"),H=4,I=0,J=1,K=2,L=0,M=1,N=2,O=3,P=258,Q=29,R=256,S=R+1+Q,T=30,U=19,V=2*S+1,W=15,X=16,Y=7,Z=256,$=16,_=17,aa=18,ba=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ca=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],da=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ea=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],fa=512,ga=new Array(2*(S+2));d(ga);var ha=new Array(2*T);d(ha);var ia=new Array(fa);d(ia);var ja=new Array(P-O+1);d(ja);var ka=new Array(Q);d(ka);var la=new Array(T);d(la);var ma,na,oa,pa=!1;c._tr_init=B,c._tr_stored_block=C,c._tr_flush_block=E,c._tr_tally=F,c._tr_align=D},{"../utils/common":62}],74:[function(a,b,c){"use strict";function d(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=d},{}]},{},[10])(10)});
(function (global, factory) {typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :typeof define === 'function' && define.amd ? define(factory) :(global.picdiet = factory());
}(this, function () { 'use strict';function interopDefault(ex) {return ex && typeof ex === 'object' && 'default' in ex ? ex['default'] : ex;}function createCommonjsModule(fn, module) {return module = { exports: {} }, fn(module, module.exports), module.exports;}var cjpeg = createCommonjsModule(function (module) {
module.exports=function(ma,V){function Oa(a){eval.call(null,a)}function x(a,b){a||G("Assertion failed: "+b)}function Pa(a){var b;b="i32";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return H[a>>0];case "i8":return H[a>>0];case "i16":return W[a>>1];case "i32":return r[a>>2];case "i64":return r[a>>2];case "float":return da[a>>2];case "double":return ea[a>>3];default:G("invalid type for setValue: "+b)}return null}function B(a,b,d,c){var f,k;"number"===typeof a?(f=!0,k=a):(f=!1,k=a.length);
var e="string"===typeof b?b:null;d=4==d?c:["function"===typeof X?X:m.Db,m.Cb,m.Db,m.wa][void 0===d?2:d](Math.max(k,e?1:b.length));if(f){c=d;x(0==(d&3));for(a=d+(k&-4);c<a;c+=4)r[c>>2]=0;for(a=d+k;c<a;)H[c++>>0]=0;return d}if("i8"===e)return a.subarray||a.slice?J.set(a,d):J.set(new Uint8Array(a),d),d;c=0;for(var g,v;c<k;){var K=a[c];"function"===typeof K&&(K=m.of(K));f=e||b[c];if(0===f)c++;else{"i64"==f&&(f="i32");var O=d+c,l=f,l=l||"i8";"*"===l.charAt(l.length-1)&&(l="i32");switch(l){case "i1":H[O>>
0]=K;break;case "i8":H[O>>0]=K;break;case "i16":W[O>>1]=K;break;case "i32":r[O>>2]=K;break;case "i64":tempI64=[K>>>0,(tempDouble=K,1<=+ta(tempDouble)?0<tempDouble?(Qa(+Ra(tempDouble/4294967296),4294967295)|0)>>>0:~~+Sa((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)];r[O>>2]=tempI64[0];r[O+4>>2]=tempI64[1];break;case "float":da[O>>2]=K;break;case "double":ea[O>>3]=K;break;default:G("invalid type for setValue: "+l)}v!==f&&(g=m.ub(f),v=f);c+=g}}return d}function na(a){var b;if(0===b||!a)return"";
for(var d=0,c,f=0;;){c=J[a+f>>0];d|=c;if(0==c&&!b)break;f++;if(b&&f==b)break}b||(b=f);c="";if(128>d){for(;0<b;)d=String.fromCharCode.apply(String,J.subarray(a,a+Math.min(b,1024))),c=c?c+d:d,a+=1024,b-=1024;return c}return e.UTF8ToString(a)}function Y(a){for(var b=0,d,c,f,k,e,g,v="";;){d=a[b++];if(!d)return v;d&128?(c=a[b++]&63,192==(d&224)?v+=String.fromCharCode((d&31)<<6|c):(f=a[b++]&63,224==(d&240)?d=(d&15)<<12|c<<6|f:(k=a[b++]&63,240==(d&248)?d=(d&7)<<18|c<<12|f<<6|k:(e=a[b++]&63,248==(d&252)?
d=(d&3)<<24|c<<18|f<<12|k<<6|e:(g=a[b++]&63,d=(d&1)<<30|c<<24|f<<18|k<<12|e<<6|g))),65536>d?v+=String.fromCharCode(d):(d-=65536,v+=String.fromCharCode(55296|d>>10,56320|d&1023)))):v+=String.fromCharCode(d)}}function ua(a,b,d){var c=0;if(!(0<d))return 0;var f=c;d=c+d-1;for(var k=0;k<a.length;++k){var e=a.charCodeAt(k);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++k)&1023);if(127>=e){if(c>=d)break;b[c++]=e}else{if(2047>=e){if(c+1>=d)break;b[c++]=192|e>>6}else{if(65535>=e){if(c+2>=d)break;
b[c++]=224|e>>12}else{if(2097151>=e){if(c+3>=d)break;b[c++]=240|e>>18}else{if(67108863>=e){if(c+4>=d)break;b[c++]=248|e>>24}else{if(c+5>=d)break;b[c++]=252|e>>30;b[c++]=128|e>>24&63}b[c++]=128|e>>18&63}b[c++]=128|e>>12&63}b[c++]=128|e>>6&63}b[c++]=128|e&63}}b[c]=0;return c-f}function va(a){for(var b=0,d=0;d<a.length;++d){var c=a.charCodeAt(d);55296<=c&&57343>=c&&(c=65536+((c&1023)<<10)|a.charCodeAt(++d)&1023);127>=c?++b:b=2047>=c?b+2:65535>=c?b+3:2097151>=c?b+4:67108863>=c?b+5:b+6}return b}function wa(a){return a.replace(/__Z[\w\d_]+/g,
function(a){var d;a:{if(e.___cxa_demangle)try{var c=X(a.length);xa(a.substr(1),c);var f=X(4),k=e.___cxa_demangle(c,0,0,f);if(0===Pa(f)&&k){d=na(k);break a}}catch(g){d=a;break a}finally{c&&fa(c),f&&fa(f),k&&fa(k)}m.qa("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");d=a}return a===d?a:a+" ["+d+"]"})}function ya(){var a=Error();if(!a.stack){try{throw Error(0);}catch(b){a=b}if(!a.stack)return"(no stack trace available)"}return a.stack.toString()}function oa(a){0<a%4096&&
(a+=4096-a%4096);return a}function za(){e.HEAP8=H=new Int8Array(F);e.HEAP16=W=new Int16Array(F);e.HEAP32=r=new Int32Array(F);e.HEAPU8=J=new Uint8Array(F);e.HEAPU16=Aa=new Uint16Array(F);e.HEAPU32=Ba=new Uint32Array(F);e.HEAPF32=da=new Float32Array(F);e.HEAPF64=ea=new Float64Array(F)}function Ta(){var a=Math.pow(2,31);if(I>=a)return!1;for(;C<=I;)if(C<a/2)C=oa(2*C);else{var b=C;C=oa((3*C+a)/4);if(C<=b)return!1}C=Math.max(C,16777216);if(C>=a)return!1;a=e.reallocBuffer(C);if(!a)return!1;e.buffer=F=a;
za();return!0}function S(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var d=b.jf;"number"===typeof d?void 0===b.La?m.va("v",d):m.va("vi",d,[b.La]):d(void 0===b.La?null:b.La)}}}function Ua(a){Ca.unshift(a)}function T(a,b){var d=Array(va(a)+1),c=ua(a,d,d.length);b&&(d.length=c);return d}function xa(a,b,d){a=T(a,d);for(d=0;d<a.length;)H[b+d>>0]=a[d],d+=1}function Da(){R--;e.monitorRunDependencies&&e.monitorRunDependencies(R);if(0==R&&(null!==pa&&(clearInterval(pa),pa=null),Z)){var a=
Z;Z=null;a()}}function U(a){e.___errno_location&&(r[e.___errno_location()>>2]=a);return a}function ga(a,b){P.push(function(){m.va("vi",a,[b])});ga.level=P.length}function ha(a){var b,d;ha.ja?(d=r[Ea>>2],b=r[d>>2]):(ha.ja=!0,M.USER=M.LOGNAME="web_user",M.PATH="/",M.PWD="/",M.HOME="/home/web_user",M.LANG="C",M._=e.thisProgram,b=B(1024,"i8",2),d=B(256,"i8*",2),r[d>>2]=b,r[Ea>>2]=d);var c=[],f=0,k;for(k in a)if("string"===typeof a[k]){var g=k+"="+a[k];c.push(g);f+=g.length}if(1024<f)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");
for(a=0;a<c.length;a++){f=g=c[a];k=b;for(var w=0;w<f.length;++w)H[k++>>0]=f.charCodeAt(w);H[k>>0]=0;r[d+4*a>>2]=b;b+=g.length+1}r[d+4*c.length>>2]=0}function aa(a){if(0===a)return 0;a=na(a);if(!M.hasOwnProperty(a))return 0;aa.ja&&fa(aa.ja);aa.ja=B(T(M[a]),"i8",0);return aa.ja}function Fa(a){var b=Fa;b.dc||(I=oa(I),b.dc=!0,x(m.wa),b.Zb=m.wa,m.wa=function(){G("cannot dynamically allocate, sbrk now has control")});var d=I;return 0==a||b.Zb(a)?d:4294967295}function Ga(a){e.exit(a)}function ba(a){this.name=
"ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}function qa(a){function b(){if(!e.calledRun&&(e.calledRun=!0,!ia)){ja||(ja=!0,S(ca));S(Ha);if(e.onRuntimeInitialized)e.onRuntimeInitialized();e._main&&Ia&&e.callMain(a);if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var b=e.postRun.shift();Ja.unshift(b)}S(Ja)}}a=a||e.arguments;null===Ka&&(Ka=Date.now());if(!(0<R)){if(e.preRun)for("function"==typeof e.preRun&&(e.preRun=[e.preRun]);e.preRun.length;)Ua(e.preRun.shift());
S(Ca);0<R||e.calledRun||(e.setStatus?(e.setStatus("Running..."),setTimeout(function(){setTimeout(function(){e.setStatus("")},1);b()},1)):b())}}function La(a,b){if(!b||!e.noExitRuntime){if(!e.noExitRuntime&&(ia=!0,N=Va,S(P),e.onExit))e.onExit(a);"function"===typeof quit&&quit(a);throw new ba(a);}}function G(a){void 0!==a?(e.print(a),e.Wa(a),a=JSON.stringify(a)):a="";ia=!0;var b="abort("+a+") at "+wa(ya())+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";
Ma&&Ma.forEach(function(d){b=d(b,a)});throw b;}var ka="",D=["-outfile","/output.jpg"],E;for(E in V)V.hasOwnProperty(E)&&V[E]&&(D.push("-"+E),"boolean"!==typeof V[E]&&D.push(String(V[E])));D.push("/input");var e={print:function(){},printErr:function(a){ka+=a},preRun:[function(){c.writeFile("/input",ma,{encoding:"binary"})}],arguments:D,ENVIRONMENT:"SHELL"},D={};for(E in e)e.hasOwnProperty(E)&&(D[E]=e[E]);if(e.ENVIRONMENT&&"WEB"!==e.ENVIRONMENT&&"WORKER"!==e.ENVIRONMENT&&"NODE"!==e.ENVIRONMENT&&"SHELL"!==
e.ENVIRONMENT)throw Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");e.print||(e.print=print);"undefined"!=typeof printErr&&(e.printErr=printErr);e.read="undefined"!=typeof read?read:function(){throw"no read() available (jsc?)";};e.readBinary=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));a=read(a,"binary");x("object"===typeof a);return a};"undefined"!=typeof scriptArgs?e.arguments=scriptArgs:"undefined"!=
typeof arguments&&(e.arguments=arguments);eval("if (typeof gc === 'function' && gc.toString().indexOf('[native code]') > 0) var gc = undefined");!e.load&&e.read&&(e.load=function(a){Oa(e.read(a))});e.print||(e.print=function(){});e.printErr||(e.printErr=e.print);e.arguments||(e.arguments=[]);e.thisProgram||(e.thisProgram="./this.program");e.print=e.print;e.Wa=e.printErr;e.preRun=[];e.postRun=[];for(E in D)D.hasOwnProperty(E)&&(e[E]=D[E]);var D=void 0,m={Ic:function(a){tempRet0=a},oc:function(){return tempRet0},
Kc:function(){return N},Jc:function(a){N=a},ub:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?m.Ja:"i"===a[0]?(a=parseInt(a.substr(1)),x(0===a%8),a/8):0}},lc:function(a){return Math.max(m.ub(a),m.Ja)},Me:16,Ff:function(a,b){"double"===b||"i64"===b?a&7&&(x(4===(a&7)),a+=4):x(0===(a&3));return a},lf:function(a,b,d){return d||"i64"!=a&&"double"!=a?a?Math.min(b||
(a?m.lc(a):0),m.Ja):Math.min(b,8):8},va:function(a,b,d){return d&&d.length?(d.splice||(d=Array.prototype.slice.call(d)),d.splice(0,0,b),e["dynCall_"+a].apply(null,d)):e["dynCall_"+a].call(null,b)},za:[],Ob:function(a){for(var b=0;b<m.za.length;b++)if(!m.za[b])return m.za[b]=a,2*(1+b);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.";},Dc:function(a){m.za[(a-2)/2]=null},qa:function(a){m.qa.J||(m.qa.J={});m.qa.J[a]||(m.qa.J[a]=1,e.Wa(a))},Oa:{},nf:function(a,
b){x(b);m.Oa[b]||(m.Oa[b]={});var d=m.Oa[b];d[a]||(d[a]=function(){return m.va(b,a,arguments)});return d[a]},mf:function(){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work";},Cb:function(a){var b=N;N=N+a|0;N=N+15&-16;return b},Db:function(a){var b=z;z=z+a|0;z=z+15&-16;return b},wa:function(a){var b=I;I=I+a|0;I=I+15&-16;return I>=C&&!Ta()?(I=b,0):b},ib:function(a,b){return Math.ceil(a/(b?b:16))*(b?b:16)},Bf:function(a,
b,d){return d?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},D:8,Ja:4,Ne:0};m.addFunction=m.Ob;m.removeFunction=m.Dc;var ia=!1,F,H,J,W,Aa,r,Ba,da,ea,z=0,N=D=0,I=D=0;e.reallocBuffer||(e.reallocBuffer=function(a){var b;try{if(ArrayBuffer.J)b=ArrayBuffer.J(F,a);else{var d=H;b=new ArrayBuffer(a);(new Int8Array(b)).set(d)}}catch(c){return!1}return Wa(b)?b:!1});var la;try{la=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),la(new ArrayBuffer(4))}catch(bb){la=
function(a){return a.byteLength}}for(var Na=e.TOTAL_STACK||5242880,C=e.TOTAL_MEMORY||16777216,L=65536;L<C||L<2*Na;)L=16777216>L?2*L:L+16777216;L=Math.max(L,16777216);L!==C&&(C=L);e.buffer?F=e.buffer:F=new ArrayBuffer(C);za();r[0]=255;if(255!==J[0]||0!==J[3])throw"Typed arrays 2 must be run on a little-endian system";e.HEAP=void 0;e.buffer=F;e.HEAP8=H;e.HEAP16=W;e.HEAP32=r;e.HEAPU8=J;e.HEAPU16=Aa;e.HEAPU32=Ba;e.HEAPF32=da;e.HEAPF64=ea;var Ca=[],ca=[],Ha=[],P=[],Ja=[],ja=!1;Math.imul&&-5===Math.imul(4294967295,
5)||(Math.imul=function(a,b){var d=a&65535,c=b&65535;return d*c+((a>>>16)*c+d*(b>>>16)<<16)|0});Math.uf=Math.imul;Math.clz32||(Math.clz32=function(a){a=a>>>0;for(var b=0;32>b;b++)if(a&1<<31-b)return b;return 32});Math.Te=Math.clz32;var ta=Math.abs,Sa=Math.ceil,Ra=Math.floor,Qa=Math.min,R=0,pa=null,Z=null;e.preloadedImages={};e.preloadedAudios={};z=98792;ca.push();B([0,0,0,0,0,0,240,63,239,97,72,177,80,49,246,63,202,111,77,145,174,231,244,63,170,17,108,239,98,208,242,63,0,0,0,0,0,0,240,63,59,191,167,
192,105,36,233,63,187,32,199,123,122,81,225,63,93,171,114,222,85,168,209,63,93,61,127,102,158,160,230,63,0,0,0,0,0,136,57,61,68,23,117,250,82,176,230,63,0,0,0,0,0,0,216,60,254,217,11,117,18,192,230,63,0,0,0,0,0,120,40,189,191,118,212,221,220,207,230,63,0,0,0,0,0,192,30,61,41,26,101,60,178,223,230,63,0,0,0,0,0,0,216,188,227,58,89,152,146,239,230,63,0,0,0,0,0,0,188,188,134,147,81,249,125,255,230,63,0,0,0,0,0,216,47,189,163,45,244,102,116,15,231,63,0,0,0,0,0,136,44,189,195,95,236,232,117,31,231,63,0,
0,0,0,0,192,19,61,5,207,234,134,130,47,231,63,0,0,0,0,0,48,56,189,82,129,165,72,154,63,231,63,0,0,0,0,0,192,0,189,252,204,215,53,189,79,231,63,0,0,0,0,0,136,47,61,241,103,66,86,235,95,231,63,0,0,0,0,0,224,3,61,72,109,171,177,36,112,231,63,0,0,0,0,0,208,39,189,56,93,222,79,105,128,231,63,0,0,0,0,0,0,221,188,0,29,172,56,185,144,231,63,0,0,0,0,0,0,227,60,120,1,235,115,20,161,231,63,0,0,0,0,0,0,237,188,96,208,118,9,123,177,231,63,0,0,0,0,0,64,32,61,51,193,48,1,237,193,231,63,0,0,0,0,0,0,160,60,54,134,
255,98,106,210,231,63,0,0,0,0,0,144,38,189,59,78,207,54,243,226,231,63,0,0,0,0,0,224,2,189,232,195,145,132,135,243,231,63,0,0,0,0,0,88,36,189,78,27,62,84,39,4,232,63,0,0,0,0,0,0,51,61,26,7,209,173,210,20,232,63,0,0,0,0,0,0,15,61,126,205,76,153,137,37,232,63,0,0,0,0,0,192,33,189,208,66,185,30,76,54,232,63,0,0,0,0,0,208,41,61,181,202,35,70,26,71,232,63,0,0,0,0,0,16,71,61,188,91,159,23,244,87,232,63,0,0,0,0,0,96,34,61,175,145,68,155,217,104,232,63,0,0,0,0,0,196,50,189,149,163,49,217,202,121,232,63,0,
0,0,0,0,0,35,189,184,101,138,217,199,138,232,63,0,0,0,0,0,128,42,189,0,88,120,164,208,155,232,63,0,0,0,0,0,0,237,188,35,162,42,66,229,172,232,63,0,0,0,0,0,40,51,61,250,25,214,186,5,190,232,63,0,0,0,0,0,180,66,61,131,67,181,22,50,207,232,63,0,0,0,0,0,208,46,189,76,102,8,94,106,224,232,63,0,0,0,0,0,80,32,189,7,120,21,153,174,241,232,63,0,0,0,0,0,40,40,61,14,44,40,208,254,2,233,63,0,0,0,0,0,176,28,189,150,255,145,11,91,20,233,63,0,0,0,0,0,224,5,189,249,47,170,83,195,37,233,63,0,0,0,0,0,64,245,60,74,
198,205,176,55,55,233,63,0,0,0,0,0,32,23,61,174,152,95,43,184,72,233,63,0,0,0,0,0,0,9,189,203,82,200,203,68,90,233,63,0,0,0,0,0,104,37,61,33,111,118,154,221,107,233,63,0,0,0,0,0,208,54,189,42,78,222,159,130,125,233,63,0,0,0,0,0,0,1,189,163,35,122,228,51,143,233,63,0,0,0,0,0,0,45,61,4,6,202,112,241,160,233,63,0,0,0,0,0,164,56,189,137,255,83,77,187,178,233,63,0,0,0,0,0,92,53,61,91,241,163,130,145,196,233,63,0,0,0,0,0,184,38,61,197,184,75,25,116,214,233,63,0,0,0,0,0,0,236,188,142,35,227,25,99,232,233,
63,0,0,0,0,0,208,23,61,2,243,7,141,94,250,233,63,0,0,0,0,0,64,22,61,77,229,93,123,102,12,234,63,0,0,0,0,0,0,245,188,246,184,142,237,122,30,234,63,0,0,0,0,0,224,9,61,39,46,74,236,155,48,234,63,0,0,0,0,0,216,42,61,93,10,70,128,201,66,234,63,0,0,0,0,0,240,26,189,155,37,62,178,3,85,234,63,0,0,0,0,0,96,11,61,19,98,244,138,74,103,234,63,0,0,0,0,0,136,56,61,167,179,48,19,158,121,234,63,0,0,0,0,0,32,17,61,141,46,193,83,254,139,234,63,0,0,0,0,0,192,6,61,210,252,121,85,107,158,234,63,0,0,0,0,0,184,41,189,184,
111,53,33,229,176,234,63,0,0,0,0,0,112,43,61,129,243,211,191,107,195,234,63,0,0,0,0,0,0,217,60,128,39,60,58,255,213,234,63,0,0,0,0,0,0,228,60,163,210,90,153,159,232,234,63,0,0,0,0,0,144,44,189,103,243,34,230,76,251,234,63,0,0,0,0,0,80,22,61,144,183,141,41,7,14,235,63,0,0,0,0,0,212,47,61,169,137,154,108,206,32,235,63,0,0,0,0,0,112,18,61,75,26,79,184,162,51,235,63,0,0,0,0,0,71,77,61,231,71,183,21,132,70,235,63,0,0,0,0,0,56,56,189,58,89,229,141,114,89,235,63,0,0,0,0,0,0,152,60,106,197,241,41,110,108,
235,63,0,0,0,0,0,208,10,61,80,94,251,242,118,127,235,63,0,0,0,0,0,128,222,60,178,73,39,242,140,146,235,63,0,0,0,0,0,192,4,189,3,6,161,48,176,165,235,63,0,0,0,0,0,112,13,189,102,111,154,183,224,184,235,63,0,0,0,0,0,144,13,61,255,193,75,144,30,204,235,63,0,0,0,0,0,160,2,61,111,161,243,195,105,223,235,63,0,0,0,0,0,120,31,189,184,29,215,91,194,242,235,63,0,0,0,0,0,160,16,189,233,178,65,97,40,6,236,63,0,0,0,0,0,64,17,189,224,82,133,221,155,25,236,63,0,0,0,0,0,224,11,61,238,100,250,217,28,45,236,63,0,0,
0,0,0,64,9,189,47,208,255,95,171,64,236,63,0,0,0,0,0,208,14,189,21,253,250,120,71,84,236,63,0,0,0,0,0,102,57,61,203,208,87,46,241,103,236,63,0,0,0,0,0,16,26,189,182,193,136,137,168,123,236,63,0,0,0,0,128,69,88,189,51,231,6,148,109,143,236,63,0,0,0,0,0,72,26,189,223,196,81,87,64,163,236,63,0,0,0,0,0,0,203,60,148,144,239,220,32,183,236,63,0,0,0,0,0,64,1,61,137,22,109,46,15,203,236,63,0,0,0,0,0,32,240,60,18,196,93,85,11,223,236,63,0,0,0,0,0,96,243,60,59,171,91,91,21,243,236,63,0,0,0,0,0,144,6,189,188,
137,7,74,45,7,237,63,0,0,0,0,0,160,9,61,250,200,8,43,83,27,237,63,0,0,0,0,0,224,21,189,133,138,13,8,135,47,237,63,0,0,0,0,0,40,29,61,3,162,202,234,200,67,237,63,0,0,0,0,0,160,1,61,145,164,251,220,24,88,237,63,0,0,0,0,0,0,223,60,161,230,98,232,118,108,237,63,0,0,0,0,0,160,3,189,78,131,201,22,227,128,237,63,0,0,0,0,0,216,12,189,144,96,255,113,93,149,237,63,0,0,0,0,0,192,244,60,174,50,219,3,230,169,237,63,0,0,0,0,0,144,255,60,37,131,58,214,124,190,237,63,0,0,0,0,0,128,233,60,69,180,1,243,33,211,237,
63,0,0,0,0,0,32,245,188,191,5,28,100,213,231,237,63,0,0,0,0,0,112,29,189,236,154,123,51,151,252,237,63,0,0,0,0,0,20,22,189,94,125,25,107,103,17,238,63,0,0,0,0,0,72,11,61,231,163,245,20,70,38,238,63,0,0,0,0,0,206,64,61,92,238,22,59,51,59,238,63,0,0,0,0,0,104,12,61,180,63,139,231,46,80,238,63,0,0,0,0,0,48,9,189,104,109,103,36,57,101,238,63,0,0,0,0,0,0,229,188,68,76,199,251,81,122,238,63,0,0,0,0,0,248,7,189,38,183,205,119,121,143,238,63,0,0,0,0,0,112,243,188,232,144,164,162,175,164,238,63,0,0,0,0,0,
208,229,60,228,202,124,134,244,185,238,63,0,0,0,0,0,26,22,61,13,104,142,45,72,207,238,63,0,0,0,0,0,80,245,60,20,133,24,162,170,228,238,63,0,0,0,0,0,64,198,60,19,90,97,238,27,250,238,63,0,0,0,0,0,128,238,188,6,65,182,28,156,15,239,63,0,0,0,0,0,136,250,188,99,185,107,55,43,37,239,63,0,0,0,0,0,144,44,189,117,114,221,72,201,58,239,63,0,0,0,0,0,0,170,60,36,69,110,91,118,80,239,63,0,0,0,0,0,240,244,188,253,68,136,121,50,102,239,63,0,0,0,0,0,128,202,60,56,190,156,173,253,123,239,63,0,0,0,0,0,188,250,60,
130,60,36,2,216,145,239,63,0,0,0,0,0,96,212,188,142,144,158,129,193,167,239,63,0,0,0,0,0,12,11,189,17,213,146,54,186,189,239,63,0,0,0,0,0,224,192,188,148,113,143,43,194,211,239,63,0,0,0,0,128,222,16,189,238,35,42,107,217,233,239,63,0,0,0,0,0,67,238,60,0,0,0,0,0,0,240,63,0,0,0,0,0,0,0,0,190,188,90,250,26,11,240,63,0,0,0,0,0,64,179,188,3,51,251,169,61,22,240,63,0,0,0,0,0,23,18,189,130,2,59,20,104,33,240,63,0,0,0,0,0,64,186,60,108,128,119,62,154,44,240,63,0,0,0,0,0,152,239,60,202,187,17,46,212,55,240,
63,0,0,0,0,0,64,199,188,137,127,110,232,21,67,240,63,0,0,0,0,0,48,216,60,103,84,246,114,95,78,240,63,0,0,0,0,0,63,26,189,90,133,21,211,176,89,240,63,0,0,0,0,0,132,2,189,149,31,60,14,10,101,240,63,0,0,0,0,0,96,241,60,26,247,221,41,107,112,240,63,0,0,0,0,0,36,21,61,45,168,114,43,212,123,240,63,0,0,0,0,0,160,233,188,208,155,117,24,69,135,240,63,0,0,0,0,0,64,230,60,200,7,102,246,189,146,240,63,0,0,0,0,0,120,0,189,131,243,198,202,62,158,240,63,0,0,0,0,0,0,152,188,48,57,31,155,199,169,240,63,0,0,0,0,0,
160,255,60,252,136,249,108,88,181,240,63,0,0,0,0,0,200,250,188,138,108,228,69,241,192,240,63,0,0,0,0,0,192,217,60,22,72,114,43,146,204,240,63,0,0,0,0,0,32,5,61,216,93,57,35,59,216,240,63,0,0,0,0,0,208,250,188,243,209,211,50,236,227,240,63,0,0,0,0,0,172,27,61,166,169,223,95,165,239,240,63,0,0,0,0,0,232,4,189,240,210,254,175,102,251,240,63,0,0,0,0,0,48,13,189,75,35,215,40,48,7,241,63,0,0,0,0,0,80,241,60,91,91,18,208,1,19,241,63,0,0,0,0,0,0,236,60,249,42,94,171,219,30,241,63,0,0,0,0,0,188,22,61,213,
49,108,192,189,42,241,63,0,0,0,0,0,64,232,60,125,4,242,20,168,54,241,63,0,0,0,0,0,208,14,189,233,45,169,174,154,66,241,63,0,0,0,0,0,224,232,60,56,49,79,147,149,78,241,63,0,0,0,0,0,64,235,60,113,142,165,200,152,90,241,63,0,0,0,0,0,48,5,61,223,195,113,84,164,102,241,63,0,0,0,0,0,56,3,61,17,82,125,60,184,114,241,63,0,0,0,0,0,212,40,61,159,187,149,134,212,126,241,63,0,0,0,0,0,208,5,189,147,141,140,56,249,138,241,63,0,0,0,0,0,136,28,189,102,93,55,88,38,151,241,63,0,0,0,0,0,240,17,61,167,203,111,235,91,
163,241,63,0,0,0,0,0,72,16,61,227,135,19,248,153,175,241,63,0,0,0,0,0,57,71,189,84,93,4,132,224,187,241,63,0,0,0,0,0,228,36,61,67,28,40,149,47,200,241,63,0,0,0,0,0,32,10,189,178,185,104,49,135,212,241,63,0,0,0,0,0,128,227,60,49,64,180,94,231,224,241,63,0,0,0,0,0,192,234,60,56,217,252,34,80,237,241,63,0,0,0,0,0,144,1,61,247,205,56,132,193,249,241,63,0,0,0,0,0,120,27,189,143,141,98,136,59,6,242,63,0,0,0,0,0,148,45,61,30,168,120,53,190,18,242,63,0,0,0,0,0,0,216,60,65,221,125,145,73,31,242,63,0,0,0,0,
0,52,43,61,35,19,121,162,221,43,242,63,0,0,0,0,0,248,25,61,231,97,117,110,122,56,242,63,0,0,0,0,0,200,25,189,39,20,130,251,31,69,242,63,0,0,0,0,0,48,2,61,2,166,178,79,206,81,242,63,0,0,0,0,0,72,19,189,176,206,30,113,133,94,242,63,0,0,0,0,0,112,18,61,22,125,226,101,69,107,242,63,0,0,0,0,0,208,17,61,15,224,29,52,14,120,242,63,0,0,0,0,0,238,49,61,62,99,245,225,223,132,242,63,0,0,0,0,0,192,20,189,48,187,145,117,186,145,242,63,0,0,0,0,0,216,19,189,9,223,31,245,157,158,242,63,0,0,0,0,0,176,8,61,155,14,
209,102,138,171,242,63,0,0,0,0,0,124,34,189,58,218,218,208,127,184,242,63,0,0,0,0,0,52,42,61,249,26,119,57,126,197,242,63,0,0,0,0,0,128,16,189,217,2,228,166,133,210,242,63,0,0,0,0,0,208,14,189,121,21,100,31,150,223,242,63,0,0,0,0,0,32,244,188,207,46,62,169,175,236,242,63,0,0,0,0,0,152,36,189,34,136,189,74,210,249,242,63,0,0,0,0,0,48,22,189,37,182,49,10,254,6,243,63,0,0,0,0,0,54,50,189,11,165,238,237,50,20,243,63,0,0,0,0,128,223,112,189,184,215,76,252,112,33,243,63,0,0,0,0,0,72,34,189,162,233,168,
59,184,46,243,63,0,0,0,0,0,152,37,189,102,23,100,178,8,60,243,63,0,0,0,0,0,208,30,61,39,250,227,102,98,73,243,63,0,0,0,0,0,0,220,188,15,159,146,95,197,86,243,63,0,0,0,0,0,216,48,189,185,136,222,162,49,100,243,63,0,0,0,0,0,200,34,61,57,170,58,55,167,113,243,63,0,0,0,0,0,96,32,61,254,116,30,35,38,127,243,63,0,0,0,0,0,96,22,189,56,216,5,109,174,140,243,63,0,0,0,0,0,224,10,189,195,62,113,27,64,154,243,63,0,0,0,0,0,114,68,189,32,160,229,52,219,167,243,63,0,0,0,0,0,32,8,61,149,110,236,191,127,181,243,63,
0,0,0,0,0,128,62,61,242,168,19,195,45,195,243,63,0,0,0,0,0,128,239,60,34,225,237,68,229,208,243,63,0,0,0,0,0,160,23,189,187,52,18,76,166,222,243,63,0,0,0,0,0,48,38,61,204,78,28,223,112,236,243,63,0,0,0,0,0,166,72,189,140,126,172,4,69,250,243,63,0,0,0,0,0,220,60,189,187,160,103,195,34,8,244,63,0,0,0,0,0,184,37,61,149,46,247,33,10,22,244,63,0,0,0,0,0,192,30,61,70,70,9,39,251,35,244,63,0,0,0,0,0,96,19,189,32,169,80,217,245,49,244,63,0,0,0,0,0,152,35,61,235,185,132,63,250,63,244,63,0,0,0,0,0,0,250,60,
25,137,97,96,8,78,244,63,0,0,0,0,0,192,246,188,1,210,167,66,32,92,244,63,0,0,0,0,0,192,11,189,22,0,29,237,65,106,244,63,0,0,0,0,0,128,18,189,38,51,139,102,109,120,244,63,0,0,0,0,0,224,48,61,0,60,193,181,162,134,244,63,0,0,0,0,0,64,45,189,4,175,146,225,225,148,244,63,0,0,0,0,0,32,12,61,114,211,215,240,42,163,244,63,0,0,0,0,0,80,30,189,1,184,109,234,125,177,244,63,0,0,0,0,0,128,7,61,225,41,54,213,218,191,244,63,0,0,0,0,0,128,19,189,50,193,23,184,65,206,244,63,0,0,0,0,0,128,0,61,219,221,253,153,178,
220,244,63,0,0,0,0,0,112,44,61,150,171,216,129,45,235,244,63,0,0,0,0,0,224,28,189,2,45,157,118,178,249,244,63,0,0,0,0,0,32,25,61,193,49,69,127,65,8,245,63,0,0,0,0,0,192,8,189,42,102,207,162,218,22,245,63,0,0,0,0,0,0,250,188,234,81,63,232,125,37,245,63,0,0,0,0,0,8,74,61,218,78,157,86,43,52,245,63,0,0,0,0,0,216,38,189,26,172,246,244,226,66,245,63,0,0,0,0,0,68,50,189,219,148,93,202,164,81,245,63,0,0,0,0,0,60,72,61,107,17,233,221,112,96,245,63,0,0,0,0,0,176,36,61,222,41,181,54,71,111,245,63,0,0,0,0,0,
90,65,61,14,196,226,219,39,126,245,63,0,0,0,0,0,224,41,189,111,199,151,212,18,141,245,63,0,0,0,0,0,8,35,189,76,11,255,39,8,156,245,63,0,0,0,0,0,236,77,61,39,84,72,221,7,171,245,63,0,0,0,0,0,0,196,188,244,122,168,251,17,186,245,63,0,0,0,0,0,8,48,61,11,70,89,138,38,201,245,63,0,0,0,0,0,200,38,189,63,142,153,144,69,216,245,63,0,0,0,0,0,154,70,61,225,32,173,21,111,231,245,63,0,0,0,0,0,64,27,189,202,235,220,32,163,246,245,63,0,0,0,0,0,112,23,61,184,220,118,185,225,5,246,63,0,0,0,0,0,248,38,61,21,247,205,
230,42,21,246,63,0,0,0,0,0,0,1,61,49,85,58,176,126,36,246,63,0,0,0,0,0,208,21,189,181,41,25,29,221,51,246,63,0,0,0,0,0,208,18,189,19,195,204,52,70,67,246,63,0,0,0,0,0,128,234,188,250,142,188,254,185,82,246,63,0,0,0,0,0,96,40,189,151,51,85,130,56,98,246,63,0,0,0,0,0,254,113,61,142,50,8,199,193,113,246,63,0,0,0,0,0,32,55,189,126,169,76,212,85,129,246,63,0,0,0,0,0,128,230,60,113,148,158,177,244,144,246,63,0,0,0,0,0,120,41,189,0,0,0,0,182,62,0,0,214,62,0,0,1,63,0,0,37,63,0,0,79,63,0,0,115,63,0,0,156,
63,0,0,172,63,0,0,212,63,0,0,235,63,0,0,13,64,0,0,40,64,0,0,78,64,0,0,102,64,0,0,124,64,0,0,160,64,0,0,187,64,0,0,202,64,0,0,221,64,0,0,13,65,0,0,57,65,0,0,92,65,0,0,117,65,0,0,157,65,0,0,184,65,0,0,204,65,0,0,240,65,0,0,12,66,0,0,48,66,0,0,67,66,0,0,83,66,0,0,104,66,0,0,120,66,0,0,141,66,0,0,175,66,0,0,209,66,0,0,247,66,0,0,13,67,0,0,41,67,0,0,71,67,0,0,122,67,0,0,175,67,0,0,189,67,0,0,248,67,0,0,0,0,0,0,100,0,0,0,100,0,0,0,100,0,0,0,100,0,0,0,16,0,0,0,11,0,0,0,10,0,0,0,16,0,0,0,24,0,0,0,40,0,0,
0,51,0,0,0,61,0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,58,0,0,0,60,0,0,0,55,0,0,0,14,0,0,0,13,0,0,0,16,0,0,0,24,0,0,0,40,0,0,0,57,0,0,0,69,0,0,0,56,0,0,0,14,0,0,0,17,0,0,0,22,0,0,0,29,0,0,0,51,0,0,0,87,0,0,0,80,0,0,0,62,0,0,0,18,0,0,0,22,0,0,0,37,0,0,0,56,0,0,0,68,0,0,0,109,0,0,0,103,0,0,0,77,0,0,0,24,0,0,0,35,0,0,0,55,0,0,0,64,0,0,0,81,0,0,0,104,0,0,0,113,0,0,0,92,0,0,0,49,0,0,0,64,0,0,0,78,0,0,0,87,0,0,0,103,0,0,0,121,0,0,0,120,0,0,0,101,0,0,0,72,0,0,0,92,0,0,0,95,0,0,0,98,0,0,0,112,0,
0,0,100,0,0,0,103,0,0,0,99,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,
16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,12,0,0,0,17,0,0,0,20,0,0,0,21,0,0,0,30,0,0,0,34,0,0,0,56,0,0,0,63,0,0,0,18,0,0,0,20,0,0,0,20,0,0,0,26,0,0,0,28,0,0,0,51,0,0,0,61,0,0,0,55,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,26,0,0,0,33,0,0,0,58,0,0,0,69,0,0,0,55,0,0,0,26,0,0,0,26,0,0,0,26,0,0,0,30,0,0,0,46,0,0,0,87,0,0,0,86,0,0,0,66,0,0,0,31,0,0,0,33,0,0,0,36,0,0,0,40,0,0,0,46,0,0,0,96,0,0,0,100,0,0,0,73,0,0,0,40,0,0,0,35,0,0,0,46,0,0,0,62,0,
0,0,81,0,0,0,100,0,0,0,111,0,0,0,91,0,0,0,46,0,0,0,66,0,0,0,76,0,0,0,86,0,0,0,102,0,0,0,121,0,0,0,120,0,0,0,101,0,0,0,68,0,0,0,90,0,0,0,90,0,0,0,96,0,0,0,113,0,0,0,102,0,0,0,105,0,0,0,103,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,18,0,0,0,25,0,0,0,37,0,0,0,56,0,0,0,85,0,0,0,16,0,0,0,17,0,0,0,20,0,0,0,27,0,0,0,34,0,0,0,40,0,0,0,53,0,0,0,75,0,0,0,16,0,0,0,20,0,0,0,24,0,0,0,31,0,0,0,43,0,0,0,62,0,0,0,91,0,0,0,135,0,0,0,18,0,0,0,27,0,0,0,31,0,0,0,40,0,0,0,53,0,0,0,74,0,0,0,106,0,0,0,156,0,0,0,25,0,0,0,34,0,0,
0,43,0,0,0,53,0,0,0,69,0,0,0,94,0,0,0,131,0,0,0,189,0,0,0,37,0,0,0,40,0,0,0,62,0,0,0,74,0,0,0,94,0,0,0,124,0,0,0,169,0,0,0,238,0,0,0,56,0,0,0,53,0,0,0,91,0,0,0,106,0,0,0,131,0,0,0,169,0,0,0,226,0,0,0,55,1,0,0,85,0,0,0,75,0,0,0,135,0,0,0,156,0,0,0,189,0,0,0,238,0,0,0,55,1,0,0,162,1,0,0,9,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,27,0,0,0,32,0,0,0,51,0,0,0,62,0,0,0,11,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,27,0,0,0,44,0,0,0,59,0,0,0,73,0,0,0,12,0,0,0,14,0,0,0,18,0,0,0,25,0,0,0,42,0,0,0,59,0,0,0,79,0,0,0,78,0,0,0,
17,0,0,0,18,0,0,0,25,0,0,0,42,0,0,0,61,0,0,0,92,0,0,0,87,0,0,0,92,0,0,0,23,0,0,0,28,0,0,0,42,0,0,0,75,0,0,0,79,0,0,0,112,0,0,0,112,0,0,0,99,0,0,0,40,0,0,0,42,0,0,0,59,0,0,0,84,0,0,0,88,0,0,0,124,0,0,0,132,0,0,0,111,0,0,0,42,0,0,0,64,0,0,0,78,0,0,0,95,0,0,0,105,0,0,0,126,0,0,0,125,0,0,0,99,0,0,0,70,0,0,0,75,0,0,0,100,0,0,0,102,0,0,0,116,0,0,0,100,0,0,0,107,0,0,0,98,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,38,0,0,0,57,0,0,0,86,0,0,0,12,0,0,0,18,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,41,0,0,0,54,
0,0,0,76,0,0,0,14,0,0,0,21,0,0,0,25,0,0,0,32,0,0,0,44,0,0,0,63,0,0,0,92,0,0,0,136,0,0,0,19,0,0,0,28,0,0,0,32,0,0,0,41,0,0,0,54,0,0,0,75,0,0,0,107,0,0,0,157,0,0,0,26,0,0,0,35,0,0,0,44,0,0,0,54,0,0,0,70,0,0,0,95,0,0,0,132,0,0,0,190,0,0,0,38,0,0,0,41,0,0,0,63,0,0,0,75,0,0,0,95,0,0,0,125,0,0,0,170,0,0,0,239,0,0,0,57,0,0,0,54,0,0,0,92,0,0,0,107,0,0,0,132,0,0,0,170,0,0,0,227,0,0,0,56,1,0,0,86,0,0,0,76,0,0,0,136,0,0,0,157,0,0,0,190,0,0,0,239,0,0,0,56,1,0,0,163,1,0,0,7,0,0,0,8,0,0,0,10,0,0,0,14,0,0,0,23,
0,0,0,44,0,0,0,95,0,0,0,241,0,0,0,8,0,0,0,8,0,0,0,11,0,0,0,15,0,0,0,25,0,0,0,47,0,0,0,102,0,0,0,255,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,19,0,0,0,31,0,0,0,58,0,0,0,127,0,0,0,255,0,0,0,14,0,0,0,15,0,0,0,19,0,0,0,27,0,0,0,44,0,0,0,83,0,0,0,181,0,0,0,255,0,0,0,23,0,0,0,25,0,0,0,31,0,0,0,44,0,0,0,72,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,44,0,0,0,47,0,0,0,58,0,0,0,83,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,95,0,0,0,102,0,0,0,127,0,0,0,181,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,241,0,0,0,255,0,0,
0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,15,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,25,0,0,0,32,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,24,0,0,0,11,0,0,0,10,0,0,0,14,0,0,0,14,0,0,0,16,0,0,0,18,0,0,0,22,0,0,0,27,0,0,0,12,0,0,0,10,0,0,0,14,0,0,0,18,0,0,0,21,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,15,0,0,0,12,0,0,0,16,0,0,0,21,0,0,0,26,0,0,0,31,0,0,0,36,0,0,0,42,0,0,0,19,0,0,0,15,0,0,0,18,0,0,0,24,0,0,0,31,0,0,0,38,0,0,0,45,0,0,0,53,0,0,0,25,0,0,
0,19,0,0,0,22,0,0,0,28,0,0,0,36,0,0,0,45,0,0,0,55,0,0,0,65,0,0,0,32,0,0,0,24,0,0,0,27,0,0,0,33,0,0,0,42,0,0,0,53,0,0,0,65,0,0,0,77,0,0,0,14,0,0,0,10,0,0,0,11,0,0,0,14,0,0,0,19,0,0,0,25,0,0,0,34,0,0,0,45,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,20,0,0,0,26,0,0,0,33,0,0,0,11,0,0,0,11,0,0,0,15,0,0,0,18,0,0,0,21,0,0,0,25,0,0,0,31,0,0,0,38,0,0,0,14,0,0,0,12,0,0,0,18,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,39,0,0,0,47,0,0,0,19,0,0,0,15,0,0,0,21,0,0,0,28,0,0,0,36,0,0,0,43,0,0,0,51,0,0,0,59,0,0,0,25,0,
0,0,20,0,0,0,25,0,0,0,33,0,0,0,43,0,0,0,54,0,0,0,64,0,0,0,74,0,0,0,34,0,0,0,26,0,0,0,31,0,0,0,39,0,0,0,51,0,0,0,64,0,0,0,77,0,0,0,91,0,0,0,45,0,0,0,33,0,0,0,38,0,0,0,47,0,0,0,59,0,0,0,74,0,0,0,91,0,0,0,108,0,0,0,17,0,0,0,18,0,0,0,24,0,0,0,47,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,18,0,0,0,21,0,0,0,26,0,0,0,66,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,24,0,0,0,26,0,0,0,56,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,47,0,0,0,66,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,
0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,
16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,8,0,0,0,12,0,0,0,15,0,0,0,15,0,0,0,86,0,0,0,96,0,0,0,96,0,0,0,98,0,0,0,13,0,0,0,13,0,0,0,15,0,0,0,26,0,0,0,90,0,0,0,96,0,0,0,99,0,0,0,98,0,0,
0,12,0,0,0,15,0,0,0,18,0,0,0,96,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,17,0,0,0,16,0,0,0,90,0,0,0,96,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,96,0,0,0,96,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,18,0,0,0,25,0,0,0,37,0,0,0,56,0,0,0,85,0,
0,0,16,0,0,0,17,0,0,0,20,0,0,0,27,0,0,0,34,0,0,0,40,0,0,0,53,0,0,0,75,0,0,0,16,0,0,0,20,0,0,0,24,0,0,0,31,0,0,0,43,0,0,0,62,0,0,0,91,0,0,0,135,0,0,0,18,0,0,0,27,0,0,0,31,0,0,0,40,0,0,0,53,0,0,0,74,0,0,0,106,0,0,0,156,0,0,0,25,0,0,0,34,0,0,0,43,0,0,0,53,0,0,0,69,0,0,0,94,0,0,0,131,0,0,0,189,0,0,0,37,0,0,0,40,0,0,0,62,0,0,0,74,0,0,0,94,0,0,0,124,0,0,0,169,0,0,0,238,0,0,0,56,0,0,0,53,0,0,0,91,0,0,0,106,0,0,0,131,0,0,0,169,0,0,0,226,0,0,0,55,1,0,0,85,0,0,0,75,0,0,0,135,0,0,0,156,0,0,0,189,0,0,0,238,0,
0,0,55,1,0,0,162,1,0,0,9,0,0,0,10,0,0,0,17,0,0,0,19,0,0,0,62,0,0,0,89,0,0,0,91,0,0,0,97,0,0,0,12,0,0,0,13,0,0,0,18,0,0,0,29,0,0,0,84,0,0,0,91,0,0,0,88,0,0,0,98,0,0,0,14,0,0,0,19,0,0,0,29,0,0,0,93,0,0,0,95,0,0,0,95,0,0,0,98,0,0,0,97,0,0,0,20,0,0,0,26,0,0,0,84,0,0,0,88,0,0,0,95,0,0,0,95,0,0,0,98,0,0,0,94,0,0,0,26,0,0,0,86,0,0,0,91,0,0,0,93,0,0,0,97,0,0,0,99,0,0,0,98,0,0,0,99,0,0,0,99,0,0,0,100,0,0,0,98,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,
0,0,0,99,0,0,0,99,0,0,0,97,0,0,0,97,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,97,0,0,0,99,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,38,0,0,0,57,0,0,0,86,0,0,0,12,0,0,0,18,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,41,0,0,0,54,0,0,0,76,0,0,0,14,0,0,0,21,0,0,0,25,0,0,0,32,0,0,0,44,0,0,0,63,0,0,0,92,0,0,0,136,0,0,0,19,0,0,0,28,0,0,0,32,0,0,0,41,0,0,0,54,0,0,0,75,0,0,0,107,0,0,0,157,0,0,0,26,0,0,0,35,0,0,0,44,0,0,0,54,0,0,0,70,0,0,0,95,0,0,0,132,0,0,0,190,0,0,0,38,0,0,0,41,0,0,0,63,0,0,0,75,0,0,0,95,0,
0,0,125,0,0,0,170,0,0,0,239,0,0,0,57,0,0,0,54,0,0,0,92,0,0,0,107,0,0,0,132,0,0,0,170,0,0,0,227,0,0,0,56,1,0,0,86,0,0,0,76,0,0,0,136,0,0,0,157,0,0,0,190,0,0,0,239,0,0,0,56,1,0,0,163,1,0,0,7,0,0,0,8,0,0,0,10,0,0,0,14,0,0,0,23,0,0,0,44,0,0,0,95,0,0,0,241,0,0,0,8,0,0,0,8,0,0,0,11,0,0,0,15,0,0,0,25,0,0,0,47,0,0,0,102,0,0,0,255,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,19,0,0,0,31,0,0,0,58,0,0,0,127,0,0,0,255,0,0,0,14,0,0,0,15,0,0,0,19,0,0,0,27,0,0,0,44,0,0,0,83,0,0,0,181,0,0,0,255,0,0,0,23,0,0,0,25,0,0,0,31,0,
0,0,44,0,0,0,72,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,44,0,0,0,47,0,0,0,58,0,0,0,83,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,95,0,0,0,102,0,0,0,127,0,0,0,181,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,241,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,15,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,25,0,0,0,32,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,24,0,0,0,11,0,0,0,10,0,0,0,14,0,0,0,14,0,0,0,16,0,0,0,18,0,0,0,22,0,0,0,27,0,0,
0,12,0,0,0,10,0,0,0,14,0,0,0,18,0,0,0,21,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,15,0,0,0,12,0,0,0,16,0,0,0,21,0,0,0,26,0,0,0,31,0,0,0,36,0,0,0,42,0,0,0,19,0,0,0,15,0,0,0,18,0,0,0,24,0,0,0,31,0,0,0,38,0,0,0,45,0,0,0,53,0,0,0,25,0,0,0,19,0,0,0,22,0,0,0,28,0,0,0,36,0,0,0,45,0,0,0,55,0,0,0,65,0,0,0,32,0,0,0,24,0,0,0,27,0,0,0,33,0,0,0,42,0,0,0,53,0,0,0,65,0,0,0,77,0,0,0,14,0,0,0,10,0,0,0,11,0,0,0,14,0,0,0,19,0,0,0,25,0,0,0,34,0,0,0,45,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,20,0,0,0,26,0,0,0,33,0,
0,0,11,0,0,0,11,0,0,0,15,0,0,0,18,0,0,0,21,0,0,0,25,0,0,0,31,0,0,0,38,0,0,0,14,0,0,0,12,0,0,0,18,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,39,0,0,0,47,0,0,0,19,0,0,0,15,0,0,0,21,0,0,0,28,0,0,0,36,0,0,0,43,0,0,0,51,0,0,0,59,0,0,0,25,0,0,0,20,0,0,0,25,0,0,0,33,0,0,0,43,0,0,0,54,0,0,0,64,0,0,0,74,0,0,0,34,0,0,0,26,0,0,0,31,0,0,0,39,0,0,0,51,0,0,0,64,0,0,0,77,0,0,0,91,0,0,0,45,0,0,0,33,0,0,0,38,0,0,0,47,0,0,0,59,0,0,0,74,0,0,0,91,0,0,0,108,0,0,0,16,0,0,0,11,0,0,0,10,0,0,0,16,0,0,0,24,0,0,0,40,0,0,0,51,0,0,0,61,
0,0,0,12,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,58,0,0,0,60,0,0,0,55,0,0,0,14,0,0,0,13,0,0,0,16,0,0,0,24,0,0,0,40,0,0,0,57,0,0,0,69,0,0,0,56,0,0,0,14,0,0,0,17,0,0,0,22,0,0,0,29,0,0,0,51,0,0,0,87,0,0,0,80,0,0,0,62,0,0,0,18,0,0,0,22,0,0,0,37,0,0,0,56,0,0,0,68,0,0,0,109,0,0,0,103,0,0,0,77,0,0,0,24,0,0,0,35,0,0,0,55,0,0,0,64,0,0,0,81,0,0,0,104,0,0,0,113,0,0,0,92,0,0,0,49,0,0,0,64,0,0,0,78,0,0,0,87,0,0,0,103,0,0,0,121,0,0,0,120,0,0,0,101,0,0,0,72,0,0,0,92,0,0,0,95,0,0,0,98,0,0,0,112,0,0,0,100,0,0,0,
103,0,0,0,99,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,
0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,12,0,0,0,17,0,0,0,20,0,0,0,21,0,0,0,30,0,0,0,34,0,0,0,56,0,0,0,63,0,0,0,18,0,0,0,20,0,0,0,20,0,0,0,26,0,0,0,28,0,0,0,51,0,0,0,61,0,0,0,55,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,26,0,0,0,33,0,0,0,58,0,0,0,69,0,0,0,55,0,0,0,26,0,0,0,26,0,0,0,26,0,0,0,30,0,0,0,46,0,0,0,87,0,0,0,86,0,0,0,66,0,0,0,31,0,0,0,33,0,0,0,36,0,0,0,40,0,0,0,46,0,0,0,96,0,0,0,100,0,0,0,73,0,0,0,40,0,0,0,35,0,0,0,46,0,0,0,62,0,0,0,81,0,0,0,100,
0,0,0,111,0,0,0,91,0,0,0,46,0,0,0,66,0,0,0,76,0,0,0,86,0,0,0,102,0,0,0,121,0,0,0,120,0,0,0,101,0,0,0,68,0,0,0,90,0,0,0,90,0,0,0,96,0,0,0,113,0,0,0,102,0,0,0,105,0,0,0,103,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,18,0,0,0,25,0,0,0,37,0,0,0,56,0,0,0,85,0,0,0,16,0,0,0,17,0,0,0,20,0,0,0,27,0,0,0,34,0,0,0,40,0,0,0,53,0,0,0,75,0,0,0,16,0,0,0,20,0,0,0,24,0,0,0,31,0,0,0,43,0,0,0,62,0,0,0,91,0,0,0,135,0,0,0,18,0,0,0,27,0,0,0,31,0,0,0,40,0,0,0,53,0,0,0,74,0,0,0,106,0,0,0,156,0,0,0,25,0,0,0,34,0,0,0,43,0,0,0,53,0,0,
0,69,0,0,0,94,0,0,0,131,0,0,0,189,0,0,0,37,0,0,0,40,0,0,0,62,0,0,0,74,0,0,0,94,0,0,0,124,0,0,0,169,0,0,0,238,0,0,0,56,0,0,0,53,0,0,0,91,0,0,0,106,0,0,0,131,0,0,0,169,0,0,0,226,0,0,0,55,1,0,0,85,0,0,0,75,0,0,0,135,0,0,0,156,0,0,0,189,0,0,0,238,0,0,0,55,1,0,0,162,1,0,0,9,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,27,0,0,0,32,0,0,0,51,0,0,0,62,0,0,0,11,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,27,0,0,0,44,0,0,0,59,0,0,0,73,0,0,0,12,0,0,0,14,0,0,0,18,0,0,0,25,0,0,0,42,0,0,0,59,0,0,0,79,0,0,0,78,0,0,0,17,0,0,0,18,0,0,0,
25,0,0,0,42,0,0,0,61,0,0,0,92,0,0,0,87,0,0,0,92,0,0,0,23,0,0,0,28,0,0,0,42,0,0,0,75,0,0,0,79,0,0,0,112,0,0,0,112,0,0,0,99,0,0,0,40,0,0,0,42,0,0,0,59,0,0,0,84,0,0,0,88,0,0,0,124,0,0,0,132,0,0,0,111,0,0,0,42,0,0,0,64,0,0,0,78,0,0,0,95,0,0,0,105,0,0,0,126,0,0,0,125,0,0,0,99,0,0,0,70,0,0,0,75,0,0,0,100,0,0,0,102,0,0,0,116,0,0,0,100],"i8",4,m.D);B([107,0,0,0,98,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,38,0,0,0,57,0,0,0,86,0,0,0,12,0,0,0,18,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,41,0,0,0,54,0,0,0,76,
0,0,0,14,0,0,0,21,0,0,0,25,0,0,0,32,0,0,0,44,0,0,0,63,0,0,0,92,0,0,0,136,0,0,0,19,0,0,0,28,0,0,0,32,0,0,0,41,0,0,0,54,0,0,0,75,0,0,0,107,0,0,0,157,0,0,0,26,0,0,0,35,0,0,0,44,0,0,0,54,0,0,0,70,0,0,0,95,0,0,0,132,0,0,0,190,0,0,0,38,0,0,0,41,0,0,0,63,0,0,0,75,0,0,0,95,0,0,0,125,0,0,0,170,0,0,0,239,0,0,0,57,0,0,0,54,0,0,0,92,0,0,0,107,0,0,0,132,0,0,0,170,0,0,0,227,0,0,0,56,1,0,0,86,0,0,0,76,0,0,0,136,0,0,0,157,0,0,0,190,0,0,0,239,0,0,0,56,1,0,0,163,1,0,0,7,0,0,0,8,0,0,0,10,0,0,0,14,0,0,0,23,0,0,0,44,
0,0,0,95,0,0,0,241,0,0,0,8,0,0,0,8,0,0,0,11,0,0,0,15,0,0,0,25,0,0,0,47,0,0,0,102,0,0,0,255,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,19,0,0,0,31,0,0,0,58,0,0,0,127,0,0,0,255,0,0,0,14,0,0,0,15,0,0,0,19,0,0,0,27,0,0,0,44,0,0,0,83,0,0,0,181,0,0,0,255,0,0,0,23,0,0,0,25,0,0,0,31,0,0,0,44,0,0,0,72,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,44,0,0,0,47,0,0,0,58,0,0,0,83,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,95,0,0,0,102,0,0,0,127,0,0,0,181,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,241,0,0,0,255,0,0,0,255,0,
0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,15,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,25,0,0,0,32,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,24,0,0,0,11,0,0,0,10,0,0,0,14,0,0,0,14,0,0,0,16,0,0,0,18,0,0,0,22,0,0,0,27,0,0,0,12,0,0,0,10,0,0,0,14,0,0,0,18,0,0,0,21,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,15,0,0,0,12,0,0,0,16,0,0,0,21,0,0,0,26,0,0,0,31,0,0,0,36,0,0,0,42,0,0,0,19,0,0,0,15,0,0,0,18,0,0,0,24,0,0,0,31,0,0,0,38,0,0,0,45,0,0,0,53,0,0,0,25,0,0,0,19,0,0,
0,22,0,0,0,28,0,0,0,36,0,0,0,45,0,0,0,55,0,0,0,65,0,0,0,32,0,0,0,24,0,0,0,27,0,0,0,33,0,0,0,42,0,0,0,53,0,0,0,65,0,0,0,77,0,0,0,14,0,0,0,10,0,0,0,11,0,0,0,14,0,0,0,19,0,0,0,25,0,0,0,34,0,0,0,45,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,20,0,0,0,26,0,0,0,33,0,0,0,11,0,0,0,11,0,0,0,15,0,0,0,18,0,0,0,21,0,0,0,25,0,0,0,31,0,0,0,38,0,0,0,14,0,0,0,12,0,0,0,18,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,39,0,0,0,47,0,0,0,19,0,0,0,15,0,0,0,21,0,0,0,28,0,0,0,36,0,0,0,43,0,0,0,51,0,0,0,59,0,0,0,25,0,0,0,20,0,
0,0,25,0,0,0,33,0,0,0,43,0,0,0,54,0,0,0,64,0,0,0,74,0,0,0,34,0,0,0,26,0,0,0,31,0,0,0,39,0,0,0,51,0,0,0,64,0,0,0,77,0,0,0,91,0,0,0,45,0,0,0,33,0,0,0,38,0,0,0,47,0,0,0,59,0,0,0,74,0,0,0,91,0,0,0,108,0,0,0,17,0,0,0,18,0,0,0,24,0,0,0,47,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,18,0,0,0,21,0,0,0,26,0,0,0,66,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,24,0,0,0,26,0,0,0,56,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,47,0,0,0,66,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,
0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,
16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,8,0,0,0,12,0,0,0,15,0,0,0,15,0,0,0,86,0,0,0,96,0,0,0,96,0,0,0,98,0,0,0,13,0,0,0,13,0,0,0,15,0,0,0,26,0,0,0,90,0,0,0,96,0,0,0,99,0,0,0,98,0,0,0,12,0,0,
0,15,0,0,0,18,0,0,0,96,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,17,0,0,0,16,0,0,0,90,0,0,0,96,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,96,0,0,0,96,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,16,0,0,0,16,0,0,0,16,0,0,0,18,0,0,0,25,0,0,0,37,0,0,0,56,0,0,0,85,0,0,0,16,0,
0,0,17,0,0,0,20,0,0,0,27,0,0,0,34,0,0,0,40,0,0,0,53,0,0,0,75,0,0,0,16,0,0,0,20,0,0,0,24,0,0,0,31,0,0,0,43,0,0,0,62,0,0,0,91,0,0,0,135,0,0,0,18,0,0,0,27,0,0,0,31,0,0,0,40,0,0,0,53,0,0,0,74,0,0,0,106,0,0,0,156,0,0,0,25,0,0,0,34,0,0,0,43,0,0,0,53,0,0,0,69,0,0,0,94,0,0,0,131,0,0,0,189,0,0,0,37,0,0,0,40,0,0,0,62,0,0,0,74,0,0,0,94,0,0,0,124,0,0,0,169,0,0,0,238,0,0,0,56,0,0,0,53,0,0,0,91,0,0,0,106,0,0,0,131,0,0,0,169,0,0,0,226,0,0,0,55,1,0,0,85,0,0,0,75,0,0,0,135,0,0,0,156,0,0,0,189,0,0,0,238,0,0,0,55,1,
0,0,162,1,0,0,9,0,0,0,10,0,0,0,17,0,0,0,19,0,0,0,62,0,0,0,89,0,0,0,91,0,0,0,97,0,0,0,12,0,0,0,13,0,0,0,18,0,0,0,29,0,0,0,84,0,0,0,91,0,0,0,88,0,0,0,98,0,0,0,14,0,0,0,19,0,0,0,29,0,0,0,93,0,0,0,95,0,0,0,95,0,0,0,98,0,0,0,97,0,0,0,20,0,0,0,26,0,0,0,84,0,0,0,88,0,0,0,95,0,0,0,95,0,0,0,98,0,0,0,94,0,0,0,26,0,0,0,86,0,0,0,91,0,0,0,93,0,0,0,97,0,0,0,99,0,0,0,98,0,0,0,99,0,0,0,99,0,0,0,100,0,0,0,98,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,
0,0,0,99,0,0,0,97,0,0,0,97,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,99,0,0,0,97,0,0,0,99,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,19,0,0,0,26,0,0,0,38,0,0,0,57,0,0,0,86,0,0,0,12,0,0,0,18,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,41,0,0,0,54,0,0,0,76,0,0,0,14,0,0,0,21,0,0,0,25,0,0,0,32,0,0,0,44,0,0,0,63,0,0,0,92,0,0,0,136,0,0,0,19,0,0,0,28,0,0,0,32,0,0,0,41,0,0,0,54,0,0,0,75,0,0,0,107,0,0,0,157,0,0,0,26,0,0,0,35,0,0,0,44,0,0,0,54,0,0,0,70,0,0,0,95,0,0,0,132,0,0,0,190,0,0,0,38,0,0,0,41,0,0,0,63,0,0,0,75,0,0,0,95,0,0,0,125,
0,0,0,170,0,0,0,239,0,0,0,57,0,0,0,54,0,0,0,92,0,0,0,107,0,0,0,132,0,0,0,170,0,0,0,227,0,0,0,56,1,0,0,86,0,0,0,76,0,0,0,136,0,0,0,157,0,0,0,190,0,0,0,239,0,0,0,56,1,0,0,163,1,0,0,7,0,0,0,8,0,0,0,10,0,0,0,14,0,0,0,23,0,0,0,44,0,0,0,95,0,0,0,241,0,0,0,8,0,0,0,8,0,0,0,11,0,0,0,15,0,0,0,25,0,0,0,47,0,0,0,102,0,0,0,255,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,19,0,0,0,31,0,0,0,58,0,0,0,127,0,0,0,255,0,0,0,14,0,0,0,15,0,0,0,19,0,0,0,27,0,0,0,44,0,0,0,83,0,0,0,181,0,0,0,255,0,0,0,23,0,0,0,25,0,0,0,31,0,0,0,44,0,
0,0,72,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,44,0,0,0,47,0,0,0,58,0,0,0,83,0,0,0,136,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,95,0,0,0,102,0,0,0,127,0,0,0,181,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,241,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,15,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,25,0,0,0,32,0,0,0,11,0,0,0,13,0,0,0,10,0,0,0,10,0,0,0,12,0,0,0,15,0,0,0,19,0,0,0,24,0,0,0,11,0,0,0,10,0,0,0,14,0,0,0,14,0,0,0,16,0,0,0,18,0,0,0,22,0,0,0,27,0,0,0,12,0,0,
0,10,0,0,0,14,0,0,0,18,0,0,0,21,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,15,0,0,0,12,0,0,0,16,0,0,0,21,0,0,0,26,0,0,0,31,0,0,0,36,0,0,0,42,0,0,0,19,0,0,0,15,0,0,0,18,0,0,0,24,0,0,0,31,0,0,0,38,0,0,0,45,0,0,0,53,0,0,0,25,0,0,0,19,0,0,0,22,0,0,0,28,0,0,0,36,0,0,0,45,0,0,0,55,0,0,0,65,0,0,0,32,0,0,0,24,0,0,0,27,0,0,0,33,0,0,0,42,0,0,0,53,0,0,0,65,0,0,0,77,0,0,0,14,0,0,0,10,0,0,0,11,0,0,0,14,0,0,0,19,0,0,0,25,0,0,0,34,0,0,0,45,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,15,0,0,0,20,0,0,0,26,0,0,0,33,0,0,0,11,0,
0,0,11,0,0,0,15,0,0,0,18,0,0,0,21,0,0,0,25,0,0,0,31,0,0,0,38,0,0,0,14,0,0,0,12,0,0,0,18,0,0,0,24,0,0,0,28,0,0,0,33,0,0,0,39,0,0,0,47,0,0,0,19,0,0,0,15,0,0,0,21,0,0,0,28,0,0,0,36,0,0,0,43,0,0,0,51,0,0,0,59,0,0,0,25,0,0,0,20,0,0,0,25,0,0,0,33,0,0,0,43,0,0,0,54,0,0,0,64,0,0,0,74,0,0,0,34,0,0,0,26,0,0,0,31,0,0,0,39,0,0,0,51,0,0,0,64,0,0,0,77,0,0,0,91,0,0,0,45,0,0,0,33,0,0,0,38,0,0,0,47,0,0,0,59,0,0,0,74,0,0,0,91,0,0,0,108,0,0,0,2,0,0,0,8,0,0,0,5,0,0,0,12,0,0,0,18,0,0,0,153,87,0,0,175,87,0,0,219,87,0,
0,251,87,0,0,32,88,0,0,58,88,0,0,89,88,0,0,118,88,0,0,158,88,0,0,189,88,0,0,212,88,0,0,234,88,0,0,254,88,0,0,59,89,0,0,107,89,0,0,135,89,0,0,170,89,0,0,225,89,0,0,24,90,0,0,47,90,0,0,79,90,0,0,121,90,0,0,198,90,0,0,225,90,0,0,12,91,0,0,40,91,0,0,77,91,0,0,115,91,0,0,152,91,0,0,171,91,0,0,192,91,0,0,211,91,0,0,230,91,0,0,11,92,0,0,32,92,0,0,52,92,0,0,85,92,0,0,107,92,0,0,154,92,0,0,194,92,0,0,227,92,0,0,4,93,0,0,51,93,0,0,68,93,0,0,96,93,0,0,158,93,0,0,197,93,0,0,236,93,0,0,0,94,0,0,46,94,0,0,74,94,
0,0,111,94,0,0,145,94,0,0,187,94,0,0,230,94,0,0,4,95,0,0,50,95,0,0,90,95,0,0,129,95,0,0,174,95,0,0,222,95,0,0,8,96,0,0,53,96,0,0,97,96,0,0,132,96,0,0,162,96,0,0,192,96,0,0,246,96,0,0,32,97,0,0,63,97,0,0,98,97,0,0,137,97,0,0,158,97,0,0,178,97,0,0,244,97,0,0,4,98,0,0,66,98,0,0,132,98,0,0,174,98,0,0,218,98,0,0,1,99,0,0,29,99,0,0,72,99,0,0,99,99,0,0,119,99,0,0,142,99,0,0,155,99,0,0,195,99,0,0,248,99,0,0,52,100,0,0,98,100,0,0,131,100,0,0,170,100,0,0,195,100,0,0,235,100,0,0,14,101,0,0,38,101,0,0,74,101,
0,0,111,101,0,0,117,101,0,0,174,101,0,0,232,101,0,0,7,102,0,0,22,102,0,0,51,102,0,0,81,102,0,0,110,102,0,0,135,102,0,0,160,102,0,0,226,102,0,0,28,103,0,0,82,103,0,0,134,103,0,0,154,103,0,0,177,103,0,0,215,103,0,0,25,104,0,0,85,104,0,0,134,104,0,0,170,104,0,0,216,104,0,0,243,104,0,0,43,105,0,0,86,105,0,0,129,105,0,0,150,105,0,0,190,105,0,0,229,105,0,0,245,105,0,0,11,106,0,0,0,0,0,0,255,255,255,255,255,255,255,255,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,
0,3,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,1,0,0,0,255,255,255,255,2,0,0,0,3,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,1,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,2,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,255,255,255,255,0,0,0,0,1,0,0,0,8,0,0,0,16,0,0,0,9,0,0,0,2,
0,0,0,3,0,0,0,10,0,0,0,17,0,0,0,24,0,0,0,32,0,0,0,25,0,0,0,18,0,0,0,11,0,0,0,4,0,0,0,5,0,0,0,12,0,0,0,19,0,0,0,26,0,0,0,33,0,0,0,40,0,0,0,48,0,0,0,41,0,0,0,34,0,0,0,27,0,0,0,20,0,0,0,13,0,0,0,6,0,0,0,7,0,0,0,14,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,42,0,0,0,49,0,0,0,56,0,0,0,57,0,0,0,50,0,0,0,43,0,0,0,36,0,0,0,29,0,0,0,22,0,0,0,15,0,0,0,23,0,0,0,30,0,0,0,37,0,0,0,44,0,0,0,51,0,0,0,58,0,0,0,59,0,0,0,52,0,0,0,45,0,0,0,38,0,0,0,31,0,0,0,39,0,0,0,46,0,0,0,53,0,0,0,60,0,0,0,61,0,0,0,54,0,0,0,47,0,0,0,55,0,
0,0,62,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,64,6,0,0,128,62,0,0,0,0,0,0,136,19,0,0,255,255,255,255,255,255,255,255,3,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,255,255,255,255,10,2,8,0,6,14,4,12,9,1,11,3,5,13,7,15,129,1,29,90,14,2,134,37,16,3,20,17,18,4,11,8,20,5,216,3,23,6,218,1,25,7,229,
0,28,8,111,0,30,9,54,0,33,10,26,0,35,11,13,0,9,12,6,0,10,13,3,0,12,13,1,0,143,15,127,90,36,16,37,63,38,17,242,44,39,18,124,32,40,19,185,23,42,20,130,17,43,21,239,12,45,22,161,9,46,23,47,7,48,24,92,5,49,25,6,4,51,26,3,3,52,27,64,2,54,28,177,1,56,29,68,1,57,30,245,0,59,31,183,0,60,32,138,0,62,33,104,0,63,34,78,0,32,35,59,0,33,9,44,0,165,37,225,90,64,38,76,72,65,39,13,58,67,40,241,46,68,41,31,38,69,42,51,31,70,43,168,25,72,44,24,21,73,45,119,17,74,46,116,14,75,47,251,11,77,48,248,9,78,49,97,8,79,50,
6,7,48,51,205,5,50,52,222,4,50,53,15,4,51,54,99,3,52,55,212,2,53,56,92,2,54,57,248,1,55,58,164,1,56,59,96,1,57,60,37,1,58,61,246,0,59,62,203,0,61,63,171,0,61,32,143,0,193,65,18,91,80,66,4,77,81,67,44,65,82,68,216,55,83,69,232,47,84,70,60,41,86,71,121,35,87,72,223,30,87,73,169,26,72,74,78,23,72,75,36,20,74,76,156,17,74,77,107,15,75,78,81,13,77,79,182,11,77,48,64,10,208,81,50,88,88,82,28,77,89,83,142,67,90,84,221,59,91,85,238,52,92,86,174,46,93,87,154,41,86,71,22,37,216,89,112,85,95,90,169,76,96,91,
217,68,97,92,34,62,99,93,36,56,99,94,180,50,93,86,23,46,223,96,168,86,101,97,70,79,102,98,229,71,103,99,207,65,104,100,61,60,99,93,94,55,105,102,49,82,106,103,15,76,107,104,57,70,103,99,94,65,233,106,39,86,108,107,231,80,109,103,133,75,110,109,151,85,111,107,79,80,238,111,16,90,112,109,34,85,240,111,235,89,113,113,29,90,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,
19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,68,60,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,197,121,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,60,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,205,121,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,60,0,0,48,61,0,0,9,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,0,0,0,213,125,1,0,0,4,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,64,197,88,159,83,66,75,0,64,73,50,163,34,168,17,197,88,33,123,252,
115,98,104,197,88,191,69,11,48,126,24,159,83,252,115,65,109,84,98,159,83,179,65,65,45,18,23,66,75,98,104,84,98,126,88,66,75,33,59,186,40,195,20,0,64,197,88,159,83,66,75,0,64,73,50,163,34,168,17,73,50,191,69,179,65,33,59,73,50,130,39,55,27,224,13,163,34,11,48,65,45,186,40,163,34,55,27,191,18,142,9,168,17,126,24,18,23,195,20,168,17,224,13,142,9,223,4,99,106,112,101,103,0,85,110,115,117,112,112,111,114,116,101,100,32,66,77,80,32,99,111,108,111,114,109,97,112,32,102,111,114,109,97,116,0,79,110,108,121,
32,56,45,32,97,110,100,32,50,52,45,98,105,116,32,66,77,80,32,102,105,108,101,115,32,97,114,101,32,115,117,112,112,111,114,116,101,100,0,73,110,118,97,108,105,100,32,66,77,80,32,102,105,108,101,58,32,98,97,100,32,104,101,97,100,101,114,32,108,101,110,103,116,104,0,73,110,118,97,108,105,100,32,66,77,80,32,102,105,108,101,58,32,98,105,80,108,97,110,101,115,32,110,111,116,32,101,113,117,97,108,32,116,111,32,49,0,66,77,80,32,111,117,116,112,117,116,32,109,117,115,116,32,98,101,32,103,114,97,121,115,99,
97,108,101,32,111,114,32,82,71,66,0,83,111,114,114,121,44,32,99,111,109,112,114,101,115,115,101,100,32,66,77,80,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,0,69,109,112,116,121,32,66,77,80,32,105,109,97,103,101,0,78,111,116,32,97,32,66,77,80,32,102,105,108,101,32,45,32,100,111,101,115,32,110,111,116,32,115,116,97,114,116,32,119,105,116,104,32,66,77,0,37,117,120,37,117,32,50,52,45,98,105,116,32,66,77,80,32,105,109,97,103,101,0,37,117,120,37,117,32,56,45,98,105,116,32,99,
111,108,111,114,109,97,112,112,101,100,32,66,77,80,32,105,109,97,103,101,0,37,117,120,37,117,32,50,52,45,98,105,116,32,79,83,50,32,66,77,80,32,105,109,97,103,101,0,37,117,120,37,117,32,56,45,98,105,116,32,99,111,108,111,114,109,97,112,112,101,100,32,79,83,50,32,66,77,80,32,105,109,97,103,101,0,71,73,70,32,111,117,116,112,117,116,32,103,111,116,32,99,111,110,102,117,115,101,100,0,66,111,103,117,115,32,71,73,70,32,99,111,100,101,115,105,122,101,32,37,100,0,71,73,70,32,111,117,116,112,117,116,32,109,
117,115,116,32,98,101,32,103,114,97,121,115,99,97,108,101,32,111,114,32,82,71,66,0,84,111,111,32,102,101,119,32,105,109,97,103,101,115,32,105,110,32,71,73,70,32,102,105,108,101,0,78,111,116,32,97,32,71,73,70,32,102,105,108,101,0,37,117,120,37,117,120,37,100,32,71,73,70,32,105,109,97,103,101,0,87,97,114,110,105,110,103,58,32,117,110,101,120,112,101,99,116,101,100,32,71,73,70,32,118,101,114,115,105,111,110,32,110,117,109,98,101,114,32,39,37,99,37,99,37,99,39,0,73,103,110,111,114,105,110,103,32,71,73,
70,32,101,120,116,101,110,115,105,111,110,32,98,108,111,99,107,32,111,102,32,116,121,112,101,32,48,120,37,48,50,120,0,67,97,117,116,105,111,110,58,32,110,111,110,115,113,117,97,114,101,32,112,105,120,101,108,115,32,105,110,32,105,110,112,117,116,0,67,111,114,114,117,112,116,32,100,97,116,97,32,105,110,32,71,73,70,32,102,105,108,101,0,66,111,103,117,115,32,99,104,97,114,32,48,120,37,48,50,120,32,105,110,32,71,73,70,32,102,105,108,101,44,32,105,103,110,111,114,105,110,103,0,80,114,101,109,97,116,117,
114,101,32,101,110,100,32,111,102,32,71,73,70,32,105,109,97,103,101,0,82,97,110,32,111,117,116,32,111,102,32,71,73,70,32,98,105,116,115,0,80,80,77,32,111,117,116,112,117,116,32,109,117,115,116,32,98,101,32,103,114,97,121,115,99,97,108,101,32,111,114,32,82,71,66,0,78,111,110,110,117,109,101,114,105,99,32,100,97,116,97,32,105,110,32,80,80,77,32,102,105,108,101,0,73,110,116,101,103,101,114,32,118,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,105,110,32,80,80,77,32,102,105,108,101,0,78,111,116,
32,97,32,80,80,77,47,80,71,77,32,102,105,108,101,0,37,117,120,37,117,32,80,71,77,32,105,109,97,103,101,0,37,117,120,37,117,32,116,101,120,116,32,80,71,77,32,105,109,97,103,101,0,37,117,120,37,117,32,80,80,77,32,105,109,97,103,101,0,37,117,120,37,117,32,116,101,120,116,32,80,80,77,32,105,109,97,103,101,0,85,110,115,117,112,112,111,114,116,101,100,32,84,97,114,103,97,32,99,111,108,111,114,109,97,112,32,102,111,114,109,97,116,0,73,110,118,97,108,105,100,32,111,114,32,117,110,115,117,112,112,111,114,
116,101,100,32,84,97,114,103,97,32,102,105,108,101,0,84,97,114,103,97,32,111,117,116,112,117,116,32,109,117,115,116,32,98,101,32,103,114,97,121,115,99,97,108,101,32,111,114,32,82,71,66,0,37,117,120,37,117,32,82,71,66,32,84,97,114,103,97,32,105,109,97,103,101,0,37,117,120,37,117,32,103,114,97,121,115,99,97,108,101,32,84,97,114,103,97,32,105,109,97,103,101,0,37,117,120,37,117,32,99,111,108,111,114,109,97,112,112,101,100,32,84,97,114,103,97,32,105,109,97,103,101,0,67,111,108,111,114,32,109,97,112,32,
102,105,108,101,32,105,115,32,105,110,118,97,108,105,100,32,111,114,32,111,102,32,117,110,115,117,112,112,111,114,116,101,100,32,102,111,114,109,97,116,0,79,117,116,112,117,116,32,102,105,108,101,32,102,111,114,109,97,116,32,99,97,110,110,111,116,32,104,97,110,100,108,101,32,37,100,32,99,111,108,111,114,109,97,112,32,101,110,116,114,105,101,115,0,117,110,103,101,116,99,32,102,97,105,108,101,100,0,85,110,114,101,99,111,103,110,105,122,101,100,32,105,110,112,117,116,32,102,105,108,101,32,102,111,114,
109,97,116,32,45,45,45,32,112,101,114,104,97,112,115,32,121,111,117,32,110,101,101,100,32,45,116,97,114,103,97,0,85,110,115,117,112,112,111,114,116,101,100,32,111,117,116,112,117,116,32,102,105,108,101,32,102,111,114,109,97,116,0,97,114,105,116,104,109,101,116,105,99,0,98,97,115,101,108,105,110,101,0,100,99,116,0,37,115,58,32,109,105,115,115,105,110,103,32,97,114,103,117,109,101,110,116,32,102,111,114,32,100,99,116,10,0,117,115,97,103,101,58,32,37,115,32,91,115,119,105,116,99,104,101,115,93,32,0,
91,105,110,112,117,116,102,105,108,101,93,10,0,83,119,105,116,99,104,101,115,32,40,110,97,109,101,115,32,109,97,121,32,98,101,32,97,98,98,114,101,118,105,97,116,101,100,41,58,10,0,32,32,45,113,117,97,108,105,116,121,32,78,91,44,46,46,46,93,32,32,32,67,111,109,112,114,101,115,115,105,111,110,32,113,117,97,108,105,116,121,32,40,48,46,46,49,48,48,59,32,53,45,57,53,32,105,115,32,117,115,101,102,117,108,32,114,97,110,103,101,41,10,0,32,32,45,103,114,97,121,115,99,97,108,101,32,32,32,32,32,67,114,101,97,
116,101,32,109,111,110,111,99,104,114,111,109,101,32,74,80,69,71,32,102,105,108,101,10,0,32,32,45,114,103,98,32,32,32,32,32,32,32,32,32,32,32,67,114,101,97,116,101,32,82,71,66,32,74,80,69,71,32,102,105,108,101,10,0,32,32,45,111,112,116,105,109,105,122,101,32,32,32,32,32,32,79,112,116,105,109,105,122,101,32,72,117,102,102,109,97,110,32,116,97,98,108,101,32,40,115,109,97,108,108,101,114,32,102,105,108,101,44,32,98,117,116,32,115,108,111,119,32,99,111,109,112,114,101,115,115,105,111,110,44,32,101,110,
97,98,108,101,100,32,98,121,32,100,101,102,97,117,108,116,41,10,0,32,32,45,112,114,111,103,114,101,115,115,105,118,101,32,32,32,67,114,101,97,116,101,32,112,114,111,103,114,101,115,115,105,118,101,32,74,80,69,71,32,102,105,108,101,32,40,101,110,97,98,108,101,100,32,98,121,32,100,101,102,97,117,108,116,41,10,0,32,32,45,98,97,115,101,108,105,110,101,32,32,32,32,32,32,67,114,101,97,116,101,32,98,97,115,101,108,105,110,101,32,74,80,69,71,32,102,105,108,101,32,40,100,105,115,97,98,108,101,32,112,114,111,
103,114,101,115,115,105,118,101,32,99,111,100,105,110,103,41,10,0,32,32,45,116,97,114,103,97,32,32,32,32,32,32,32,32,32,73,110,112,117,116,32,102,105,108,101,32,105,115,32,84,97,114,103,97,32,102,111,114,109,97,116,32,40,117,115,117,97,108,108,121,32,110,111,116,32,110,101,101,100,101,100,41,10,0,32,32,45,114,101,118,101,114,116,32,32,32,32,32,32,32,32,82,101,118,101,114,116,32,116,111,32,115,116,97,110,100,97,114,100,32,100,101,102,97,117,108,116,115,32,40,105,110,115,116,101,97,100,32,111,102,32,
109,111,122,106,112,101,103,32,100,101,102,97,117,108,116,115,41,10,0,32,32,45,102,97,115,116,99,114,117,115,104,32,32,32,32,32,68,105,115,97,98,108,101,32,112,114,111,103,114,101,115,115,105,118,101,32,115,99,97,110,32,111,112,116,105,109,105,122,97,116,105,111,110,10,0,32,32,45,100,99,45,115,99,97,110,45,111,112,116,32,32,32,68,67,32,115,99,97,110,32,111,112,116,105,109,105,122,97,116,105,111,110,32,109,111,100,101,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,48,32,79,110,101,32,
115,99,97,110,32,102,111,114,32,97,108,108,32,99,111,109,112,111,110,101,110,116,115,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,49,32,79,110,101,32,115,99,97,110,32,112,101,114,32,99,111,109,112,111,110,101,110,116,32,40,100,101,102,97,117,108,116,41,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,50,32,79,112,116,105,109,105,122,101,32,98,101,116,119,101,101,110,32,111,110,101,32,115,99,97,110,32,102,111,114,32,97,108,108,32,99,111,109,112,111,110,101,110,116,115,
32,97,110,100,32,111,110,101,32,115,99,97,110,32,102,111,114,32,49,115,116,32,99,111,109,112,111,110,101,110,116,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,112,108,117,115,32,111,110,101,32,115,99,97,110,32,102,111,114,32,114,101,109,97,105,110,105,110,103,32,99,111,109,112,111,110,101,110,116,115,10,0,32,32,45,110,111,116,114,101,108,108,105,115,32,32,32,32,32,68,105,115,97,98,108,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,10,0,32,
32,45,116,114,101,108,108,105,115,45,100,99,32,32,32,32,69,110,97,98,108,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,32,111,102,32,68,67,32,99,111,101,102,102,105,99,105,101,110,116,115,32,40,100,101,102,97,117,108,116,41,10,0,32,32,45,110,111,116,114,101,108,108,105,115,45,100,99,32,32,68,105,115,97,98,108,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,32,111,102,32,68,67,32,99,111,101,102,102,105,99,105,101,110,116,115,
10,0,32,32,45,116,117,110,101,45,112,115,110,114,32,32,32,32,32,84,117,110,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,32,102,111,114,32,80,83,78,82,10,0,32,32,45,116,117,110,101,45,104,118,115,45,112,115,110,114,32,84,117,110,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,32,102,111,114,32,80,83,78,82,45,72,86,83,32,40,100,101,102,97,117,108,116,41,10,0,32,32,45,116,117,110,101,45,115,115,105,109,32,32,32,32,32,84,117,
110,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,32,102,111,114,32,83,83,73,77,10,0,32,32,45,116,117,110,101,45,109,115,45,115,115,105,109,32,32,84,117,110,101,32,116,114,101,108,108,105,115,32,111,112,116,105,109,105,122,97,116,105,111,110,32,102,111,114,32,77,83,45,83,83,73,77,10,0,83,119,105,116,99,104,101,115,32,102,111,114,32,97,100,118,97,110,99,101,100,32,117,115,101,114,115,58,10,0,32,32,45,110,111,111,118,101,114,115,104,111,111,116,32,32,32,68,105,
115,97,98,108,101,32,98,108,97,99,107,45,111,110,45,119,104,105,116,101,32,100,101,114,105,110,103,105,110,103,32,118,105,97,32,111,118,101,114,115,104,111,111,116,10,0,32,32,45,97,114,105,116,104,109,101,116,105,99,32,32,32,32,85,115,101,32,97,114,105,116,104,109,101,116,105,99,32,99,111,100,105,110,103,10,0,32,32,45,100,99,116,32,105,110,116,32,32,32,32,32,32,32,85,115,101,32,105,110,116,101,103,101,114,32,68,67,84,32,109,101,116,104,111,100,37,115,10,0,32,40,100,101,102,97,117,108,116,41,0,32,
32,45,100,99,116,32,102,97,115,116,32,32,32,32,32,32,85,115,101,32,102,97,115,116,32,105,110,116,101,103,101,114,32,68,67,84,32,40,108,101,115,115,32,97,99,99,117,114,97,116,101,41,37,115,10,0,32,32,45,100,99,116,32,102,108,111,97,116,32,32,32,32,32,85,115,101,32,102,108,111,97,116,105,110,103,45,112,111,105,110,116,32,68,67,84,32,109,101,116,104,111,100,37,115,10,0,32,32,45,113,117,97,110,116,45,98,97,115,101,108,105,110,101,32,85,115,101,32,56,45,98,105,116,32,113,117,97,110,116,105,122,97,116,
105,111,110,32,116,97,98,108,101,32,101,110,116,114,105,101,115,32,102,111,114,32,98,97,115,101,108,105,110,101,32,74,80,69,71,32,99,111,109,112,97,116,105,98,105,108,105,116,121,10,0,32,32,45,113,117,97,110,116,45,116,97,98,108,101,32,78,32,85,115,101,32,112,114,101,100,101,102,105,110,101,100,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,32,78,58,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,48,32,74,80,69,71,32,65,110,110,101,120,32,75,10,0,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,45,32,49,32,70,108,97,116,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,50,32,67,117,115,116,111,109,44,32,116,117,110,101,100,32,102,111,114,32,77,83,45,83,83,73,77,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,51,32,73,109,97,103,101,77,97,103,105,99,107,32,116,97,98,108,101,32,98,121,32,78,46,32,82,111,98,105,100,111,117,120,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,52,32,67,117,115,116,111,109,44,32,116,117,
110,101,100,32,102,111,114,32,80,83,78,82,45,72,86,83,10,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,45,32,53,32,84,97,98,108,101,32,102,114,111,109,32,112,97,112,101,114,32,98,121,32,75,108,101,105,110,44,32,83,105,108,118,101,114,115,116,101,105,110,32,97,110,100,32,67,97,114,110,101,121,10,0,32,32,45,114,101,115,116,97,114,116,32,78,32,32,32,32,32,83,101,116,32,114,101,115,116,97,114,116,32,105,110,116,101,114,118,97,108,32,105,110,32,114,111,119,115,44,32,111,114,32,105,110,32,98,108,
111,99,107,115,32,119,105,116,104,32,66,10,0,32,32,45,115,109,111,111,116,104,32,78,32,32,32,32,32,32,83,109,111,111,116,104,32,100,105,116,104,101,114,101,100,32,105,110,112,117,116,32,40,78,61,49,46,46,49,48,48,32,105,115,32,115,116,114,101,110,103,116,104,41,10,0,32,32,45,109,97,120,109,101,109,111,114,121,32,78,32,32,32,77,97,120,105,109,117,109,32,109,101,109,111,114,121,32,116,111,32,117,115,101,32,40,105,110,32,107,98,121,116,101,115,41,10,0,32,32,45,111,117,116,102,105,108,101,32,110,97,109,
101,32,32,83,112,101,99,105,102,121,32,110,97,109,101,32,102,111,114,32,111,117,116,112,117,116,32,102,105,108,101,10,0,32,32,45,109,101,109,100,115,116,32,32,32,32,32,32,32,32,67,111,109,112,114,101,115,115,32,116,111,32,109,101,109,111,114,121,32,105,110,115,116,101,97,100,32,111,102,32,102,105,108,101,32,40,117,115,101,102,117,108,32,102,111,114,32,98,101,110,99,104,109,97,114,107,105,110,103,41,10,0,32,32,45,118,101,114,98,111,115,101,32,32,111,114,32,32,45,100,101,98,117,103,32,32,32,69,109,
105,116,32,100,101,98,117,103,32,111,117,116,112,117,116,10,0,32,32,45,118,101,114,115,105,111,110,32,32,32,32,32,32,32,80,114,105,110,116,32,118,101,114,115,105,111,110,32,105,110,102,111,114,109,97,116,105,111,110,32,97,110,100,32,101,120,105,116,10,0,83,119,105,116,99,104,101,115,32,102,111,114,32,119,105,122,97,114,100,115,58,10,0,32,32,45,113,116,97,98,108,101,115,32,102,105,108,101,32,32,85,115,101,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,115,32,103,105,118,101,
110,32,105,110,32,102,105,108,101,10,0,32,32,45,113,115,108,111,116,115,32,78,91,44,46,46,46,93,32,32,32,32,83,101,116,32,99,111,109,112,111,110,101,110,116,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,115,10,0,32,32,45,115,97,109,112,108,101,32,72,120,86,91,44,46,46,46,93,32,32,83,101,116,32,99,111,109,112,111,110,101,110,116,32,115,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,10,0,32,32,45,115,99,97,110,115,32,102,105,108,101,32,32,32,32,67,114,101,97,116,101,
32,109,117,108,116,105,45,115,99,97,110,32,74,80,69,71,32,112,101,114,32,115,99,114,105,112,116,32,102,105,108,101,10,0,105,110,116,0,102,97,115,116,0,102,108,111,97,116,0,37,115,58,32,105,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,32,102,111,114,32,100,99,116,10,0,100,101,98,117,103,0,118,101,114,98,111,115,101,0,37,115,32,118,101,114,115,105,111,110,32,37,115,32,40,98,117,105,108,100,32,37,115,41,10,0,109,111,122,106,112,101,103,0,51,46,49,0,50,48,49,54,48,54,50,48,0,37,115,10,10,
0,67,111,112,121,114,105,103,104,116,32,40,67,41,32,49,57,57,49,45,50,48,49,50,32,84,104,111,109,97,115,32,71,46,32,76,97,110,101,44,32,71,117,105,100,111,32,86,111,108,108,98,101,100,105,110,103,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,49,57,57,57,45,50,48,48,54,32,77,73,89,65,83,65,75,65,32,77,97,115,97,114,117,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,48,57,32,80,105,101,114,114,101,32],"i8",4,m.D+10240);B([79,115,115,109,97,110,32,102,111,114,32,67,101,110,100,105,
111,32,65,66,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,48,57,45,50,48,49,52,32,68,46,32,82,46,32,67,111,109,109,97,110,100,101,114,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,48,57,45,50,48,49,49,32,78,111,107,105,97,32,67,111,114,112,111,114,97,116,105,111,110,32,97,110,100,47,111,114,32,105,116,115,32,115,117,98,115,105,100,105,97,114,121,40,45,105,101,115,41,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,52,32,77,111,122,105,108,108,97,32,67,111,114,
112,111,114,97,116,105,111,110,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,51,45,50,48,49,52,32,77,73,80,83,32,84,101,99,104,110,111,108,111,103,105,101,115,44,32,73,110,99,46,10,67,111,112,121,114,105,103,104,116,32,40,67,41,32,50,48,49,51,32,76,105,110,97,114,111,32,76,105,109,105,116,101,100,0,69,109,117,108,97,116,105,110,103,32,84,104,101,32,73,110,100,101,112,101,110,100,101,110,116,32,74,80,69,71,32,71,114,111,117,112,39,115,32,115,111,102,116,119,97,114,101,44,32,118,101,
114,115,105,111,110,32,37,115,10,10,0,118,101,114,115,105,111,110,0,102,97,115,116,99,114,117,115,104,0,103,114,97,121,115,99,97,108,101,0,103,114,101,121,115,99,97,108,101,0,114,103,98,0,108,97,109,98,100,97,49,0,108,97,109,98,100,97,50,0,109,97,120,109,101,109,111,114,121,0,100,99,45,115,99,97,110,45,111,112,116,0,37,115,58,32,109,105,115,115,105,110,103,32,97,114,103,117,109,101,110,116,32,102,111,114,32,100,99,45,115,99,97,110,45,111,112,116,10,0,111,112,116,105,109,105,122,101,0,111,112,116,
105,109,105,115,101,0,111,117,116,102,105,108,101,0,37,115,58,32,109,105,115,115,105,110,103,32,97,114,103,117,109,101,110,116,32,102,111,114,32,111,117,116,102,105,108,101,10,0,112,114,111,103,114,101,115,115,105,118,101,0,109,101,109,100,115,116,0,113,117,97,108,105,116,121,0,37,115,58,32,109,105,115,115,105,110,103,32,97,114,103,117,109,101,110,116,32,102,111,114,32,113,117,97,108,105,116,121,10,0,113,115,108,111,116,115,0,113,116,97,98,108,101,115,0,113,117,97,110,116,45,116,97,98,108,101,0,37,
115,58,32,37,100,32,105,115,32,105,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,32,102,111,114,32,113,117,97,110,116,45,116,97,98,108,101,10,0,113,117,97,110,116,45,98,97,115,101,108,105,110,101,0,114,101,115,116,97,114,116,0,114,101,118,101,114,116,0,115,97,109,112,108,101,0,115,99,97,110,115,0,115,109,111,111,116,104,0,37,100,0,116,97,114,103,97,0,110,111,116,114,101,108,108,105,115,45,100,99,0,110,111,116,114,101,108,108,105,115,0,116,114,101,108,108,105,115,45,100,99,45,118,101,114,
45,119,101,105,103,104,116,0,37,115,58,32,109,105,115,115,105,110,103,32,97,114,103,117,109,101,110,116,32,102,111,114,32,116,114,101,108,108,105,115,45,100,99,45,118,101,114,45,119,101,105,103,104,116,10,0,116,114,101,108,108,105,115,45,100,99,0,116,117,110,101,45,112,115,110,114,0,116,117,110,101,45,115,115,105,109,0,116,117,110,101,45,109,115,45,115,115,105,109,0,116,117,110,101,45,104,118,115,45,112,115,110,114,0,110,111,111,118,101,114,115,104,111,111,116,0,37,115,58,32,117,110,107,110,111,119,
110,32,111,112,116,105,111,110,32,39,37,115,39,10,0,37,115,58,32,99,97,110,39,116,32,115,101,116,32,113,117,97,108,105,116,121,32,114,97,116,105,110,103,115,10,0,37,115,58,32,99,97,110,39,116,32,114,101,97,100,32,113,116,97,98,108,101,32,102,105,108,101,10,0,37,115,58,32,99,97,110,39,116,32,115,101,116,32,115,97,109,112,108,101,32,102,97,99,116,111,114,115,10,0,37,115,58,32,111,110,108,121,32,111,110,101,32,105,110,112,117,116,32,102,105,108,101,10,0,114,98,0,37,115,58,32,99,97,110,39,116,32,111,
112,101,110,32,37,115,10,0,119,98,0,67,111,109,112,114,101,115,115,101,100,32,115,105,122,101,58,32,32,37,108,117,32,98,121,116,101,115,10,0,71,73,70,32,105,110,112,117,116,32,105,115,32,117,110,115,117,112,112,111,114,116,101,100,32,102,111,114,32,108,101,103,97,108,32,114,101,97,115,111,110,115,46,32,32,83,111,114,114,121,46,10,0,114,0,67,97,110,39,116,32,111,112,101,110,32,116,97,98,108,101,32,102,105,108,101,32,37,115,10,0,84,111,111,32,109,97,110,121,32,116,97,98,108,101,115,32,105,110,32,102,
105,108,101,32,37,115,10,0,73,110,118,97,108,105,100,32,116,97,98,108,101,32,100,97,116,97,32,105,110,32,102,105,108,101,32,37,115,10,0,78,111,110,45,110,117,109,101,114,105,99,32,100,97,116,97,32,105,110,32,102,105,108,101,32,37,115,10,0,67,97,110,39,116,32,111,112,101,110,32,115,99,97,110,32,100,101,102,105,110,105,116,105,111,110,32,102,105,108,101,32,37,115,10,0,84,111,111,32,109,97,110,121,32,115,99,97,110,115,32,100,101,102,105,110,101,100,32,105,110,32,102,105,108,101,32,37,115,10,0,84,111,
111,32,109,97,110,121,32,99,111,109,112,111,110,101,110,116,115,32,105,110,32,111,110,101,32,115,99,97,110,32,105,110,32,102,105,108,101,32,37,115,10,0,73,110,118,97,108,105,100,32,115,99,97,110,32,101,110,116,114,121,32,102,111,114,109,97,116,32,105,110,32,102,105,108,101,32,37,115,10,0,37,102,37,99,0,37,100,37,99,0,74,80,69,71,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,115,32,97,114,101,32,110,117,109,98,101,114,101,100,32,48,46,46,37,100,10,0,37,100,37,99,37,100,37,99,
0,74,80,69,71,32,115,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,32,109,117,115,116,32,98,101,32,49,46,46,52,10,0,0,8,16,25,33,41,49,58,66,74,82,90,99,107,115,123,132,140,148,156,165,173,181,189,197,206,214,222,230,239,247,255,83,67,65,78,32,0,44,0,37,115,37,100,0,58,32,37,100,32,37,100,0,32,37,100,32,37,100,0,0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125,1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,
21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250,0,0,3,1,
1,1,1,1,1,1,1,1,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119,0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,
183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250,66,111,103,117,115,32,109,101,115,115,97,103,101,32,99,111,100,101,32,37,100,0,83,111,114,114,121,44,32,97,114,105,116,104,109,101,116,105,99,32,99,111,100,105,110,103,32,105,115,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,65,76,73,71,78,95,84,89,80,69,32,105,115,32,119,114,111,110,103,44,32,112,108,101,97,115,101,32,102,
105,120,0,77,65,88,95,65,76,76,79,67,95,67,72,85,78,75,32,105,115,32,119,114,111,110,103,44,32,112,108,101,97,115,101,32,102,105,120,0,66,111,103,117,115,32,98,117,102,102,101,114,32,99,111,110,116,114,111,108,32,109,111,100,101,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,73,68,32,37,100,32,105,110,32,83,79,83,0,68,67,84,32,99,111,101,102,102,105,99,105,101,110,116,32,111,117,116,32,111,102,32,114,97,110,103,101,0,73,68,67,84,32,111,117,116,112,117,116,32,98,108,111,99,107,
32,115,105,122,101,32,37,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,66,111,103,117,115,32,72,117,102,102,109,97,110,32,116,97,98,108,101,32,100,101,102,105,110,105,116,105,111,110,0,66,111,103,117,115,32,105,110,112,117,116,32,99,111,108,111,114,115,112,97,99,101,0,66,111,103,117,115,32,74,80,69,71,32,99,111,108,111,114,115,112,97,99,101,0,66,111,103,117,115,32,109,97,114,107,101,114,32,108,101,110,103,116,104,0,87,114,111,110,103,32,74,80,69,71,32,108,105,98,114,97,114,121,32,118,
101,114,115,105,111,110,58,32,108,105,98,114,97,114,121,32,105,115,32,37,100,44,32,99,97,108,108,101,114,32,101,120,112,101,99,116,115,32,37,100,0,83,97,109,112,108,105,110,103,32,102,97,99,116,111,114,115,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,105,110,116,101,114,108,101,97,118,101,100,32,115,99,97,110,0,73,110,118,97,108,105,100,32,109,101,109,111,114,121,32,112,111,111,108,32,99,111,100,101,32,37,100,0,85,110,115,117,112,112,111,114,116,101,100,32,74,80,69,71,32,100,97,116,97,32,
112,114,101,99,105,115,105,111,110,32,37,100,0,73,110,118,97,108,105,100,32,112,114,111,103,114,101,115,115,105,118,101,32,112,97,114,97,109,101,116,101,114,115,32,83,115,61,37,100,32,83,101,61,37,100,32,65,104,61,37,100,32,65,108,61,37,100,0,73,110,118,97,108,105,100,32,112,114,111,103,114,101,115,115,105,118,101,32,112,97,114,97,109,101,116,101,114,115,32,97,116,32,115,99,97,110,32,115,99,114,105,112,116,32,101,110,116,114,121,32,37,100,0,66,111,103,117,115,32,115,97,109,112,108,105,110,103,32,
102,97,99,116,111,114,115,0,73,110,118,97,108,105,100,32,115,99,97,110,32,115,99,114,105,112,116,32,97,116,32,101,110,116,114,121,32,37,100,0,73,109,112,114,111,112,101,114,32,99,97,108,108,32,116,111,32,74,80,69,71,32,108,105,98,114,97,114,121,32,105,110,32,115,116,97,116,101,32,37,100,0,74,80,69,71,32,112,97,114,97,109,101,116,101,114,32,115,116,114,117,99,116,32,109,105,115,109,97,116,99,104,58,32,108,105,98,114,97,114,121,32,116,104,105,110,107,115,32,115,105,122,101,32,105,115,32,37,117,44,32,
99,97,108,108,101,114,32,101,120,112,101,99,116,115,32,37,117,0,66,111,103,117,115,32,118,105,114,116,117,97,108,32,97,114,114,97,121,32,97,99,99,101,115,115,0,66,117,102,102,101,114,32,112,97,115,115,101,100,32,116,111,32,74,80,69,71,32,108,105,98,114,97,114,121,32,105,115,32,116,111,111,32,115,109,97,108,108,0,83,117,115,112,101,110,115,105,111,110,32,110,111,116,32,97,108,108,111,119,101,100,32,104,101,114,101,0,67,67,73,82,54,48,49,32,115,97,109,112,108,105,110,103,32,110,111,116,32,105,109,112,
108,101,109,101,110,116,101,100,32,121,101,116,0,84,111,111,32,109,97,110,121,32,99,111,108,111,114,32,99,111,109,112,111,110,101,110,116,115,58,32,37,100,44,32,109,97,120,32,37,100,0,85,110,115,117,112,112,111,114,116,101,100,32,99,111,108,111,114,32,99,111,110,118,101,114,115,105,111,110,32,114,101,113,117,101,115,116,0,66,111,103,117,115,32,68,65,67,32,105,110,100,101,120,32,37,100,0,66,111,103,117,115,32,68,65,67,32,118,97,108,117,101,32,48,120,37,120,0,66,111,103,117,115,32,68,72,84,32,105,110,
100,101,120,32,37,100,0,66,111,103,117,115,32,68,81,84,32,105,110,100,101,120,32,37,100,0,69,109,112,116,121,32,74,80,69,71,32,105,109,97,103,101,32,40,68,78,76,32,110,111,116,32,115,117,112,112,111,114,116,101,100,41,0,82,101,97,100,32,102,114,111,109,32,69,77,83,32,102,97,105,108,101,100,0,87,114,105,116,101,32,116,111,32,69,77,83,32,102,97,105,108,101,100,0,68,105,100,110,39,116,32,101,120,112,101,99,116,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,115,99,97,110,0,73,110,112,117,116,
32,102,105,108,101,32,114,101,97,100,32,101,114,114,111,114,0,79,117,116,112,117,116,32,102,105,108,101,32,119,114,105,116,101,32,101,114,114,111,114,32,45,45,45,32,111,117,116,32,111,102,32,100,105,115,107,32,115,112,97,99,101,63,0,70,114,97,99,116,105,111,110,97,108,32,115,97,109,112,108,105,110,103,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,32,121,101,116,0,72,117,102,102,109,97,110,32,99,111,100,101,32,115,105,122,101,32,116,97,98,108,101,32,111,118,101,114,102,108,111,119,
0,77,105,115,115,105,110,103,32,72,117,102,102,109,97,110,32,99,111,100,101,32,116,97,98,108,101,32,101,110,116,114,121,0,77,97,120,105,109,117,109,32,115,117,112,112,111,114,116,101,100,32,105,109,97,103,101,32,100,105,109,101,110,115,105,111,110,32,105,115,32,37,117,32,112,105,120,101,108,115,0,69,109,112,116,121,32,105,110,112,117,116,32,102,105,108,101,0,80,114,101,109,97,116,117,114,101,32,101,110,100,32,111,102,32,105,110,112,117,116,32,102,105,108,101,0,67,97,110,110,111,116,32,116,114,97,
110,115,99,111,100,101,32,100,117,101,32,116,111,32,109,117,108,116,105,112,108,101,32,117,115,101,32,111,102,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,32,37,100,0,83,99,97,110,32,115,99,114,105,112,116,32,100,111,101,115,32,110,111,116,32,116,114,97,110,115,109,105,116,32,97,108,108,32,100,97,116,97,0,73,110,118,97,108,105,100,32,99,111,108,111,114,32,113,117,97,110,116,105,122,97,116,105,111,110,32,109,111,100,101,32,99,104,97,110,103,101,0,78,111,116,32,105,109,112,
108,101,109,101,110,116,101,100,32,121,101,116,0,82,101,113,117,101,115,116,101,100,32,102,101,97,116,117,114,101,32,119,97,115,32,111,109,105,116,116,101,100,32,97,116,32,99,111,109,112,105,108,101,32,116,105,109,101,0,66,97,99,107,105,110,103,32,115,116,111,114,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,72,117,102,102,109,97,110,32,116,97,98,108,101,32,48,120,37,48,50,120,32,119,97,115,32,110,111,116,32,100,101,102,105,110,101,100,0,74,80,69,71,32,100,97,116,97,115,116,114,101,
97,109,32,99,111,110,116,97,105,110,115,32,110,111,32,105,109,97,103,101,0,81,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,32,48,120,37,48,50,120,32,119,97,115,32,110,111,116,32,100,101,102,105,110,101,100,0,78,111,116,32,97,32,74,80,69,71,32,102,105,108,101,58,32,115,116,97,114,116,115,32,119,105,116,104,32,48,120,37,48,50,120,32,48,120,37,48,50,120,0,73,110,115,117,102,102,105,99,105,101,110,116,32,109,101,109,111,114,121,32,40,99,97,115,101,32,37,100,41,0,67,97,110,110,111,116,
32,113,117,97,110,116,105,122,101,32,109,111,114,101,32,116,104,97,110,32,37,100,32,99,111,108,111,114,32,99,111,109,112,111,110,101,110,116,115,0,67,97,110,110,111,116,32,113,117,97,110,116,105,122,101,32,116,111,32,102,101,119,101,114,32,116,104,97,110,32,37,100,32,99,111,108,111,114,115,0,67,97,110,110,111,116,32,113,117,97,110,116,105,122,101,32,116,111,32,109,111,114,101,32,116,104,97,110,32,37,100,32,99,111,108,111,114,115,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,
116,114,117,99,116,117,114,101,58,32,116,119,111,32,83,79,70,32,109,97,114,107,101,114,115,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,114,101,58,32,109,105,115,115,105,110,103,32,83,79,83,32,109,97,114,107,101,114,0,85,110,115,117,112,112,111,114,116,101,100,32,74,80,69,71,32,112,114,111,99,101,115,115,58,32,83,79,70,32,116,121,112,101,32,48,120,37,48,50,120,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,
114,101,58,32,116,119,111,32,83,79,73,32,109,97,114,107,101,114,115,0,73,110,118,97,108,105,100,32,74,80,69,71,32,102,105,108,101,32,115,116,114,117,99,116,117,114,101,58,32,83,79,83,32,98,101,102,111,114,101,32,83,79,70,0,70,97,105,108,101,100,32,116,111,32,99,114,101,97,116,101,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,37,115,0,82,101,97,100,32,102,97,105,108,101,100,32,111,110,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,0,83,101,101,107,32,102,97,105,108,101,100,
32,111,110,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,0,87,114,105,116,101,32,102,97,105,108,101,100,32,111,110,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,45,45,45,32,111,117,116,32,111,102,32,100,105,115,107,32,115,112,97,99,101,63,0,65,112,112,108,105,99,97,116,105,111,110,32,116,114,97,110,115,102,101,114,114,101,100,32,116,111,111,32,102,101,119,32,115,99,97,110,108,105,110,101,115,0,85,110,115,117,112,112,111,114,116,101,100,32,109,97,114,107,101,114,32,116,121,
112,101,32,48,120,37,48,50,120,0,86,105,114,116,117,97,108,32,97,114,114,97,121,32,99,111,110,116,114,111,108,108,101,114,32,109,101,115,115,101,100,32,117,112,0,73,109,97,103,101,32,116,111,111,32,119,105,100,101,32,102,111,114,32,116,104,105,115,32,105,109,112,108,101,109,101,110,116,97,116,105,111,110,0,82,101,97,100,32,102,114,111,109,32,88,77,83,32,102,97,105,108,101,100,0,87,114,105,116,101,32,116,111,32,88,77,83,32,102,97,105,108,101,100,0,67,111,112,121,114,105,103,104,116,32,40,67,41,32,
49,57,57,49,45,50,48,49,52,32,84,104,101,32,108,105,98,106,112,101,103,45,116,117,114,98,111,32,80,114,111,106,101,99,116,32,97,110,100,32,109,97,110,121,32,111,116,104,101,114,115,0,54,98,32,32,50,55,45,77,97,114,45,49,57,57,56,0,67,97,117,116,105,111,110,58,32,113,117,97,110,116,105,122,97,116,105,111,110,32,116,97,98,108,101,115,32,97,114,101,32,116,111,111,32,99,111,97,114,115,101,32,102,111,114,32,98,97,115,101,108,105,110,101,32,74,80,69,71,0,65,100,111,98,101,32,65,80,80,49,52,32,109,97,114,
107,101,114,58,32,118,101,114,115,105,111,110,32,37,100,44,32,102,108,97,103,115,32,48,120,37,48,52,120,32,48,120,37,48,52,120,44,32,116,114,97,110,115,102,111,114,109,32,37,100,0,85,110,107,110,111,119,110,32,65,80,80,48,32,109,97,114,107,101,114,32,40,110,111,116,32,74,70,73,70,41,44,32,108,101,110,103,116,104,32,37,117,0,85,110,107,110,111,119,110,32,65,80,80,49,52,32,109,97,114,107,101,114,32,40,110,111,116,32,65,100,111,98,101,41,44,32,108,101,110,103,116,104,32,37,117,0,68,101,102,105,110,101,
32,65,114,105,116,104,109,101,116,105,99,32,84,97,98,108,101,32,48,120,37,48,50,120,58,32,48,120,37,48,50,120,0,68,101,102,105,110,101,32,72,117,102,102,109,97,110,32,84,97,98,108,101,32,48,120,37,48,50,120,0,68,101,102,105,110,101,32,81,117,97,110,116,105,122,97,116,105,111,110,32,84,97,98,108,101,32,37,100,32,32,112,114,101,99,105,115,105,111,110,32,37,100,0,68,101,102,105,110,101,32,82,101,115,116,97,114,116,32,73,110,116,101,114,118,97,108,32,37,117,0,70,114,101,101,100,32,69,77,83,32,104,97,
110,100,108,101,32,37,117,0,79,98,116,97,105,110,101,100,32,69,77,83,32,104,97,110,100,108,101,32,37,117,0,69,110,100,32,79,102,32,73,109,97,103,101,0,32,32,32,32,32,32,32,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,32,37,51,100,0,74,70,73,70,32,65,80,80,48,32,109,97,114,107,101,114,58,32,118,101,114,115,105,111,110,32,37,100,46,37,48,50,100,44,32,100,101,110,115,105,116,121,32,37,100,120,37,100,32,32,37,100,0,87,97,114,110,105,110,103,58,32,116,104,
117,109,98,110,97,105,108,32,105,109,97,103,101,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,100,97,116,97,32,108,101,110,103,116,104,32,37,117,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,116,121,112,101,32,48,120,37,48,50,120,44,32,108,101,110,103,116,104,32,37,117,0,32,32,32,32,119,105,116,104,32,37,100,32,120,32,37,100,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,0,77,105,115,99,101,108,108,97,110,101,111,117,
115,32,109,97,114,107,101,114,32,48,120,37,48,50,120,44,32,108,101,110,103,116,104,32,37,117,0,85,110,101,120,112,101,99,116,101,100,32,109,97,114,107,101,114,32,48,120,37,48,50,120,0,32,32,32,32,32,32,32,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,32,37,52,117,0,81,117,97,110,116,105,122,105,110,103,32,116,111,32,37,100,32,61,32,37,100,42,37,100,42,37,100,32,99,111,108,111,114,115,0,81,117,97,110,116,105,122,105,110,103,32,116,111,32,37,100,32,99,111,
108,111,114,115,0,83,101,108,101,99,116,101,100,32,37,100,32,99,111,108,111,114,115,32,102,111,114,32,113,117,97,110,116,105,122,97,116,105,111,110,0,65,116,32,109,97,114,107,101,114,32,48,120,37,48,50,120,44,32,114,101,99,111,118,101,114,121,32,97,99,116,105,111,110,32,37,100,0,82,83,84,37,100,0,83,109,111,111,116,104,105,110,103,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,119,105,116,104,32,110,111,110,115,116,97,110,100,97,114,100,32,115,97,109,112,108,105,110,103,32,114,97,116,105,
111,115,0,83,116,97,114,116,32,79,102,32,70,114,97,109,101,32,48,120,37,48,50,120,58,32,119,105,100,116,104,61,37,117,44,32,104,101,105,103,104,116,61,37,117,44,32,99,111,109,112,111,110,101,110,116,115,61,37,100,0,32,32,32,32,67,111,109,112,111,110,101,110,116,32,37,100,58,32,37,100,104,120,37,100,118,32,113,61,37,100,0,83,116,97,114,116,32,111,102,32,73,109,97,103,101,0,83,116,97,114,116,32,79,102,32,83,99,97,110,58,32,37,100,32,99,111,109,112,111,110,101,110,116,115,0,32,32,32,32,67,111,109,112,
111,110,101,110,116,32,37,100,58,32,100,99,61,37,100,32,97,99,61,37,100,0,32,32,83,115,61,37,100,44,32,83,101,61,37,100,44,32,65,104,61,37,100,44,32,65,108,61,37,100,0,67,108,111,115,101,100,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,37,115,0,79,112,101,110,101,100,32,116,101,109,112,111,114,97,114,121,32,102,105,108,101,32,37,115,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,74,80,69,71,45,99,111,109,112,114,101,115,115,101,100,32,116,104,117,
109,98,110,97,105,108,32,105,109,97,103,101,44,32,108,101,110,103,116,104,32,37,117,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,112,97,108,101,116,116,101,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,44,32,108,101,110,103,116,104,32,37,117,0,74,70,73,70,32,101,120,116,101,110,115,105,111,110,32,109,97,114,107,101,114,58,32,82,71,66,32,116,104,117,109,98,110,97,105,108,32,105,109,97,103,101,44,32,108,101,110,103,116,104,32,37,117,0,85,110,114,
101,99,111,103,110,105,122,101,100,32,99,111,109,112,111,110,101,110,116,32,73,68,115,32,37,100,32,37,100,32,37,100,44,32,97,115,115,117,109,105,110,103,32,89,67,98,67,114,0,70,114,101,101,100,32,88,77,83,32,104,97,110,100,108,101,32,37,117,0,79,98,116,97,105,110,101,100,32,88,77,83,32,104,97,110,100,108,101,32,37,117,0,85,110,107,110,111,119,110,32,65,100,111,98,101,32,99,111,108,111,114,32,116,114,97,110,115,102,111,114,109,32,99,111,100,101,32,37,100,0,73,110,99,111,110,115,105,115,116,101,110,
116,32,112,114,111,103,114,101,115,115,105,111,110,32,115,101,113,117,101,110,99,101,32,102,111,114,32,99,111,109,112,111,110,101,110,116,32,37,100,32,99,111,101,102,102,105,99,105,101,110,116,32,37,100,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,37,117,32,101,120,116,114,97,110,101,111,117,115,32,98,121,116,101,115,32,98,101,102,111,114,101,32,109,97,114,107,101,114,32,48,120,37,48,50,120,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,112,114,101,109,97,
116,117,114,101,32,101,110,100,32,111,102,32,100,97,116,97,32,115,101,103,109,101,110,116,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,98,97,100,32,72,117,102,102,109,97,110,32,99,111,100,101,0,87,97,114,110,105,110,103,58,32,117,110,107,110,111,119,110,32,74,70,73,70,32,114,101,118,105,115,105,111,110,32,110,117,109,98,101,114,32,37,100,46,37,48,50,100,0,80,114,101,109,97,116,117,114,101,32,101,110,100,32,111,102,32,74,80,69,71,32,102,105,108,101,0,67,111,114,114,117,112,116,
32,74,80,69,71,32,100,97,116,97,58,32,102,111,117,110,100,32,109,97,114,107,101,114,32,48,120,37,48,50,120,32,105,110,115,116,101,97,100,32,111,102,32,82,83,84,37,100,0,73,110,118,97,108,105,100,32,83,79,83,32,112,97,114,97,109,101,116,101,114,115,32,102,111,114,32,115,101,113,117,101,110,116,105,97,108,32,74,80,69,71,0,65,112,112,108,105,99,97,116,105,111,110,32,116,114,97,110,115,102,101,114,114,101,100,32,116,111,111,32,109,97,110,121,32,115,99,97,110,108,105,110,101,115,0,73,110,118,97,108,105,
100,32,99,114,111,112,32,114,101,113,117,101,115,116,0,65,114,105,116,104,109,101,116,105,99,32,116,97,98,108,101,32,48,120,37,48,50,120,32,119,97,115,32,110,111,116,32,100,101,102,105,110,101,100,0,67,111,114,114,117,112,116,32,74,80,69,71,32,100,97,116,97,58,32,98,97,100,32,97,114,105,116,104,109,101,116,105,99,32,99,111,100,101,0,66,111,103,117,115,32,112,97,114,97,109,101,116,101,114,0,66,111,103,117,115,32,112,97,114,97,109,101,116,101,114,32,118,97,108,117,101,0,73,47,79,32,115,117,115,112,
101,110,115,105,111,110,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,105,110,32,115,99,97,110,32,111,112,116,105,109,105,122,97,116,105,111,110,0,37,115,10,0,0,192,48,240,12,204,60,252,3,195,51,243,15,207,63,255,128,64,176,112,140,76,188,124,131,67,179,115,143,79,191,127,32,224,16,208,44,236,28,220,35,227,19,211,47,239,31,223,160,96,144,80,172,108,156,92,163,99,147,83,175,111,159,95,8,200,56,248,4,196,52,244,11,203,59,251,7,199,55,247,136,72,184,120,132,68,180,116,139,75,187,123,135,71,
183,119,40,232,24,216,36,228,20,212,43,235,27,219,39,231,23,215,168,104,152,88,164,100,148,84,171,107,155,91,167,103,151,87,2,194,50,242,14,206,62,254,1,193,49,241,13,205,61,253,130,66,178,114,142,78,190,126,129,65,177,113,141,77,189,125,34,226,18,210,46,238,30,222,33,225,17,209,45,237,29,221,162,98,146,82,174,110,158,94,161,97,145,81,173,109,157,93,10,202,58,250,6,198,54,246,9,201,57,249,5,197,53,245,138,74,186,122,134,70,182,118,137,73,185,121,133,69,181,117,42,234,26,218,38,230,22,214,41,233,25,
217,37,229,21,213,170,106,154,90,166,102,150,86,169,105,153,89,165,101,149,85,74,80,69,71,77,69,77,0,37,108,100,37,99,0,0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,
8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,
9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12],"i8",4,m.D+20480);B([12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14],"i8",4,m.D+30720);B([14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15],"i8",4,m.D+40960);B([15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16],"i8",4,m.D+51200);B([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16],"i8",4,m.D+61440);B([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16],"i8",4,m.D+71680);B([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16],"i8",4,m.D+81920);B([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0,
0,1,2,3,4,5,6,7,8,9,10,11,0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125,1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,
199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250,0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119,0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,
120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,
95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,
99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,
116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,
116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,
100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,
111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,
99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,
101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,
117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,
32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,
112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,
0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,
32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,
105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,78,65,78,0,46,0,114,119,97,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,105,110,102,105,110,105,116,121,0,110,97,110,0],"i8",4,m.D+92160);E=z;z+=16;e._i64Subtract=ra;var g={l:1,A:2,Ae:3,yd:4,L:5,gb:6,Qc:7,Wd:8,C:9,dd:10,eb:11,Ke:11,Ib:12,ea:13,rd:14,he:15,Q:16,fb:17,Kb:18,fa:19,X:20,
W:21,g:22,Rd:23,Hb:24,ga:25,He:26,sd:27,de:28,sa:29,xe:30,Kd:31,qe:32,od:33,ue:34,$d:42,vd:43,ed:44,Bd:45,Cd:46,Dd:47,Jd:48,Ie:49,Ud:50,Ad:51,ld:35,Xd:37,Wc:52,Zc:53,Le:54,Sd:55,$c:56,ad:57,md:35,bd:59,fe:60,Vd:61,Ee:62,ee:63,ae:64,be:65,we:66,Yd:67,Tc:68,Be:69,gd:70,re:71,Md:72,pd:73,Yc:74,me:76,Xc:77,ve:78,Ed:79,Fd:80,Id:81,Hd:82,Gd:83,ge:38,Ia:39,Nd:36,Ha:40,Jb:95,pe:96,kd:104,Td:105,Uc:97,te:91,ke:88,ce:92,ye:108,jd:111,Rc:98,hd:103,Qd:101,Od:100,Fe:110,td:112,ud:113,xd:115,Vc:114,nd:89,Ld:90,
se:93,ze:94,Sc:99,Pd:102,zd:106,ie:107,Ge:109,Je:87,qd:122,Ce:116,le:95,Zd:123,wd:84,ne:75,cd:125,je:131,oe:130,De:86};e._memset=Xa;e._bitshift64Lshr=Ya;var Ea=z,z=z+16,M={};e._bitshift64Shl=Za;var $a={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",
14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",
36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",
56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",
76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",
93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",
109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"},l={Bb:function(a){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1)},Va:function(a,b){for(var d=0,c=a.length-1;0<=c;c--){var f=
a[c];"."===f?a.splice(c,1):".."===f?(a.splice(c,1),d++):d&&(a.splice(c,1),d--)}if(b)for(;d--;d)a.unshift("..");return a},normalize:function(a){var b="/"===a.charAt(0),d="/"===a.substr(-1);(a=l.Va(a.split("/").filter(function(a){return!!a}),!b).join("/"))||b||(a=".");a&&d&&(a+="/");return(b?"/":"")+a},dirname:function(a){var b=l.Bb(a);a=b[0];b=b[1];if(!a&&!b)return".";b&&(b=b.substr(0,b.length-1));return a+b},basename:function(a){if("/"===a)return"/";var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+
1)},extname:function(a){return l.Bb(a)[3]},join:function(){var a=Array.prototype.slice.call(arguments,0);return l.normalize(a.join("/"))},o:function(a,b){return l.normalize(a+"/"+b)},resolve:function(){for(var a="",b=!1,d=arguments.length-1;-1<=d&&!b;d--){b=0<=d?arguments[d]:c.cwd();if("string"!==typeof b)throw new TypeError("Arguments to path.resolve must be strings");if(!b)return"";a=b+"/"+a;b="/"===b.charAt(0)}a=l.Va(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||
"."},relative:function(a,b){function d(a){for(var b=0;b<a.length&&""===a[b];b++);for(var d=a.length-1;0<=d&&""===a[d];d--);return b>d?[]:a.slice(b,d-b+1)}a=l.resolve(a).substr(1);b=l.resolve(b).substr(1);for(var c=d(a.split("/")),f=d(b.split("/")),k=Math.min(c.length,f.length),e=k,g=0;g<k;g++)if(c[g]!==f[g]){e=g;break}k=[];for(g=e;g<c.length;g++)k.push("..");k=k.concat(f.slice(e));return k.join("/")}},Q={Gb:[],O:function(){},If:function(){},register:function(a,b){Q.Gb[a]={input:[],output:[],aa:b};
c.ab(a,Q.f)},f:{open:function(a){var b=Q.Gb[a.d.rdev];if(!b)throw new c.b(g.fa);a.tty=b;a.seekable=!1},close:function(a){a.tty.aa.flush(a.tty)},flush:function(a){a.tty.aa.flush(a.tty)},read:function(a,b,d,h){if(!a.tty||!a.tty.aa.vb)throw new c.b(g.gb);for(var f=0,k=0;k<h;k++){var e;try{e=a.tty.aa.vb(a.tty)}catch(w){throw new c.b(g.L);}if(void 0===e&&0===f)throw new c.b(g.eb);if(null===e||void 0===e)break;f++;b[d+k]=e}f&&(a.d.timestamp=Date.now());return f},write:function(a,b,d,h){if(!a.tty||!a.tty.aa.Xa)throw new c.b(g.gb);
for(var f=0;f<h;f++)try{a.tty.aa.Xa(a.tty,b[d+f])}catch(k){throw new c.b(g.L);}h&&(a.d.timestamp=Date.now());return f}},ac:{vb:function(a){if(!a.input.length){var b=null;"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),null!==b&&(b+="\n")):"function"==typeof readline&&(b=readline(),null!==b&&(b+="\n"));if(!b)return null;a.input=T(b,!0)}return a.input.shift()},Xa:function(a,b){null===b||10===b?(e.print(Y(a.output)),a.output=[]):0!=b&&a.output.push(b)},flush:function(a){a.output&&
0<a.output.length&&(e.print(Y(a.output)),a.output=[])}},$b:{Xa:function(a,b){null===b||10===b?(e.printErr(Y(a.output)),a.output=[]):0!=b&&a.output.push(b)},flush:function(a){a.output&&0<a.output.length&&(e.printErr(Y(a.output)),a.output=[])}}},n={H:null,i:function(){return n.createNode(null,"/",16895,0)},createNode:function(a,b,d,h){if(c.pc(d)||c.isFIFO(d))throw new c.b(g.l);n.H||(n.H={dir:{d:{s:n.e.s,m:n.e.m,lookup:n.e.lookup,u:n.e.u,rename:n.e.rename,unlink:n.e.unlink,rmdir:n.e.rmdir,readdir:n.e.readdir,
symlink:n.e.symlink},stream:{t:n.f.t}},file:{d:{s:n.e.s,m:n.e.m},stream:{t:n.f.t,read:n.f.read,write:n.f.write,ia:n.f.ia,ka:n.f.ka,$:n.f.$}},link:{d:{s:n.e.s,m:n.e.m,readlink:n.e.readlink},stream:{}},kb:{d:{s:n.e.s,m:n.e.m},stream:c.Rb}});d=c.createNode(a,b,d,h);c.k(d.mode)?(d.e=n.H.dir.d,d.f=n.H.dir.stream,d.c={}):c.isFile(d.mode)?(d.e=n.H.file.d,d.f=n.H.file.stream,d.j=0,d.c=null):c.Z(d.mode)?(d.e=n.H.link.d,d.f=n.H.link.stream):c.Ba(d.mode)&&(d.e=n.H.kb.d,d.f=n.H.kb.stream);d.timestamp=Date.now();
a&&(a.c[b]=d);return d},ic:function(a){if(a.c&&a.c.subarray){for(var b=[],d=0;d<a.j;++d)b.push(a.c[d]);return b}return a.c},jc:function(a){return a.c?a.c.subarray?a.c.subarray(0,a.j):new Uint8Array(a.c):new Uint8Array},qb:function(a,b){a.c&&a.c.subarray&&b>a.c.length&&(a.c=n.ic(a),a.j=a.c.length);if(!a.c||a.c.subarray){var d=a.c?a.c.buffer.byteLength:0;d>=b||(b=Math.max(b,d*(1048576>d?2:1.125)|0),0!=d&&(b=Math.max(b,256)),d=a.c,a.c=new Uint8Array(b),0<a.j&&a.c.set(d.subarray(0,a.j),0))}else for(!a.c&&
0<b&&(a.c=[]);a.c.length<b;)a.c.push(0)},Gc:function(a,b){if(a.j!=b)if(0==b)a.c=null,a.j=0;else{if(!a.c||a.c.subarray){var d=a.c;a.c=new Uint8Array(new ArrayBuffer(b));d&&a.c.set(d.subarray(0,Math.min(b,a.j)))}else if(a.c||(a.c=[]),a.c.length>b)a.c.length=b;else for(;a.c.length<b;)a.c.push(0);a.j=b}},e:{s:function(a){var b={};b.dev=c.Ba(a.mode)?a.id:1;b.ino=a.id;b.mode=a.mode;b.nlink=1;b.uid=0;b.gid=0;b.rdev=a.rdev;c.k(a.mode)?b.size=4096:c.isFile(a.mode)?b.size=a.j:c.Z(a.mode)?b.size=a.link.length:
b.size=0;b.atime=new Date(a.timestamp);b.mtime=new Date(a.timestamp);b.ctime=new Date(a.timestamp);b.M=4096;b.blocks=Math.ceil(b.size/b.M);return b},m:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp);void 0!==b.size&&n.Gc(a,b.size)},lookup:function(){throw c.Pa[g.A];},u:function(a,b,d,c){return n.createNode(a,b,d,c)},rename:function(a,b,d){if(c.k(a.mode)){var h;try{h=c.K(b,d)}catch(f){}if(h)for(var k in h.c)throw new c.b(g.Ia);}delete a.parent.c[a.name];
a.name=d;b.c[d]=a;a.parent=b},unlink:function(a,b){delete a.c[b]},rmdir:function(a,b){var d=c.K(a,b),h;for(h in d.c)throw new c.b(g.Ia);delete a.c[b]},readdir:function(a){var b=[".",".."],d;for(d in a.c)a.c.hasOwnProperty(d)&&b.push(d);return b},symlink:function(a,b,d){a=n.createNode(a,b,41471,0);a.link=d;return a},readlink:function(a){if(!c.Z(a.mode))throw new c.b(g.g);return a.link}},f:{read:function(a,b,d,c,f){var k=a.d.c;if(f>=a.d.j)return 0;a=Math.min(a.d.j-f,c);x(0<=a);if(8<a&&k.subarray)b.set(k.subarray(f,
f+a),d);else for(c=0;c<a;c++)b[d+c]=k[f+c];return a},write:function(a,b,d,c,f,k){if(!c)return 0;a=a.d;a.timestamp=Date.now();if(b.subarray&&(!a.c||a.c.subarray)){if(k)return a.c=b.subarray(d,d+c),a.j=c;if(0===a.j&&0===f)return a.c=new Uint8Array(b.subarray(d,d+c)),a.j=c;if(f+c<=a.j)return a.c.set(b.subarray(d,d+c),f),c}n.qb(a,f+c);if(a.c.subarray&&b.subarray)a.c.set(b.subarray(d,d+c),f);else for(k=0;k<c;k++)a.c[f+k]=b[d+k];a.j=Math.max(a.j,f+c);return c},t:function(a,b,d){1===d?b+=a.position:2===
d&&c.isFile(a.d.mode)&&(b+=a.d.j);if(0>b)throw new c.b(g.g);return b},ia:function(a,b,d){n.qb(a.d,b+d);a.d.j=Math.max(a.d.j,b+d)},ka:function(a,b,d,h,f,k,e){if(!c.isFile(a.d.mode))throw new c.b(g.fa);d=a.d.c;if(e&2||d.buffer!==b&&d.buffer!==b.buffer){if(0<f||f+h<a.d.j)d.subarray?d=d.subarray(f,f+h):d=Array.prototype.slice.call(d,f,f+h);a=!0;h=X(h);if(!h)throw new c.b(g.Ib);b.set(d,h)}else a=!1,h=d.byteOffset;return{Gf:h,Pe:a}},$:function(a,b,d,h,f){if(!c.isFile(a.d.mode))throw new c.b(g.fa);if(f&
2)return 0;n.f.write(a,b,0,h,d,!1);return 0}}},y={nb:{},indexedDB:function(){if("undefined"!==typeof indexedDB)return indexedDB;var a=null;"object"===typeof window&&(a=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB);x(a,"IDBFS used, but indexedDB not supported");return a},ra:21,p:"FILE_DATA",i:function(a){return n.i.apply(null,arguments)},bb:function(a,b,d){y.kc(a,function(c,f){if(c)return d(c);y.mc(a,function(a,c){if(a)return d(a);y.Cc(b?c:f,b?f:c,d)})})},gc:function(a,
b){var d=y.nb[a];if(d)return b(null,d);var c;try{c=y.indexedDB().open(a,y.ra)}catch(f){return b(f)}c.onupgradeneeded=function(a){var b=a.target.result;a=a.target.transaction;b=b.objectStoreNames.contains(y.p)?a.objectStore(y.p):b.createObjectStore(y.p);b.indexNames.contains("timestamp")||b.createIndex("timestamp","timestamp",{unique:!1})};c.onsuccess=function(){d=c.result;y.nb[a]=d;b(null,d)};c.onerror=function(a){b(this.error);a.preventDefault()}},kc:function(a,b){function d(a){return"."!==a&&".."!==
a}function h(a){return function(b){return l.o(a,b)}}for(var f={},e=c.readdir(a.ma).filter(d).map(h(a.ma));e.length;){var g=e.pop(),w;try{w=c.stat(g)}catch(v){return b(v)}c.k(w.mode)&&e.push.apply(e,c.readdir(g).filter(d).map(h(g)));f[g]={timestamp:w.mtime}}return b(null,{type:"local",entries:f})},mc:function(a,b){var d={};y.gc(a.ma,function(a,c){if(a)return b(a);var e=c.transaction([y.p],"readonly");e.onerror=function(a){b(this.error);a.preventDefault()};e.objectStore(y.p).index("timestamp").openKeyCursor().onsuccess=
function(a){a=a.target.result;if(!a)return b(null,{type:"remote",db:c,entries:d});d[a.primaryKey]={timestamp:a.key};a.continue()}})},rc:function(a,b){var d,h;try{h=c.h(a).d,d=c.stat(a)}catch(f){return b(f)}return c.k(d.mode)?b(null,{timestamp:d.mtime,mode:d.mode}):c.isFile(d.mode)?(h.c=n.jc(h),b(null,{timestamp:d.mtime,mode:d.mode,c:h.c})):b(Error("node type not supported"))},Lc:function(a,b,d){try{if(c.k(b.mode))c.mkdir(a,b.mode);else if(c.isFile(b.mode))c.writeFile(a,b.c,{encoding:"binary",jb:!0});
else return d(Error("node type not supported"));c.chmod(a,b.mode);c.Oc(a,b.timestamp,b.timestamp)}catch(h){return d(h)}d(null)},Ec:function(a,b){try{c.h(a);var d=c.stat(a);c.k(d.mode)?c.rmdir(a):c.isFile(d.mode)&&c.unlink(a)}catch(h){return b(h)}b(null)},sc:function(a,b,d){a=a.get(b);a.onsuccess=function(a){d(null,a.target.result)};a.onerror=function(a){d(this.error);a.preventDefault()}},Mc:function(a,b,d,c){a=a.put(d,b);a.onsuccess=function(){c(null)};a.onerror=function(a){c(this.error);a.preventDefault()}},
Fc:function(a,b,d){a=a.delete(b);a.onsuccess=function(){d(null)};a.onerror=function(a){d(this.error);a.preventDefault()}},Cc:function(a,b,d){function c(a){if(a){if(!c.J)return c.J=!0,d(a)}else if(++w>=f)return d(null)}var f=0,e=[];Object.keys(a.entries).forEach(function(d){var c=a.entries[d],h=b.entries[d];if(!h||c.timestamp>h.timestamp)e.push(d),f++});var g=[];Object.keys(b.entries).forEach(function(b){a.entries[b]||(g.push(b),f++)});if(!f)return d(null);var w=0,v=("remote"===a.type?a.db:b.db).transaction([y.p],
"readwrite"),l=v.objectStore(y.p);v.onerror=function(a){c(this.error);a.preventDefault()};e.sort().forEach(function(a){"local"===b.type?y.sc(l,a,function(b,d){if(b)return c(b);y.Lc(a,d,c)}):y.rc(a,function(b,d){if(b)return c(b);y.Mc(l,a,d,c)})});g.sort().reverse().forEach(function(a){"local"===b.type?y.Ec(a,c):y.Fc(l,a,c)})}},u={Da:!1,Eb:function(){u.Da=!!process.platform.match(/^win/)},i:function(a){x(!1);return u.createNode(null,"/",u.R(a.ba.root),0)},createNode:function(a,b,d){if(!c.k(d)&&!c.isFile(d)&&
!c.Z(d))throw new c.b(g.g);a=c.createNode(a,b,d);a.e=u.e;a.f=u.f;return a},R:function(a){var b;try{b=(void 0).lstatSync(a),u.Da&&(b.mode=b.mode|(b.mode&146)>>1)}catch(d){if(!d.code)throw d;throw new c.b(g[d.code]);}return b.mode},v:function(a){for(var b=[];a.parent!==a;)b.push(a.name),a=a.parent;b.push(a.i.ba.root);b.reverse();return l.join.apply(null,b)},rb:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",
1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},ya:function(a){a&=-557057;if(a in u.rb)return u.rb[a];throw new c.b(g.g);},e:{s:function(a){a=u.v(a);var b;try{b=(void 0).lstatSync(a)}catch(d){if(!d.code)throw d;throw new c.b(g[d.code]);}u.Da&&!b.M&&(b.M=4096);u.Da&&!b.blocks&&(b.blocks=(b.size+b.M-1)/b.M|0);return{dev:b.dev,ino:b.ino,mode:b.mode,nlink:b.nlink,uid:b.uid,gid:b.gid,rdev:b.rdev,size:b.size,atime:b.atime,mtime:b.mtime,ctime:b.ctime,M:b.M,blocks:b.blocks}},m:function(a,
b){var d=u.v(a);try{void 0!==b.mode&&((void 0).chmodSync(d,b.mode),a.mode=b.mode),void 0!==b.size&&(void 0).truncateSync(d,b.size)}catch(h){if(!h.code)throw h;throw new c.b(g[h.code]);}},lookup:function(a,b){var d=l.o(u.v(a),b),d=u.R(d);return u.createNode(a,b,d)},u:function(a,b,d,h){a=u.createNode(a,b,d,h);b=u.v(a);try{c.k(a.mode)?(void 0).mkdirSync(b,a.mode):(void 0).writeFileSync(b,"",{mode:a.mode})}catch(f){if(!f.code)throw f;throw new c.b(g[f.code]);}return a},rename:function(a,b,d){a=u.v(a);
b=l.o(u.v(b),d);try{(void 0).renameSync(a,b)}catch(h){if(!h.code)throw h;throw new c.b(g[h.code]);}},unlink:function(a,b){var d=l.o(u.v(a),b);try{(void 0).unlinkSync(d)}catch(h){if(!h.code)throw h;throw new c.b(g[h.code]);}},rmdir:function(a,b){var d=l.o(u.v(a),b);try{(void 0).rmdirSync(d)}catch(h){if(!h.code)throw h;throw new c.b(g[h.code]);}},readdir:function(a){a=u.v(a);try{return(void 0).readdirSync(a)}catch(b){if(!b.code)throw b;throw new c.b(g[b.code]);}},symlink:function(a,b,d){a=l.o(u.v(a),
b);try{(void 0).symlinkSync(d,a)}catch(h){if(!h.code)throw h;throw new c.b(g[h.code]);}},readlink:function(a){var b=u.v(a);try{return b=(void 0).readlinkSync(b),b=(void 0).relative((void 0).resolve(a.i.ba.root),b)}catch(d){if(!d.code)throw d;throw new c.b(g[d.code]);}}},f:{open:function(a){var b=u.v(a.d);try{c.isFile(a.d.mode)&&(a.oa=(void 0).openSync(b,u.ya(a.flags)))}catch(d){if(!d.code)throw d;throw new c.b(g[d.code]);}},close:function(a){try{c.isFile(a.d.mode)&&a.oa&&(void 0).closeSync(a.oa)}catch(b){if(!b.code)throw b;
throw new c.b(g[b.code]);}},read:function(a,b,d,h,f){if(0===h)return 0;var e=new Buffer(h),t;try{t=(void 0).readSync(a.oa,e,0,h,f)}catch(w){throw new c.b(g[w.code]);}if(0<t)for(a=0;a<t;a++)b[d+a]=e[a];return t},write:function(a,b,d,h,f){b=new Buffer(b.subarray(d,d+h));var e;try{e=(void 0).writeSync(a.oa,b,0,h,f)}catch(t){throw new c.b(g[t.code]);}return e},t:function(a,b,d){if(1===d)b+=a.position;else if(2===d&&c.isFile(a.d.mode))try{b+=(void 0).fstatSync(a.oa).size}catch(h){throw new c.b(g[h.code]);
}if(0>b)throw new c.b(g.g);return b}}},A={Ga:16895,ha:33279,Za:null,i:function(a){function b(a){a=a.split("/");for(var b=c,d=0;d<a.length-1;d++){var e=a.slice(0,d+1).join("/");f[e]||(f[e]=A.createNode(b,e,A.Ga,0));b=f[e]}return b}function d(a){a=a.split("/");return a[a.length-1]}x(!1);A.Za||(A.Za=new FileReaderSync);var c=A.createNode(null,"/",A.Ga,0),f={};Array.prototype.forEach.call(a.ba.files||[],function(a){A.createNode(b(a.name),d(a.name),A.ha,0,a,a.lastModifiedDate)});(a.ba.blobs||[]).forEach(function(a){A.createNode(b(a.name),
d(a.name),A.ha,0,a.data)});(a.ba.packages||[]).forEach(function(a){a.metadata.files.forEach(function(c){var h=c.filename.substr(1);A.createNode(b(h),d(h),A.ha,0,a.blob.slice(c.start,c.end))})});return c},createNode:function(a,b,d,h,f,e){h=c.createNode(a,b,d);h.mode=d;h.e=A.e;h.f=A.f;h.timestamp=(e||new Date).getTime();x(A.ha!==A.Ga);d===A.ha?(h.size=f.size,h.c=f):(h.size=4096,h.c={});a&&(a.c[b]=h);return h},e:{s:function(a){return{dev:1,ino:void 0,mode:a.mode,nlink:1,uid:0,gid:0,rdev:void 0,size:a.size,
atime:new Date(a.timestamp),mtime:new Date(a.timestamp),ctime:new Date(a.timestamp),M:4096,blocks:Math.ceil(a.size/4096)}},m:function(a,b){void 0!==b.mode&&(a.mode=b.mode);void 0!==b.timestamp&&(a.timestamp=b.timestamp)},lookup:function(){throw new c.b(g.A);},u:function(){throw new c.b(g.l);},rename:function(){throw new c.b(g.l);},unlink:function(){throw new c.b(g.l);},rmdir:function(){throw new c.b(g.l);},readdir:function(){throw new c.b(g.l);},symlink:function(){throw new c.b(g.l);},readlink:function(){throw new c.b(g.l);
}},f:{read:function(a,b,d,c,f){if(f>=a.d.size)return 0;a=a.d.c.slice(f,f+c);c=A.Za.readAsArrayBuffer(a);b.set(new Uint8Array(c),d);return a.size},write:function(){throw new c.b(g.L);},t:function(a,b,d){1===d?b+=a.position:2===d&&c.isFile(a.d.mode)&&(b+=a.d.size);if(0>b)throw new c.b(g.g);return b}}},z=z+16,z=z+16,z=z+16,c={root:null,na:[],ob:[null],da:[],wc:1,G:null,mb:"/",Aa:!1,yb:!0,n:{},Fb:{Ab:{Mb:1,Nb:2}},b:null,Pa:{},ec:null,pa:0,tf:function(a){if(!(a instanceof c.b))throw a+" : "+wa(ya());return U(a.q)},
h:function(a,b){a=l.resolve(c.cwd(),a);b=b||{};if(!a)return{path:"",d:null};var d={Na:!0,$a:0},h;for(h in d)void 0===b[h]&&(b[h]=d[h]);if(8<b.$a)throw new c.b(g.Ha);var d=l.Va(a.split("/").filter(function(a){return!!a}),!1),f=c.root;h="/";for(var e=0;e<d.length;e++){var t=e===d.length-1;if(t&&b.parent)break;f=c.K(f,d[e]);h=l.o(h,d[e]);c.T(f)&&(!t||t&&b.Na)&&(f=f.la.root);if(!t||b.B)for(t=0;c.Z(f.mode);)if(f=c.readlink(h),h=l.resolve(l.dirname(h),f),f=c.h(h,{$a:b.$a}).d,40<t++)throw new c.b(g.Ha);
}return{path:h,d:f}},F:function(a){for(var b;;){if(c.Ca(a))return a=a.i.ma,b?"/"!==a[a.length-1]?a+"/"+b:a+b:a;b=b?a.name+"/"+b:a.name;a=a.parent}},Ra:function(a,b){for(var d=0,h=0;h<b.length;h++)d=(d<<5)-d+b.charCodeAt(h)|0;return(a+d>>>0)%c.G.length},wb:function(a){var b=c.Ra(a.parent.id,a.name);a.V=c.G[b];c.G[b]=a},xb:function(a){var b=c.Ra(a.parent.id,a.name);if(c.G[b]===a)c.G[b]=a.V;else for(b=c.G[b];b;){if(b.V===a){b.V=a.V;break}b=b.V}},K:function(a,b){var d=c.tc(a);if(d)throw new c.b(d,a);
for(d=c.G[c.Ra(a.id,b)];d;d=d.V){var h=d.name;if(d.parent.id===a.id&&h===b)return d}return c.lookup(a,b)},createNode:function(a,b,d,h){c.ta||(c.ta=function(a,b,d,h){a||(a=this);this.parent=a;this.i=a.i;this.la=null;this.id=c.wc++;this.name=b;this.mode=d;this.e={};this.f={};this.rdev=h},c.ta.prototype={},Object.defineProperties(c.ta.prototype,{read:{get:function(){return 365===(this.mode&365)},set:function(a){a?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146===(this.mode&146)},set:function(a){a?
this.mode|=146:this.mode&=-147}},qc:{get:function(){return c.k(this.mode)}},zb:{get:function(){return c.Ba(this.mode)}}}));a=new c.ta(a,b,d,h);c.wb(a);return a},Ma:function(a){c.xb(a)},Ca:function(a){return a===a.parent},T:function(a){return!!a.la},isFile:function(a){return 32768===(a&61440)},k:function(a){return 16384===(a&61440)},Z:function(a){return 40960===(a&61440)},Ba:function(a){return 8192===(a&61440)},pc:function(a){return 24576===(a&61440)},isFIFO:function(a){return 4096===(a&61440)},isSocket:function(a){return 49152===
(a&49152)},fc:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},vc:function(a){var b=c.fc[a];if("undefined"===typeof b)throw Error("Unknown file open mode: "+a);return b},ya:function(a){var b=["r","w","rw"][a&3];a&512&&(b+="w");return b},P:function(a,b){if(c.yb)return 0;if(-1===b.indexOf("r")||a.mode&292){if(-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73))return g.ea}else return g.ea;return 0},tc:function(a){var b=
c.P(a,"x");return b?b:a.e.lookup?0:g.ea},Ua:function(a,b){try{return c.K(a,b),g.fb}catch(d){}return c.P(a,"wx")},Ea:function(a,b,d){var h;try{h=c.K(a,b)}catch(f){return f.q}if(a=c.P(a,"wx"))return a;if(d){if(!c.k(h.mode))return g.X;if(c.Ca(h)||c.F(h)===c.cwd())return g.Q}else if(c.k(h.mode))return g.W;return 0},uc:function(a,b){return a?c.Z(a.mode)?g.Ha:c.k(a.mode)&&("r"!==c.ya(b)||b&512)?g.W:c.P(a,c.ya(b)):g.A},Lb:4096,xc:function(a,b){b=b||c.Lb;for(var d=a||0;d<=b;d++)if(!c.da[d])return d;throw new c.b(g.Hb);
},S:function(a){return c.da[a]},Yb:function(a,b,d){c.ua||(c.ua=function(){},c.ua.prototype={},Object.defineProperties(c.ua.prototype,{object:{get:function(){return this.d},set:function(a){this.d=a}},wf:{get:function(){return 1!==(this.flags&2097155)}},xf:{get:function(){return 0!==(this.flags&2097155)}},vf:{get:function(){return this.flags&1024}}}));var h=new c.ua,f;for(f in a)h[f]=a[f];a=h;b=c.xc(b,d);a.fd=b;return c.da[b]=a},Sb:function(a){c.da[a]=null},Rb:{open:function(a){a.f=c.hc(a.d.rdev).f;
a.f.open&&a.f.open(a)},t:function(){throw new c.b(g.sa);}},Ta:function(a){return a>>8},Df:function(a){return a&255},U:function(a,b){return a<<8|b},ab:function(a,b){c.ob[a]={f:b}},hc:function(a){return c.ob[a]},tb:function(a){var b=[];for(a=[a];a.length;){var d=a.pop();b.push(d);a.push.apply(a,d.na)}return b},bb:function(a,b){function d(a){x(0<c.pa);c.pa--;return b(a)}function h(a){if(a){if(!h.J)return h.J=!0,d(a)}else++e>=f.length&&d(null)}"function"===typeof a&&(b=a,a=!1);c.pa++;1<c.pa&&console.log("warning: "+
c.pa+" FS.syncfs operations in flight at once, probably just doing extra work");var f=c.tb(c.root.i),e=0;f.forEach(function(b){if(!b.type.bb)return h(null);b.type.bb(b,a,h)})},i:function(a,b,d){var h="/"===d,f=!d,e;if(h&&c.root)throw new c.b(g.Q);if(!h&&!f){e=c.h(d,{Na:!1});d=e.path;e=e.d;if(c.T(e))throw new c.b(g.Q);if(!c.k(e.mode))throw new c.b(g.X);}b={type:a,ba:b,ma:d,na:[]};a=a.i(b);a.i=b;b.root=a;h?c.root=a:e&&(e.la=b,e.i&&e.i.na.push(b));return a},Kf:function(a){a=c.h(a,{Na:!1});if(!c.T(a.d))throw new c.b(g.g);
a=a.d;var b=a.la,d=c.tb(b);Object.keys(c.G).forEach(function(a){for(a=c.G[a];a;){var b=a.V;-1!==d.indexOf(a.i)&&c.Ma(a);a=b}});a.la=null;b=a.i.na.indexOf(b);x(-1!==b);a.i.na.splice(b,1)},lookup:function(a,b){return a.e.lookup(a,b)},u:function(a,b,d){var h=c.h(a,{parent:!0}).d;a=l.basename(a);if(!a||"."===a||".."===a)throw new c.b(g.g);var f=c.Ua(h,a);if(f)throw new c.b(f);if(!h.e.u)throw new c.b(g.l);return h.e.u(h,a,b,d)},create:function(a,b){b=(void 0!==b?b:438)&4095;b|=32768;return c.u(a,b,0)},
mkdir:function(a,b){b=(void 0!==b?b:511)&1023;b|=16384;return c.u(a,b,0)},Fa:function(a,b,d){"undefined"===typeof d&&(d=b,b=438);return c.u(a,b|8192,d)},symlink:function(a,b){if(!l.resolve(a))throw new c.b(g.A);var d=c.h(b,{parent:!0}).d;if(!d)throw new c.b(g.A);var h=l.basename(b),f=c.Ua(d,h);if(f)throw new c.b(f);if(!d.e.symlink)throw new c.b(g.l);return d.e.symlink(d,h,a)},rename:function(a,b){var d=l.dirname(a),h=l.dirname(b),f=l.basename(a),e=l.basename(b),t,w,v;try{t=c.h(a,{parent:!0}),w=t.d,
t=c.h(b,{parent:!0}),v=t.d}catch(m){throw new c.b(g.Q);}if(!w||!v)throw new c.b(g.A);if(w.i!==v.i)throw new c.b(g.Kb);t=c.K(w,f);h=l.relative(a,h);if("."!==h.charAt(0))throw new c.b(g.g);h=l.relative(b,d);if("."!==h.charAt(0))throw new c.b(g.Ia);var n;try{n=c.K(v,e)}catch(q){}if(t!==n){d=c.k(t.mode);if(f=c.Ea(w,f,d))throw new c.b(f);if(f=n?c.Ea(v,e,d):c.Ua(v,e))throw new c.b(f);if(!w.e.rename)throw new c.b(g.l);if(c.T(t)||n&&c.T(n))throw new c.b(g.Q);if(v!==w&&(f=c.P(w,"w")))throw new c.b(f);try{c.n.willMovePath&&
c.n.willMovePath(a,b)}catch(p){console.log("FS.trackingDelegate['willMovePath']('"+a+"', '"+b+"') threw an exception: "+p.message)}c.xb(t);try{w.e.rename(t,v,e)}catch(r){throw r;}finally{c.wb(t)}try{if(c.n.onMovePath)c.n.onMovePath(a,b)}catch(u){console.log("FS.trackingDelegate['onMovePath']('"+a+"', '"+b+"') threw an exception: "+u.message)}}},rmdir:function(a){var b=c.h(a,{parent:!0}).d,d=l.basename(a),h=c.K(b,d),f=c.Ea(b,d,!0);if(f)throw new c.b(f);if(!b.e.rmdir)throw new c.b(g.l);if(c.T(h))throw new c.b(g.Q);
try{c.n.willDeletePath&&c.n.willDeletePath(a)}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+e.message)}b.e.rmdir(b,d);c.Ma(h);try{if(c.n.onDeletePath)c.n.onDeletePath(a)}catch(t){console.log("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+t.message)}},readdir:function(a){a=c.h(a,{B:!0}).d;if(!a.e.readdir)throw new c.b(g.X);return a.e.readdir(a)},unlink:function(a){var b=c.h(a,{parent:!0}).d,d=l.basename(a),h=c.K(b,d),f=c.Ea(b,d,!1);
if(f)throw f===g.W&&(f=g.l),new c.b(f);if(!b.e.unlink)throw new c.b(g.l);if(c.T(h))throw new c.b(g.Q);try{c.n.willDeletePath&&c.n.willDeletePath(a)}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+a+"') threw an exception: "+e.message)}b.e.unlink(b,d);c.Ma(h);try{if(c.n.onDeletePath)c.n.onDeletePath(a)}catch(t){console.log("FS.trackingDelegate['onDeletePath']('"+a+"') threw an exception: "+t.message)}},readlink:function(a){a=c.h(a).d;if(!a)throw new c.b(g.A);if(!a.e.readlink)throw new c.b(g.g);
return l.resolve(c.F(a.parent),a.e.readlink(a))},stat:function(a,b){var d=c.h(a,{B:!b}).d;if(!d)throw new c.b(g.A);if(!d.e.s)throw new c.b(g.l);return d.e.s(d)},lstat:function(a){return c.stat(a,!0)},chmod:function(a,b,d){var h;"string"===typeof a?h=c.h(a,{B:!d}).d:h=a;if(!h.e.m)throw new c.b(g.l);h.e.m(h,{mode:b&4095|h.mode&-4096,timestamp:Date.now()})},lchmod:function(a,b){c.chmod(a,b,!0)},fchmod:function(a,b){var d=c.S(a);if(!d)throw new c.b(g.C);c.chmod(d.d,b)},chown:function(a,b,d,h){var e;"string"===
typeof a?e=c.h(a,{B:!h}).d:e=a;if(!e.e.m)throw new c.b(g.l);e.e.m(e,{timestamp:Date.now()})},lchown:function(a,b,d){c.chown(a,b,d,!0)},fchown:function(a,b,d){a=c.S(a);if(!a)throw new c.b(g.C);c.chown(a.d,b,d)},truncate:function(a,b){if(0>b)throw new c.b(g.g);var d;"string"===typeof a?d=c.h(a,{B:!0}).d:d=a;if(!d.e.m)throw new c.b(g.l);if(c.k(d.mode))throw new c.b(g.W);if(!c.isFile(d.mode))throw new c.b(g.g);var h=c.P(d,"w");if(h)throw new c.b(h);d.e.m(d,{size:b,timestamp:Date.now()})},hf:function(a,
b){var d=c.S(a);if(!d)throw new c.b(g.C);if(0===(d.flags&2097155))throw new c.b(g.g);c.truncate(d.d,b)},Oc:function(a,b,d){a=c.h(a,{B:!0}).d;a.e.m(a,{timestamp:Math.max(b,d)})},open:function(a,b,d,h,f){if(""===a)throw new c.b(g.A);b="string"===typeof b?c.vc(b):b;d=b&64?("undefined"===typeof d?438:d)&4095|32768:0;var k;if("object"===typeof a)k=a;else{a=l.normalize(a);try{k=c.h(a,{B:!(b&131072)}).d}catch(t){}}var w=!1;if(b&64)if(k){if(b&128)throw new c.b(g.fb);}else k=c.u(a,d,0),w=!0;if(!k)throw new c.b(g.A);
c.Ba(k.mode)&&(b&=-513);if(b&65536&&!c.k(k.mode))throw new c.b(g.X);if(!w&&(d=c.uc(k,b)))throw new c.b(d);b&512&&c.truncate(k,0);b&=-641;h=c.Yb({d:k,path:c.F(k),flags:b,seekable:!0,position:0,f:k.f,Nc:[],error:!1},h,f);h.f.open&&h.f.open(h);!e.logReadFiles||b&1||(c.Ya||(c.Ya={}),a in c.Ya||(c.Ya[a]=1,e.printErr("read file: "+a)));try{c.n.onOpenFile&&(f=0,1!==(b&2097155)&&(f|=c.Fb.Ab.Mb),0!==(b&2097155)&&(f|=c.Fb.Ab.Nb),c.n.onOpenFile(a,f))}catch(v){console.log("FS.trackingDelegate['onOpenFile']('"+
a+"', flags) threw an exception: "+v.message)}return h},close:function(a){a.Qa&&(a.Qa=null);try{a.f.close&&a.f.close(a)}catch(b){throw b;}finally{c.Sb(a.fd)}},t:function(a,b,d){if(!a.seekable||!a.f.t)throw new c.b(g.sa);a.position=a.f.t(a,b,d);a.Nc=[];return a.position},read:function(a,b,d,h,e){if(0>h||0>e)throw new c.b(g.g);if(1===(a.flags&2097155))throw new c.b(g.C);if(c.k(a.d.mode))throw new c.b(g.W);if(!a.f.read)throw new c.b(g.g);var k=!0;if("undefined"===typeof e)e=a.position,k=!1;else if(!a.seekable)throw new c.b(g.sa);
b=a.f.read(a,b,d,h,e);k||(a.position+=b);return b},write:function(a,b,d,e,f,k){if(0>e||0>f)throw new c.b(g.g);if(0===(a.flags&2097155))throw new c.b(g.C);if(c.k(a.d.mode))throw new c.b(g.W);if(!a.f.write)throw new c.b(g.g);a.flags&1024&&c.t(a,0,2);var t=!0;if("undefined"===typeof f)f=a.position,t=!1;else if(!a.seekable)throw new c.b(g.sa);b=a.f.write(a,b,d,e,f,k);t||(a.position+=b);try{if(a.path&&c.n.onWriteToFile)c.n.onWriteToFile(a.path)}catch(w){console.log("FS.trackingDelegate['onWriteToFile']('"+
path+"') threw an exception: "+w.message)}return b},ia:function(a,b,d){if(0>b||0>=d)throw new c.b(g.g);if(0===(a.flags&2097155))throw new c.b(g.C);if(!c.isFile(a.d.mode)&&!c.k(node.mode))throw new c.b(g.fa);if(!a.f.ia)throw new c.b(g.Jb);a.f.ia(a,b,d)},ka:function(a,b,d,e,f,k,t){if(1===(a.flags&2097155))throw new c.b(g.ea);if(!a.f.ka)throw new c.b(g.fa);return a.f.ka(a,b,d,e,f,k,t)},$:function(a,b,d,c,e){return a&&a.f.$?a.f.$(a,b,d,c,e):0},Ef:function(){return 0},Sa:function(a,b,d){if(!a.f.Sa)throw new c.b(g.ga);
return a.f.Sa(a,b,d)},readFile:function(a,b){b=b||{};b.flags=b.flags||"r";b.encoding=b.encoding||"binary";if("utf8"!==b.encoding&&"binary"!==b.encoding)throw Error('Invalid encoding type "'+b.encoding+'"');var d,e=c.open(a,b.flags),f=c.stat(a).size,g=new Uint8Array(f);c.read(e,g,0,f,0);"utf8"===b.encoding?d=Y(g):"binary"===b.encoding&&(d=g);c.close(e);return d},writeFile:function(a,b,d){d=d||{};d.flags=d.flags||"w";d.encoding=d.encoding||"utf8";if("utf8"!==d.encoding&&"binary"!==d.encoding)throw Error('Invalid encoding type "'+
d.encoding+'"');a=c.open(a,d.flags,d.mode);if("utf8"===d.encoding){var e=new Uint8Array(va(b)+1);b=ua(b,e,e.length);c.write(a,e,0,b,0,d.jb)}else"binary"===d.encoding&&c.write(a,b,0,b.length,0,d.jb);c.close(a)},cwd:function(){return c.mb},chdir:function(a){a=c.h(a,{B:!0});if(!c.k(a.d.mode))throw new c.b(g.X);var b=c.P(a.d,"x");if(b)throw new c.b(b);c.mb=a.path},Ub:function(){c.mkdir("/tmp");c.mkdir("/home");c.mkdir("/home/web_user")},Tb:function(){c.mkdir("/dev");c.ab(c.U(1,3),{read:function(){return 0},
write:function(a,b,c,e){return e}});c.Fa("/dev/null",c.U(1,3));Q.register(c.U(5,0),Q.ac);Q.register(c.U(6,0),Q.$b);c.Fa("/dev/tty",c.U(5,0));c.Fa("/dev/tty1",c.U(6,0));var a;if("undefined"!==typeof crypto){var b=new Uint8Array(1);a=function(){crypto.getRandomValues(b);return b[0]}}else a=function(){return 256*Math.random()|0};c.N("/dev","random",a);c.N("/dev","urandom",a);c.mkdir("/dev/shm");c.mkdir("/dev/shm/tmp")},Wb:function(){c.mkdir("/proc");c.mkdir("/proc/self");c.mkdir("/proc/self/fd");c.i({i:function(){var a=
c.createNode("/proc/self","fd",16895,73);a.e={lookup:function(a,d){var e=c.S(+d);if(!e)throw new c.b(g.C);var f={parent:null,i:{ma:"fake"},e:{readlink:function(){return e.path}}};return f.parent=f}};return a}},{},"/proc/self/fd")},Xb:function(){e.stdin?c.N("/dev","stdin",e.stdin):c.symlink("/dev/tty","/dev/stdin");e.stdout?c.N("/dev","stdout",null,e.stdout):c.symlink("/dev/tty","/dev/stdout");e.stderr?c.N("/dev","stderr",null,e.stderr):c.symlink("/dev/tty1","/dev/stderr");var a=c.open("/dev/stdin",
"r");x(0===a.fd,"invalid handle for stdin ("+a.fd+")");a=c.open("/dev/stdout","w");x(1===a.fd,"invalid handle for stdout ("+a.fd+")");a=c.open("/dev/stderr","w");x(2===a.fd,"invalid handle for stderr ("+a.fd+")")},pb:function(){c.b||(c.b=function(a,b){this.d=b;this.Hc=function(a){this.q=a;for(var b in g)if(g[b]===a){this.code=b;break}};this.Hc(a);this.message=$a[a]},c.b.prototype=Error(),c.b.prototype.constructor=c.b,[g.A].forEach(function(a){c.Pa[a]=new c.b(a);c.Pa[a].stack="<generic error, no stack>"}))},
Eb:function(){c.pb();c.G=Array(4096);c.i(n,{},"/");c.Ub();c.Tb();c.Wb();c.ec={MEMFS:n,IDBFS:y,NODEFS:u,WORKERFS:A}},O:function(a,b,d){x(!c.O.Aa,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");c.O.Aa=!0;c.pb();e.stdin=a||e.stdin;e.stdout=b||e.stdout;e.stderr=d||e.stderr;c.Xb()},Bc:function(){c.O.Aa=!1;var a=e._fflush;a&&a(0);for(a=0;a<c.da.length;a++){var b=c.da[a];b&&c.close(b)}},
R:function(a,b){var d=0;a&&(d|=365);b&&(d|=146);return d},yf:function(a,b){var d=l.join.apply(null,a);b&&"/"==d[0]&&(d=d.substr(1));return d},Oe:function(a,b){return l.resolve(b,a)},Jf:function(a){return l.normalize(a)},gf:function(a,b){var d=c.Ka(a,b);if(d.exists)return d.object;U(d.error);return null},Ka:function(a,b){try{var d=c.h(a,{B:!b});a=d.path}catch(e){}var f={Ca:!1,exists:!1,error:0,name:null,path:null,object:null,yc:!1,Ac:null,zc:null};try{d=c.h(a,{parent:!0}),f.yc=!0,f.Ac=d.path,f.zc=
d.d,f.name=l.basename(a),d=c.h(a,{B:!b}),f.exists=!0,f.path=d.path,f.object=d.d,f.name=d.d.name,f.Ca="/"===d.path}catch(g){f.error=g.q}return f},Ue:function(a,b,d,e){a=l.o("string"===typeof a?a:c.F(a),b);d=c.R(d,e);return c.mkdir(a,d)},Xe:function(a,b){a="string"===typeof a?a:c.F(a);for(var d=b.split("/").reverse();d.length;){var e=d.pop();if(e){var f=l.o(a,e);try{c.mkdir(f)}catch(g){}a=f}}return f},Vb:function(a,b,d,e,f){a=l.o("string"===typeof a?a:c.F(a),b);e=c.R(e,f);return c.create(a,e)},lb:function(a,
b,d,e,f,g){a=b?l.o("string"===typeof a?a:c.F(a),b):a;e=c.R(e,f);f=c.create(a,e);if(d){if("string"===typeof d){a=Array(d.length);b=0;for(var t=d.length;b<t;++b)a[b]=d.charCodeAt(b);d=a}c.chmod(f,e|146);a=c.open(f,"w");c.write(a,d,0,d.length,0,g);c.close(a);c.chmod(f,e)}return f},N:function(a,b,d,e){a=l.o("string"===typeof a?a:c.F(a),b);b=c.R(!!d,!!e);c.N.Ta||(c.N.Ta=64);var f=c.U(c.N.Ta++,0);c.ab(f,{open:function(a){a.seekable=!1},close:function(){e&&e.buffer&&e.buffer.length&&e(10)},read:function(a,
b,e,f){for(var h=0,l=0;l<f;l++){var m;try{m=d()}catch(n){throw new c.b(g.L);}if(void 0===m&&0===h)throw new c.b(g.eb);if(null===m||void 0===m)break;h++;b[e+l]=m}h&&(a.d.timestamp=Date.now());return h},write:function(a,b,d,f){for(var l=0;l<f;l++)try{e(b[d+l])}catch(m){throw new c.b(g.L);}f&&(a.d.timestamp=Date.now());return l}});return c.Fa(a,b,f)},We:function(a,b,d){a=l.o("string"===typeof a?a:c.F(a),b);return c.symlink(d,a)},sb:function(a){if(a.zb||a.qc||a.link||a.c)return!0;var b=!0;if("undefined"!==
typeof XMLHttpRequest)throw Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(e.read)try{a.c=T(e.read(a.url),!0),a.j=a.c.length}catch(d){b=!1}else throw Error("Cannot load without read() or XMLHttpRequest.");b||U(g.L);return b},Ve:function(a,b,d,e,f){if("undefined"!==typeof XMLHttpRequest)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";
d={zb:!1,url:d};var k=c.Vb(a,b,d,e,f);d.c?k.c=d.c:d.url&&(k.c=null,k.url=d.url);Object.defineProperties(k,{j:{get:function(){return this.c.length}}});var t={};Object.keys(k.f).forEach(function(a){var b=k.f[a];t[a]=function(){if(!c.sb(k))throw new c.b(g.L);return b.apply(null,arguments)}});t.read=function(a,b,d,e,f){if(!c.sb(k))throw new c.b(g.L);a=a.d.c;if(f>=a.length)return 0;e=Math.min(a.length-f,e);x(0<=e);if(a.slice)for(var h=0;h<e;h++)b[d+h]=a[f+h];else for(h=0;h<e;h++)b[d+h]=a.get(f+h);return e};
k.f=t;return k},Ye:function(a,b,d,h,f,g,t,m,n,p){function q(d){function l(d){p&&p();m||c.lb(a,b,d,h,f,n);g&&g();Da()}var u=!1;e.preloadPlugins.forEach(function(a){!u&&a.canHandle(r)&&(a.handle(d,r,l,function(){t&&t();Da()}),u=!0)});u||l(d)}Browser.O();var r=b?l.resolve(l.o(a,b)):a;R++;e.monitorRunDependencies&&e.monitorRunDependencies(R);"string"==typeof d?Browser.Qe(d,function(a){q(a)},t):q(d)},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},
cb:function(){return"EM_FS_"+window.location.pathname},ra:20,p:"FILE_DATA",Hf:function(a,b,d){b=b||function(){};d=d||function(){};var e=c.indexedDB();try{var f=e.open(c.cb(),c.ra)}catch(g){return d(g)}f.onupgradeneeded=function(){console.log("creating db");f.result.createObjectStore(c.p)};f.onsuccess=function(){var e=f.result.transaction([c.p],"readwrite"),h=e.objectStore(c.p),g=0,k=0,l=a.length;a.forEach(function(a){a=h.put(c.Ka(a).object.c,a);a.onsuccess=function(){g++;g+k==l&&(0==k?b():d())};a.onerror=
function(){k++;g+k==l&&(0==k?b():d())}});e.onerror=d};f.onerror=d},zf:function(a,b,d){b=b||function(){};d=d||function(){};var e=c.indexedDB();try{var f=e.open(c.cb(),c.ra)}catch(g){return d(g)}f.onupgradeneeded=d;f.onsuccess=function(){var e=f.result;try{var h=e.transaction([c.p],"readonly")}catch(g){d(g);return}var k=h.objectStore(c.p),m=0,n=0,p=a.length;a.forEach(function(a){var e=k.get(a);e.onsuccess=function(){c.Ka(a).exists&&c.unlink(a);c.lb(l.dirname(a),l.basename(a),e.result,!0,!0,!0);m++;
m+n==p&&(0==n?b():d())};e.onerror=function(){n++;m+n==p&&(0==n?b():d())}});h.onerror=d};f.onerror=d}},p={Pc:5,Cf:{},umask:511,Re:function(a,b){if("/"!==b[0]){var d;if(-100===a)d=c.cwd();else{d=c.S(a);if(!d)throw new c.b(g.C);d=d.path}b=l.o(d,b)}return b},ef:function(a,b,d){try{var e=a(b)}catch(f){if(f&&f.d&&l.normalize(b)!==l.normalize(c.F(f.d)))return-g.X;throw f;}r[d>>2]=e.dev;r[d+4>>2]=0;r[d+8>>2]=e.ino;r[d+12>>2]=e.mode;r[d+16>>2]=e.nlink;r[d+20>>2]=e.uid;r[d+24>>2]=e.gid;r[d+28>>2]=e.rdev;r[d+
32>>2]=0;r[d+36>>2]=e.size;r[d+40>>2]=4096;r[d+44>>2]=e.blocks;r[d+48>>2]=e.atime.getTime()/1E3|0;r[d+52>>2]=0;r[d+56>>2]=e.mtime.getTime()/1E3|0;r[d+60>>2]=0;r[d+64>>2]=e.ctime.getTime()/1E3|0;r[d+68>>2]=0;r[d+72>>2]=e.ino;return 0},cf:function(a,b,d,e){a=new Uint8Array(J.subarray(a,a+d));c.$(b,a,0,d,e)},af:function(a,b){a=l.normalize(a);"/"===a[a.length-1]&&(a=a.substr(0,a.length-1));c.mkdir(a,b,0);return 0},bf:function(a,b,d){switch(b&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;
default:return-g.g}c.u(a,b,d);return 0},df:function(a,b,d){if(0>=d)return-g.g;a=c.readlink(a);a=a.slice(0,Math.max(0,d));xa(a,b,!0);return a.length},Ze:function(a,b){if(b&-8)return-g.g;var d;d=c.h(a,{B:!0}).d;var e="";b&4&&(e+="r");b&2&&(e+="w");b&1&&(e+="x");return e&&c.P(d,e)?-g.ea:0},$e:function(a,b,d){var e=c.S(d);e&&c.close(e);return c.open(a,b,0,d,d).fd},bc:function(a,b,d,e){for(var f=0,g=0;g<d;g++){var l=r[b+(8*g+4)>>2],m=c.read(a,H,r[b+8*g>>2],l,e);if(0>m)return-1;f+=m;if(m<l)break}return f},
cc:function(a,b,d,e){for(var f=0,g=0;g<d;g++){var l=c.write(a,H,r[b+8*g>>2],r[b+(8*g+4)>>2],e);if(0>l)return-1;f+=l}return f},I:0,get:function(){p.I+=4;return r[p.I-4>>2]},nc:function(){return na(p.get())},Y:function(){var a=c.S(p.get());if(!a)throw new c.b(g.C);return a},rf:function(){var a=SOCKFS.pf(p.get());if(!a)throw new c.b(g.C);return a},qf:function(a){var b=p.get(),d=p.get();if(a&&0===b)return null;a=__read_sockaddr(b,d);if(a.q)throw new c.b(a.q);a.hb=DNS.Af(a.hb)||a.hb;return a},kf:function(){var a=
p.get(),b=p.get();0<=a?x(0===b):x(-1===b);return a},sf:function(){x(0===p.get())}},ra=ta;e._i64Add=sa;e._memcpy=ab;ha(M);c.Eb();ca.unshift(function(){e.noFSInit||c.O.Aa||c.O()});Ha.push(function(){c.yb=!1});P.push(function(){c.Bc()});ca.unshift(function(){Q.O()});P.push(function(){});D=N=m.ib(z);D+=Na;I=m.ib(D);sa=B([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,
0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",3);e.Pb={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,
Float64Array:Float64Array,NaN:NaN,Infinity:Infinity,byteLength:la};e.Qb={abort:G,assert:x,invoke_iiii:function(a,b,d,c){try{return e.dynCall_iiii(a,b,d,c)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;q.setThrew(1,0)}},invoke_viiiiiii:function(a,b,d,c,f,g,l,m){try{e.dynCall_viiiiiii(a,b,d,c,f,g,l,m)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;q.setThrew(1,0)}},invoke_viiiii:function(a,b,d,c,f,g){try{e.dynCall_viiiii(a,b,d,c,f,g)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;
q.setThrew(1,0)}},invoke_vi:function(a,b){try{e.dynCall_vi(a,b)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;q.setThrew(1,0)}},invoke_vii:function(a,b,d){try{e.dynCall_vii(a,b,d)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;q.setThrew(1,0)}},invoke_iiiiiii:function(a,b,d,c,f,g,l){try{return e.dynCall_iiiiiii(a,b,d,c,f,g,l)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;q.setThrew(1,0)}},invoke_ii:function(a,b){try{return e.dynCall_ii(a,b)}catch(d){if("number"!==typeof d&&
"longjmp"!==d)throw d;q.setThrew(1,0)}},invoke_viii:function(a,b,d,c){try{e.dynCall_viii(a,b,d,c)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;q.setThrew(1,0)}},invoke_viiiiiiii:function(a,b,d,c,f,g,l,m,n){try{e.dynCall_viiiiiiii(a,b,d,c,f,g,l,m,n)}catch(p){if("number"!==typeof p&&"longjmp"!==p)throw p;q.setThrew(1,0)}},invoke_iiiii:function(a,b,d,c,f){try{return e.dynCall_iiiii(a,b,d,c,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;q.setThrew(1,0)}},invoke_iii:function(a,b,d){try{return e.dynCall_iii(a,
b,d)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;q.setThrew(1,0)}},invoke_iiiiii:function(a,b,d,c,f,g){try{return e.dynCall_iiiiii(a,b,d,c,f,g)}catch(l){if("number"!==typeof l&&"longjmp"!==l)throw l;q.setThrew(1,0)}},invoke_viiii:function(a,b,c,g,f){try{e.dynCall_viiii(a,b,c,g,f)}catch(k){if("number"!==typeof k&&"longjmp"!==k)throw k;q.setThrew(1,0)}},_pthread_cleanup_pop:function(){x(ga.level==P.length,"cannot pop if something else added meanwhile!");P.pop();ga.level=P.length},___syscall221:function(a,
b){p.I=b;try{var d=p.Y();switch(p.get()){case 0:var e=p.get();return 0>e?-g.g:c.open(d.path,d.flags,0,e).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return e=p.get(),d.flags|=e,0;case 12:case 12:return e=p.get(),W[e+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-g.g;case 9:return U(g.g),-1;default:return-g.g}}catch(f){return"undefined"!==typeof c&&f instanceof c.b||G(f),-f.q}},___syscall6:function(a,b){p.I=b;try{var d=p.Y();c.close(d);return 0}catch(e){return"undefined"!==
typeof c&&e instanceof c.b||G(e),-e.q}},_llvm_fabs_f64:ra,_pthread_cleanup_push:ga,___buildEnvironment:ha,___setErrNo:U,_sbrk:Fa,_emscripten_memcpy_big:function(a,b,c){J.set(J.subarray(b,b+c),a);return a},_sysconf:function(a){switch(a){case 30:return 4096;case 85:return L/4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;
case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;
case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"===typeof navigator?navigator.hardwareConcurrency||1:1}U(g.g);return-1},
_pthread_self:function(){return 0},_getenv:aa,___syscall54:function(a,b){p.I=b;try{var d=p.Y(),e=p.get();switch(e){case 21505:return d.tty?0:-g.ga;case 21506:return d.tty?0:-g.ga;case 21519:if(!d.tty)return-g.ga;var f=p.get();return r[f>>2]=0;case 21520:return d.tty?-g.g:-g.ga;case 21531:return f=p.get(),c.Sa(d,e,f);default:G("bad ioctl syscall "+e)}}catch(k){return"undefined"!==typeof c&&k instanceof c.b||G(k),-k.q}},___unlock:function(){},__exit:Ga,___lock:function(){},_abort:function(){e.abort()},
___syscall5:function(a,b){p.I=b;try{var d=p.nc(),e=p.get(),f=p.get();return c.open(d,e,f).fd}catch(g){return"undefined"!==typeof c&&g instanceof c.b||G(g),-g.q}},_time:function(a){var b=Date.now()/1E3|0;a&&(r[a>>2]=b);return b},___syscall140:function(a,b){p.I=b;try{var d=p.Y(),e=p.get(),f=p.get(),g=p.get(),l=p.get();x(0===e);c.t(d,f,l);r[g>>2]=d.position;d.Qa&&0===f&&0===l&&(d.Qa=null);return 0}catch(m){return"undefined"!==typeof c&&m instanceof c.b||G(m),-m.q}},_exit:function(a){Ga(a)},___syscall145:function(a,
b){p.I=b;try{var d=p.Y(),e=p.get(),f=p.get();return p.bc(d,e,f)}catch(g){return"undefined"!==typeof c&&g instanceof c.b||G(g),-g.q}},___syscall146:function(a,b){p.I=b;try{var d=p.Y(),e=p.get(),f=p.get();return p.cc(d,e,f)}catch(g){return"undefined"!==typeof c&&g instanceof c.b||G(g),-g.q}},STACKTOP:N,STACK_MAX:D,tempDoublePtr:E,ABORT:ia,cttz_i8:sa};// EMSCRIPTEN_START_ASM
var q=(function(global,env,buffer) {
"almost asm";var a=global.Int8Array;var b=global.Int16Array;var c=global.Int32Array;var d=global.Uint8Array;var e=global.Uint16Array;var f=global.Uint32Array;var g=global.Float32Array;var h=global.Float64Array;var i=new a(buffer);var j=new b(buffer);var k=new c(buffer);var l=new d(buffer);var m=new e(buffer);var n=new f(buffer);var o=new g(buffer);var p=new h(buffer);var q=global.byteLength;var r=env.STACKTOP|0;var s=env.STACK_MAX|0;var t=env.tempDoublePtr|0;var u=env.ABORT|0;var v=env.cttz_i8|0;var w=0;var x=0;var y=0;var z=0;var A=global.NaN,B=global.Infinity;var C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=0;var V=global.Math.floor;var W=global.Math.abs;var X=global.Math.sqrt;var Y=global.Math.pow;var Z=global.Math.cos;var _=global.Math.sin;var $=global.Math.tan;var aa=global.Math.acos;var ba=global.Math.asin;var ca=global.Math.atan;var da=global.Math.atan2;var ea=global.Math.exp;var fa=global.Math.log;var ga=global.Math.ceil;var ha=global.Math.imul;var ia=global.Math.min;var ja=global.Math.clz32;var ka=env.abort;var la=env.assert;var ma=env.invoke_iiii;var na=env.invoke_viiiiiii;var oa=env.invoke_viiiii;var pa=env.invoke_vi;var qa=env.invoke_vii;var ra=env.invoke_iiiiiii;var sa=env.invoke_ii;var ta=env.invoke_viii;var ua=env.invoke_viiiiiiii;var va=env.invoke_iiiii;var wa=env.invoke_iii;var xa=env.invoke_iiiiii;var ya=env.invoke_viiii;var za=env._pthread_cleanup_pop;var Aa=env.___syscall221;var Ba=env.___syscall6;var Ca=env._llvm_fabs_f64;var Da=env._pthread_cleanup_push;var Ea=env.___buildEnvironment;var Fa=env.___setErrNo;var Ga=env._sbrk;var Ha=env._emscripten_memcpy_big;var Ia=env._sysconf;var Ja=env._pthread_self;var Ka=env._getenv;var La=env.___syscall54;var Ma=env.___unlock;var Na=env.__exit;var Oa=env.___lock;var Pa=env._abort;var Qa=env.___syscall5;var Ra=env._time;var Sa=env.___syscall140;var Ta=env._exit;var Ua=env.___syscall145;var Va=env.___syscall146;var Wa=0;function Xa(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;i=new a(newBuffer);j=new b(newBuffer);k=new c(newBuffer);l=new d(newBuffer);m=new e(newBuffer);n=new f(newBuffer);o=new g(newBuffer);p=new h(newBuffer);buffer=newBuffer;return true}
function Gb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=r;r=r+1408|0;I=M;J=M+1152|0;L=M+1024|0;K=k[(k[a+460>>2]|0)+24>>2]|0;F=b>>2;G=c>>3;H=d>>2;h=F<<5;E=h|4;n=G<<5;C=n|2;p=H<<5;D=p|4;x=k[a+132>>2]|0;h=h|28;m=h+E>>1;n=n|30;o=n+C>>1;p=p|28;q=p+D>>1;if((x|0)>0){v=k[a+136>>2]|0;s=k[v>>2]|0;t=a+44|0;u=k[v+4>>2]|0;v=k[v+8>>2]|0;w=0;d=2147483647;do{b=l[s+w>>0]|0;do if((b|0)>=(E|0)){if((b|0)>(h|0)){g=k[t>>2]|0;f=k[14196+(k[14128+(g<<2)>>2]<<2)>>2]|0;B=ha(f,b-h|0)|0;f=ha(f,b-E|0)|0;f=ha(f,f)|0;b=ha(B,B)|0;break}if((b|0)>(m|0)){g=k[t>>2]|0;f=ha(k[14196+(k[14128+(g<<2)>>2]<<2)>>2]|0,b-E|0)|0;f=ha(f,f)|0;b=0;break}else{g=k[t>>2]|0;f=ha(k[14196+(k[14128+(g<<2)>>2]<<2)>>2]|0,b-h|0)|0;f=ha(f,f)|0;b=0;break}}else{g=k[t>>2]|0;f=k[14196+(k[14128+(g<<2)>>2]<<2)>>2]|0;B=ha(f,b-E|0)|0;f=ha(f,b-h|0)|0;f=ha(f,f)|0;b=ha(B,B)|0}while(0);e=l[u+w>>0]|0;do if((e|0)>=(C|0)){if((e|0)>(n|0)){c=k[14196+(k[14208+(g<<2)>>2]<<2)>>2]|0;B=ha(c,e-n|0)|0;c=ha(c,e-C|0)|0;c=ha(c,c)|0;b=(ha(B,B)|0)+b|0;break}c=k[14196+(k[14208+(g<<2)>>2]<<2)>>2]|0;if((e|0)>(o|0)){c=ha(c,e-C|0)|0;c=ha(c,c)|0;break}else{c=ha(c,e-n|0)|0;c=ha(c,c)|0;break}}else{c=k[14196+(k[14208+(g<<2)>>2]<<2)>>2]|0;B=ha(c,e-C|0)|0;c=ha(c,e-n|0)|0;c=ha(c,c)|0;b=(ha(B,B)|0)+b|0}while(0);f=c+f|0;e=l[v+w>>0]|0;do if((e|0)>=(D|0)){if((e|0)>(p|0)){c=k[14196+(k[14276+(g<<2)>>2]<<2)>>2]|0;B=ha(c,e-p|0)|0;c=ha(c,e-D|0)|0;c=ha(c,c)|0;b=(ha(B,B)|0)+b|0;break}c=k[14196+(k[14276+(g<<2)>>2]<<2)>>2]|0;if((e|0)>(q|0)){c=ha(c,e-D|0)|0;c=ha(c,c)|0;break}else{c=ha(c,e-p|0)|0;c=ha(c,c)|0;break}}else{c=k[14196+(k[14276+(g<<2)>>2]<<2)>>2]|0;B=ha(c,e-D|0)|0;c=ha(c,e-p|0)|0;c=ha(c,c)|0;b=(ha(B,B)|0)+b|0}while(0);B=f+c|0;k[I+(w<<2)>>2]=b;d=(B|0)<(d|0)?B:d;w=w+1|0}while((w|0)!=(x|0));c=0;b=0;do{if((k[I+(c<<2)>>2]|0)<=(d|0)){i[J+b>>0]=c;b=b+1|0}c=c+1|0}while((c|0)!=(x|0));B=b}else B=0;b=I;c=127;while(1){k[b>>2]=2147483647;if((c|0)>0){b=b+4|0;c=c+-1|0}else break}if((B|0)>0){A=a+136|0;z=a+44|0;f=k[z>>2]|0;b=k[14196+(k[14128+(f<<2)>>2]<<2)>>2]|0;c=k[14196+(k[14208+(f<<2)>>2]<<2)>>2]|0;d=k[14196+(k[14276+(f<<2)>>2]<<2)>>2]|0;e=0;do{y=i[J+e>>0]|0;v=y&255;s=k[A>>2]|0;q=ha(E-(l[(k[s>>2]|0)+v>>0]|0)|0,b)|0;w=ha(q,q)|0;x=ha(C-(l[(k[s+4>>2]|0)+v>>0]|0)|0,c)|0;w=(ha(x,x)|0)+w|0;v=ha(D-(l[(k[s+8>>2]|0)+v>>0]|0)|0,d)|0;s=b<<3;a=c<<2;a=(ha(c<<3,x)|0)+(ha(a,a)|0)|0;x=d<<3;x=(ha(d<<4,v)|0)+(ha(x,x)|0)|0;t=I;u=L;v=w+(ha(v,v)|0)|0;w=3;s=(ha(b<<4,q)|0)+(ha(s,s)|0)|0;while(1){m=t;n=u;o=v;p=7;q=a;while(1){if((o|0)<(k[m>>2]|0)){k[m>>2]=o;i[n>>0]=y;f=k[z>>2]|0}c=o+x|0;d=k[14196+(k[14276+(f<<2)>>2]<<2)>>2]|0;h=(ha(d<<7,d)|0)+x|0;b=m+4|0;if((c|0)<(k[b>>2]|0)){k[b>>2]=c;i[n+1>>0]=y;f=k[z>>2]|0;d=k[14196+(k[14276+(f<<2)>>2]<<2)>>2]|0}c=h+c|0;g=ha(d<<7,d)|0;b=m+8|0;if((c|0)<(k[b>>2]|0)){k[b>>2]=c;i[n+2>>0]=y;f=k[z>>2]|0;d=k[14196+(k[14276+(f<<2)>>2]<<2)>>2]|0}b=c+h+g|0;c=m+12|0;if((b|0)<(k[c>>2]|0)){k[c>>2]=b;i[n+3>>0]=y;d=k[z>>2]|0;f=d;d=k[14196+(k[14276+(d<<2)>>2]<<2)>>2]|0}c=k[14196+(k[14208+(f<<2)>>2]<<2)>>2]|0;b=(ha(c<<5,c)|0)+q|0;if((p|0)>0){m=m+16|0;n=n+4|0;o=o+q|0;p=p+-1|0;q=b}else break}b=k[14196+(k[14128+(f<<2)>>2]<<2)>>2]|0;g=(ha(b<<7,b)|0)+s|0;if((w|0)>0){t=t+128|0;u=u+32|0;v=v+s|0;w=w+-1|0;s=g}else break}e=e+1|0}while((e|0)!=(B|0))}e=F<<2;g=G<<3;f=H<<2;b=k[K+(e<<2)>>2]|0;c=L;d=0;while(1){J=b+(d+g<<6)+(f<<1)|0;j[J>>1]=(l[c>>0]|0)+1;j[J+2>>1]=(l[c+1>>0]|0)+1;j[J+4>>1]=(l[c+2>>0]|0)+1;j[J+6>>1]=(l[c+3>>0]|0)+1;d=d+1|0;if((d|0)==8)break;else c=c+4|0}b=k[K+((e|1)<<2)>>2]|0;c=L+32|0;d=0;while(1){J=b+(d+g<<6)+(f<<1)|0;j[J>>1]=(l[c>>0]|0)+1;j[J+2>>1]=(l[c+1>>0]|0)+1;j[J+4>>1]=(l[c+2>>0]|0)+1;j[J+6>>1]=(l[c+3>>0]|0)+1;d=d+1|0;if((d|0)==8)break;else c=c+4|0}b=k[K+((e|2)<<2)>>2]|0;c=L+64|0;d=0;while(1){J=b+(d+g<<6)+(f<<1)|0;j[J>>1]=(l[c>>0]|0)+1;j[J+2>>1]=(l[c+1>>0]|0)+1;j[J+4>>1]=(l[c+2>>0]|0)+1;j[J+6>>1]=(l[c+3>>0]|0)+1;d=d+1|0;if((d|0)==8)break;else c=c+4|0}d=k[K+((e|3)<<2)>>2]|0;b=L+96|0;c=0;while(1){L=d+(c+g<<6)+(f<<1)|0;j[L>>1]=(l[b>>0]|0)+1;j[L+2>>1]=(l[b+1>>0]|0)+1;j[L+4>>1]=(l[b+2>>0]|0)+1;j[L+6>>1]=(l[b+3>>0]|0)+1;c=c+1|0;if((c|0)==8)break;else b=b+4|0}r=M;return}function Hb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;h=b+12|0;if((Wg(k[h>>2]|0)|0)!=80){m=k[a>>2]|0;k[m+20>>2]=1029;$a[k[m>>2]&63](a)}m=Wg(k[h>>2]|0)|0;switch(m|0){case 54:case 53:case 51:case 50:break;default:{l=k[a>>2]|0;k[l+20>>2]=1029;$a[k[l>>2]&63](a)}}f=k[h>>2]|0;a:while(1){c=Wg(f)|0;b:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break b;default:{}}}while(0);switch(c|0){case 9:case 10:case 13:case 32:break;case -1:{j=9;break a}default:{j=10;break a}}}if((j|0)==9){d=k[a>>2]|0;k[d+20>>2]=43;$a[k[d>>2]&63](a);d=a;e=a;c=-1;j=12}else if((j|0)==10)if((c+-48|0)>>>0>9){d=a;e=a;j=12}if((j|0)==12){l=k[d>>2]|0;k[l+20>>2]=1027;$a[k[l>>2]&63](e)}d=c+-48|0;c=Wg(f)|0;c:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break c;default:{}}}while(0);if((c+-48|0)>>>0<10)while(1){d=c+-48+(d*10|0)|0;c=Wg(f)|0;d:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break d;default:{}}}while(0);if((c+-48|0)>>>0>=10){l=d;break}}else l=d;if(l>>>0>65535){j=k[a>>2]|0;k[j+20>>2]=1028;$a[k[j>>2]&63](a)}f=k[h>>2]|0;e:while(1){c=Wg(f)|0;f:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break f;default:{}}}while(0);switch(c|0){case 9:case 10:case 13:case 32:break;case -1:{j=25;break e}default:{j=26;break e}}}if((j|0)==25){d=k[a>>2]|0;k[d+20>>2]=43;$a[k[d>>2]&63](a);d=a;e=a;c=-1;j=28}else if((j|0)==26)if((c+-48|0)>>>0>9){d=a;e=a;j=28}if((j|0)==28){j=k[d>>2]|0;k[j+20>>2]=1027;$a[k[j>>2]&63](e)}d=c+-48|0;c=Wg(f)|0;g:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break g;default:{}}}while(0);if((c+-48|0)>>>0<10)while(1){d=c+-48+(d*10|0)|0;c=Wg(f)|0;h:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break h;default:{}}}while(0);if((c+-48|0)>>>0>=10){g=d;break}}else g=d;if(g>>>0>65535){j=k[a>>2]|0;k[j+20>>2]=1028;$a[k[j>>2]&63](a)}f=k[h>>2]|0;i:while(1){c=Wg(f)|0;j:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break j;default:{}}}while(0);switch(c|0){case 9:case 10:case 13:case 32:break;case -1:{j=41;break i}default:{j=42;break i}}}if((j|0)==41){d=k[a>>2]|0;k[d+20>>2]=43;$a[k[d>>2]&63](a);d=a;e=a;c=-1;j=44}else if((j|0)==42)if((c+-48|0)>>>0>9){d=a;e=a;j=44}if((j|0)==44){j=k[d>>2]|0;k[j+20>>2]=1027;$a[k[j>>2]&63](e)}d=c+-48|0;c=Wg(f)|0;k:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break k;default:{}}}while(0);if((c+-48|0)>>>0<10)while(1){d=c+-48+(d*10|0)|0;c=Wg(f)|0;l:do if((c|0)==35)while(1){c=Wg(f)|0;switch(c|0){case 10:case -1:break l;default:{}}}while(0);if((c+-48|0)>>>0>=10){h=d;break}}else h=d;if(h>>>0>65535){j=k[a>>2]|0;k[j+20>>2]=1028;$a[k[j>>2]&63](a)}if((l|0)==0|(g|0)==0|(h|0)==0){j=k[a>>2]|0;k[j+20>>2]=1029;$a[k[j>>2]&63](a)}k[a+56>>2]=8;k[a+28>>2]=l;k[a+32>>2]=g;k[b+44>>2]=h;m:do switch(m|0){case 50:{d=a+36|0;k[d>>2]=1;k[a+40>>2]=1;e=k[a>>2]|0;k[e+20>>2]=1031;k[e+24>>2]=l;k[e+28>>2]=g;ab[k[e+4>>2]&31](a,1);k[b+4>>2]=1;e=a;c=1;j=71;break}case 51:{d=a+36|0;k[d>>2]=3;k[a+40>>2]=2;e=k[a>>2]|0;k[e+20>>2]=1033;k[e+24>>2]=l;k[e+28>>2]=g;ab[k[e+4>>2]&31](a,1);k[b+4>>2]=2;e=a;c=1;j=71;break}case 53:{d=a+36|0;k[d>>2]=1;k[a+40>>2]=1;m=k[a>>2]|0;k[m+20>>2]=1030;k[m+24>>2]=l;k[m+28>>2]=g;ab[k[m+4>>2]&31](a,1);if(h>>>0>255){k[b+4>>2]=3;e=a;c=1;g=1;j=69;break m}c=b+4|0;if((h|0)==255){k[c>>2]=4;e=a;c=0;g=0;j=69;break m}else{k[c>>2]=5;e=a;c=1;g=1;j=69;break m}}case 54:{d=a+36|0;k[d>>2]=3;k[a+40>>2]=2;m=k[a>>2]|0;k[m+20>>2]=1032;k[m+24>>2]=l;k[m+28>>2]=g;ab[k[m+4>>2]&31](a,1);if(h>>>0>255){k[b+4>>2]=6;e=a;c=1;g=1;j=69;break m}c=b+4|0;if((h|0)==255){k[c>>2]=4;e=a;c=0;g=0;j=69;break m}else{k[c>>2]=7;e=a;c=1;g=1;j=69;break m}}default:{d=a+36|0;e=a;c=1;g=1;j=69}}while(0);if((j|0)==69){f=ha(ha(h>>>0<256?1:2,l)|0,k[d>>2]|0)|0;k[b+36>>2]=f;f=Ya[k[k[a+4>>2]>>2]&15](e,1,f)|0;k[b+28>>2]=f;if(g)j=71;else{m=b+32|0;k[m>>2]=f;k[b+16>>2]=m;k[b+20>>2]=1}}if((j|0)==71){m=ha(k[d>>2]|0,l)|0;m=fb[k[(k[a+4>>2]|0)+8>>2]&3](e,1,m,1)|0;k[b+16>>2]=m;k[b+20>>2]=1}if(!c)return;f=h+1|0;c=Ya[k[k[a+4>>2]>>2]&15](a,1,f)|0;d=b+40|0;k[d>>2]=c;e=h>>>1;if((h|0)<0)return;i[c>>0]=(e>>>0)/(h>>>0)|0;if(!h)return;else c=1;do{i[(k[d>>2]|0)+c>>0]=(((c*255|0)+e|0)>>>0)/(h>>>0)|0;c=c+1|0}while((c|0)!=(f|0));return}function Ib(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=k[a+20>>2]|0;if((b|0)!=202){r=k[a>>2]|0;k[r+20>>2]=20;k[r+24>>2]=b;$a[k[r>>2]&63](a)}d=k[a+48>>2]<<3;b=k[a+52>>2]|0;do if(d>>>0>b>>>0){if(d>>>0<=b<<1>>>0){d=pj(k[a+28>>2]<<1,8)|0;k[a+112>>2]=d;d=pj(k[a+32>>2]<<1,8)|0;k[a+116>>2]=d;k[a+316>>2]=2;d=2;break}if(d>>>0<=(b*3|0)>>>0){d=pj((k[a+28>>2]|0)*3|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*3|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=3;d=3;break}if(d>>>0<=b<<2>>>0){d=pj(k[a+28>>2]<<2,8)|0;k[a+112>>2]=d;d=pj(k[a+32>>2]<<2,8)|0;k[a+116>>2]=d;k[a+316>>2]=4;d=4;break}if(d>>>0<=(b*5|0)>>>0){d=pj((k[a+28>>2]|0)*5|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*5|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=5;d=5;break}if(d>>>0<=(b*6|0)>>>0){d=pj((k[a+28>>2]|0)*6|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*6|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=6;d=6;break}if(d>>>0<=(b*7|0)>>>0){d=pj((k[a+28>>2]|0)*7|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*7|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=7;d=7;break}if(d>>>0<=b<<3>>>0){d=pj(k[a+28>>2]<<3,8)|0;k[a+112>>2]=d;d=pj(k[a+32>>2]<<3,8)|0;k[a+116>>2]=d;k[a+316>>2]=8;d=8;break}if(d>>>0<=(b*9|0)>>>0){d=pj((k[a+28>>2]|0)*9|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*9|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=9;d=9;break}if(d>>>0<=(b*10|0)>>>0){d=pj((k[a+28>>2]|0)*10|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*10|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=10;d=10;break}if(d>>>0<=(b*11|0)>>>0){d=pj((k[a+28>>2]|0)*11|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*11|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=11;d=11;break}if(d>>>0<=(b*12|0)>>>0){d=pj((k[a+28>>2]|0)*12|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*12|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=12;d=12;break}if(d>>>0<=(b*13|0)>>>0){d=pj((k[a+28>>2]|0)*13|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*13|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=13;d=13;break}if(d>>>0<=(b*14|0)>>>0){d=pj((k[a+28>>2]|0)*14|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*14|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=14;d=14;break}c=k[a+28>>2]|0;if(d>>>0>(b*15|0)>>>0){d=pj(c<<4,8)|0;k[a+112>>2]=d;d=pj(k[a+32>>2]<<4,8)|0;k[a+116>>2]=d;k[a+316>>2]=16;d=16;break}else{d=pj(c*15|0,8)|0;k[a+112>>2]=d;d=pj((k[a+32>>2]|0)*15|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=15;d=15;break}}else{d=pj(k[a+28>>2]|0,8)|0;k[a+112>>2]=d;d=pj(k[a+32>>2]|0,8)|0;k[a+116>>2]=d;k[a+316>>2]=1;d=1}while(0);q=a+36|0;b=k[q>>2]|0;c=(b|0)>0;r=a+216|0;p=k[r>>2]|0;a:do if(c){e=0;f=p;while(1){k[f+36>>2]=d;e=e+1|0;if((e|0)==(b|0))break;else f=f+84|0}if(c){i=a+316|0;n=k[i>>2]|0;j=a+308|0;l=a+312|0;o=k[q>>2]|0;if((n|0)<8){h=n;b=0;m=p}else{b=0;c=p;while(1){k[c+36>>2]=n;b=b+1|0;if((b|0)>=(o|0))break a;else c=c+84|0}}while(1){e=ha(h,k[j>>2]|0)|0;d=k[m+8>>2]|0;f=m+12|0;g=n;while(1){c=g<<1;if((e|0)%(ha(c,d)|0)|0|0){c=g;break}t=ha(k[l>>2]|0,h)|0;if((t|0)%(ha(c,k[f>>2]|0)|0)|0|0){c=g;break}if((c|0)<8)g=c;else break}k[m+36>>2]=c;b=b+1|0;if((b|0)>=(o|0))break a;h=k[i>>2]|0;m=m+84|0}}}while(0);b=k[q>>2]|0;if((b|0)>0){d=a+28|0;e=a+308|0;f=a+32|0;g=a+312|0;h=0;c=p;while(1){b=c+36|0;t=ha(ha(k[c+8>>2]|0,k[d>>2]|0)|0,k[b>>2]|0)|0;t=pj(t,k[e>>2]<<3)|0;k[c+40>>2]=t;b=ha(ha(k[c+12>>2]|0,k[f>>2]|0)|0,k[b>>2]|0)|0;b=pj(b,k[g>>2]<<3)|0;k[c+44>>2]=b;h=h+1|0;b=k[q>>2]|0;if((h|0)>=(b|0))break;else c=c+84|0}}c=k[a+44>>2]|0;switch(c|0){case 1:{k[a+120>>2]=1;d=1;break}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{d=k[14680+(c<<2)>>2]|0;k[a+120>>2]=d;break}case 16:case 3:{k[a+120>>2]=3;d=3;break}case 5:case 4:{k[a+120>>2]=4;d=4;break}default:{k[a+120>>2]=b;d=b}}k[a+124>>2]=(k[a+84>>2]|0)==0?d:1;b:do if(((k[a+76>>2]|0)==0?(k[a+300>>2]|0)==0:0)?((b|0)==3?(k[a+40>>2]|0)==3:0):0){switch(c|0){case 16:{if((d|0)!=3)break b;break}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{if((d|0)!=(k[14680+(c<<2)>>2]|0))break b;break}default:break b}b=k[r>>2]|0;if(((((((((k[b+8>>2]|0)==2?(k[b+92>>2]|0)==1:0)?(k[b+176>>2]|0)==1:0)?(k[b+12>>2]|0)<=2:0)?(k[b+96>>2]|0)==1:0)?(k[b+180>>2]|0)==1:0)?(s=k[b+36>>2]|0,(s|0)==(k[a+316>>2]|0)):0)?(k[b+120>>2]|0)==(s|0):0)?(k[b+204>>2]|0)==(s|0):0){k[a+128>>2]=k[a+312>>2];return}}while(0);k[a+128>>2]=1;return}function Jb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(b>>>0>36){e=Ai()|0;k[e>>2]=22;e=0;d=0}else{r=a+4|0;q=a+100|0;do{f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0}while((xj(f)|0)!=0);b:do switch(f|0){case 43:case 45:{g=((f|0)==45)<<31>>31;f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0;p=g;break b}else{f=Ff(a)|0;p=g;break b}}default:p=0}while(0);g=(b|0)==0;do if((b|16|0)==16&(f|0)==48){f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;if((f|32|0)!=120)if(g){b=8;n=46;break}else{n=32;break}b=k[r>>2]|0;if(b>>>0<(k[q>>2]|0)>>>0){k[r>>2]=b+1;f=l[b>>0]|0}else f=Ff(a)|0;if((l[95850+f>>0]|0)>15){d=(k[q>>2]|0)==0;if(!d)k[r>>2]=(k[r>>2]|0)+-1;if(!c){Kh(a,0);e=0;d=0;break a}if(d){e=0;d=0;break a}k[r>>2]=(k[r>>2]|0)+-1;e=0;d=0;break a}else{b=16;n=46}}else{b=g?10:b;if((l[95850+f>>0]|0)>>>0<b>>>0)n=32;else{if(k[q>>2]|0)k[r>>2]=(k[r>>2]|0)+-1;Kh(a,0);e=Ai()|0;k[e>>2]=22;e=0;d=0;break a}}while(0);if((n|0)==32)if((b|0)==10){b=f+-48|0;if(b>>>0<10){f=0;while(1){g=(f*10|0)+b|0;b=k[r>>2]|0;if(b>>>0<(k[q>>2]|0)>>>0){k[r>>2]=b+1;f=l[b>>0]|0}else f=Ff(a)|0;b=f+-48|0;if(!(b>>>0<10&g>>>0<429496729)){b=g;break}else f=g}g=0}else{b=0;g=0}c=f+-48|0;if(c>>>0<10){while(1){h=Uh(b|0,g|0,10,0)|0;j=L;m=((c|0)<0)<<31>>31;o=~m;if(j>>>0>o>>>0|(j|0)==(o|0)&h>>>0>~c>>>0){h=b;break}b=zi(h|0,j|0,c|0,m|0)|0;g=L;f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;c=f+-48|0;if(!(c>>>0<10&(g>>>0<429496729|(g|0)==429496729&b>>>0<2576980378))){h=b;break}}if(c>>>0>9){f=h;b=p}else{b=10;n=72}}else{f=b;b=p}}else n=46;c:do if((n|0)==46){if(!(b+-1&b)){n=i[96106+((b*23|0)>>>5&7)>>0]|0;g=i[95850+f>>0]|0;c=g&255;if(c>>>0<b>>>0){f=0;while(1){h=c|f<<n;f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;g=i[95850+f>>0]|0;c=g&255;if(!(h>>>0<134217728&c>>>0<b>>>0))break;else f=h}c=0}else{c=0;h=0}j=ni(-1,-1,n|0)|0;m=L;if((g&255)>>>0>=b>>>0|(c>>>0>m>>>0|(c|0)==(m|0)&h>>>0>j>>>0)){g=c;n=72;break}else f=c;while(1){h=mi(h|0,f|0,n|0)|0;c=L;h=g&255|h;f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;g=i[95850+f>>0]|0;if((g&255)>>>0>=b>>>0|(c>>>0>m>>>0|(c|0)==(m|0)&h>>>0>j>>>0)){g=c;n=72;break c}else f=c}}g=i[95850+f>>0]|0;c=g&255;if(c>>>0<b>>>0){f=0;while(1){h=c+(ha(f,b)|0)|0;f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;g=i[95850+f>>0]|0;c=g&255;if(!(h>>>0<119304647&c>>>0<b>>>0))break;else f=h}c=0}else{h=0;c=0}if((g&255)>>>0<b>>>0){n=Ti(-1,-1,b|0,0)|0;o=L;m=c;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&h>>>0>n>>>0){g=m;n=72;break c}c=Uh(h|0,m|0,b|0,0)|0;j=L;g=g&255;if(j>>>0>4294967295|(j|0)==-1&c>>>0>~g>>>0){g=m;n=72;break c}h=zi(g|0,0,c|0,j|0)|0;c=L;f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;g=i[95850+f>>0]|0;if((g&255)>>>0>=b>>>0){g=c;n=72;break}else m=c}}else{g=c;n=72}}while(0);if((n|0)==72)if((l[95850+f>>0]|0)>>>0<b>>>0){do{f=k[r>>2]|0;if(f>>>0<(k[q>>2]|0)>>>0){k[r>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0}while((l[95850+f>>0]|0)>>>0<b>>>0);g=Ai()|0;k[g>>2]=34;g=e;f=d;b=(d&1|0)==0&0==0?p:0}else{f=h;b=p}if(k[q>>2]|0)k[r>>2]=(k[r>>2]|0)+-1;if(!(g>>>0<e>>>0|(g|0)==(e|0)&f>>>0<d>>>0)){if(!((d&1|0)!=0|0!=0|(b|0)!=0)){r=Ai()|0;k[r>>2]=34;d=zi(d|0,e|0,-1,-1)|0;e=L;break}if(g>>>0>e>>>0|(g|0)==(e|0)&f>>>0>d>>>0){r=Ai()|0;k[r>>2]=34;break}}d=((b|0)<0)<<31>>31;d=pi(f^b|0,g^d|0,b|0,d|0)|0;e=L}while(0);L=e;return d|0}function Kb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;t=r;r=r+80|0;p=t+40|0;n=t;b=n;c=b+40|0;do{k[b>>2]=0;b=b+4|0}while((b|0)<(c|0));s=a+60|0;b=k[s>>2]|0;a:do if((k[(k[a+332>>2]|0)+4152>>2]|0)!=720002228){if((b|0)>0){h=k[a+68>>2]|0;l=0;c=0;do{e=k[a+72+(k[h+(l*84|0)+16>>2]<<2)>>2]|0;if(!e){q=46;break a}if((k[e+128>>2]|0)==1){q=46;break a}g=p+(l<<2)|0;k[g>>2]=0;d=0;f=0;do{d=(d|0)!=(((m[e+(f<<1)>>1]|0)>255)<<31>>31|0)&1;f=f+1|0}while((f|0)!=64);k[g>>2]=d;c=d+c|0;l=l+1|0}while((l|0)<(b|0))}else c=0;o=a+24|0;b=k[o>>2]|0;h=k[b>>2]|0;k[b>>2]=h+1;i[h>>0]=-1;h=b+4|0;l=(k[h>>2]|0)+-1|0;k[h>>2]=l;if((l|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a)}b=k[o>>2]|0;h=k[b>>2]|0;k[b>>2]=h+1;i[h>>0]=-37;h=b+4|0;l=(k[h>>2]|0)+-1|0;k[h>>2]=l;if((l|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a)}e=k[s>>2]|0;if((e|0)>0){f=k[a+68>>2]|0;g=0;b=0;do{d=n+(k[f+(g*84|0)+16>>2]<<2)|0;if(!(k[d>>2]|0)){b=b+65+(k[p+(g<<2)>>2]<<6)|0;k[d>>2]=1}g=g+1|0}while((g|0)!=(e|0))}else b=0;d=b+2|0;b=k[o>>2]|0;l=k[b>>2]|0;k[b>>2]=l+1;i[l>>0]=d>>>8;l=b+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}b=k[o>>2]|0;l=k[b>>2]|0;k[b>>2]=l+1;i[l>>0]=d;l=b+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}b=k[s>>2]|0;if((b|0)>0){l=a+68|0;h=0;do{e=k[(k[l>>2]|0)+(h*84|0)+16>>2]|0;f=k[a+72+(e<<2)>>2]|0;g=f+128|0;if((k[g>>2]|0)!=1){b=k[p+(h<<2)>>2]|0;d=k[o>>2]|0;n=k[d>>2]|0;k[d>>2]=n+1;i[n>>0]=(b<<4)+e;e=d+4|0;n=(k[e>>2]|0)+-1|0;k[e>>2]=n;if((n|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}if(!b){d=0;do{b=k[o>>2]|0;n=j[f+(k[14344+(d<<2)>>2]<<1)>>1]&255;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=n;e=b+4|0;n=(k[e>>2]|0)+-1|0;k[e>>2]=n;if((n|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}d=d+1|0}while((d|0)!=64)}else{e=0;do{d=j[f+(k[14344+(e<<2)>>2]<<1)>>1]|0;b=k[o>>2]|0;u=k[b>>2]|0;k[b>>2]=u+1;i[u>>0]=(d&65535)>>>8;u=b+4|0;n=(k[u>>2]|0)+-1|0;k[u>>2]=n;if((n|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){u=k[a>>2]|0;k[u+20>>2]=24;$a[k[u>>2]&63](a)}b=k[o>>2]|0;n=k[b>>2]|0;k[b>>2]=n+1;i[n>>0]=d;n=b+4|0;u=(k[n>>2]|0)+-1|0;k[n>>2]=u;do if(!u){if(cb[k[b+12>>2]&15](a)|0)break;u=k[a>>2]|0;k[u+20>>2]=24;$a[k[u>>2]&63](a)}while(0);e=e+1|0}while((e|0)!=64)}k[g>>2]=1;b=k[s>>2]|0}h=h+1|0}while((h|0)<(b|0))}if((c|0)==-1)q=48;else h=c}else q=46;while(0);if((q|0)==46)q=48;if((q|0)==48)if((b|0)>0){d=0;e=k[a+68>>2]|0;b=0;while(1){c=(Mc(a,k[e+16>>2]|0)|0)+b|0;d=d+1|0;b=k[s>>2]|0;if((d|0)>=(b|0)){h=c;break}else{e=e+84|0;b=c}}}else h=0;g=a+180|0;f=a+228|0;c=(k[f>>2]|0)==0;b:do if(k[g>>2]|0)if(c)q=65;else q=64;else{c:do if(c){do if((k[a+56>>2]|0)==8){if((b|0)>0){d=0;e=k[a+68>>2]|0;c=1;while(1){if(!((k[e+20>>2]|0)<=1?(k[e+24>>2]|0)<=1:0))c=0;d=d+1|0;if((d|0)>=(b|0)){b=c;break}else e=e+84|0}}else b=1;if((h|0)!=0&(b|0)!=0){b=k[a>>2]|0;k[b+20>>2]=75;ab[k[b+4>>2]&31](a,0);b=(k[f>>2]|0)!=0;if(!(k[g>>2]|0))if(b)break c;else break;else if(b){q=64;break b}else{q=65;break b}}else{if(!b)break;ac(a,192);r=t;return}}while(0);ac(a,193);r=t;return}while(0);ac(a,194);r=t;return}while(0);if((q|0)==64){ac(a,202);r=t;return}else if((q|0)==65){ac(a,201);r=t;return}}function Lb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0;ia=k[a+428>>2]|0;ka=a+320|0;la=(k[ka>>2]|0)+-1|0;ma=k[ia+72>>2]|0;h=a+144|0;i=a+152|0;l=a+436|0;c=a+400|0;d=a+148|0;ja=a+156|0;while(1){e=k[h>>2]|0;f=k[i>>2]|0;if((e|0)>(f|0))break;g=k[l>>2]|0;if(k[g+20>>2]|0)break;if((e|0)==(f|0)?(k[d>>2]|0)>>>0>((k[ja>>2]|0)+((k[c>>2]|0)==0&1)|0)>>>0:0)break;if(!(cb[k[g>>2]&15](a)|0)){c=0;n=74;break}}if((n|0)==74)return c|0;X=a+36|0;if((k[X>>2]|0)>0){Y=a+4|0;Z=ia+116|0;_=a+448|0;$=ma+4|0;aa=ma+18|0;ba=ma+32|0;ca=ma+16|0;da=ma+2|0;fa=0;ga=k[a+216>>2]|0;while(1){if(k[ga+48>>2]|0){c=k[ja>>2]|0;d=ga+12|0;e=k[d>>2]|0;if(c>>>0<la>>>0){f=e<<1;ea=e;g=0}else{ea=((k[ga+32>>2]|0)>>>0)%(e>>>0)|0;ea=(ea|0)==0?e:ea;f=ea;g=1}if(!c){W=hb[k[(k[Y>>2]|0)+32>>2]&3](a,k[ia+76+(fa<<2)>>2]|0,0,f,0)|0;c=1}else{W=ha(e,c+-1|0)|0;W=hb[k[(k[Y>>2]|0)+32>>2]&3](a,k[ia+76+(fa<<2)>>2]|0,W,e+f|0,0)|0;W=W+(k[d>>2]<<2)|0;c=0}d=(k[Z>>2]|0)+(fa*6<<2)|0;e=k[ga+76>>2]|0;n=k[e>>2]|0;i=n&65535;n=n>>>16;f=k[e+16>>2]|0;l=f&65535;h=m[e+32>>1]|0;f=f>>>16;e=m[e+4>>1]|0;V=k[(k[_>>2]|0)+4+(fa<<2)>>2]|0;if((ea|0)>0){U=(c|0)!=0;S=(g|0)!=0;T=ea+-1|0;N=ga+28|0;O=d+4|0;P=d+8|0;Q=d+12|0;R=d+16|0;J=d+20|0;K=ga+36|0;L=i*9|0;M=e<<7;G=e<<8;H=i*5|0;I=f<<7;E=f<<8;F=h<<7;D=h<<8;B=i*36|0;C=l<<7;z=l<<8;A=n<<7;w=n<<8;x=0;y=k[b+(fa<<2)>>2]|0;while(1){c=k[W+(x<<2)>>2]|0;if(U&(x|0)==0)e=c;else e=k[W+(x+-1<<2)>>2]|0;if(S&(x|0)==(T|0))d=c;else d=k[W+(x+1<<2)>>2]|0;s=j[e>>1]|0;t=j[c>>1]|0;u=j[d>>1]|0;r=(k[N>>2]|0)+-1|0;g=s;i=t;h=u;v=0;q=c;p=0;while(1){Xi(q,ma,1);if(v>>>0<r>>>0){l=j[e+128>>1]|0;n=j[q+128>>1]|0;o=j[d+128>>1]|0}else{l=s;n=t;o=u}f=k[O>>2]|0;if(f|0?(j[da>>1]|0)==0:0){c=ha(B,i-n|0)|0;if((c|0)>-1){c=(c+A|0)/(w|0)|0;if((f|0)>0){f=1<<f;c=(c|0)<(f|0)?c:f+-1|0}}else{c=(A-c|0)/(w|0)|0;if((f|0)>0){f=1<<f;c=(c|0)<(f|0)?c:f+-1|0}c=0-c|0}j[da>>1]=c}f=k[P>>2]|0;if(f|0?(j[ca>>1]|0)==0:0){c=ha(B,s-u|0)|0;if((c|0)>-1){c=(c+C|0)/(z|0)|0;if((f|0)>0){f=1<<f;c=(c|0)<(f|0)?c:f+-1|0}}else{c=(C-c|0)/(z|0)|0;if((f|0)>0){f=1<<f;c=(c|0)<(f|0)?c:f+-1|0}c=0-c|0}j[ca>>1]=c}f=k[Q>>2]|0;if(f|0?(j[ba>>1]|0)==0:0){c=ha(L,s-(t<<1)+u|0)|0;do if((c|0)>-1){c=(c+F|0)/(D|0)|0;if((f|0)<=0)break;f=1<<f;c=(c|0)<(f|0)?c:f+-1|0}else{c=(F-c|0)/(D|0)|0;if((f|0)>0){f=1<<f;c=(c|0)<(f|0)?c:f+-1|0}c=0-c|0}while(0);j[ba>>1]=c}f=k[R>>2]|0;if(f|0?(j[aa>>1]|0)==0:0){c=ha(H,g-h-l+o|0)|0;do if((c|0)>-1){c=(c+I|0)/(E|0)|0;if((f|0)<=0)break;h=1<<f;c=(c|0)<(h|0)?c:h+-1|0}else{c=(I-c|0)/(E|0)|0;if((f|0)>0){h=1<<f;c=(c|0)<(h|0)?c:h+-1|0}c=0-c|0}while(0);j[aa>>1]=c}f=k[J>>2]|0;if(f|0?(j[$>>1]|0)==0:0){c=ha(L,i-(t<<1)+n|0)|0;do if((c|0)>-1){c=(c+M|0)/(G|0)|0;if((f|0)<=0)break;i=1<<f;c=(c|0)<(i|0)?c:i+-1|0}else{c=(M-c|0)/(G|0)|0;if((f|0)>0){i=1<<f;c=(c|0)<(i|0)?c:i+-1|0}c=0-c|0}while(0);j[$>>1]=c}_a[V&63](a,ga,ma,y,p);c=k[K>>2]|0;v=v+1|0;if(v>>>0>r>>>0)break;else{h=u;i=t;g=s;s=l;t=n;u=o;q=q+128|0;d=d+128|0;p=c+p|0;e=e+128|0}}x=x+1|0;if((x|0)==(ea|0))break;else y=y+(c<<2)|0}}}fa=fa+1|0;if((fa|0)>=(k[X>>2]|0))break;else ga=ga+84|0}}b=(k[ja>>2]|0)+1|0;k[ja>>2]=b;b=b>>>0<(k[ka>>2]|0)>>>0?3:4;return b|0}function Mb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;h=k[a+364>>2]|0;l=h+12|0;g=k[l>>2]|0;e=(k[h+16>>2]|0)+-1+g&-65536;e=((e|0)<(g|0)?e|32768:e)<<k[h+28>>2];k[l>>2]=e;g=h+32|0;b=k[g>>2]|0;if(e>>>0<=134217727){if(b){if((b|0)>-1){c=h+24|0;b=a+24|0;e=a+332|0;if(k[c>>2]|0)do{d=k[b>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(m=k[d>>2]|0,k[d>>2]=m+1,i[m>>0]=0,m=d+4|0,f=(k[m>>2]|0)+-1|0,k[m>>2]=f,(f|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}m=(k[c>>2]|0)+-1|0;k[c>>2]=m}while((m|0)!=0);b=k[b>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(m=k[g>>2]&255,g=k[b>>2]|0,k[b>>2]=g+1,i[g>>0]=m,g=b+4|0,m=(k[g>>2]|0)+-1|0,k[g>>2]=m,(m|0)==0):0)?(cb[k[b+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}}}else{m=h+24|0;k[m>>2]=(k[m>>2]|0)+1}f=h+20|0;if(k[f>>2]|0){b=h+24|0;d=a+24|0;e=a+332|0;if(k[b>>2]|0)do{c=k[d>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(g=k[c>>2]|0,k[c>>2]=g+1,i[g>>0]=0,g=c+4|0,m=(k[g>>2]|0)+-1|0,k[g>>2]=m,(m|0)==0):0)?(cb[k[c+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}m=(k[b>>2]|0)+-1|0;k[b>>2]=m}while((m|0)!=0);do{b=k[d>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(g=k[b>>2]|0,k[b>>2]=g+1,i[g>>0]=-1,g=b+4|0,m=(k[g>>2]|0)+-1|0,k[g>>2]=m,(m|0)==0):0)?(cb[k[b+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}b=k[d>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(g=k[b>>2]|0,k[b>>2]=g+1,i[g>>0]=0,g=b+4|0,m=(k[g>>2]|0)+-1|0,k[g>>2]=m,(m|0)==0):0)?(cb[k[b+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}m=(k[f>>2]|0)+-1|0;k[f>>2]=m}while((m|0)!=0)}}else{e=h+24|0;if((b|0)>-1){c=a+24|0;d=a+332|0;if(k[e>>2]|0)do{b=k[c>>2]|0;if(((k[(k[d>>2]|0)+44>>2]|0)==0?(n=k[b>>2]|0,k[b>>2]=n+1,i[n>>0]=0,n=b+4|0,m=(k[n>>2]|0)+-1|0,k[n>>2]=m,(m|0)==0):0)?(cb[k[b+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}n=(k[e>>2]|0)+-1|0;k[e>>2]=n}while((n|0)!=0);b=k[c>>2]|0;if(((k[(k[d>>2]|0)+44>>2]|0)==0?(n=(k[g>>2]|0)+1&255,m=k[b>>2]|0,k[b>>2]=m+1,i[m>>0]=n,m=b+4|0,n=(k[m>>2]|0)+-1|0,k[m>>2]=n,(n|0)==0):0)?(cb[k[b+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}if((((k[g>>2]|0)==254?(f=k[c>>2]|0,(k[(k[d>>2]|0)+44>>2]|0)==0):0)?(m=k[f>>2]|0,k[f>>2]=m+1,i[m>>0]=0,m=f+4|0,n=(k[m>>2]|0)+-1|0,k[m>>2]=n,(n|0)==0):0)?(cb[k[f+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}}n=h+20|0;k[e>>2]=(k[e>>2]|0)+(k[n>>2]|0);k[n>>2]=0}if(!(k[l>>2]&134215680))return;b=h+24|0;d=a+24|0;e=a+332|0;if(k[b>>2]|0)do{c=k[d>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(m=k[c>>2]|0,k[c>>2]=m+1,i[m>>0]=0,m=c+4|0,n=(k[m>>2]|0)+-1|0,k[m>>2]=n,(n|0)==0):0)?(cb[k[c+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}n=(k[b>>2]|0)+-1|0;k[b>>2]=n}while((n|0)!=0);b=k[d>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(n=(k[l>>2]|0)>>>19&255,m=k[b>>2]|0,k[b>>2]=m+1,i[m>>0]=n,m=b+4|0,n=(k[m>>2]|0)+-1|0,k[m>>2]=n,(n|0)==0):0)?(cb[k[b+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}if((((k[l>>2]&133693440|0)==133693440?(j=k[d>>2]|0,(k[(k[e>>2]|0)+44>>2]|0)==0):0)?(m=k[j>>2]|0,k[j>>2]=m+1,i[m>>0]=0,m=j+4|0,n=(k[m>>2]|0)+-1|0,k[m>>2]=n,(n|0)==0):0)?(cb[k[j+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}b=k[l>>2]|0;if(!(b&522240))return;c=k[d>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(m=k[c>>2]|0,k[c>>2]=m+1,i[m>>0]=b>>>11,m=c+4|0,n=(k[m>>2]|0)+-1|0,k[m>>2]=n,(n|0)==0):0)?(cb[k[c+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}if((k[l>>2]&522240|0)!=522240)return;b=k[d>>2]|0;if(k[(k[e>>2]|0)+44>>2]|0)return;m=k[b>>2]|0;k[b>>2]=m+1;i[m>>0]=0;m=b+4|0;n=(k[m>>2]|0)+-1|0;k[m>>2]=n;if(n|0)return;if(cb[k[b+12>>2]&15](a)|0)return;n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a);return}function Nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=r;r=r+256|0;x=E;D=k[a+364>>2]|0;w=k[a+320>>2]|0;d=k[a+328>>2]|0;B=a+24|0;A=k[B>>2]|0;C=D+16|0;k[C>>2]=k[A>>2];z=D+20|0;k[z>>2]=k[A+4>>2];A=a+200|0;if(k[A>>2]|0?(k[D+68>>2]|0)==0:0)xd(D,k[D+72>>2]|0);v=k[b>>2]|0;f=k[a+316>>2]|0;e=(f|0)>(w|0);if(!e){b=0;a=f;while(1){t=j[v+(k[14344+(a<<2)>>2]<<1)>>1]|0;u=t<<16>>16;u=(t<<16>>16<0?0-u|0:u)>>d;k[x+(a<<2)>>2]=u;b=(u|0)==1?a:b;if((a|0)<(w|0))a=a+1|0;else{t=b;break}}u=D+64|0;s=D+60|0;if(e){f=s;e=u;a=0;b=0}else{n=D+56|0;o=D+52|0;p=D+12|0;q=D+32|0;a=0;d=(k[u>>2]|0)+(k[s>>2]|0)|0;l=f;b=0;while(1){h=k[x+(l<<2)>>2]|0;do if(!h)b=b+1|0;else{if(!((l|0)>(t|0)|(b|0)<16))while(1){e=k[n>>2]|0;if(e|0){f=0;while(1){e=e>>1;if(!e){g=f;break}else f=f+1|0}if((g|0)>14){f=k[q>>2]|0;e=k[f>>2]|0;k[e+20>>2]=40;$a[k[e>>2]&63](f)}e=k[o>>2]|0;f=g<<4;if(!(k[p>>2]|0)){e=k[D+76+(e<<2)>>2]|0;xe(D,k[e+(f<<2)>>2]|0,i[e+1024+f>>0]|0)}else{f=(k[D+92+(e<<2)>>2]|0)+(f<<2)|0;k[f>>2]=(k[f>>2]|0)+1}if(g|0)xe(D,k[n>>2]|0,g);k[n>>2]=0;e=k[s>>2]|0;if((e|0)!=0&(k[p>>2]|0)==0){f=k[u>>2]|0;while(1){xe(D,i[f>>0]|0,1);e=e+-1|0;if(!e)break;else f=f+1|0}}k[s>>2]=0}e=k[o>>2]|0;if(!(k[p>>2]|0)){g=k[D+76+(e<<2)>>2]|0;xe(D,k[g+960>>2]|0,i[g+1264>>0]|0);b=b+-16|0;if((a|0)!=0&(k[p>>2]|0)==0)while(1){xe(D,i[d>>0]|0,1);a=a+-1|0;if(!a)break;else d=d+1|0}}else{g=(k[D+92+(e<<2)>>2]|0)+960|0;k[g>>2]=(k[g>>2]|0)+1;b=b+-16|0}d=k[u>>2]|0;if((b|0)<16){a=0;break}else a=0}if((h|0)>1){i[d+a>>0]=h&1;a=a+1|0;break}e=k[n>>2]|0;if(e|0){f=0;while(1){e=e>>1;if(!e){g=f;break}else f=f+1|0}if((g|0)>14){h=k[q>>2]|0;f=k[h>>2]|0;k[f+20>>2]=40;$a[k[f>>2]&63](h)}e=k[o>>2]|0;f=g<<4;if(!(k[p>>2]|0)){h=k[D+76+(e<<2)>>2]|0;xe(D,k[h+(f<<2)>>2]|0,i[h+1024+f>>0]|0)}else{h=(k[D+92+(e<<2)>>2]|0)+(f<<2)|0;k[h>>2]=(k[h>>2]|0)+1}if(g|0)xe(D,k[n>>2]|0,g);k[n>>2]=0;e=k[s>>2]|0;if((e|0)!=0&(k[p>>2]|0)==0){f=k[u>>2]|0;while(1){xe(D,i[f>>0]|0,1);e=e+-1|0;if(!e)break;else f=f+1|0}}k[s>>2]=0}e=k[o>>2]|0;b=b<<4|1;if(!(k[p>>2]|0)){h=k[D+76+(e<<2)>>2]|0;xe(D,k[h+(b<<2)>>2]|0,i[h+1024+b>>0]|0)}else{h=(k[D+92+(e<<2)>>2]|0)+(b<<2)|0;k[h>>2]=(k[h>>2]|0)+1}xe(D,(m[v+(k[14344+(l<<2)>>2]<<1)>>1]|0)>>>15&65535^1,1);if((a|0)!=0&(k[p>>2]|0)==0){b=d;while(1){xe(D,i[b>>0]|0,1);a=a+-1|0;if(!a)break;else b=b+1|0}}a=0;d=k[u>>2]|0;b=0}while(0);if((l|0)<(w|0))l=l+1|0;else{f=s;e=u;break}}}}else{f=D+60|0;e=D+64|0;a=0;b=0}if((a|0)!=0|(b|0)>0?(y=D+56|0,c=(k[y>>2]|0)+1|0,k[y>>2]=c,x=(k[f>>2]|0)+a|0,k[f>>2]=x,!(x>>>0<938&(c|0)!=32767|(c|0)==0)):0){b=0;while(1){c=c>>1;if(!c)break;else b=b+1|0}if((b|0)>14){x=k[D+32>>2]|0;w=k[x>>2]|0;k[w+20>>2]=40;$a[k[w>>2]&63](x)}c=k[D+52>>2]|0;a=b<<4;d=D+12|0;if(!(k[d>>2]|0)){x=k[D+76+(c<<2)>>2]|0;xe(D,k[x+(a<<2)>>2]|0,i[x+1024+a>>0]|0)}else{x=(k[D+92+(c<<2)>>2]|0)+(a<<2)|0;k[x>>2]=(k[x>>2]|0)+1}if(b|0)xe(D,k[y>>2]|0,b);k[y>>2]=0;b=k[f>>2]|0;if((b|0)!=0&(k[d>>2]|0)==0){c=k[e>>2]|0;while(1){xe(D,i[c>>0]|0,1);b=b+-1|0;if(!b)break;else c=c+1|0}}k[f>>2]=0}c=k[B>>2]|0;k[c>>2]=k[C>>2];k[c+4>>2]=k[z>>2];c=k[A>>2]|0;if(!c){r=E;return 1}a=D+68|0;b=k[a>>2]|0;if(!b){k[a>>2]=c;D=D+72|0;k[D>>2]=(k[D>>2]|0)+1&7}else c=b;k[a>>2]=c+-1;r=E;return 1}function Ob(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=r;r=r+288|0;E=F+256|0;C=F;D=k[a+444>>2]|0;u=k[a+404>>2]|0;w=k[a+412>>2]|0;v=1<<w;w=-1<<w;e=a+276|0;if(k[e>>2]|0?(c=D+40|0,(k[c>>2]|0)==0):0){A=D+16|0;B=k[a+440>>2]|0;z=B+24|0;k[z>>2]=(k[z>>2]|0)+((k[A>>2]|0)/8|0);k[A>>2]=0;if(!(cb[k[B+8>>2]&15](a)|0)){E=0;r=F;return E|0}d=a+328|0;if((k[d>>2]|0)>0){f=0;do{k[D+24+(f<<2)>>2]=0;f=f+1|0}while((f|0)<(k[d>>2]|0))}k[D+20>>2]=0;k[c>>2]=k[e>>2];if(!(k[a+416>>2]|0))k[D+8>>2]=0}do if(!(k[D+8>>2]|0)){k[E+16>>2]=a;x=a+24|0;z=k[x>>2]|0;k[E>>2]=k[z>>2];y=E+4|0;k[y>>2]=k[z+4>>2];z=D+12|0;c=k[z>>2]|0;A=D+16|0;d=k[A>>2]|0;B=D+20|0;e=k[B>>2]|0;p=k[b>>2]|0;i=k[D+60>>2]|0;b=k[a+400>>2]|0;a:do if(!e)if((b|0)<=(u|0)){o=E+8|0;n=E+12|0;f=c;c=0;b:while(1){if((d|0)<8){if(!(Pd(E,f,d,0)|0))break a;f=k[o>>2]|0;d=k[n>>2]|0;if((d|0)<8){e=1;q=18}else q=16}else q=16;if((q|0)==16){q=0;g=k[i+148+((f>>d+-8&255)<<2)>>2]|0;e=g>>8;if((e|0)<9){d=d-e|0;e=g&255}else q=18}if((q|0)==18){q=0;e=ff(E,f,d,i,e)|0;if((e|0)<0)break a;d=k[n>>2]|0;f=k[o>>2]|0}g=e>>4;switch(e&15|0){case 0:{if((g|0)==15){g=15;h=0}else break b;break}case 1:{q=22;break}default:{q=k[a>>2]|0;k[q+20>>2]=118;ab[k[q+4>>2]&31](a,-1);q=22}}if((q|0)==22){q=0;if((d|0)<1){if(!(Pd(E,f,d,1)|0))break a;d=k[n>>2]|0;e=k[o>>2]|0}else e=f;h=d+-1|0;d=h;f=e;h=(1<<h&e|0)==0?w:v}c:while(1){e=p+(k[14344+(b<<2)>>2]<<1)|0;do if(!(j[e>>1]|0))if((g|0)<1)break c;else g=g+-1|0;else{if((d|0)<1){if(!(Pd(E,f,d,1)|0))break a;d=k[n>>2]|0;f=k[o>>2]|0}d=d+-1|0;if((1<<d&f|0)!=0?(l=j[e>>1]|0,m=l<<16>>16,(m&v|0)==0):0)if(l<<16>>16>-1){j[e>>1]=m+v;break}else{j[e>>1]=m+w;break}}while(0);e=b+1|0;if((b|0)<(u|0))b=e;else{b=e;break}}if(h){g=k[14344+(b<<2)>>2]|0;j[p+(g<<1)>>1]=h;k[C+(c<<2)>>2]=g;c=c+1|0}if((b|0)<(u|0))b=b+1|0;else{e=0;c=f;q=60;break a}}e=1<<g;if(g){if((d|0)<(g|0)){if(!(Pd(E,f,d,g)|0))break;d=k[n>>2]|0;f=k[o>>2]|0}d=d-g|0;e=(f>>d&e+-1)+e|0;if(!e){e=0;c=f;q=60}else q=47}else q=47}else{e=0;q=60}else{f=c;c=0;q=47}while(0);d:do if((q|0)==47){if((b|0)>(u|0))c=f;else{h=E+8|0;i=E+12|0;while(1){g=p+(k[14344+(b<<2)>>2]<<1)|0;do if(j[g>>1]|0){if((d|0)<1){if(!(Pd(E,f,d,1)|0))break d;d=k[i>>2]|0;f=k[h>>2]|0}d=d+-1|0;if((1<<d&f|0)!=0?(s=j[g>>1]|0,t=s<<16>>16,(t&v|0)==0):0)if(s<<16>>16>-1){j[g>>1]=t+v;break}else{j[g>>1]=t+w;break}}while(0);if((b|0)<(u|0))b=b+1|0;else{c=f;break}}}e=e+-1|0;q=60}while(0);if((q|0)==60){C=k[x>>2]|0;k[C>>2]=k[E>>2];k[C+4>>2]=k[y>>2];k[z>>2]=c;k[A>>2]=d;k[B>>2]=e;break}if((c|0)<=0){E=0;r=F;return E|0}do{E=c;c=c+-1|0;j[p+(k[C+(c<<2)>>2]<<1)>>1]=0}while((E|0)>1);c=0;r=F;return c|0}while(0);E=D+40|0;k[E>>2]=(k[E>>2]|0)+-1;E=1;r=F;return E|0}function Pb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0;j=k[a+364>>2]|0;e=l[b>>0]|0;f=k[14764+((e&127)<<2)>>2]|0;g=f>>>8;h=f>>16;p=j+16|0;d=(k[p>>2]|0)-h|0;k[p>>2]=d;if((e>>>7|0)==(c|0)){if((d|0)>32767)return;if((d|0)<(h|0)){o=j+12|0;k[o>>2]=(k[o>>2]|0)+d;k[p>>2]=h}d=e&128^g}else{if((d|0)>=(h|0)){o=j+12|0;k[o>>2]=(k[o>>2]|0)+d;k[p>>2]=h}d=e&128^f}i[b>>0]=d;h=j+12|0;c=j+28|0;b=j+32|0;m=j+24|0;n=a+24|0;o=a+332|0;g=j+20|0;f=k[p>>2]|0;d=k[h>>2]|0;e=k[c>>2]|0;do{f=f<<1;k[p>>2]=f;d=d<<1;k[h>>2]=d;e=e+-1|0;k[c>>2]=e;if(!e){e=d>>19;do if((e|0)>255){if((k[b>>2]|0)>-1){if(k[m>>2]|0)do{d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=0,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}j=(k[m>>2]|0)+-1|0;k[m>>2]=j}while((j|0)!=0);d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(j=(k[b>>2]|0)+1&255,f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=j,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}if((((k[b>>2]|0)==254?(q=k[n>>2]|0,(k[(k[o>>2]|0)+44>>2]|0)==0):0)?(f=k[q>>2]|0,k[q>>2]=f+1,i[f>>0]=0,f=q+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[q+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}}k[m>>2]=(k[m>>2]|0)+(k[g>>2]|0);k[g>>2]=0;k[b>>2]=e&255}else{if((e|0)==255){k[g>>2]=(k[g>>2]|0)+1;break}d=k[b>>2]|0;if(d){if((d|0)>-1){if(k[m>>2]|0)do{d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=0,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}j=(k[m>>2]|0)+-1|0;k[m>>2]=j}while((j|0)!=0);d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(j=k[b>>2]&255,f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=j,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}}}else k[m>>2]=(k[m>>2]|0)+1;if(k[g>>2]|0){if(k[m>>2]|0)do{d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=0,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}j=(k[m>>2]|0)+-1|0;k[m>>2]=j}while((j|0)!=0);do{d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=-1,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}d=k[n>>2]|0;if(((k[(k[o>>2]|0)+44>>2]|0)==0?(f=k[d>>2]|0,k[d>>2]=f+1,i[f>>0]=0,f=d+4|0,j=(k[f>>2]|0)+-1|0,k[f>>2]=j,(j|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}j=(k[g>>2]|0)+-1|0;k[g>>2]=j}while((j|0)!=0)}k[b>>2]=e&255}while(0);d=k[h>>2]&524287;k[h>>2]=d;e=(k[c>>2]|0)+8|0;k[c>>2]=e;f=k[p>>2]|0}}while((f|0)<32768);return}function Qb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;I=a+344|0;d=k[I>>2]|0;D=(k[a+264>>2]|0)+-1|0;M=a+240|0;F=(k[M>>2]|0)+-1|0;K=d+16|0;c=k[K>>2]|0;x=d+20|0;f=k[x>>2]|0;do if((c|0)<(f|0)){J=d+12|0;e=a+244|0;A=a+364|0;B=d+24|0;H=d+8|0;C=a+360|0;g=k[J>>2]|0;a:while(1){if(g>>>0<=D>>>0){w=c<<3;v=g;do{f=k[e>>2]|0;if((f|0)>0)if(v>>>0<D>>>0){g=0;u=0;do{p=k[a+248+(u<<2)>>2]|0;q=p+52|0;r=k[q>>2]|0;s=ha(k[p+64>>2]|0,v)|0;t=p+56|0;if((k[t>>2]|0)>0){o=p+4|0;n=p+72|0;f=r;l=0;m=w;while(1){if((k[H>>2]|0)>>>0>=F>>>0?(l+c|0)>=(k[n>>2]|0):0){vj(k[d+24+(g<<2)>>2]|0,f<<7);f=k[q>>2]|0;if((f|0)>0){h=k[d+24+(g+-1<<2)>>2]|0;i=0;do{j[k[d+24+(i+g<<2)>>2]>>1]=j[h>>1]|0;i=i+1|0}while((i|0)<(f|0))}}else L=15;if(((L|0)==15?(L=0,eb[k[(k[C>>2]|0)+4>>2]&3](a,p,k[b+(k[o>>2]<<2)>>2]|0,k[d+24+(g<<2)>>2]|0,m,s,r,0),E=k[q>>2]|0,(E|0)>(r|0)):0)?(vj(k[d+24+(g+r<<2)>>2]|0,E-r<<7),G=k[q>>2]|0,(r|0)<(G|0)):0){f=r;do{i=f+g|0;j[k[d+24+(i<<2)>>2]>>1]=j[k[d+24+(i+-1<<2)>>2]>>1]|0;f=f+1|0}while((f|0)<(G|0))}f=k[q>>2]|0;g=f+g|0;l=l+1|0;if((l|0)>=(k[t>>2]|0))break;else m=m+8|0}f=k[e>>2]|0}u=u+1|0}while((u|0)<(f|0))}else{g=0;u=0;do{q=k[a+248+(u<<2)>>2]|0;r=q+52|0;s=k[q+68>>2]|0;t=ha(k[q+64>>2]|0,v)|0;p=q+56|0;if((k[p>>2]|0)>0){n=q+4|0;o=q+72|0;l=0;m=w;while(1){if((k[H>>2]|0)>>>0>=F>>>0?(l+c|0)>=(k[o>>2]|0):0){vj(k[d+24+(g<<2)>>2]|0,k[r>>2]<<7);f=k[r>>2]|0;if((f|0)>0){h=k[d+24+(g+-1<<2)>>2]|0;i=0;do{j[k[d+24+(i+g<<2)>>2]>>1]=j[h>>1]|0;i=i+1|0}while((i|0)<(f|0))}}else L=25;if(((L|0)==25?(L=0,eb[k[(k[C>>2]|0)+4>>2]&3](a,q,k[b+(k[n>>2]<<2)>>2]|0,k[d+24+(g<<2)>>2]|0,m,t,s,0),y=k[r>>2]|0,(y|0)>(s|0)):0)?(vj(k[d+24+(g+s<<2)>>2]|0,y-s<<7),z=k[r>>2]|0,(s|0)<(z|0)):0){f=s;do{i=f+g|0;j[k[d+24+(i<<2)>>2]>>1]=j[k[d+24+(i+-1<<2)>>2]>>1]|0;f=f+1|0}while((f|0)<(z|0))}g=(k[r>>2]|0)+g|0;l=l+1|0;if((l|0)>=(k[p>>2]|0))break;else m=m+8|0}f=k[e>>2]|0}u=u+1|0}while((u|0)<(f|0))}if(!(gb[k[(k[A>>2]|0)+4>>2]&63](a,B)|0)){d=v;break a}v=v+1|0}while(v>>>0<=D>>>0);f=k[x>>2]|0}k[J>>2]=0;c=c+1|0;if((c|0)>=(f|0)){L=39;break}else g=0}if((L|0)==39){c=H;d=k[I>>2]|0;break}k[K>>2]=c;k[J>>2]=d;M=0;return M|0}else{e=a+244|0;c=d+8|0}while(0);k[c>>2]=(k[c>>2]|0)+1;do if((k[e>>2]|0)<=1){c=k[a+248>>2]|0;if((k[d+8>>2]|0)>>>0<((k[M>>2]|0)+-1|0)>>>0){k[d+20>>2]=k[c+12>>2];break}else{k[d+20>>2]=k[c+72>>2];break}}else k[d+20>>2]=1;while(0);k[d+12>>2]=0;k[d+16>>2]=0;M=1;return M|0}function Rb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;l=r;r=r+512|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){s=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;w=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;m=w*10703|0;w=w*4433|0;A=m+s|0;m=s-m|0;y=w+s|0;w=s-w|0;s=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;u=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;o=s-u|0;C=o*2260|0;o=o*11363|0;n=o+(u*20995|0)|0;p=C+(s*7373|0)|0;s=o+(ha(s,-4926)|0)|0;u=C+(ha(u,-4176)|0)|0;C=n+A|0;n=A-n|0;A=p+y|0;p=y-p|0;y=s+w|0;s=w-s|0;w=u+m|0;u=m-u|0;m=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;o=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;E=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;G=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;D=E+m|0;z=(o+m|0)*11086|0;x=D*10217|0;q=(G+m|0)*8956|0;t=(m-G|0)*7350|0;D=D*5461|0;v=(m-o|0)*3363|0;B=z+(ha(m,-18730)|0)+x+q|0;m=v+(ha(m,-15038)|0)+D+t|0;J=(E+o|0)*1136|0;F=(E-o|0)*11529|0;H=G+o|0;I=ha(H,-5461)|0;z=z+(o*589|0)+J+I|0;H=ha(H,-10217)|0;o=v+(o*16154|0)+F+H|0;v=ha(G+E|0,-11086)|0;x=J+(ha(E,-9222)|0)+x+v|0;v=I+(G*8728|0)+q+v|0;q=(G-E|0)*3363|0;t=H+(G*25733|0)+t+q|0;q=F+(ha(E,-6278)|0)+D+q|0;k[b>>2]=B+C>>11;k[b+480>>2]=C-B>>11;k[b+32>>2]=z+A>>11;k[b+448>>2]=A-z>>11;k[b+64>>2]=x+y>>11;k[b+416>>2]=y-x>>11;k[b+96>>2]=v+w>>11;k[b+384>>2]=w-v>>11;k[b+128>>2]=t+u>>11;k[b+352>>2]=u-t>>11;k[b+160>>2]=q+s>>11;k[b+320>>2]=s-q>>11;k[b+192>>2]=o+p>>11;k[b+288>>2]=p-o>>11;k[b+224>>2]=m+n>>11;k[b+256>>2]=n-m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){J=(k[d+(c<<2)>>2]|0)+e|0;D=(k[f>>2]<<13)+131072|0;z=k[f+16>>2]|0;I=z*10703|0;z=z*4433|0;v=D+I|0;I=D-I|0;x=D+z|0;z=D-z|0;D=k[f+8>>2]|0;B=k[f+24>>2]|0;G=D-B|0;t=G*2260|0;G=G*11363|0;H=G+(B*20995|0)|0;F=t+(D*7373|0)|0;D=G+(ha(D,-4926)|0)|0;B=t+(ha(B,-4176)|0)|0;t=H+v|0;H=v-H|0;v=F+x|0;F=x-F|0;x=D+z|0;D=z-D|0;z=B+I|0;B=I-B|0;I=k[f+4>>2]|0;G=k[f+12>>2]|0;q=k[f+20>>2]|0;o=k[f+28>>2]|0;s=q+I|0;w=(G+I|0)*11086|0;y=s*10217|0;E=(o+I|0)*8956|0;C=(I-o|0)*7350|0;s=s*5461|0;A=(I-G|0)*3363|0;u=w+(ha(I,-18730)|0)+y+E|0;I=A+(ha(I,-15038)|0)+s+C|0;h=(q+G|0)*1136|0;p=(q-G|0)*11529|0;n=o+G|0;m=ha(n,-5461)|0;w=w+(G*589|0)+h+m|0;n=ha(n,-10217)|0;G=A+(G*16154|0)+p+n|0;A=ha(o+q|0,-11086)|0;y=h+(ha(q,-9222)|0)+y+A|0;A=m+(o*8728|0)+E+A|0;E=(o-q|0)*3363|0;C=n+(o*25733|0)+C+E|0;E=p+(ha(q,-6278)|0)+s+E|0;i[J>>0]=i[a+((u+t|0)>>>18&1023)>>0]|0;i[J+15>>0]=i[a+((t-u|0)>>>18&1023)>>0]|0;i[J+1>>0]=i[a+((w+v|0)>>>18&1023)>>0]|0;i[J+14>>0]=i[a+((v-w|0)>>>18&1023)>>0]|0;i[J+2>>0]=i[a+((y+x|0)>>>18&1023)>>0]|0;i[J+13>>0]=i[a+((x-y|0)>>>18&1023)>>0]|0;i[J+3>>0]=i[a+((A+z|0)>>>18&1023)>>0]|0;i[J+12>>0]=i[a+((z-A|0)>>>18&1023)>>0]|0;i[J+4>>0]=i[a+((C+B|0)>>>18&1023)>>0]|0;i[J+11>>0]=i[a+((B-C|0)>>>18&1023)>>0]|0;i[J+5>>0]=i[a+((E+D|0)>>>18&1023)>>0]|0;i[J+10>>0]=i[a+((D-E|0)>>>18&1023)>>0]|0;i[J+6>>0]=i[a+((G+F|0)>>>18&1023)>>0]|0;i[J+9>>0]=i[a+((F-G|0)>>>18&1023)>>0]|0;i[J+7>>0]=i[a+((I+H|0)>>>18&1023)>>0]|0;i[J+8>>0]=i[a+((H-I|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==16)break;else f=f+32|0}r=l;return}function Sb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0;switch(k[a+44>>2]|0){case 6:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){g=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[l>>2]|0)+(c<<2)>>2]|0;f=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j>>0]=i[g+h>>0]|0;i[j+1>>0]=i[e+h>>0]|0;i[j+2>>0]=i[f+h>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 12:case 7:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[l>>2]|0)+(c<<2)>>2]|0;g=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j>>0]=i[e+h>>0]|0;i[j+1>>0]=i[f+h>>0]|0;i[j+2>>0]=i[g+h>>0]|0;i[j+3>>0]=-1;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 8:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[l>>2]|0)+(c<<2)>>2]|0;g=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j+2>>0]=i[e+h>>0]|0;i[j+1>>0]=i[f+h>>0]|0;i[j>>0]=i[g+h>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 13:case 9:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[l>>2]|0)+(c<<2)>>2]|0;g=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j+2>>0]=i[e+h>>0]|0;i[j+1>>0]=i[f+h>>0]|0;i[j>>0]=i[g+h>>0]|0;i[j+3>>0]=-1;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 14:case 10:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[l>>2]|0)+(c<<2)>>2]|0;g=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j+3>>0]=i[e+h>>0]|0;i[j+2>>0]=i[f+h>>0]|0;i[j+1>>0]=i[g+h>>0]|0;i[j>>0]=-1;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 15:case 11:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[l>>2]|0)+(c<<2)>>2]|0;g=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j+1>>0]=i[e+h>>0]|0;i[j+2>>0]=i[f+h>>0]|0;i[j+3>>0]=i[g+h>>0]|0;i[j>>0]=-1;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}default:{n=k[a+112>>2]|0;if((e|0)<=0)return;l=b+4|0;m=b+8|0;if(!n)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[l>>2]|0)+(c<<2)>>2]|0;g=k[(k[m>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){i[j>>0]=i[e+h>>0]|0;i[j+1>>0]=i[f+h>>0]|0;i[j+2>>0]=i[g+h>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}}}function Tb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+4|0;o=k[q>>2]|0;e=o+68|0;b=k[e>>2]|0;if(!b){c=0;d=0}else{c=0;d=0;do{if(!(k[b>>2]|0)){p=k[b+8>>2]|0;d=(ha(p,k[b+12>>2]|0)|0)+d|0;c=(ha(k[b+4>>2]|0,p)|0)+c|0}b=k[b+44>>2]|0}while((b|0)!=0)}n=o+72|0;b=k[n>>2]|0;if(b)do{if(!(k[b>>2]|0)){p=k[b+8>>2]|0;d=(ha(k[b+12>>2]<<7,p)|0)+d|0;c=(ha(p<<7,k[b+4>>2]|0)|0)+c|0}b=k[b+44>>2]|0}while((b|0)!=0);if(!d)return;b=hj(a,d,c,k[o+76>>2]|0)|0;if(b>>>0<c>>>0){p=(b>>>0)/(d>>>0)|0;p=(p|0)==0?1:p}else p=1e9;b=k[e>>2]|0;if(b|0){m=o+80|0;do{if(!(k[b>>2]|0)){d=k[b+4>>2]|0;c=k[b+12>>2]|0;if(((((d+-1|0)>>>0)/(c>>>0)|0)+1|0)>>>0>p>>>0){c=ha(c,p)|0;l=b+16|0;k[l>>2]=c;c=b+8|0;vi(a,b+48|0,ha(k[c>>2]|0,d)|0);k[b+40>>2]=1;d=k[l>>2]|0}else{k[b+16>>2]=d;c=b+8|0}f=k[q>>2]|0;l=(k[c>>2]|0)+15&-16;c=999999988/(l>>>0)|0;if(!c){j=k[a>>2]|0;k[j+20>>2]=70;$a[k[j>>2]&63](a)}e=(c|0)<(d|0)?c:d;k[f+80>>2]=e;j=re(a,1,d<<2)|0;if(d|0){c=0;do{f=d-c|0;e=e>>>0<f>>>0?e:f;f=ha(e,l)|0;g=k[q>>2]|0;h=f+19|0;if(h>>>0>1e9){i=k[a>>2]|0;k[i+20>>2]=54;k[i+24>>2]=3;$a[k[i>>2]&63](a)}i=Dj(a,h)|0;if(!i){r=k[a>>2]|0;k[r+20>>2]=54;k[r+24>>2]=4;$a[k[r>>2]&63](a)}r=g+76|0;k[r>>2]=(k[r>>2]|0)+h;g=g+64|0;k[i>>2]=k[g>>2];k[i+4>>2]=f;k[i+8>>2]=0;k[g>>2]=i;f=i+12|0;g=f&7;if(e){h=c;i=e;f=(g|0)==0?f:f+(8-g)|0;while(1){c=h+1|0;k[j+(h<<2)>>2]=f;i=i+-1|0;if(!i)break;else{h=c;f=f+l|0}}}}while(c>>>0<d>>>0)}k[b>>2]=j;k[b+20>>2]=k[m>>2];k[b+24>>2]=0;k[b+28>>2]=0;k[b+36>>2]=0}b=k[b+44>>2]|0}while((b|0)!=0)}b=k[n>>2]|0;if(!b)return;n=o+80|0;do{if(!(k[b>>2]|0)){d=k[b+4>>2]|0;c=k[b+12>>2]|0;if(((((d+-1|0)>>>0)/(c>>>0)|0)+1|0)>>>0>p>>>0){c=ha(c,p)|0;r=b+16|0;k[r>>2]=c;c=b+8|0;vi(a,b+48|0,ha(d<<7,k[c>>2]|0)|0);k[b+40>>2]=1;d=k[r>>2]|0}else{k[b+16>>2]=d;c=b+8|0}l=k[c>>2]|0;e=k[q>>2]|0;m=l<<7;c=999999988/(m>>>0)|0;if(!c){r=k[a>>2]|0;k[r+20>>2]=70;$a[k[r>>2]&63](a)}f=(c|0)<(d|0)?c:d;k[e+80>>2]=f;j=re(a,1,d<<2)|0;if(d|0){c=0;do{e=d-c|0;f=f>>>0<e>>>0?f:e;e=ha(f,m)|0;g=k[q>>2]|0;h=e|19;if(h>>>0>1e9){r=k[a>>2]|0;k[r+20>>2]=54;k[r+24>>2]=3;$a[k[r>>2]&63](a)}i=Dj(a,h)|0;if(!i){r=k[a>>2]|0;k[r+20>>2]=54;k[r+24>>2]=4;$a[k[r>>2]&63](a)}r=g+76|0;k[r>>2]=(k[r>>2]|0)+h;g=g+64|0;k[i>>2]=k[g>>2];k[i+4>>2]=e;k[i+8>>2]=0;k[g>>2]=i;e=i+12|0;g=e&7;if(f){h=c;i=f;e=(g|0)==0?e:e+(8-g)|0;while(1){c=h+1|0;k[j+(h<<2)>>2]=e;i=i+-1|0;if(!i)break;else{h=c;e=e+(l<<7)|0}}}}while(c>>>0<d>>>0)}k[b>>2]=j;k[b+20>>2]=k[n>>2];k[b+24>>2]=0;k[b+28>>2]=0;k[b+36>>2]=0}b=k[b+44>>2]|0}while((b|0)!=0);return}function Ub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0;switch(k[a+40>>2]|0){case 6:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){g=k[(k[c>>2]|0)+(d<<2)>>2]|0;e=k[(k[l>>2]|0)+(d<<2)>>2]|0;f=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[g+h>>0]=i[j>>0]|0;i[e+h>>0]=i[j+1>>0]|0;i[f+h>>0]=i[j+2>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 12:case 7:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[l>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[e+h>>0]=i[j>>0]|0;i[f+h>>0]=i[j+1>>0]|0;i[g+h>>0]=i[j+2>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 8:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[l>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[e+h>>0]=i[j+2>>0]|0;i[f+h>>0]=i[j+1>>0]|0;i[g+h>>0]=i[j>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 13:case 9:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[l>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[e+h>>0]=i[j+2>>0]|0;i[f+h>>0]=i[j+1>>0]|0;i[g+h>>0]=i[j>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 14:case 10:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[l>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[e+h>>0]=i[j+3>>0]|0;i[f+h>>0]=i[j+2>>0]|0;i[g+h>>0]=i[j+1>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 15:case 11:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[l>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[e+h>>0]=i[j+1>>0]|0;i[f+h>>0]=i[j+2>>0]|0;i[g+h>>0]=i[j+3>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}default:{n=k[a+28>>2]|0;if((e|0)<=0)return;l=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[l>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[e+h>>0]=i[j>>0]|0;i[f+h>>0]=i[j+1>>0]|0;i[g+h>>0]=i[j+2>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}}}function Vb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;t=r;r=r+32|0;n=t;s=b+12|0;if((pf(n,1,18,k[s>>2]|0)|0)!=18){q=k[a>>2]|0;k[q+20>>2]=43;$a[k[q>>2]&63](a)}c=n+16|0;d=i[c>>0]|0;if(d<<24>>24==15){i[c>>0]=16;d=16}j=i[n>>0]|0;c=j&255;m=i[n+1>>0]|0;f=i[n+2>>0]|0;e=f&255;o=l[n+6>>0]<<8|l[n+5>>0];p=l[n+13>>0]<<8|l[n+12>>0];q=l[n+15>>0]<<8|l[n+14>>0];v=(d&255)>>>3;g=b+52|0;k[g>>2]=v;u=l[n+17>>0]|0;h=(u&32|0)==0;if(!(!((d&255)>39|((m&255)>1|(v|0)==0))?!((q|0)==0|((p|0)==0|((u&192|0)!=0|(d&7)!=0))):0)){v=k[a>>2]|0;k[v+20>>2]=1035;$a[k[v>>2]&63](a)}d=b+44|0;if((f&255)>8){k[d>>2]=1;k[b+60>>2]=0;k[b+56>>2]=0;e=e+-8|0}else k[d>>2]=2;d=a+40|0;k[d>>2]=2;switch(e|0){case 1:{if(m<<24>>24==1&(k[g>>2]|0)==1){k[b+64>>2]=13;d=a;e=a}else{d=k[a>>2]|0;k[d+20>>2]=1035;$a[k[d>>2]&63](a);d=a;e=a}g=k[e>>2]|0;k[g+20>>2]=1039;k[g+24>>2]=p;k[g+28>>2]=q;ab[k[g+4>>2]&31](d,1);g=3;break}case 2:{switch(k[g>>2]|0){case 2:{k[b+64>>2]=14;break}case 3:{k[b+64>>2]=15;break}case 4:{k[b+64>>2]=15;break}default:{v=k[a>>2]|0;k[v+20>>2]=1035;$a[k[v>>2]&63](a)}}g=k[a>>2]|0;k[g+20>>2]=1037;k[g+24>>2]=p;k[g+28>>2]=q;ab[k[g+4>>2]&31](a,1);g=3;break}case 3:{k[d>>2]=1;if((k[g>>2]|0)==1){k[b+64>>2]=16;d=a;e=a}else{d=k[a>>2]|0;k[d+20>>2]=1035;$a[k[d>>2]&63](a);d=a;e=a}g=k[d>>2]|0;k[g+20>>2]=1038;k[g+24>>2]=p;k[g+28>>2]=q;ab[k[g+4>>2]&31](e,1);g=1;break}default:{g=k[a>>2]|0;k[g+20>>2]=1035;$a[k[g>>2]&63](a);g=3}}if(h){d=ha(g,p)|0;d=bb[k[(k[a+4>>2]|0)+16>>2]&3](a,1,0,d,q,1)|0;k[b+36>>2]=d;d=k[a+8>>2]|0;if(d|0){v=d+24|0;k[v>>2]=(k[v>>2]|0)+1}k[b+20>>2]=1;k[b+4>>2]=17}else{k[b+36>>2]=0;v=ha(g,p)|0;v=fb[k[(k[a+4>>2]|0)+8>>2]&3](a,1,v,1)|0;k[b+16>>2]=v;k[b+20>>2]=1;k[b+4>>2]=k[b+64>>2]}if(j<<24>>24){d=b+28|0;do{c=c+-1|0;if((Wg(k[s>>2]|0)|0)==-1){v=k[d>>2]|0;u=k[v>>2]|0;k[u+20>>2]=43;$a[k[u>>2]&63](v)}}while((c|0)!=0)}if(!o){if(m<<24>>24){v=k[a>>2]|0;k[v+20>>2]=1035;$a[k[v>>2]&63](a)}k[b+32>>2]=0;v=a+36|0;k[v>>2]=g;v=a+56|0;k[v>>2]=8;v=a+28|0;k[v>>2]=p;v=a+32|0;k[v>>2]=q;r=t;return}if(o>>>0<=256?(l[n+4>>0]<<8|l[n+3>>0]|0)==0:0)c=a;else{c=k[a>>2]|0;k[c+20>>2]=1034;$a[k[c>>2]&63](a);c=a}v=fb[k[(k[a+4>>2]|0)+8>>2]&3](c,1,o,3)|0;f=b+32|0;k[f>>2]=v;if((i[n+7>>0]|0)!=24){v=k[b+28>>2]|0;u=k[v>>2]|0;k[u+20>>2]=1034;$a[k[u>>2]&63](v)}d=b+28|0;e=0;do{c=Wg(k[s>>2]|0)|0;if((c|0)==-1){v=k[d>>2]|0;u=k[v>>2]|0;k[u+20>>2]=43;$a[k[u>>2]&63](v)}i[(k[(k[f>>2]|0)+8>>2]|0)+e>>0]=c;c=Wg(k[s>>2]|0)|0;if((c|0)==-1){v=k[d>>2]|0;u=k[v>>2]|0;k[u+20>>2]=43;$a[k[u>>2]&63](v)}i[(k[(k[f>>2]|0)+4>>2]|0)+e>>0]=c;c=Wg(k[s>>2]|0)|0;if((c|0)==-1){v=k[d>>2]|0;u=k[v>>2]|0;k[u+20>>2]=43;$a[k[u>>2]&63](v)}i[(k[k[f>>2]>>2]|0)+e>>0]=c;e=e+1|0}while((e|0)!=(o|0));v=a+36|0;k[v>>2]=g;v=a+56|0;k[v>>2]=8;v=a+28|0;k[v>>2]=p;v=a+32|0;k[v>>2]=q;r=t;return}function Wb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;s=k[a+360>>2]|0;u=a+60|0;if((k[u>>2]|0)<=0)return;v=a+196|0;w=a+4|0;x=s+20|0;y=0;z=k[a+68>>2]|0;while(1){c=k[z+16>>2]|0;b=a+72+(c<<2)|0;if(c>>>0<=3?(t=k[b>>2]|0,(t|0)!=0):0)r=t;else{r=k[a>>2]|0;k[r+20>>2]=52;k[r+24>>2]=c;$a[k[r>>2]&63](a);r=k[b>>2]|0}switch(k[v>>2]|0){case 0:{b=s+24+(c<<2)|0;c=k[b>>2]|0;if(!c){c=Ya[k[k[w>>2]>>2]&15](a,1,1024)|0;k[b>>2]=c}q=0;do{l=m[r+(q<<1)>>1]|0;f=l<<3;b=f&65535;n=c+(q<<2)|0;if(!(b<<16>>16))i=0;else{e=(f&65280|0)==0;d=e?l<<11&65535:b;b=e?8:16;e=d&65535;if(!(e&61440)){d=e<<4&65535;b=b+-4|0}e=d&65535;if(!(e&49152)){d=e<<2&65535;b=b+-2|0}i=b+~(d<<16>>16>>15<<16>>16)|0}b=i+31|0;e=mi(1,0,b|0)|0;h=L;g=f&65528;d=Ti(e|0,h|0,g|0,0)|0;f=L;g=Qh(e|0,h|0,g|0,0)|0;h=L;e=l<<2&32764;do if(!((g|0)==0&(h|0)==0))if(h>>>0>0|(h|0)==0&g>>>0>e>>>0){d=zi(d|0,f|0,1,0)|0;break}else{e=e|1;break}else{d=ni(d|0,f|0,1)|0;b=i+30|0}while(0);k[n>>2]=d;k[n+256>>2]=e;k[n+512>>2]=1<<64-b;k[n+768>>2]=b+-32;if((b|0)<=16?(k[x>>2]|0)==4:0)k[x>>2]=5;q=q+1|0}while((q|0)!=64);break}case 1:{b=s+24+(c<<2)|0;c=k[b>>2]|0;if(!c){c=Ya[k[k[w>>2]>>2]&15](a,1,1024)|0;k[b>>2]=c}q=0;do{l=(ha(j[15920+(q<<1)>>1]|0,m[r+(q<<1)>>1]|0)|0)+1024|0;f=l>>>11;b=f&65535;n=c+(q<<2)|0;if(!(b<<16>>16))i=0;else{e=(f&65280|0)==0;d=e?f<<8&65535:b;b=e?8:16;e=d&65535;if(!(e&61440)){d=e<<4&65535;b=b+-4|0}e=d&65535;if(!(e&49152)){d=e<<2&65535;b=b+-2|0}i=b+~(d<<16>>16>>15<<16>>16)|0}b=i+31|0;e=mi(1,0,b|0)|0;h=L;g=f&65535;d=Ti(e|0,h|0,g|0,0)|0;f=L;g=Qh(e|0,h|0,g|0,0)|0;h=L;e=l>>>12&32767;do if(!((g|0)==0&(h|0)==0))if(h>>>0>0|(h|0)==0&g>>>0>e>>>0){d=zi(d|0,f|0,1,0)|0;break}else{e=e+1|0;break}else{d=ni(d|0,f|0,1)|0;b=i+30|0}while(0);k[n>>2]=d;k[n+256>>2]=e;k[n+512>>2]=1<<64-b;k[n+768>>2]=b+-32;if((b|0)<=16?(k[x>>2]|0)==4:0)k[x>>2]=5;q=q+1|0}while((q|0)!=64);break}case 2:{b=s+60+(c<<2)|0;c=k[b>>2]|0;if(!c){c=Ya[k[k[w>>2]>>2]&15](a,1,256)|0;k[b>>2]=c}b=0;d=0;while(1){A=+p[8+(d<<3)>>3];o[c+(b<<2)>>2]=1.0/(+(m[r+(b<<1)>>1]|0)*A*8.0);q=b|1;o[c+(q<<2)>>2]=1.0/(+(m[r+(q<<1)>>1]|0)*A*1.387039845*8.0);q=q+1|0;o[c+(q<<2)>>2]=1.0/(+(m[r+(q<<1)>>1]|0)*A*1.306562965*8.0);q=b|3;o[c+(q<<2)>>2]=1.0/(+(m[r+(q<<1)>>1]|0)*A*1.175875602*8.0);n=q+1|0;o[c+(n<<2)>>2]=1.0/(+(m[r+(n<<1)>>1]|0)*A*8.0);n=q+2|0;o[c+(n<<2)>>2]=1.0/(+(m[r+(n<<1)>>1]|0)*A*.785694958*8.0);q=q+3|0;o[c+(q<<2)>>2]=1.0/(+(m[r+(q<<1)>>1]|0)*A*.5411961*8.0);q=b|7;o[c+(q<<2)>>2]=1.0/(+(m[r+(q<<1)>>1]|0)*A*.275899379*8.0);d=d+1|0;if((d|0)==8)break;else b=b+8|0}break}default:{r=k[a>>2]|0;k[r+20>>2]=48;$a[k[r>>2]&63](a)}}y=y+1|0;if((y|0)>=(k[u>>2]|0))break;else z=z+84|0}return}function Xb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;J=r;r=r+5152|0;I=J+5144|0;H=J+3864|0;G=J+3856|0;D=J+2576|0;C=J+2572|0;E=J;t=k[a+344>>2]|0;y=(k[a+240>>2]|0)+-1|0;z=a+244|0;if((k[z>>2]|0)<=0){I=$c(a,b)|0;r=J;return I|0}A=a+180|0;B=a+4|0;u=t+8|0;v=a+332|0;F=0;do{k[G>>2]=H;k[C>>2]=D;d=k[a+248+(F<<2)>>2]|0;c=k[d+20>>2]|0;if(!(k[A>>2]|0)){Md(a,1,c,G);Md(a,0,k[d+24>>2]|0,C)}else rf(a,c,k[d+24>>2]|0,E);o=d+4|0;q=d+12|0;s=k[q>>2]|0;n=ha(s,k[u>>2]|0)|0;s=hb[k[(k[B>>2]|0)+32>>2]&3](a,k[t+64+(k[o>>2]<<2)>>2]|0,n,s,1)|0;n=k[q>>2]|0;p=ha(n,k[u>>2]|0)|0;n=hb[k[(k[B>>2]|0)+32>>2]&3](a,k[t+104+(k[o>>2]<<2)>>2]|0,p,n,1)|0;if((k[u>>2]|0)>>>0<y>>>0)c=k[q>>2]|0;else{p=k[q>>2]|0;c=((k[d+32>>2]|0)>>>0)%(p>>>0)|0;c=(c|0)==0?p:c}o=k[d+28>>2]|0;p=k[d+8>>2]|0;m=(o>>>0)%(p>>>0)|0;m=(m|0)>0?p-m|0:m;j[I>>1]=0;a:do if((c|0)>0){l=d+16|0;g=m<<7;if((m|0)<=0){g=0;while(1){d=k[s+(g<<2)>>2]|0;if((g|0)>0)f=k[s+(g+-1<<2)>>2]|0;else f=0;e=k[n+(g<<2)>>2]|0;if(!(k[A>>2]|0)){i=k[l>>2]|0;h=k[v>>2]|0;xb(a,k[G>>2]|0,k[C>>2]|0,d,e,o,k[a+72+(i<<2)>>2]|0,h+56+(i<<9)|0,h+2104+(i<<9)|0,I,f,k[n+(g+-1<<2)>>2]|0)}else{i=k[l>>2]|0;h=k[v>>2]|0;yb(a,E,d,e,o,k[a+72+(i<<2)>>2]|0,h+56+(i<<9)|0,h+2104+(i<<9)|0,I,f,k[n+(g+-1<<2)>>2]|0)}g=g+1|0;if((g|0)==(c|0))break a}}i=(m|0)==1;h=0;do{d=k[s+(h<<2)>>2]|0;if((h|0)>0)f=k[s+(h+-1<<2)>>2]|0;else f=0;e=k[n+(h<<2)>>2]|0;if(!(k[A>>2]|0)){K=k[l>>2]|0;L=k[v>>2]|0;xb(a,k[G>>2]|0,k[C>>2]|0,d,e,o,k[a+72+(K<<2)>>2]|0,L+56+(K<<9)|0,L+2104+(K<<9)|0,I,f,k[n+(h+-1<<2)>>2]|0)}else{L=k[l>>2]|0;K=k[v>>2]|0;yb(a,E,d,e,o,k[a+72+(L<<2)>>2]|0,K+56+(L<<9)|0,K+2104+(L<<9)|0,I,f,k[n+(h+-1<<2)>>2]|0)}d=d+(o<<7)|0;vj(d,g);L=j[d+-128>>1]|0;j[I>>1]=L;j[d>>1]=L;if(!i){e=1;do{j[d+(e<<7)>>1]=j[I>>1]|0;e=e+1|0}while((e|0)!=(m|0))}h=h+1|0}while((h|0)!=(c|0))}while(0);b:do if((k[u>>2]|0)==(y|0)?(w=m+o|0,x=(w>>>0)/(p>>>0)|0,(c|0)<(k[q>>2]|0)):0){m=w<<7;h=p+-1|0;i=(p|0)>0;if(!x)while(1){vj(k[s+(c<<2)>>2]|0,m);c=c+1|0;if((c|0)>=(k[q>>2]|0))break b}l=(p|0)==1;do{e=k[s+(c<<2)>>2]|0;d=k[s+(c+-1<<2)>>2]|0;vj(e,m);if(i){g=0;while(1){L=j[d+(h<<7)>>1]|0;j[I>>1]=L;j[e>>1]=L;if(!l){f=1;do{j[e+(f<<7)>>1]=j[I>>1]|0;f=f+1|0}while((f|0)!=(p|0))}g=g+1|0;if(g>>>0>=x>>>0)break;else{d=d+(p<<7)|0;e=e+(p<<7)|0}}}else{e=0;while(1){j[I>>1]=j[d+(h<<7)>>1]|0;e=e+1|0;if(e>>>0>=x>>>0)break;else d=d+(p<<7)|0}}c=c+1|0}while((c|0)<(k[q>>2]|0))}while(0);F=F+1|0}while((F|0)<(k[z>>2]|0));L=$c(a,b)|0;r=J;return L|0}function Yb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0,o=0,p=0;o=k[a+24>>2]|0;e=k[o>>2]|0;p=o+4|0;d=k[p>>2]|0;k[a+220>>2]=b;k[a+224>>2]=c;do if(!d)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[p>>2]|0;c=k[o>>2]|0;break}else c=e;while(0);d=d+-1|0;b=c+1|0;e=(l[c>>0]|0)<<8;do if(!d)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[p>>2]|0;b=k[o>>2]|0;break}while(0);d=d+-1|0;c=b+1|0;i=l[b>>0]|0|e;do if(!d)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[p>>2]|0;b=k[o>>2]|0;break}else b=c;while(0);d=d+-1|0;c=b+1|0;k[a+212>>2]=l[b>>0];do if(!d)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[p>>2]|0;c=k[o>>2]|0;break}while(0);b=d+-1|0;e=c+1|0;d=(l[c>>0]|0)<<8;h=a+32|0;k[h>>2]=d;do if(!b)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[h>>2]|0;c=k[p>>2]|0;e=k[o>>2]|0;break}else c=b;while(0);c=c+-1|0;b=e+1|0;k[h>>2]=d+(l[e>>0]|0);do if(!c)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[p>>2]|0;c=k[o>>2]|0;break}else{d=c;c=b}while(0);b=d+-1|0;e=c+1|0;d=(l[c>>0]|0)<<8;g=a+28|0;k[g>>2]=d;do if(!b)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{d=k[g>>2]|0;c=k[p>>2]|0;e=k[o>>2]|0;break}else c=b;while(0);c=c+-1|0;b=e+1|0;k[g>>2]=d+(l[e>>0]|0);do if(!c)if(!(cb[k[o+12>>2]&15](a)|0)){p=0;return p|0}else{e=k[p>>2]|0;f=k[o>>2]|0;break}else{e=c;f=b}while(0);j=a+36|0;k[j>>2]=l[f>>0];c=i+-8|0;m=k[a>>2]|0;k[m+24>>2]=k[a+416>>2];k[m+28>>2]=k[g>>2];k[m+32>>2]=k[h>>2];k[m+36>>2]=k[j>>2];k[m+20>>2]=100;ab[k[m+4>>2]&31](a,1);m=a+440|0;if(k[(k[m>>2]|0)+16>>2]|0){i=k[a>>2]|0;k[i+20>>2]=58;$a[k[i>>2]&63](a)}if(((k[h>>2]|0)!=0?(k[g>>2]|0)!=0:0)?(n=k[j>>2]|0,(n|0)>=1):0)d=n;else{d=k[a>>2]|0;k[d+20>>2]=32;$a[k[d>>2]&63](a);d=k[j>>2]|0}if((c|0)!=(d*3|0)){n=k[a>>2]|0;k[n+20>>2]=11;$a[k[n>>2]&63](a)}d=a+216|0;c=k[d>>2]|0;if(!c){c=Ya[k[k[a+4>>2]>>2]&15](a,1,(k[j>>2]|0)*84|0)|0;k[d>>2]=c}b=e+-1|0;d=f+1|0;a:do if((k[j>>2]|0)>0){i=o+12|0;h=0;while(1){k[c+4>>2]=h;if(!b){if(!(cb[k[i>>2]&15](a)|0)){d=0;c=48;break}b=k[p>>2]|0;d=k[o>>2]|0}b=b+-1|0;e=d+1|0;k[c>>2]=l[d>>0];if(!b){if(!(cb[k[i>>2]&15](a)|0)){d=0;c=48;break}b=k[p>>2]|0;e=k[o>>2]|0}d=b+-1|0;b=e+1|0;n=l[e>>0]|0;f=c+8|0;k[f>>2]=n>>>4;g=c+12|0;k[g>>2]=n&15;if(!d){if(!(cb[k[i>>2]&15](a)|0)){d=0;c=48;break}d=k[p>>2]|0;e=k[o>>2]|0}else e=b;n=c+16|0;k[n>>2]=l[e>>0];b=k[a>>2]|0;k[b+24>>2]=k[c>>2];k[b+28>>2]=k[f>>2];k[b+32>>2]=k[g>>2];k[b+36>>2]=k[n>>2];k[b+20>>2]=101;ab[k[b+4>>2]&31](a,1);h=h+1|0;b=d+-1|0;d=e+1|0;if((h|0)>=(k[j>>2]|0))break a;else c=c+84|0}if((c|0)==48)return d|0}while(0);k[(k[m>>2]|0)+16>>2]=1;k[o>>2]=d;k[p>>2]=b;p=1;return p|0}function Zb(a){a=a|0;var b=0,c=0,d=0;switch(k[a+40>>2]|0){case 1:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a)}k[a+64>>2]=1;k[a+220>>2]=0;k[a+208>>2]=1;k[a+60>>2]=1;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=1;k[a+12>>2]=1;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;return}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a)}k[a+64>>2]=3;k[a+220>>2]=0;k[a+208>>2]=1;k[a+60>>2]=3;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=2;k[a+12>>2]=2;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=2;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=1;k[a+104>>2]=1;k[a+108>>2]=1;k[a+168>>2]=3;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=1;k[a+188>>2]=1;k[a+192>>2]=1;return}case 3:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a)}k[a+64>>2]=3;k[a+220>>2]=0;k[a+208>>2]=1;k[a+60>>2]=3;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=2;k[a+12>>2]=2;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=2;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=1;k[a+104>>2]=1;k[a+108>>2]=1;k[a+168>>2]=3;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=1;k[a+188>>2]=1;k[a+192>>2]=1;return}case 4:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a)}k[a+64>>2]=4;k[a+208>>2]=0;k[a+220>>2]=1;k[a+60>>2]=4;a=k[a+68>>2]|0;k[a>>2]=67;k[a+8>>2]=1;k[a+12>>2]=1;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=77;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;k[a+168>>2]=89;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=0;k[a+188>>2]=0;k[a+192>>2]=0;k[a+252>>2]=75;k[a+260>>2]=1;k[a+264>>2]=1;k[a+268>>2]=0;k[a+272>>2]=0;k[a+276>>2]=0;return}case 5:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a)}k[a+64>>2]=5;k[a+208>>2]=0;k[a+220>>2]=1;k[a+60>>2]=4;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=2;k[a+12>>2]=2;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=2;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=1;k[a+104>>2]=1;k[a+108>>2]=1;k[a+168>>2]=3;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=1;k[a+188>>2]=1;k[a+192>>2]=1;k[a+252>>2]=4;k[a+260>>2]=2;k[a+264>>2]=2;k[a+268>>2]=0;k[a+272>>2]=0;k[a+276>>2]=0;return}case 0:{b=k[a+20>>2]|0;if((b|0)!=100){c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a)}k[a+64>>2]=0;k[a+208>>2]=0;k[a+220>>2]=0;b=k[a+36>>2]|0;c=a+60|0;k[c>>2]=b;if((b+-1|0)>>>0>9){d=k[a>>2]|0;k[d+20>>2]=26;k[d+24>>2]=b;k[d+28>>2]=10;$a[k[d>>2]&63](a);b=k[c>>2]|0}if((b|0)<=0)return;c=k[a+68>>2]|0;a=0;do{k[c+(a*84|0)>>2]=a;k[c+(a*84|0)+8>>2]=1;k[c+(a*84|0)+12>>2]=1;k[c+(a*84|0)+16>>2]=0;k[c+(a*84|0)+20>>2]=0;k[c+(a*84|0)+24>>2]=0;a=a+1|0}while((a|0)!=(b|0));return}default:{d=k[a>>2]|0;k[d+20>>2]=9;$a[k[d>>2]&63](a);return}}}function _b(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=k[(k[a+460>>2]|0)+24>>2]|0;h=k[b>>2]|0;m=b+4|0;l=k[m>>2]|0;o=b+8|0;n=k[o>>2]|0;q=b+12|0;p=k[q>>2]|0;s=b+16|0;r=k[s>>2]|0;t=b+20|0;i=k[t>>2]|0;a:do if(!((h|0)>=(l|0)|(n|0)>(p|0)|(r|0)>(i|0))){c=h;b:while(1){d=k[u+(c<<2)>>2]|0;e=n;while(1){f=r;g=d+(e<<6)+(r<<1)|0;while(1){if(j[g>>1]|0)break b;if((f|0)<(i|0)){f=f+1|0;g=g+2|0}else break}if((e|0)<(p|0))e=e+1|0;else break}if((c|0)<(l|0))c=c+1|0;else break a}k[b>>2]=c;h=c}while(0);c:do if(!((l|0)<=(h|0)|(n|0)>(p|0)|(r|0)>(i|0))){c=l;d:while(1){d=k[u+(c<<2)>>2]|0;e=n;while(1){f=r;g=d+(e<<6)+(r<<1)|0;while(1){if(j[g>>1]|0)break d;if((f|0)<(i|0)){f=f+1|0;g=g+2|0}else break}if((e|0)<(p|0))e=e+1|0;else break}if((c|0)>(h|0))c=c+-1|0;else break c}k[m>>2]=c;l=c}while(0);e:do if(!((n|0)>=(p|0)|(l|0)<(h|0)|(r|0)>(i|0))){c=n;f:while(1){d=h;while(1){e=r;f=(k[u+(d<<2)>>2]|0)+(c<<6)+(r<<1)|0;while(1){if(j[f>>1]|0)break f;if((e|0)<(i|0)){e=e+1|0;f=f+2|0}else break}if((d|0)<(l|0))d=d+1|0;else break}if((c|0)<(p|0))c=c+1|0;else break e}k[o>>2]=c;n=c}while(0);g:do if((p|0)<=(n|0)|(l|0)<(h|0)|(r|0)>(i|0))o=p;else{c=p;h:while(1){d=h;while(1){e=r;f=(k[u+(d<<2)>>2]|0)+(c<<6)+(r<<1)|0;while(1){if(j[f>>1]|0)break h;if((e|0)<(i|0)){e=e+1|0;f=f+2|0}else break}if((d|0)<(l|0))d=d+1|0;else break}if((c|0)>(n|0))c=c+-1|0;else{o=p;break g}}k[q>>2]=c;o=c}while(0);i:do if((r|0)>=(i|0)|(l|0)<(h|0)|(o|0)<(n|0))m=r;else{c=r;j:while(1){d=h;while(1){e=n;f=(k[u+(d<<2)>>2]|0)+(n<<6)+(c<<1)|0;while(1){if(j[f>>1]|0)break j;if((e|0)<(o|0)){e=e+1|0;f=f+64|0}else break}if((d|0)<(l|0))d=d+1|0;else break}if((c|0)<(i|0))c=c+1|0;else{m=r;break i}}k[s>>2]=c;m=c}while(0);k:do if(!((i|0)<=(m|0)|(l|0)<(h|0)|(o|0)<(n|0))){c=i;l:while(1){d=h;while(1){e=n;f=(k[u+(d<<2)>>2]|0)+(n<<6)+(c<<1)|0;while(1){if(j[f>>1]|0)break l;if((e|0)<(o|0)){e=e+1|0;f=f+64|0}else break}if((d|0)<(l|0))d=d+1|0;else break}if((c|0)>(m|0))c=c+-1|0;else break k}k[t>>2]=c;i=c}while(0);a=k[a+44>>2]|0;t=ha(k[14196+(k[14128+(a<<2)>>2]<<2)>>2]|0,l-h<<3)|0;s=ha(k[14196+(k[14208+(a<<2)>>2]<<2)>>2]|0,o-n<<2)|0;a=ha(k[14196+(k[14276+(a<<2)>>2]<<2)>>2]|0,i-m<<3)|0;a=(ha(s,s)|0)+(ha(t,t)|0)+(ha(a,a)|0)|0;k[b+24>>2]=a;if((l|0)<(h|0)|(o|0)<(n|0)|(i|0)<(m|0)){u=0;b=b+28|0;k[b>>2]=u;return}else c=0;while(1){f=k[u+(h<<2)>>2]|0;g=n;while(1){e=m;d=f+(g<<6)+(m<<1)|0;while(1){c=((j[d>>1]|0)!=0&1)+c|0;if((e|0)<(i|0)){e=e+1|0;d=d+2|0}else break}if((g|0)<(o|0))g=g+1|0;else break}if((h|0)<(l|0))h=h+1|0;else break}b=b+28|0;k[b>>2]=c;return}function $b(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;l=r;r=r+480|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){m=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;t=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;x=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;u=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;z=(ha(u,-3580)|0)+m|0;D=(u*9373|0)+m|0;m=(ha(u,-11586)|0)+m|0;u=t-x|0;x=x+t|0;E=x*10958|0;v=u*374|0;t=t*11795|0;B=v+E+D|0;v=t-E+v+z|0;E=x*4482|0;o=ha(u,-3271)|0;q=D-E+o|0;o=E-t+o+z|0;x=x*6476|0;t=u*2896|0;z=t+x+z|0;t=D-x+t|0;x=m+(u*5792|0)|0;m=(ha(u,-11584)|0)+m|0;u=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;D=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;E=ha((k[a+160>>2]|0)*10033|0,j[c+80>>1]|0)|0;C=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;s=D-C|0;F=(s+u|0)*6810|0;y=F+(u*4209|0)|0;s=F+(ha(s,-17828)|0)|0;F=ha(D,-6810)|0;D=ha(D,-11018)|0;w=u-C|0;n=(w*11522|0)+E|0;A=(C*20131|0)-D+n|0;n=F+(ha(u,-9113)|0)+n|0;w=(w*10033|0)-E|0;p=(C+u|0)*4712|0;u=F+(u*3897|0)-E+p|0;p=E+D+(ha(C,-7121)|0)+p|0;k[b>>2]=A+B>>11;k[b+448>>2]=B-A>>11;k[b+32>>2]=y+z>>11;k[b+416>>2]=z-y>>11;k[b+64>>2]=w+x>>11;k[b+384>>2]=x-w>>11;k[b+96>>2]=u+v>>11;k[b+352>>2]=v-u>>11;k[b+128>>2]=s+t>>11;k[b+320>>2]=t-s>>11;k[b+160>>2]=p+q>>11;k[b+288>>2]=q-p>>11;k[b+192>>2]=n+o>>11;k[b+256>>2]=o-n>>11;k[b+224>>2]=m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){F=(k[d+(c<<2)>>2]|0)+e|0;E=(k[f>>2]<<13)+131072|0;y=k[f+8>>2]|0;u=k[f+16>>2]|0;x=k[f+24>>2]|0;s=(ha(x,-3580)|0)+E|0;n=(x*9373|0)+E|0;E=(ha(x,-11586)|0)+E|0;x=y-u|0;u=u+y|0;m=u*10958|0;w=x*374|0;y=y*11795|0;p=w+m+n|0;w=y-m+w+s|0;m=u*4482|0;C=ha(x,-3271)|0;A=n-m+C|0;C=m-y+C+s|0;u=u*6476|0;y=x*2896|0;s=y+u+s|0;y=n-u+y|0;u=E+(x*5792|0)|0;E=(ha(x,-11584)|0)+E|0;x=k[f+4>>2]|0;n=k[f+12>>2]|0;m=(k[f+20>>2]|0)*10033|0;o=k[f+28>>2]|0;z=n-o|0;h=(z+x|0)*6810|0;t=h+(x*4209|0)|0;z=h+(ha(z,-17828)|0)|0;h=ha(n,-6810)|0;n=ha(n,-11018)|0;v=x-o|0;D=(v*11522|0)+m|0;q=(o*20131|0)-n+D|0;D=h+(ha(x,-9113)|0)+D|0;v=(v*10033|0)-m|0;B=(o+x|0)*4712|0;x=h+(x*3897|0)-m+B|0;B=m+n+(ha(o,-7121)|0)+B|0;i[F>>0]=i[a+((q+p|0)>>>18&1023)>>0]|0;i[F+14>>0]=i[a+((p-q|0)>>>18&1023)>>0]|0;i[F+1>>0]=i[a+((t+s|0)>>>18&1023)>>0]|0;i[F+13>>0]=i[a+((s-t|0)>>>18&1023)>>0]|0;i[F+2>>0]=i[a+((v+u|0)>>>18&1023)>>0]|0;i[F+12>>0]=i[a+((u-v|0)>>>18&1023)>>0]|0;i[F+3>>0]=i[a+((x+w|0)>>>18&1023)>>0]|0;i[F+11>>0]=i[a+((w-x|0)>>>18&1023)>>0]|0;i[F+4>>0]=i[a+((z+y|0)>>>18&1023)>>0]|0;i[F+10>>0]=i[a+((y-z|0)>>>18&1023)>>0]|0;i[F+5>>0]=i[a+((B+A|0)>>>18&1023)>>0]|0;i[F+9>>0]=i[a+((A-B|0)>>>18&1023)>>0]|0;i[F+6>>0]=i[a+((D+C|0)>>>18&1023)>>0]|0;i[F+8>>0]=i[a+((C-D|0)>>>18&1023)>>0]|0;i[F+7>>0]=i[a+(E>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==15)break;else f=f+32|0}r=l;return}function ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=a+24|0;c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=-1;d=c+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b;d=c+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}e=a+60|0;b=((k[e>>2]|0)*3|0)+8|0;c=k[f>>2]|0;g=k[c>>2]|0;k[c>>2]=g+1;i[g>>0]=b>>>8;g=c+4|0;d=(k[g>>2]|0)+-1|0;k[g>>2]=d;if((d|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b;d=c+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}c=a+32|0;if(!((k[c>>2]|0)<=65535?(k[a+28>>2]|0)<=65535:0)){g=k[a>>2]|0;k[g+20>>2]=41;k[g+24>>2]=65535;$a[k[g>>2]&63](a)}b=k[f>>2]|0;g=k[a+56>>2]&255;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=g;d=b+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}b=k[c>>2]|0;c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b>>>8;d=c+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b;d=c+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}b=k[a+28>>2]|0;c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b>>>8;d=c+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}c=k[f>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b;d=c+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}c=k[f>>2]|0;g=k[e>>2]&255;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=g;d=c+4|0;g=(k[d>>2]|0)+-1|0;k[d>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}if((k[e>>2]|0)<=0)return;b=0;d=k[a+68>>2]|0;while(1){c=k[f>>2]|0;g=k[d>>2]&255;h=k[c>>2]|0;k[c>>2]=h+1;i[h>>0]=g;h=c+4|0;g=(k[h>>2]|0)+-1|0;k[h>>2]=g;if((g|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){h=k[a>>2]|0;k[h+20>>2]=24;$a[k[h>>2]&63](a)}c=k[f>>2]|0;h=(k[d+8>>2]<<4)+(k[d+12>>2]|0)&255;g=k[c>>2]|0;k[c>>2]=g+1;i[g>>0]=h;g=c+4|0;h=(k[g>>2]|0)+-1|0;k[g>>2]=h;if((h|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){h=k[a>>2]|0;k[h+20>>2]=24;$a[k[h>>2]&63](a)}c=k[f>>2]|0;h=k[d+16>>2]&255;g=k[c>>2]|0;k[c>>2]=g+1;i[g>>0]=h;g=c+4|0;h=(k[g>>2]|0)+-1|0;k[g>>2]=h;if((h|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){h=k[a>>2]|0;k[h+20>>2]=24;$a[k[h>>2]&63](a)}b=b+1|0;if((b|0)>=(k[e>>2]|0))break;else d=d+84|0}return}function bc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;h=k[b+12>>2]|0;j=k[b+40>>2]|0;l=k[b+44>>2]|0;c=k[a+28>>2]|0;if(!c)return 1;g=k[k[b+16>>2]>>2]|0;while(1){a:while(1){b=Wg(h)|0;b:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break b;default:{}}}while(0);switch(b|0){case 9:case 10:case 13:case 32:break;case -1:{d=7;break a}default:{d=8;break a}}}if((d|0)==7){b=k[a>>2]|0;k[b+20>>2]=43;$a[k[b>>2]&63](a);b=-1;d=9}else if((d|0)==8){d=0;if((b+-48|0)>>>0>9)d=9}if((d|0)==9){f=k[a>>2]|0;k[f+20>>2]=1027;$a[k[f>>2]&63](a)}d=b+-48|0;b=Wg(h)|0;c:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break c;default:{}}}while(0);if((b+-48|0)>>>0<10)while(1){d=b+-48+(d*10|0)|0;b=Wg(h)|0;d:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break d;default:{}}}while(0);if((b+-48|0)>>>0>=10){b=d;break}}else b=d;if(b>>>0>l>>>0){f=k[a>>2]|0;k[f+20>>2]=1028;$a[k[f>>2]&63](a)}e=g+1|0;i[g>>0]=i[j+b>>0]|0;e:while(1){b=Wg(h)|0;f:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break f;default:{}}}while(0);switch(b|0){case 9:case 10:case 13:case 32:break;case -1:{d=22;break e}default:{d=23;break e}}}if((d|0)==22){b=k[a>>2]|0;k[b+20>>2]=43;$a[k[b>>2]&63](a);b=-1;d=24}else if((d|0)==23){d=0;if((b+-48|0)>>>0>9)d=24}if((d|0)==24){f=k[a>>2]|0;k[f+20>>2]=1027;$a[k[f>>2]&63](a)}d=b+-48|0;b=Wg(h)|0;g:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break g;default:{}}}while(0);if((b+-48|0)>>>0<10)while(1){d=b+-48+(d*10|0)|0;b=Wg(h)|0;h:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break h;default:{}}}while(0);if((b+-48|0)>>>0>=10){b=d;break}}else b=d;if(b>>>0>l>>>0){f=k[a>>2]|0;k[f+20>>2]=1028;$a[k[f>>2]&63](a)}f=g+2|0;i[e>>0]=i[j+b>>0]|0;i:while(1){b=Wg(h)|0;j:do if((b|0)==35)while(1){b=Wg(h)|0;switch(b|0){case 10:case -1:break j;default:{}}}while(0);switch(b|0){case 9:case 10:case 13:case 32:break;case -1:{d=37;break i}default:{d=38;break i}}}if((d|0)==37){b=k[a>>2]|0;k[b+20>>2]=43;$a[k[b>>2]&63](a);b=-1;d=39}else if((d|0)==38){d=0;if((b+-48|0)>>>0>9)d=39}if((d|0)==39){e=k[a>>2]|0;k[e+20>>2]=1027;$a[k[e>>2]&63](a)}b=b+-48|0;d=Wg(h)|0;k:do if((d|0)==35)while(1){d=Wg(h)|0;switch(d|0){case 10:case -1:break k;default:{}}}while(0);if((d+-48|0)>>>0<10)do{b=d+-48+(b*10|0)|0;d=Wg(h)|0;l:do if((d|0)==35)while(1){d=Wg(h)|0;switch(d|0){case 10:case -1:break l;default:{}}}while(0)}while((d+-48|0)>>>0<10);if(b>>>0>l>>>0){e=k[a>>2]|0;k[e+20>>2]=1028;$a[k[e>>2]&63](a)}i[f>>0]=i[j+b>>0]|0;c=c+-1|0;if(!c)break;else g=g+3|0}return 1}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=k[a+444>>2]|0;o=a+276|0;if(k[o>>2]|0){p=t+56|0;c=k[p>>2]|0;if(!c){if(!(cb[k[(k[a+440>>2]|0)+8>>2]&15](a)|0)){s=k[a>>2]|0;k[s+20>>2]=24;$a[k[s>>2]&63](a)}c=a+328|0;if((k[c>>2]|0)>0){d=a+220|0;e=a+400|0;f=a+408|0;h=0;do{g=k[a+332+(h<<2)>>2]|0;if(k[d>>2]|0)if(!(k[e>>2]|0)){if(!(k[f>>2]|0))q=10}else q=12;else q=10;if((q|0)==10){q=0;m=k[t+60+(k[g+20>>2]<<2)>>2]|0;n=m+64|0;do{i[m>>0]=0;m=m+1|0}while((m|0)<(n|0));k[t+24+(h<<2)>>2]=0;k[t+40+(h<<2)>>2]=0;if(!((k[d>>2]|0)!=0?!(k[e>>2]|0):0))q=12}if((q|0)==12){q=0;eh(k[t+124+(k[g+24>>2]<<2)>>2]|0,0,256)|0}h=h+1|0}while((h|0)<(k[c>>2]|0))}k[t+12>>2]=0;k[t+16>>2]=0;k[t+20>>2]=-16;c=k[o>>2]|0;k[p>>2]=c}k[p>>2]=c+-1}s=t+20|0;if((k[s>>2]|0)==-1)return 1;o=a+356|0;if((k[o>>2]|0)<=0)return 1;p=t+188|0;r=0;a:while(1){q=k[b+(r<<2)>>2]|0;h=k[a+360+(r<<2)>>2]|0;n=k[a+332+(h<<2)>>2]|0;f=k[n+20>>2]|0;d=t+60+(f<<2)|0;g=t+40+(h<<2)|0;c=(k[d>>2]|0)+(k[g>>2]|0)|0;if(!(sd(a,c)|0)){k[g>>2]=0;c=k[t+24+(h<<2)>>2]|0}else{m=sd(a,c+1|0)|0;e=c+2+m|0;c=sd(a,e)|0;if(c){d=(k[d>>2]|0)+20|0;if(!(sd(a,d)|0))e=d;else while(1){c=c<<1;if((c|0)==32768){q=24;break a}d=d+1|0;if(!(sd(a,d)|0)){e=d;break}}}else c=0;do if((c|0)>=(1<<(l[a+228+f>>0]|0)>>1|0)){d=m<<2;if((c|0)>(1<<(l[a+244+f>>0]|0)>>1|0)){k[g>>2]=d+12;break}else{k[g>>2]=d+4;break}}else k[g>>2]=0;while(0);e=e+14|0;d=c>>1;if(d)do{g=(sd(a,e)|0)==0;c=(g?0:d)|c;d=d>>1}while((d|0)!=0);h=t+24+(h<<2)|0;c=(k[h>>2]|0)+((m|0)==0?c+1|0:~c)|0;k[h>>2]=c}j[q>>1]=c;m=k[n+24>>2]|0;h=t+124+(m<<2)|0;m=a+260+m|0;c=1;do{d=(k[h>>2]|0)+((c*3|0)+-3)|0;if(sd(a,d)|0)break;while(1){if(sd(a,d+1|0)|0)break;if((c|0)>62){q=38;break a}else{c=c+1|0;d=d+3|0}}g=sd(a,p)|0;e=d+2|0;d=sd(a,e)|0;if(d){if(sd(a,e)|0){d=d<<1;e=(k[h>>2]|0)+((c|0)<=(l[m>>0]|0|0)?189:217)|0;if(sd(a,e)|0)do{d=d<<1;if((d|0)==32768){q=43;break a}e=e+1|0}while((sd(a,e)|0)!=0)}f=e+14|0;e=d>>1;if(e)do{n=(sd(a,f)|0)==0;d=(n?0:e)|d;e=e>>1}while((e|0)!=0)}else d=0;j[q+(k[14344+(c<<2)>>2]<<1)>>1]=(g|0)==0?d+1|0:d^65535;c=c+1|0}while((c|0)<64);r=r+1|0;if((r|0)>=(k[o>>2]|0)){q=49;break}}if((q|0)==24){b=k[a>>2]|0;k[b+20>>2]=126;ab[k[b+4>>2]&31](a,-1);k[s>>2]=-1;return 1}else if((q|0)==38){b=k[a>>2]|0;k[b+20>>2]=126;ab[k[b+4>>2]&31](a,-1);k[s>>2]=-1;return 1}else if((q|0)==43){b=k[a>>2]|0;k[b+20>>2]=126;ab[k[b+4>>2]&31](a,-1);k[s>>2]=-1;return 1}else if((q|0)==49)return 1;return 0}function dc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;y=a+460|0;B=k[y>>2]|0;A=a+136|0;k[A>>2]=k[B+16>>2];w=k[B+20>>2]|0;z=Ya[k[k[a+4>>2]>>2]&15](a,1,w<<5)|0;k[z>>2]=0;k[z+4>>2]=31;k[z+8>>2]=0;k[z+12>>2]=63;k[z+16>>2]=0;k[z+20>>2]=31;_b(a,z);if((w|0)>1){v=a+44|0;b=1;do{if((b<<1|0)>(w|0)){f=z;g=0;h=0;d=0;while(1){c=k[f+24>>2]|0;e=(c|0)>(h|0);d=e?f:d;g=g+1|0;if((g|0)==(b|0))break;else{f=f+32|0;h=e?c:h}}}else{f=z;g=0;e=0;d=0;while(1){c=k[f+28>>2]|0;if((c|0)>(e|0)){x=(k[f+24>>2]|0)>0;c=x?c:e;d=x?f:d}else c=e;g=g+1|0;if((g|0)==(b|0))break;else{f=f+32|0;e=c}}}if(!d)break;g=z+(b<<5)|0;h=d+4|0;k[z+(b<<5)+4>>2]=k[h>>2];l=d+12|0;k[z+(b<<5)+12>>2]=k[l>>2];m=d+20|0;k[z+(b<<5)+20>>2]=k[m>>2];k[g>>2]=k[d>>2];s=d+8|0;n=z+(b<<5)+8|0;k[n>>2]=k[s>>2];u=d+16|0;o=z+(b<<5)+16|0;k[o>>2]=k[u>>2];p=k[h>>2]|0;q=k[d>>2]|0;x=k[v>>2]|0;c=ha(k[14196+(k[14128+(x<<2)>>2]<<2)>>2]|0,p-q<<3)|0;r=k[l>>2]|0;s=k[s>>2]|0;e=ha(r-s<<2,k[14196+(k[14208+(x<<2)>>2]<<2)>>2]|0)|0;t=k[m>>2]|0;u=k[u>>2]|0;f=ha(t-u<<3,k[14196+(k[14276+(x<<2)>>2]<<2)>>2]|0)|0;if(!(4292>>>x&1)){x=(f|0)>(e|0);c=(c|0)>((x?f:e)|0)?0:x?2:1}else{x=(c|0)>(e|0);c=(f|0)>((x?c:e)|0)?2:x&1^1}switch(c|0){case 0:{x=(q+p|0)/2|0;k[h>>2]=x;k[g>>2]=x+1;break}case 1:{x=(s+r|0)/2|0;k[l>>2]=x;k[n>>2]=x+1;break}case 2:{x=(u+t|0)/2|0;k[m>>2]=x;k[o>>2]=x+1;break}default:{}}_b(a,d);_b(a,g);b=b+1|0}while((b|0)<(w|0));if((b|0)<=0){y=b;A=a+132|0;k[A>>2]=y;A=k[a>>2]|0;z=A+20|0;k[z>>2]=96;z=A+24|0;k[z>>2]=y;A=A+4|0;A=k[A>>2]|0;ab[A&31](a,1);a=B+28|0;k[a>>2]=1;return}}else b=1;x=0;do{r=k[(k[y>>2]|0)+24>>2]|0;c=k[z+(x<<5)>>2]|0;s=k[z+(x<<5)+4>>2]|0;t=k[z+(x<<5)+8>>2]|0;u=k[z+(x<<5)+12>>2]|0;v=k[z+(x<<5)+16>>2]|0;w=k[z+(x<<5)+20>>2]|0;if((c|0)>(s|0)|(t|0)>(u|0)|(v|0)>(w|0)){f=0;e=0;d=0;c=0}else{q=c;f=0;e=0;d=0;c=0;while(1){o=k[r+(q<<2)>>2]|0;p=q<<3|4;n=t;while(1){m=n<<2|2;l=v;h=o+(n<<6)+(v<<1)|0;while(1){C=j[h>>1]|0;g=C&65535;if(C<<16>>16){f=(ha(g,p)|0)+f|0;e=(ha(g,m)|0)+e|0;d=(ha(g,l<<3|4)|0)+d|0;c=g+c|0}if((l|0)<(w|0)){l=l+1|0;h=h+2|0}else break}if((n|0)<(u|0))n=n+1|0;else break}if((q|0)<(s|0))q=q+1|0;else break}}C=c>>1;i[(k[k[A>>2]>>2]|0)+x>>0]=(C+f|0)/(c|0)|0;i[(k[(k[A>>2]|0)+4>>2]|0)+x>>0]=(C+e|0)/(c|0)|0;i[(k[(k[A>>2]|0)+8>>2]|0)+x>>0]=(C+d|0)/(c|0)|0;x=x+1|0}while((x|0)!=(b|0));C=a+132|0;k[C>>2]=b;C=k[a>>2]|0;A=C+20|0;k[A>>2]=96;A=C+24|0;k[A>>2]=b;C=C+4|0;C=k[C>>2]|0;ab[C&31](a,1);C=B+28|0;k[C>>2]=1;return}function ec(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;l=r;r=r+416|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){m=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;n=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;t=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;o=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;s=o+t|0;o=t-o|0;t=s*9465|0;x=(o*793|0)+m|0;B=t+(n*11249|0)+x|0;x=(n*4108|0)-t+x|0;t=s*2592|0;q=(o*3989|0)+m|0;z=(n*8672|0)-t+q|0;q=t+(ha(n,-10258)|0)+q|0;s=s*3570|0;t=m+(ha(o,-7678)|0)|0;v=(ha(n,-1396)|0)-s+t|0;t=s+(ha(n,-6581)|0)+t|0;s=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;F=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;D=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;C=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;y=(F+s|0)*10832|0;w=(D+s|0)*9534|0;p=C+s|0;E=p*7682|0;A=y+(ha(s,-16549)|0)+w+E|0;H=ha(D+F|0,-2773)|0;G=ha(C+F|0,-9534)|0;y=y+(F*6859|0)+H+G|0;u=ha(C+D|0,-5384)|0;w=H+(ha(D,-12879)|0)+w+u|0;u=G+(C*18068|0)+E+u|0;p=p*2773|0;E=(D-F|0)*7682|0;s=(ha(F,-3818)|0)+(s*2611|0)+E+p|0;p=E+(D*3150|0)+(ha(C,-14273)|0)+p|0;k[b>>2]=A+B>>11;k[b+384>>2]=B-A>>11;k[b+32>>2]=y+z>>11;k[b+352>>2]=z-y>>11;k[b+64>>2]=w+x>>11;k[b+320>>2]=x-w>>11;k[b+96>>2]=u+v>>11;k[b+288>>2]=v-u>>11;k[b+128>>2]=s+t>>11;k[b+256>>2]=t-s>>11;k[b+160>>2]=p+q>>11;k[b+224>>2]=q-p>>11;k[b+192>>2]=((o-n|0)*11585|0)+m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){H=(k[d+(c<<2)>>2]|0)+e|0;G=(k[f>>2]<<13)+131072|0;F=k[f+8>>2]|0;A=k[f+16>>2]|0;E=k[f+24>>2]|0;B=E+A|0;E=A-E|0;A=B*9465|0;w=(E*793|0)+G|0;s=A+(F*11249|0)+w|0;w=(F*4108|0)-A+w|0;A=B*2592|0;C=(E*3989|0)+G|0;u=(F*8672|0)-A+C|0;C=A+(ha(F,-10258)|0)+C|0;B=B*3570|0;A=G+(ha(E,-7678)|0)|0;y=(ha(F,-1396)|0)-B+A|0;A=B+(ha(F,-6581)|0)+A|0;B=k[f+4>>2]|0;n=k[f+12>>2]|0;p=k[f+20>>2]|0;q=k[f+28>>2]|0;v=(n+B|0)*10832|0;x=(p+B|0)*9534|0;D=q+B|0;o=D*7682|0;t=v+(ha(B,-16549)|0)+x+o|0;h=ha(p+n|0,-2773)|0;m=ha(q+n|0,-9534)|0;v=v+(n*6859|0)+h+m|0;z=ha(q+p|0,-5384)|0;x=h+(ha(p,-12879)|0)+x+z|0;z=m+(q*18068|0)+o+z|0;D=D*2773|0;o=(p-n|0)*7682|0;B=(ha(n,-3818)|0)+(B*2611|0)+o+D|0;D=o+(p*3150|0)+(ha(q,-14273)|0)+D|0;i[H>>0]=i[a+((t+s|0)>>>18&1023)>>0]|0;i[H+12>>0]=i[a+((s-t|0)>>>18&1023)>>0]|0;i[H+1>>0]=i[a+((v+u|0)>>>18&1023)>>0]|0;i[H+11>>0]=i[a+((u-v|0)>>>18&1023)>>0]|0;i[H+2>>0]=i[a+((x+w|0)>>>18&1023)>>0]|0;i[H+10>>0]=i[a+((w-x|0)>>>18&1023)>>0]|0;i[H+3>>0]=i[a+((z+y|0)>>>18&1023)>>0]|0;i[H+9>>0]=i[a+((y-z|0)>>>18&1023)>>0]|0;i[H+4>>0]=i[a+((B+A|0)>>>18&1023)>>0]|0;i[H+8>>0]=i[a+((A-B|0)>>>18&1023)>>0]|0;i[H+5>>0]=i[a+((D+C|0)>>>18&1023)>>0]|0;i[H+7>>0]=i[a+((C-D|0)>>>18&1023)>>0]|0;i[H+6>>0]=i[a+((((E-F|0)*11585|0)+G|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==13)break;else f=f+32|0}r=l;return}function fc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;switch(k[a+40>>2]|0){case 6:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+1>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g>>0]|0)<<2)>>2]|0)+(k[j+((l[g+2>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+3|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}case 12:case 7:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+1>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g>>0]|0)<<2)>>2]|0)+(k[j+((l[g+2>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}case 8:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+1>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g+2>>0]|0)<<2)>>2]|0)+(k[j+((l[g>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+3|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}case 13:case 9:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+1>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g+2>>0]|0)<<2)>>2]|0)+(k[j+((l[g>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}case 14:case 10:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+2>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g+3>>0]|0)<<2)>>2]|0)+(k[j+((l[g+1>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}case 15:case 11:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+2>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g+1>>0]|0)<<2)>>2]|0)+(k[j+((l[g+3>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}default:{j=k[(k[a+352>>2]|0)+8>>2]|0;h=k[a+28>>2]|0;if((e|0)<1|(h|0)==0)return;while(1){a=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=0;g=k[b>>2]|0;while(1){i[a+f>>0]=((k[j+((l[g+1>>0]|0|256)<<2)>>2]|0)+(k[j+((l[g>>0]|0)<<2)>>2]|0)+(k[j+((l[g+2>>0]|0|512)<<2)>>2]|0)|0)>>>16;f=f+1|0;if((f|0)==(h|0))break;else g=g+3|0}if((e|0)>1){d=d+1|0;b=b+4|0;e=e+-1|0}else break}return}}}function gc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;n=k[a+444>>2]|0;o=a+220|0;p=a+400|0;d=k[p>>2]|0;b=(d|0)==0;do if(k[o>>2]|0){m=a+404|0;c=k[m>>2]|0;if(b)if(!c)c=6;else c=10;else if(!((c|0)<(d|0)|(c|0)>63)?(k[a+328>>2]|0)==1:0)c=6;else c=10;do if((c|0)==6){b=k[a+408>>2]|0;if(b){b=b+-1|0;if((b|0)!=(k[a+412>>2]|0)){c=10;break}}else b=k[a+412>>2]|0;if((b|0)>13)c=10}while(0);if((c|0)==10){l=k[a>>2]|0;k[l+20>>2]=16;k[l+24>>2]=d;k[l+28>>2]=k[m>>2];k[l+32>>2]=k[a+408>>2];k[l+36>>2]=k[a+412>>2];$a[k[l>>2]&63](a)}l=a+328|0;b=k[l>>2]|0;if((b|0)>0){g=a+160|0;e=a+408|0;h=a+412|0;j=0;do{d=k[(k[a+332+(j<<2)>>2]|0)+4>>2]|0;f=k[g>>2]|0;b=k[p>>2]|0;if(b){if((k[f+(d<<8)>>2]|0)<0){b=k[a>>2]|0;k[b+20>>2]=115;k[b+24>>2]=d;k[b+28>>2]=0;ab[k[b+4>>2]&31](a,-1);b=k[p>>2]|0}}else b=0;if((b|0)<=(k[m>>2]|0))while(1){c=f+(d<<8)+(b<<2)|0;q=k[c>>2]|0;if((k[e>>2]|0)!=(((q|0)<0?0:q)|0)){q=k[a>>2]|0;k[q+20>>2]=115;k[q+24>>2]=d;k[q+28>>2]=b;ab[k[q+4>>2]&31](a,-1)}k[c>>2]=k[h>>2];if((b|0)<(k[m>>2]|0))b=b+1|0;else break}j=j+1|0;b=k[l>>2]|0}while((j|0)<(b|0))}else e=a+408|0;c=(k[p>>2]|0)==0;d=n+4|0;if(!(k[e>>2]|0))if(c){k[d>>2]=33;h=l;break}else{k[d>>2]=34;h=l;break}else if(c){k[d>>2]=35;h=l;break}else{k[d>>2]=36;h=l;break}}else{if(!(((b?(k[a+408>>2]|0)==0:0)?(k[a+412>>2]|0)==0:0)?(k[a+404>>2]|0)>62:0)){q=k[a>>2]|0;k[q+20>>2]=122;ab[k[q+4>>2]&31](a,-1)}k[n+4>>2]=37;b=a+328|0;h=b;b=k[b>>2]|0}while(0);if((b|0)<=0){q=n+12|0;k[q>>2]=0;q=n+16|0;k[q>>2]=0;q=n+20|0;k[q>>2]=-16;a=a+276|0;a=k[a>>2]|0;q=n+56|0;k[q>>2]=a;return}e=a+4|0;f=a+408|0;g=0;do{d=k[a+332+(g<<2)>>2]|0;if(k[o>>2]|0)if(!(k[p>>2]|0))if(!(k[f>>2]|0))c=40;else c=45;else c=46;else c=40;if((c|0)==40){b=k[d+20>>2]|0;if(b>>>0>15){q=k[a>>2]|0;k[q+20>>2]=125;k[q+24>>2]=b;$a[k[q>>2]&63](a)}c=n+60+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[e>>2]>>2]&15](a,1,64)|0;k[c>>2]=b}c=b+64|0;do{i[b>>0]=0;b=b+1|0}while((b|0)<(c|0));k[n+24+(g<<2)>>2]=0;k[n+40+(g<<2)>>2]=0;if(!(k[o>>2]|0))c=46;else c=45}if((c|0)==45?(c=0,k[p>>2]|0):0)c=46;if((c|0)==46){b=k[d+24>>2]|0;if(b>>>0>15){q=k[a>>2]|0;k[q+20>>2]=125;k[q+24>>2]=b;$a[k[q>>2]&63](a)}c=n+124+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[e>>2]>>2]&15](a,1,256)|0;k[c>>2]=b}eh(b|0,0,256)|0}g=g+1|0}while((g|0)<(k[h>>2]|0));q=n+12|0;k[q>>2]=0;q=n+16|0;k[q>>2]=0;q=n+20|0;k[q>>2]=-16;a=a+276|0;a=k[a>>2]|0;q=n+56|0;k[q>>2]=a;return}function hc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;l=r;r=r+448|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){u=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;s=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;y=(s*10438|0)+u|0;w=(s*2578|0)+u|0;m=(ha(s,-7223)|0)+u|0;u=(ha(s,-11586)|0)+u>>11;s=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;A=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;p=(A+s|0)*9058|0;n=p+(s*2237|0)|0;p=p+(ha(A,-14084)|0)|0;s=(ha(A,-11295)|0)+(s*5027|0)|0;A=n+y|0;n=y-n|0;y=p+w|0;p=w-p|0;w=s+m|0;s=m-s|0;m=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;D=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;B=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;t=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;q=t<<13;F=B+m|0;x=(D+m|0)*10935|0;E=F*9810|0;z=x+(ha(m,-9232)|0)+E+q|0;F=F*6164|0;C=m-D|0;o=(C*3826|0)-q|0;m=F+(ha(m,-8693)|0)+o|0;v=(ha(B+D|0,-1297)|0)-q|0;x=x+(ha(D,-3474)|0)+v|0;v=E+(ha(B,-19447)|0)+v|0;E=(B-D|0)*11512|0;q=E+(ha(B,-13850)|0)+F+q|0;o=E+(D*5529|0)+o|0;t=C-B+t<<2;k[b>>2]=z+A>>11;k[b+416>>2]=A-z>>11;k[b+32>>2]=x+y>>11;k[b+384>>2]=y-x>>11;k[b+64>>2]=v+w>>11;k[b+352>>2]=w-v>>11;k[b+96>>2]=t+u;k[b+320>>2]=u-t;k[b+128>>2]=q+s>>11;k[b+288>>2]=s-q>>11;k[b+160>>2]=o+p>>11;k[b+256>>2]=p-o>>11;k[b+192>>2]=m+n>>11;k[b+224>>2]=n-m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){F=(k[d+(c<<2)>>2]|0)+e|0;z=(k[f>>2]<<13)+131072|0;x=k[f+16>>2]|0;t=z+(x*10438|0)|0;v=z+(x*2578|0)|0;E=z+(ha(x,-7223)|0)|0;x=z+(ha(x,-11586)|0)|0;z=k[f+8>>2]|0;q=k[f+24>>2]|0;B=(q+z|0)*9058|0;D=B+(z*2237|0)|0;B=B+(ha(q,-14084)|0)|0;z=(ha(q,-11295)|0)+(z*5027|0)|0;q=D+t|0;D=t-D|0;t=B+v|0;B=v-B|0;v=z+E|0;z=E-z|0;E=k[f+4>>2]|0;n=k[f+12>>2]|0;p=k[f+20>>2]|0;y=k[f+28>>2]<<13;A=p+E|0;u=(n+E|0)*10935|0;m=A*9810|0;s=u+(ha(E,-9232)|0)+m+y|0;A=A*6164|0;o=E-n|0;C=(o*3826|0)-y|0;E=A+(ha(E,-8693)|0)+C|0;w=(ha(p+n|0,-1297)|0)-y|0;u=u+(ha(n,-3474)|0)+w|0;w=m+(ha(p,-19447)|0)+w|0;m=(p-n|0)*11512|0;A=y+(ha(p,-13850)|0)+m+A|0;C=m+(n*5529|0)+C|0;y=(o-p<<13)+y|0;i[F>>0]=i[a+((s+q|0)>>>18&1023)>>0]|0;i[F+13>>0]=i[a+((q-s|0)>>>18&1023)>>0]|0;i[F+1>>0]=i[a+((u+t|0)>>>18&1023)>>0]|0;i[F+12>>0]=i[a+((t-u|0)>>>18&1023)>>0]|0;i[F+2>>0]=i[a+((w+v|0)>>>18&1023)>>0]|0;i[F+11>>0]=i[a+((v-w|0)>>>18&1023)>>0]|0;i[F+3>>0]=i[a+((y+x|0)>>>18&1023)>>0]|0;i[F+10>>0]=i[a+((x-y|0)>>>18&1023)>>0]|0;i[F+4>>0]=i[a+((A+z|0)>>>18&1023)>>0]|0;i[F+9>>0]=i[a+((z-A|0)>>>18&1023)>>0]|0;i[F+5>>0]=i[a+((C+B|0)>>>18&1023)>>0]|0;i[F+8>>0]=i[a+((B-C|0)>>>18&1023)>>0]|0;i[F+6>>0]=i[a+((E+D|0)>>>18&1023)>>0]|0;i[F+7>>0]=i[a+((D-E|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==14)break;else f=f+32|0}r=l;return}function ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;n=a+4|0;o=k[n>>2]|0;c=o&-8;j=a+c|0;h=k[24055]|0;d=o&3;if(!((d|0)!=1&a>>>0>=h>>>0&a>>>0<j>>>0))Pa();e=k[j+4>>2]|0;if(!(e&1))Pa();if(!d){if(b>>>0<256){a=0;return a|0}if(c>>>0>=(b+4|0)>>>0?(c-b|0)>>>0<=k[24171]<<1>>>0:0)return a|0;a=0;return a|0}if(c>>>0>=b>>>0){c=c-b|0;if(c>>>0<=15)return a|0;m=a+b|0;k[n>>2]=o&1|b|2;k[m+4>>2]=c|3;b=m+c+4|0;k[b>>2]=k[b>>2]|1;Bb(m,c);return a|0}if((j|0)==(k[24057]|0)){c=(k[24054]|0)+c|0;if(c>>>0<=b>>>0){a=0;return a|0}m=c-b|0;l=a+b|0;k[n>>2]=o&1|b|2;k[l+4>>2]=m|1;k[24057]=l;k[24054]=m;return a|0}if((j|0)==(k[24056]|0)){d=(k[24053]|0)+c|0;if(d>>>0<b>>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){d=a+b|0;m=d+c|0;k[n>>2]=o&1|b|2;k[d+4>>2]=c|1;k[m>>2]=c;b=m+4|0;k[b>>2]=k[b>>2]&-2}else{k[n>>2]=o&1|d|2;d=a+d+4|0;k[d>>2]=k[d>>2]|1;d=0;c=0}k[24053]=c;k[24056]=d;return a|0}if(e&2|0){a=0;return a|0}l=(e&-8)+c|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;f=e>>>3;do if(e>>>0>=256){g=k[j+24>>2]|0;e=k[j+12>>2]|0;do if((e|0)==(j|0)){d=j+16|0;e=d+4|0;c=k[e>>2]|0;if(!c){c=k[d>>2]|0;if(!c){i=0;break}}else d=e;while(1){e=c+20|0;f=k[e>>2]|0;if(f|0){c=f;d=e;continue}e=c+16|0;f=k[e>>2]|0;if(!f)break;else{c=f;d=e}}if(d>>>0<h>>>0)Pa();else{k[d>>2]=0;i=c;break}}else{f=k[j+8>>2]|0;if(f>>>0<h>>>0)Pa();c=f+12|0;if((k[c>>2]|0)!=(j|0))Pa();d=e+8|0;if((k[d>>2]|0)==(j|0)){k[c>>2]=e;k[d>>2]=f;i=e;break}else Pa()}while(0);if(g|0){c=k[j+28>>2]|0;d=96508+(c<<2)|0;if((j|0)==(k[d>>2]|0)){k[d>>2]=i;if(!i){k[24052]=k[24052]&~(1<<c);break}}else{if(g>>>0<(k[24055]|0)>>>0)Pa();c=g+16|0;if((k[c>>2]|0)==(j|0))k[c>>2]=i;else k[g+20>>2]=i;if(!i)break}e=k[24055]|0;if(i>>>0<e>>>0)Pa();k[i+24>>2]=g;c=j+16|0;d=k[c>>2]|0;do if(d|0)if(d>>>0<e>>>0)Pa();else{k[i+16>>2]=d;k[d+24>>2]=i;break}while(0);c=k[c+4>>2]|0;if(c|0)if(c>>>0<(k[24055]|0)>>>0)Pa();else{k[i+20>>2]=c;k[c+24>>2]=i;break}}}else{d=k[j+8>>2]|0;e=k[j+12>>2]|0;c=96244+(f<<1<<2)|0;if((d|0)!=(c|0)){if(d>>>0<h>>>0)Pa();if((k[d+12>>2]|0)!=(j|0))Pa()}if((e|0)==(d|0)){k[24051]=k[24051]&~(1<<f);break}if((e|0)!=(c|0)){if(e>>>0<h>>>0)Pa();c=e+8|0;if((k[c>>2]|0)==(j|0))g=c;else Pa()}else g=e+8|0;k[d+12>>2]=e;k[g>>2]=d}while(0);if(m>>>0<16){k[n>>2]=l|o&1|2;b=a+l+4|0;k[b>>2]=k[b>>2]|1;return a|0}else{l=a+b|0;k[n>>2]=o&1|b|2;k[l+4>>2]=m|3;b=l+m+4|0;k[b>>2]=k[b>>2]|1;Bb(l,m);return a|0}return 0}function jc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;s=r;r=r+544|0;t=s+400|0;g=s+392|0;f=s+384|0;e=s+376|0;n=s;u=s+412|0;p=s+408|0;s=s+404|0;k[p>>2]=0;k[s>>2]=0;c=k[b>>2]|0;k[24033]=c;if(!((c|0)!=0?(i[c>>0]|0)!=0:0))k[24033]=16048;c=uh(u)|0;k[n>>2]=c;qf(n,62,376);k[u+120>>2]=4168;k[u+124>>2]=1e3;k[u+128>>2]=1045;k[n+40>>2]=2;Kc(n);c=tb(n,a,b,0)|0;if((c|0)<(a+-1|0)){v=k[3856]|0;k[e>>2]=k[24033];ei(v,21448,e)|0;ze()}if((c|0)<(a|0)){c=b+(c<<2)|0;e=Lg(k[c>>2]|0,21473)|0;if(!e){v=k[3856]|0;e=k[c>>2]|0;k[f>>2]=k[24033];k[f+4>>2]=e;ei(v,21476,f)|0;Ta(1)}else o=e}else o=Vj()|0;c=k[24035]|0;if(!c)if(!(k[24032]|0))q=Sj()|0;else q=0;else{c=Lg(c,21495)|0;if(!c){v=k[3856]|0;f=k[24035]|0;k[g>>2]=k[24033];k[g+4>>2]=f;ei(v,21476,g)|0;Ta(1)}else q=c}a:do if(!(k[24034]|0)){c=Wg(o)|0;if((c|0)==-1){v=k[n>>2]|0;k[v+20>>2]=42;$a[k[v>>2]&63](n)}if((sg(c,o)|0)==-1){v=k[n>>2]|0;k[v+20>>2]=1042;$a[k[v>>2]&63](n)}switch(c|0){case 66:{m=li(n)|0;break a}case 71:{oj(n)|0;break}case 80:{m=xi(n)|0;break a}case 0:{m=ii(n)|0;break a}case 255:{k[24037]=1;m=ji(n)|0;break a}default:{m=k[n>>2]|0;k[m+20>>2]=1043;$a[k[m>>2]&63](n);m=0;break a}}}else m=ii(n)|0;while(0);k[m+12>>2]=o;ab[k[m>>2]&31](n,m);Zb(n);tb(n,a,b,1)|0;if(!(k[24032]|0))Ch(n,q);else gf(n,p,s);$f(n,1);if(k[24037]|0?(d=k[m+24>>2]|0,d|0):0){e=n+208|0;f=n+220|0;do{if(!((((((((k[e>>2]|0)!=0?(i[d+4>>0]|0)==-32:0)?(k[d+12>>2]|0)>>>0>4:0)?(j=k[d+16>>2]|0,(i[j>>0]|0)==74):0)?(i[j+1>>0]|0)==70:0)?(i[j+2>>0]|0)==73:0)?(i[j+3>>0]|0)==70:0)?!(i[j+4>>0]|0):0))l=44;do if((l|0)==44){l=0;c=i[d+4>>0]|0;if((k[f>>2]|0)!=0&c<<24>>24==-18)if((((((k[d+12>>2]|0)>>>0>4?(h=k[d+16>>2]|0,(i[h>>0]|0)==65):0)?(i[h+1>>0]|0)==100:0)?(i[h+2>>0]|0)==111:0)?(i[h+3>>0]|0)==98:0)?(i[h+4>>0]|0)==101:0)break;else c=-18;Bg(n,c&255,k[d+16>>2]|0,k[d+12>>2]|0)}while(0);d=k[d>>2]|0}while((d|0)!=0)}c=n+224|0;d=n+32|0;if((k[c>>2]|0)>>>0<(k[d>>2]|0)>>>0){e=m+4|0;f=m+16|0;do{v=gb[k[e>>2]&63](n,m)|0;wf(n,k[f>>2]|0,v)|0}while((k[c>>2]|0)>>>0<(k[d>>2]|0)>>>0)}ab[k[m+8>>2]&31](n,m);oe(n);Gj(n);if((o|0)!=(k[3915]|0))ch(o)|0;if((q|0)!=0&(q|0)!=(k[3885]|0))ch(q)|0;if(!(k[24032]|0)){v=u+108|0;v=k[v>>2]|0;v=(v|0)!=0;v=v?2:0;Ta(v|0)}c=k[3856]|0;k[t>>2]=k[s>>2];ei(c,21498,t)|0;c=k[p>>2]|0;if(!c){v=u+108|0;v=k[v>>2]|0;v=(v|0)!=0;v=v?2:0;Ta(v|0)}Ab(c);v=u+108|0;v=k[v>>2]|0;v=(v|0)!=0;v=v?2:0;Ta(v|0);return 0}function kc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=r;r=r+304|0;m=x+40|0;v=x;w=k[a+364>>2]|0;q=a+24|0;c=k[q>>2]|0;d=k[c>>2]|0;k[v>>2]=d;c=k[c+4>>2]|0;s=v+4|0;k[s>>2]=c;t=v+8|0;u=w+12|0;k[t>>2]=k[u>>2];k[t+4>>2]=k[u+4>>2];k[t+8>>2]=k[u+8>>2];k[t+12>>2]=k[u+12>>2];k[t+16>>2]=k[u+16>>2];k[t+20>>2]=k[u+20>>2];o=v+32|0;k[o>>2]=a;p=a+200|0;if(k[p>>2]|0?(k[w+36>>2]|0)==0:0){n=k[w+40>>2]|0;h=v+8|0;l=v+12|0;e=k[l>>2]|0;g=c>>>0<256;c=g?m:d;f=k[h>>2]<<7|127;if((e|0)>0){e=e+7|0;do{e=e+-8|0;y=f>>>e;d=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[d>>0]=0;c=c+2|0}else c=d}while((e|0)>7);e=c}else e=c;k[h>>2]=0;k[l>>2]=0;a:do if(g){if((e|0)==(m|0)){c=k[v>>2]|0;break}d=k[s>>2]|0;c=k[v>>2]|0;g=m;f=e-m|0;while(1){e=f>>>0<d>>>0?f:d;_g(c|0,g|0,e|0)|0;c=(k[v>>2]|0)+e|0;k[v>>2]=c;g=g+e|0;y=k[s>>2]|0;d=y-e|0;k[s>>2]=d;if((y|0)==(e|0)){y=k[o>>2]|0;c=k[y+24>>2]|0;if(!(cb[k[c+12>>2]&15](y)|0))break;y=k[c>>2]|0;k[v>>2]=y;d=k[c+4>>2]|0;k[s>>2]=d;c=y}if((f|0)==(e|0))break a;else f=f-e|0}y=0;r=x;return y|0}else{k[s>>2]=(k[v>>2]|0)-e+(k[s>>2]|0);k[v>>2]=e;c=e}while(0);k[v>>2]=c+1;i[c>>0]=-1;y=(k[s>>2]|0)+-1|0;k[s>>2]=y;do if(!y){y=k[o>>2]|0;c=k[y+24>>2]|0;if(!(cb[k[c+12>>2]&15](y)|0)){y=0;r=x;return y|0}else{y=k[c>>2]|0;k[v>>2]=y;k[s>>2]=k[c+4>>2];c=y;break}}else c=k[v>>2]|0;while(0);k[v>>2]=c+1;i[c>>0]=n+208;y=(k[s>>2]|0)+-1|0;k[s>>2]=y;c=k[o>>2]|0;do if(!y){d=k[c+24>>2]|0;if(!(cb[k[d+12>>2]&15](c)|0)){y=0;r=x;return y|0}else{k[v>>2]=k[d>>2];k[s>>2]=k[d+4>>2];break}}while(0);if((k[c+244>>2]|0)>0){c=0;do{k[v+16+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(k[(k[o>>2]|0)+244>>2]|0))}}c=a+272|0;b:do if((k[c>>2]|0)>0){f=0;while(1){e=k[a+276+(f<<2)>>2]|0;y=k[a+248+(e<<2)>>2]|0;d=b+(f<<2)|0;e=v+16+(e<<2)|0;if(!(jb(v,k[d>>2]|0,k[e>>2]|0,k[w+44+(k[y+20>>2]<<2)>>2]|0,k[w+60+(k[y+24>>2]<<2)>>2]|0)|0)){c=0;break}k[e>>2]=j[k[d>>2]>>1];f=f+1|0;if((f|0)>=(k[c>>2]|0))break b}r=x;return c|0}while(0);c=k[q>>2]|0;k[c>>2]=k[v>>2];k[c+4>>2]=k[s>>2];k[u>>2]=k[t>>2];k[u+4>>2]=k[t+4>>2];k[u+8>>2]=k[t+8>>2];k[u+12>>2]=k[t+12>>2];k[u+16>>2]=k[t+16>>2];k[u+20>>2]=k[t+20>>2];c=k[p>>2]|0;if(!c){y=1;r=x;return y|0}e=w+36|0;d=k[e>>2]|0;if(!d){k[e>>2]=c;y=w+40|0;k[y>>2]=(k[y>>2]|0)+1&7}else c=d;k[e>>2]=c+-1;y=1;r=x;return y|0}function lc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=k[a+364>>2]|0;t=k[a+320>>2]|0;u=k[a+328>>2]|0;v=(1<<u)+-1|0;A=a+24|0;z=k[A>>2]|0;x=B+16|0;k[x>>2]=k[z>>2];y=B+20|0;k[y>>2]=k[z+4>>2];z=a+200|0;if(k[z>>2]|0?(k[B+68>>2]|0)==0:0)xd(B,k[B+72>>2]|0);l=k[b>>2]|0;b=k[a+316>>2]|0;if((b|0)<=(t|0)){m=v<<1;n=B+56|0;o=B+52|0;p=B+12|0;q=B+32|0;r=B+64|0;s=B+60|0;h=b;b=0;while(1){c=j[l+(k[14344+(h<<2)>>2]<<1)>>1]|0;if((c+v|0)>>>0>m>>>0){g=c>>31;f=(g+c^g)>>u;g=f^g;c=k[n>>2]|0;if(c|0){d=0;while(1){c=c>>1;if(!c){e=d;break}else d=d+1|0}if((e|0)>14){d=k[q>>2]|0;c=k[d>>2]|0;k[c+20>>2]=40;$a[k[c>>2]&63](d)}c=k[o>>2]|0;d=e<<4;if(!(k[p>>2]|0)){c=k[B+76+(c<<2)>>2]|0;xe(B,k[c+(d<<2)>>2]|0,i[c+1024+d>>0]|0)}else{d=(k[B+92+(c<<2)>>2]|0)+(d<<2)|0;k[d>>2]=(k[d>>2]|0)+1}if(e|0)xe(B,k[n>>2]|0,e);k[n>>2]=0;c=k[s>>2]|0;if((c|0)!=0&(k[p>>2]|0)==0){d=k[r>>2]|0;while(1){xe(B,i[d>>0]|0,1);c=c+-1|0;if(!c)break;else d=d+1|0}}k[s>>2]=0}if((b|0)>15){d=b;do{c=k[o>>2]|0;if(!(k[p>>2]|0)){e=k[B+76+(c<<2)>>2]|0;xe(B,k[e+960>>2]|0,i[e+1264>>0]|0)}else{e=(k[B+92+(c<<2)>>2]|0)+960|0;k[e>>2]=(k[e>>2]|0)+1}d=d+-16|0}while((d|0)>15);b=b&15}d=1;c=f;while(1){c=c>>1;if(!c)break;else d=d+1|0}if((d|0)>10){f=k[a>>2]|0;k[f+20>>2]=6;$a[k[f>>2]&63](a)}c=k[o>>2]|0;b=d+(b<<4)|0;if(!(k[p>>2]|0)){f=k[B+76+(c<<2)>>2]|0;xe(B,k[f+(b<<2)>>2]|0,i[f+1024+b>>0]|0)}else{f=(k[B+92+(c<<2)>>2]|0)+(b<<2)|0;k[f>>2]=(k[f>>2]|0)+1}xe(B,g,d);b=0}else b=b+1|0;if((h|0)<(t|0))h=h+1|0;else break}if((b|0)>0?(w=B+56|0,a=(k[w>>2]|0)+1|0,k[w>>2]=a,(a|0)==32767):0){b=0;c=32767;while(1){c=c>>1;if(!c)break;else b=b+1|0}if((b|0)>14){a=k[B+32>>2]|0;v=k[a>>2]|0;k[v+20>>2]=40;$a[k[v>>2]&63](a)}c=k[B+52>>2]|0;d=b<<4;e=B+12|0;if(!(k[e>>2]|0)){a=k[B+76+(c<<2)>>2]|0;xe(B,k[a+(d<<2)>>2]|0,i[a+1024+d>>0]|0)}else{a=(k[B+92+(c<<2)>>2]|0)+(d<<2)|0;k[a>>2]=(k[a>>2]|0)+1}if(b|0)xe(B,k[w>>2]|0,b);k[w>>2]=0;d=B+60|0;b=k[d>>2]|0;if((b|0)!=0&(k[e>>2]|0)==0){c=k[B+64>>2]|0;while(1){xe(B,i[c>>0]|0,1);b=b+-1|0;if(!b)break;else c=c+1|0}}k[d>>2]=0}}b=k[A>>2]|0;k[b>>2]=k[x>>2];k[b+4>>2]=k[y>>2];b=k[z>>2]|0;if(!b)return 1;d=B+68|0;c=k[d>>2]|0;if(!c){k[d>>2]=b;B=B+72|0;k[B>>2]=(k[B>>2]|0)+1&7}else b=c;k[d>>2]=b+-1;return 1}function mc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;o=r;r=r+256|0;f=o;l=k[a+324>>2]|0;m=8;g=k[b+80>>2]|0;h=f;while(1){b=j[c+16>>1]|0;a=j[c+32>>1]|0;if(!((b|a)<<16>>16))if(((((j[c+48>>1]|0)==0?(j[c+64>>1]|0)==0:0)?(j[c+80>>1]|0)==0:0)?(j[c+96>>1]|0)==0:0)?(j[c+112>>1]|0)==0:0){b=ha(k[g>>2]<<2,j[c>>1]|0)|0;k[h>>2]=b;k[h+32>>2]=b;k[h+64>>2]=b;k[h+96>>2]=b;k[h+128>>2]=b;k[h+160>>2]=b;k[h+192>>2]=b;k[h+224>>2]=b}else{a=0;n=9}else n=9;if((n|0)==9){n=0;a=ha(a<<16>>16,k[g+64>>2]|0)|0;s=ha(j[c+96>>1]|0,k[g+192>>2]|0)|0;A=(s+a|0)*4433|0;s=A+(ha(s,-15137)|0)|0;a=A+(a*6270|0)|0;A=ha(j[c>>1]|0,k[g>>2]|0)|0;t=ha(j[c+64>>1]|0,k[g+128>>2]|0)|0;p=t+A<<13;t=A-t<<13;A=ha(j[c+112>>1]|0,k[g+224>>2]|0)|0;q=ha(j[c+80>>1]|0,k[g+160>>2]|0)|0;y=ha(j[c+48>>1]|0,k[g+96>>2]|0)|0;w=ha(b<<16>>16,k[g+32>>2]|0)|0;u=y+A|0;v=w+q|0;b=(v+u|0)*9633|0;x=ha(w+A|0,-7373)|0;z=ha(y+q|0,-20995)|0;u=b+(ha(u,-16069)|0)|0;v=b+(ha(v,-3196)|0)|0;b=x+(A*2446|0)+u|0;q=z+(q*16819|0)+v|0;u=z+(y*25172|0)+u|0;v=x+(w*12299|0)+v|0;w=p+a+1024|0;k[h>>2]=w+v>>11;k[h+224>>2]=w-v>>11;v=t+s+1024|0;k[h+32>>2]=v+u>>11;k[h+192>>2]=v-u>>11;s=t-s+1024|0;k[h+64>>2]=s+q>>11;k[h+160>>2]=s-q>>11;a=p-a+1024|0;k[h+96>>2]=a+b>>11;k[h+128>>2]=a-b>>11}if((m|0)>1){m=m+-1|0;c=c+2|0;g=g+4|0;h=h+4|0}else break}g=l+128|0;h=0;while(1){c=(k[d+(h<<2)>>2]|0)+e|0;b=k[f+4>>2]|0;a=k[f+8>>2]|0;if(!(b|a))if(((((k[f+12>>2]|0)==0?(k[f+16>>2]|0)==0:0)?(k[f+20>>2]|0)==0:0)?(k[f+24>>2]|0)==0:0)?(k[f+28>>2]|0)==0:0){A=i[g+(((k[f>>2]|0)+16|0)>>>5&1023)>>0]|0;i[c>>0]=A;eh(c+1|0,A|0,7)|0}else{a=0;n=19}else n=19;if((n|0)==19){n=0;w=k[f+24>>2]|0;z=(w+a|0)*4433|0;w=z+(ha(w,-15137)|0)|0;z=z+(a*6270|0)|0;A=k[f>>2]|0;v=k[f+16>>2]|0;y=v+A<<13;v=A-v<<13;A=k[f+28>>2]|0;x=k[f+20>>2]|0;q=k[f+12>>2]|0;u=q+A|0;t=b+x|0;m=(t+u|0)*9633|0;s=ha(b+A|0,-7373)|0;p=ha(q+x|0,-20995)|0;u=m+(ha(u,-16069)|0)|0;t=m+(ha(t,-3196)|0)|0;A=s+(A*2446|0)+u|0;x=p+(x*16819|0)+t|0;u=p+(q*25172|0)+u|0;t=s+(b*12299|0)+t|0;s=y+z+131072|0;i[c>>0]=i[g+((s+t|0)>>>18&1023)>>0]|0;i[c+7>>0]=i[g+((s-t|0)>>>18&1023)>>0]|0;t=v+w+131072|0;i[c+1>>0]=i[g+((t+u|0)>>>18&1023)>>0]|0;i[c+6>>0]=i[g+((t-u|0)>>>18&1023)>>0]|0;w=v-w+131072|0;i[c+2>>0]=i[g+((w+x|0)>>>18&1023)>>0]|0;i[c+5>>0]=i[g+((w-x|0)>>>18&1023)>>0]|0;z=y-z+131072|0;i[c+3>>0]=i[g+((z+A|0)>>>18&1023)>>0]|0;i[c+4>>0]=i[g+((z-A|0)>>>18&1023)>>0]|0}h=h+1|0;if((h|0)==8)break;else f=f+32|0}r=o;return}function nc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+16|0;m=v;t=a+4|0;u=Ya[k[k[t>>2]>>2]&15](a,1,88)|0;s=a+460|0;k[s>>2]=u;k[u>>2]=17;k[u+8>>2]=32;k[u+12>>2]=33;k[u+68>>2]=0;k[u+52>>2]=0;u=a+120|0;if((k[u>>2]|0)>4){q=k[a>>2]|0;k[q+20>>2]=55;k[q+24>>2]=4;$a[k[q>>2]&63](a)}b=a+96|0;c=k[b>>2]|0;if((c|0)>256){c=k[a>>2]|0;k[c+20>>2]=57;k[c+24>>2]=256;$a[k[c>>2]&63](a);c=k[b>>2]|0}q=k[s>>2]|0;n=q+32|0;j=k[u>>2]|0;l=m;k[l>>2]=1;k[l+4>>2]=0;l=a+44|0;p=k[l>>2]|0;k[m>>2]=k[14208+(p<<2)>>2];k[m+4>>2]=k[14128+(p<<2)>>2];k[m+8>>2]=k[14276+(p<<2)>>2];if((j|0)>1){f=1;while(1){e=f+1|0;d=1;b=e;do{b=ha(b,e)|0;d=d+1|0}while((d|0)!=(j|0));if((b|0)>(c|0)){e=f;break}else f=e}}else{b=(c|0)>1?c:1;e=b;b=b+1|0}if((e|0)<2){p=k[a>>2]|0;k[p+20>>2]=56;k[p+24>>2]=b;$a[k[p>>2]&63](a)}if((j|0)>0){d=0;b=1;do{k[q+32+(d<<2)>>2]=e;b=ha(b,e)|0;d=d+1|0}while((d|0)!=(j|0));e=0;d=0}else{e=0;d=0;b=1}a:while(1){f=e;h=d;while(1){if((h|0)<(j|0)){if((k[l>>2]|0)==2)d=k[m+(h<<2)>>2]|0;else d=h;d=q+32+(d<<2)|0;g=k[d>>2]|0;e=g+1|0;g=ha((b|0)/(g|0)|0,e)|0;if((g|0)<=(c|0)){f=d;b=g;d=h;break}}if(!f){p=b;break a}else{f=0;h=0}}k[f>>2]=e;e=1;d=d+1|0}b=k[a>>2]|0;c=k[b+4>>2]|0;if((k[u>>2]|0)==3){k[b+24>>2]=p;k[b+28>>2]=k[n>>2];k[b+32>>2]=k[q+36>>2];k[b+36>>2]=k[q+40>>2];k[b+20>>2]=94;ab[c&31](a,1)}else{k[b+20>>2]=95;k[b+24>>2]=p;ab[c&31](a,1)}o=fb[k[(k[t>>2]|0)+8>>2]&3](a,1,p,k[u>>2]|0)|0;b=k[u>>2]|0;if((b|0)>0){m=p;n=0;do{j=k[q+32+(n<<2)>>2]|0;l=m;m=(m|0)/(j|0)|0;b:do if((j|0)>0){h=j+-1|0;f=(h|0)/2|0;g=o+(n<<2)|0;if((m|0)>0)e=0;else{d=0;while(1){c=ha(d,m)|0;if((c|0)<(p|0))do c=c+l|0;while((c|0)<(p|0));d=d+1|0;if((d|0)==(j|0))break b}}do{b=ha(e,m)|0;if((b|0)<(p|0)){d=(((e*255|0)+f|0)/(h|0)|0)&255;do{c=0;do{i[(k[g>>2]|0)+(c+b)>>0]=d;c=c+1|0}while((c|0)!=(m|0));b=b+l|0}while((b|0)<(p|0))}e=e+1|0}while((e|0)!=(j|0));b=k[u>>2]|0}while(0);n=n+1|0}while((n|0)<(b|0))}k[q+16>>2]=o;k[q+20>>2]=p;ge(a);if((k[a+88>>2]|0)!=2){r=v;return}b=k[s>>2]|0;c=(k[a+112>>2]<<1)+4|0;if((k[u>>2]|0)>0)d=0;else{r=v;return}do{s=Ya[k[(k[t>>2]|0)+4>>2]&15](a,1,c)|0;k[b+68+(d<<2)>>2]=s;d=d+1|0}while((d|0)<(k[u>>2]|0));r=v;return}function oc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=r;r=r+352|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){m=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;z=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;A=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;t=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;x=(A-t|0)*20862|0;q=(A-z|0)*3529|0;o=t+z|0;w=o-A|0;y=(w*11116|0)+m|0;v=q+(ha(A,-14924)|0)+x+y|0;x=x+(t*17333|0)+y|0;q=q+(ha(z,-12399)|0)+y|0;o=y+(ha(o,-9467)|0)|0;t=o+(ha(t,-6461)|0)|0;o=(A*15929|0)+(ha(z,-11395)|0)+o|0;m=(ha(w,-11585)|0)+m|0;w=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;z=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;A=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;y=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;C=z+w|0;n=(A+C+y|0)*3264|0;C=C*7274|0;s=(A+w|0)*5492|0;p=n+((y+w|0)*3e3|0)|0;w=C+(ha(w,-7562)|0)+s+p|0;u=n+(ha(A+z|0,-9527)|0)|0;s=s+(ha(A,-9766)|0)+u|0;B=ha(y+z|0,-14731)|0;u=C+(z*16984|0)+B+u|0;p=B+(y*17223|0)+p|0;n=(A*8203|0)+(ha(z,-12019)|0)+(ha(y,-13802)|0)+n|0;k[b>>2]=w+x>>11;k[b+320>>2]=x-w>>11;k[b+32>>2]=u+v>>11;k[b+288>>2]=v-u>>11;k[b+64>>2]=s+t>>11;k[b+256>>2]=t-s>>11;k[b+96>>2]=p+q>>11;k[b+224>>2]=q-p>>11;k[b+128>>2]=n+o>>11;k[b+192>>2]=o-n>>11;k[b+160>>2]=m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){C=(k[d+(c<<2)>>2]|0)+e|0;B=(k[f>>2]<<13)+131072|0;o=k[f+8>>2]|0;n=k[f+16>>2]|0;v=k[f+24>>2]|0;q=(n-v|0)*20862|0;x=(n-o|0)*3529|0;z=v+o|0;s=z-n|0;p=(s*11116|0)+B|0;t=x+(ha(n,-14924)|0)+q+p|0;q=q+(v*17333|0)+p|0;x=x+(ha(o,-12399)|0)+p|0;z=p+(ha(z,-9467)|0)|0;v=z+(ha(v,-6461)|0)|0;z=(n*15929|0)+(ha(o,-11395)|0)+z|0;B=(ha(s,-11585)|0)+B|0;s=k[f+4>>2]|0;o=k[f+12>>2]|0;n=k[f+20>>2]|0;p=k[f+28>>2]|0;h=o+s|0;A=(h+n+p|0)*3264|0;h=h*7274|0;w=(n+s|0)*5492|0;y=A+((p+s|0)*3e3|0)|0;s=h+(ha(s,-7562)|0)+w+y|0;u=A+(ha(n+o|0,-9527)|0)|0;w=w+(ha(n,-9766)|0)+u|0;m=ha(p+o|0,-14731)|0;u=h+(o*16984|0)+m+u|0;y=m+(p*17223|0)+y|0;A=(n*8203|0)+(ha(o,-12019)|0)+(ha(p,-13802)|0)+A|0;i[C>>0]=i[a+((s+q|0)>>>18&1023)>>0]|0;i[C+10>>0]=i[a+((q-s|0)>>>18&1023)>>0]|0;i[C+1>>0]=i[a+((u+t|0)>>>18&1023)>>0]|0;i[C+9>>0]=i[a+((t-u|0)>>>18&1023)>>0]|0;i[C+2>>0]=i[a+((w+v|0)>>>18&1023)>>0]|0;i[C+8>>0]=i[a+((v-w|0)>>>18&1023)>>0]|0;i[C+3>>0]=i[a+((y+x|0)>>>18&1023)>>0]|0;i[C+7>>0]=i[a+((x-y|0)>>>18&1023)>>0]|0;i[C+4>>0]=i[a+((A+z|0)>>>18&1023)>>0]|0;i[C+6>>0]=i[a+((z-A|0)>>>18&1023)>>0]|0;i[C+5>>0]=i[a+(B>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==11)break;else f=f+32|0}r=l;return}function pc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;l=k[a+364>>2]|0;k[l+32>>2]=a;k[l+12>>2]=b;d=(k[a+316>>2]|0)==0;m=d&1;f=a+324|0;c=l+4|0;do if(!(k[f>>2]|0))if(d){k[c>>2]=19;break}else{k[c>>2]=20;break}else{if(d){k[c>>2]=21;break}k[c>>2]=22;c=l+64|0;if(!(k[c>>2]|0)){j=Ya[k[k[a+4>>2]>>2]&15](a,1,1e3)|0;k[c>>2]=j}}while(0);g=(b|0)!=0;k[l+8>>2]=g?12:11;h=a+244|0;if((k[h>>2]|0)<=0){m=l+56|0;k[m>>2]=0;m=l+60|0;k[m>>2]=0;m=l+24|0;k[m>>2]=0;m=l+28|0;k[m>>2]=0;m=a+200|0;m=k[m>>2]|0;a=l+68|0;k[a>>2]=m;a=l+72|0;k[a>>2]=0;return}i=a+4|0;j=a+332|0;e=l+52|0;if(d)d=0;else{d=0;do{c=k[a+248+(d<<2)>>2]|0;k[l+36+(d<<2)>>2]=0;c=k[c+24>>2]|0;k[e>>2]=c;if(g){if(c>>>0>3){f=k[a>>2]|0;k[f+20>>2]=50;k[f+24>>2]=c;$a[k[f>>2]&63](a)}b=l+92+(c<<2)|0;c=k[b>>2]|0;if(!c){c=Ya[k[k[i>>2]>>2]&15](a,1,1028)|0;k[b>>2]=c}eh(c|0,0,1028)|0;if(k[(k[j>>2]|0)+44>>2]|0){c=k[b>>2]|0;b=0;do{f=b<<4;k[c+(f<<2)>>2]=1;k[c+((f|1)<<2)>>2]=1;k[c+((f|2)<<2)>>2]=1;k[c+((f|3)<<2)>>2]=1;k[c+((f|4)<<2)>>2]=1;k[c+((f|5)<<2)>>2]=1;k[c+((f|6)<<2)>>2]=1;k[c+((f|7)<<2)>>2]=1;k[c+((f|8)<<2)>>2]=1;k[c+((f|9)<<2)>>2]=1;k[c+((f|10)<<2)>>2]=1;k[c+((f|11)<<2)>>2]=1;b=b+1|0}while((b|0)!=16)}}else Md(a,m,c,l+76+(c<<2)|0);d=d+1|0}while((d|0)<(k[h>>2]|0));m=l+56|0;k[m>>2]=0;m=l+60|0;k[m>>2]=0;m=l+24|0;k[m>>2]=0;m=l+28|0;k[m>>2]=0;m=a+200|0;m=k[m>>2]|0;a=l+68|0;k[a>>2]=m;a=l+72|0;k[a>>2]=0;return}do{c=k[a+248+(d<<2)>>2]|0;k[l+36+(d<<2)>>2]=0;do if(!(k[f>>2]|0)){c=k[c+20>>2]|0;if(!g){Md(a,m,c,l+76+(c<<2)|0);break}if(c>>>0>3){e=k[a>>2]|0;k[e+20>>2]=50;k[e+24>>2]=c;$a[k[e>>2]&63](a)}b=l+92+(c<<2)|0;c=k[b>>2]|0;if(!c){c=Ya[k[k[i>>2]>>2]&15](a,1,1028)|0;k[b>>2]=c}eh(c|0,0,1028)|0;if(k[(k[j>>2]|0)+44>>2]|0){c=k[b>>2]|0;b=0;do{e=b<<4;k[c+(e<<2)>>2]=1;k[c+((e|1)<<2)>>2]=1;k[c+((e|2)<<2)>>2]=1;k[c+((e|3)<<2)>>2]=1;k[c+((e|4)<<2)>>2]=1;k[c+((e|5)<<2)>>2]=1;k[c+((e|6)<<2)>>2]=1;k[c+((e|7)<<2)>>2]=1;k[c+((e|8)<<2)>>2]=1;k[c+((e|9)<<2)>>2]=1;k[c+((e|10)<<2)>>2]=1;k[c+((e|11)<<2)>>2]=1;b=b+1|0}while((b|0)!=16)}}while(0);d=d+1|0}while((d|0)<(k[h>>2]|0));m=l+56|0;k[m>>2]=0;m=l+60|0;k[m>>2]=0;m=l+24|0;k[m>>2]=0;m=l+28|0;k[m>>2]=0;m=a+200|0;m=k[m>>2]|0;a=l+68|0;k[a>>2]=m;a=l+72|0;k[a>>2]=0;return}function qc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=d+c|0;s=b+4|0;if(!((w>>>0<=(k[s>>2]|0)>>>0?(k[b+12>>2]|0)>>>0>=d>>>0:0)?(k[b>>2]|0)!=0:0)){x=k[a>>2]|0;k[x+20>>2]=22;$a[k[x>>2]&63](a)}x=b+24|0;n=k[x>>2]|0;if(!(n>>>0<=c>>>0?w>>>0<=((k[b+16>>2]|0)+n|0)>>>0:0))v=7;a:do if((v|0)==7){if(!(k[b+40>>2]|0)){n=k[a>>2]|0;k[n+20>>2]=69;$a[k[n>>2]&63](a)}j=b+36|0;if(k[j>>2]|0){l=k[b+8>>2]<<7;g=k[x>>2]|0;m=b+20|0;n=b+16|0;d=k[n>>2]|0;b:do if((d|0)>0?(o=b+28|0,p=b+48|0,q=b+52|0,f=k[m>>2]|0,f=(f|0)<(d|0)?f:d,i=(k[o>>2]|0)-g|0,i=(f|0)<(i|0)?f:i,f=(k[s>>2]|0)-g|0,f=(i|0)<(f|0)?i:f,(f|0)>=1):0){h=ha(g,l)|0;i=0;while(1){g=ha(f,l)|0;_a[k[q>>2]&63](a,p,k[(k[b>>2]|0)+(i<<2)>>2]|0,h,g);d=k[m>>2]|0;i=d+i|0;f=k[n>>2]|0;if((f|0)<=(i|0))break b;y=f-i|0;y=(d|0)<(y|0)?d:y;f=i+(k[x>>2]|0)|0;d=(k[o>>2]|0)-f|0;d=(y|0)<(d|0)?y:d;f=(k[s>>2]|0)-f|0;f=(d|0)<(f|0)?d:f;if((f|0)<1)break;else h=g+h|0}}while(0);k[j>>2]=0}j=b+16|0;d=k[j>>2]|0;if((k[x>>2]|0)>>>0<c>>>0)f=c;else{f=w-d|0;f=(f|0)<0?0:f}k[x>>2]=f;l=k[b+8>>2]<<7;m=b+20|0;if((d|0)>0?(t=b+28|0,u=b+48|0,r=k[m>>2]|0,r=(r|0)<(d|0)?r:d,y=(k[t>>2]|0)-f|0,y=(r|0)<(y|0)?r:y,r=(k[s>>2]|0)-f|0,r=(y|0)<(r|0)?y:r,(r|0)>=1):0){d=r;h=ha(l,f)|0;i=0;while(1){g=ha(d,l)|0;_a[k[u>>2]&63](a,u,k[(k[b>>2]|0)+(i<<2)>>2]|0,h,g);d=k[m>>2]|0;i=d+i|0;f=k[j>>2]|0;if((f|0)<=(i|0))break a;r=f-i|0;r=(d|0)<(r|0)?d:r;d=i+(k[x>>2]|0)|0;y=(k[t>>2]|0)-d|0;y=(r|0)<(y|0)?r:y;d=(k[s>>2]|0)-d|0;d=(y|0)<(d|0)?y:d;if((d|0)<1)break;else h=g+h|0}}}while(0);f=b+28|0;g=k[f>>2]|0;do if(g>>>0<w>>>0){d=(e|0)==0;if(g>>>0<c>>>0)if(d){f=0;d=c}else{d=k[a>>2]|0;k[d+20>>2]=22;$a[k[d>>2]&63](a);d=c;v=28}else if(d){f=0;d=g}else{d=g;v=28}if((v|0)==28){k[f>>2]=w;f=1}if(!(k[b+32>>2]|0)){if(f)break;y=k[a>>2]|0;k[y+20>>2]=22;$a[k[y>>2]&63](a);break}g=k[b+8>>2]<<7;f=k[x>>2]|0;d=d-f|0;f=w-f|0;if(d>>>0<f>>>0)do{vj(k[(k[b>>2]|0)+(d<<2)>>2]|0,g);d=d+1|0}while((d|0)!=(f|0))}while(0);if(!e){e=k[b>>2]|0;y=k[x>>2]|0;y=c-y|0;y=e+(y<<2)|0;return y|0}k[b+36>>2]=1;e=k[b>>2]|0;y=k[x>>2]|0;y=c-y|0;y=e+(y<<2)|0;return y|0}function rc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=d+c|0;s=b+4|0;if(!((w>>>0<=(k[s>>2]|0)>>>0?(k[b+12>>2]|0)>>>0>=d>>>0:0)?(k[b>>2]|0)!=0:0)){x=k[a>>2]|0;k[x+20>>2]=22;$a[k[x>>2]&63](a)}x=b+24|0;n=k[x>>2]|0;if(!(n>>>0<=c>>>0?w>>>0<=((k[b+16>>2]|0)+n|0)>>>0:0))v=7;a:do if((v|0)==7){if(!(k[b+40>>2]|0)){n=k[a>>2]|0;k[n+20>>2]=69;$a[k[n>>2]&63](a)}j=b+36|0;if(k[j>>2]|0){l=k[b+8>>2]|0;g=k[x>>2]|0;m=b+20|0;n=b+16|0;d=k[n>>2]|0;b:do if((d|0)>0?(o=b+28|0,p=b+48|0,q=b+52|0,f=k[m>>2]|0,f=(f|0)<(d|0)?f:d,i=(k[o>>2]|0)-g|0,i=(f|0)<(i|0)?f:i,f=(k[s>>2]|0)-g|0,f=(i|0)<(f|0)?i:f,(f|0)>=1):0){h=ha(g,l)|0;i=0;while(1){g=ha(f,l)|0;_a[k[q>>2]&63](a,p,k[(k[b>>2]|0)+(i<<2)>>2]|0,h,g);d=k[m>>2]|0;i=d+i|0;f=k[n>>2]|0;if((f|0)<=(i|0))break b;y=f-i|0;y=(d|0)<(y|0)?d:y;f=i+(k[x>>2]|0)|0;d=(k[o>>2]|0)-f|0;d=(y|0)<(d|0)?y:d;f=(k[s>>2]|0)-f|0;f=(d|0)<(f|0)?d:f;if((f|0)<1)break;else h=g+h|0}}while(0);k[j>>2]=0}j=b+16|0;d=k[j>>2]|0;if((k[x>>2]|0)>>>0<c>>>0)f=c;else{f=w-d|0;f=(f|0)<0?0:f}k[x>>2]=f;l=k[b+8>>2]|0;m=b+20|0;if((d|0)>0?(t=b+28|0,u=b+48|0,r=k[m>>2]|0,r=(r|0)<(d|0)?r:d,y=(k[t>>2]|0)-f|0,y=(r|0)<(y|0)?r:y,r=(k[s>>2]|0)-f|0,r=(y|0)<(r|0)?y:r,(r|0)>=1):0){d=r;h=ha(l,f)|0;i=0;while(1){g=ha(d,l)|0;_a[k[u>>2]&63](a,u,k[(k[b>>2]|0)+(i<<2)>>2]|0,h,g);d=k[m>>2]|0;i=d+i|0;f=k[j>>2]|0;if((f|0)<=(i|0))break a;r=f-i|0;r=(d|0)<(r|0)?d:r;d=i+(k[x>>2]|0)|0;y=(k[t>>2]|0)-d|0;y=(r|0)<(y|0)?r:y;d=(k[s>>2]|0)-d|0;d=(y|0)<(d|0)?y:d;if((d|0)<1)break;else h=g+h|0}}}while(0);f=b+28|0;g=k[f>>2]|0;do if(g>>>0<w>>>0){d=(e|0)==0;if(g>>>0<c>>>0)if(d){f=0;d=c}else{d=k[a>>2]|0;k[d+20>>2]=22;$a[k[d>>2]&63](a);d=c;v=28}else if(d){f=0;d=g}else{d=g;v=28}if((v|0)==28){k[f>>2]=w;f=1}if(!(k[b+32>>2]|0)){if(f)break;y=k[a>>2]|0;k[y+20>>2]=22;$a[k[y>>2]&63](a);break}g=k[b+8>>2]|0;f=k[x>>2]|0;d=d-f|0;f=w-f|0;if(d>>>0<f>>>0)do{vj(k[(k[b>>2]|0)+(d<<2)>>2]|0,g);d=d+1|0}while((d|0)!=(f|0))}while(0);if(!e){e=k[b>>2]|0;y=k[x>>2]|0;y=c-y|0;y=e+(y<<2)|0;return y|0}k[b+36>>2]=1;e=k[b>>2]|0;y=k[x>>2]|0;y=c-y|0;y=e+(y<<2)|0;return y|0}function sc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=a+4|0;j=Ya[k[k[l>>2]>>2]&15](a,1,28)|0;k[a+420>>2]=j;k[j>>2]=24;k[j+4>>2]=25;k[j+8>>2]=0;Ib(a);c=Ya[k[k[l>>2]>>2]&15](a,1,1408)|0;b=c+256|0;e=a+324|0;k[e>>2]=b;eh(c|0,0,256)|0;d=0;do{i[b+d>>0]=d;d=d+1|0}while((d|0)!=256);eh(c+512|0,-1,384)|0;eh(c+896|0,0,384)|0;d=c+1280|0;b=k[e>>2]|0;c=d+128|0;do{i[d>>0]=i[b>>0]|0;d=d+1|0;b=b+1|0}while((d|0)<(c|0));f=a+120|0;h=j+12|0;k[h>>2]=0;a:do if((((k[a+76>>2]|0)==0?(k[a+300>>2]|0)==0:0)?(k[a+40>>2]|0)==3:0)?(k[a+36>>2]|0)==3:0){b=k[a+44>>2]|0;switch(b|0){case 16:{if((k[f>>2]|0)!=3){b=0;break a}break}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{if((k[f>>2]|0)!=(k[14680+(b<<2)>>2]|0)){b=0;break a}break}default:{b=0;break a}}b=k[a+216>>2]|0;if((((((((k[b+8>>2]|0)==2?(k[b+92>>2]|0)==1:0)?(k[b+176>>2]|0)==1:0)?(k[b+12>>2]|0)<=2:0)?(k[b+96>>2]|0)==1:0)?(k[b+180>>2]|0)==1:0)?(g=k[b+36>>2]|0,(g|0)==(k[a+316>>2]|0)):0)?(k[b+120>>2]|0)==(g|0):0)b=(k[b+204>>2]|0)==(g|0)&1;else b=0}else b=0;while(0);e=j+16|0;k[e>>2]=b;d=j+20|0;k[d>>2]=0;b=j+24|0;k[b>>2]=0;do if(!(k[a+84>>2]|0)){k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;c=a+68|0}else{if(!(k[a+64>>2]|0)){k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0}c=a+68|0;if(k[c>>2]|0){j=k[a>>2]|0;k[j+20>>2]=47;$a[k[j>>2]&63](a)}do if((k[f>>2]|0)==3){if(k[a+136>>2]|0){k[a+104>>2]=1;break}if(!(k[a+92>>2]|0)){k[a+100>>2]=1;break}else{k[a+108>>2]=1;break}}else{k[a+100>>2]=1;k[a+104>>2]=0;k[a+108>>2]=0;k[a+136>>2]=0}while(0);if(k[a+100>>2]|0){nc(a);k[d>>2]=k[a+460>>2]}if((k[a+108>>2]|0)==0?(k[a+104>>2]|0)==0:0)break;Ie(a);k[b>>2]=k[a+460>>2]}while(0);if(!(k[c>>2]|0)){if(!(k[e>>2]|0)){Fb(a);gd(a)}else fe(a);Of(a,k[a+108>>2]|0)}Mg(a);do if(!(k[a+224>>2]|0))if(!(k[a+220>>2]|0)){xg(a);break}else{Ig(a);break}else Se(a);while(0);d=a+436|0;if(!(k[(k[d>>2]|0)+16>>2]|0))b=(k[a+64>>2]|0)!=0;else b=1;ue(a,b&1);if(!(k[c>>2]|0))be(a,0);$a[k[(k[l>>2]|0)+24>>2]&63](a);$a[k[(k[d>>2]|0)+8>>2]&63](a);b=k[a+8>>2]|0;if(!b)return;if(k[a+64>>2]|0)return;if(!(k[(k[d>>2]|0)+16>>2]|0))return;l=k[a+36>>2]|0;l=(k[a+220>>2]|0)==0?l:(l*3|0)+2|0;k[b+4>>2]=0;l=ha(l,k[a+320>>2]|0)|0;k[b+8>>2]=l;k[b+12>>2]=0;k[b+16>>2]=k[a+108>>2]|0?3:2;k[h>>2]=(k[h>>2]|0)+1;return}function tc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;l=r;r=r+384|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){n=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;A=ha((k[a+128>>2]|0)*10033|0,j[c+64>>1]|0)|0;z=A+n|0;A=n-A|0;u=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;s=ha(k[a+192>>2]<<13,j[c+96>>1]|0)|0;p=(u<<13)-s|0;w=p+n|0;p=n-p|0;n=s+(u*11190|0)|0;y=n+z|0;n=z-n|0;s=(u*2998|0)-s|0;u=s+A|0;s=A-s|0;A=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;z=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;o=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;v=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;C=z*10703|0;B=ha(z,-4433)|0;t=o+A|0;m=(v+t|0)*7053|0;t=m+(t*2139|0)|0;x=C+(A*2295|0)+t|0;q=ha(v+o|0,-8565)|0;t=(ha(o,-12112)|0)+B+q+t|0;q=(v*12998|0)-C+m+q|0;m=B+(ha(A,-5540)|0)+(ha(v,-16244)|0)+m|0;v=A-v|0;o=z-o|0;z=(v+o|0)*4433|0;v=z+(v*6270|0)|0;o=z+(ha(o,-15137)|0)|0;k[b>>2]=x+y>>11;k[b+352>>2]=y-x>>11;k[b+32>>2]=v+w>>11;k[b+320>>2]=w-v>>11;k[b+64>>2]=t+u>>11;k[b+288>>2]=u-t>>11;k[b+96>>2]=q+s>>11;k[b+256>>2]=s-q>>11;k[b+128>>2]=o+p>>11;k[b+224>>2]=p-o>>11;k[b+160>>2]=m+n>>11;k[b+192>>2]=n-m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){C=(k[d+(c<<2)>>2]|0)+e|0;A=(k[f>>2]<<13)+131072|0;n=(k[f+16>>2]|0)*10033|0;o=A+n|0;n=A-n|0;u=k[f+8>>2]|0;w=k[f+24>>2]<<13;y=(u<<13)-w|0;s=y+A|0;y=A-y|0;A=w+(u*11190|0)|0;p=A+o|0;A=o-A|0;w=(u*2998|0)-w|0;u=w+n|0;w=n-w|0;n=k[f+4>>2]|0;o=k[f+12>>2]|0;z=k[f+20>>2]|0;t=k[f+28>>2]|0;h=o*10703|0;m=ha(o,-4433)|0;v=z+n|0;B=(v+t|0)*7053|0;v=B+(v*2139|0)|0;q=h+(n*2295|0)+v|0;x=ha(t+z|0,-8565)|0;v=(ha(z,-12112)|0)+m+x+v|0;x=(t*12998|0)-h+B+x|0;B=m+(ha(n,-5540)|0)+(ha(t,-16244)|0)+B|0;t=n-t|0;z=o-z|0;o=(t+z|0)*4433|0;t=o+(t*6270|0)|0;z=o+(ha(z,-15137)|0)|0;i[C>>0]=i[a+((q+p|0)>>>18&1023)>>0]|0;i[C+11>>0]=i[a+((p-q|0)>>>18&1023)>>0]|0;i[C+1>>0]=i[a+((t+s|0)>>>18&1023)>>0]|0;i[C+10>>0]=i[a+((s-t|0)>>>18&1023)>>0]|0;i[C+2>>0]=i[a+((v+u|0)>>>18&1023)>>0]|0;i[C+9>>0]=i[a+((u-v|0)>>>18&1023)>>0]|0;i[C+3>>0]=i[a+((x+w|0)>>>18&1023)>>0]|0;i[C+8>>0]=i[a+((w-x|0)>>>18&1023)>>0]|0;i[C+4>>0]=i[a+((z+y|0)>>>18&1023)>>0]|0;i[C+7>>0]=i[a+((y-z|0)>>>18&1023)>>0]|0;i[C+5>>0]=i[a+((B+A|0)>>>18&1023)>>0]|0;i[C+6>>0]=i[a+((A-B|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==12)break;else f=f+32|0}r=l;return}function uc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;switch(k[a+44>>2]|0){case 6:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g+2>>0]=j;i[g+1>>0]=j;i[g>>0]=j;f=f+1|0;if((f|0)==(h|0))break;else g=g+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 12:case 7:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g+2>>0]=j;i[g+1>>0]=j;i[g>>0]=j;i[g+3>>0]=-1;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 8:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g>>0]=j;i[g+1>>0]=j;i[g+2>>0]=j;f=f+1|0;if((f|0)==(h|0))break;else g=g+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 13:case 9:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g>>0]=j;i[g+1>>0]=j;i[g+2>>0]=j;i[g+3>>0]=-1;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 14:case 10:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g+1>>0]=j;i[g+2>>0]=j;i[g+3>>0]=j;i[g>>0]=-1;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 15:case 11:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g+3>>0]=j;i[g+2>>0]=j;i[g+1>>0]=j;i[g>>0]=-1;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}default:{h=k[a+112>>2]|0;if((e|0)<1|(h|0)==0)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=0;g=k[d>>2]|0;while(1){j=i[e+f>>0]|0;i[g+2>>0]=j;i[g+1>>0]=j;i[g>>0]=j;f=f+1|0;if((f|0)==(h|0))break;else g=g+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}}}function vc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=k[a+440>>2]|0;p=h+164|0;d=k[p>>2]|0;q=a+24|0;r=k[q>>2]|0;c=k[r>>2]|0;s=r+4|0;b=k[s>>2]|0;if(!d){do if(!b)if(!(cb[k[r+12>>2]&15](a)|0)){a=0;return a|0}else{b=k[s>>2]|0;c=k[r>>2]|0;break}while(0);b=b+-1|0;d=c+1|0;e=l[c>>0]<<8;do if(!b)if(!(cb[k[r+12>>2]&15](a)|0)){a=0;return a|0}else{b=k[s>>2]|0;d=k[r>>2]|0;break}while(0);b=b+-1|0;c=d+1|0;f=(l[d>>0]|e)+-2|0;if((f|0)>-1){e=a+416|0;n=k[e>>2]|0;n=k[((n|0)==254?h+96|0:h+100+(n+-224<<2)|0)>>2]|0;n=f>>>0<n>>>0?f:n;o=Ya[k[(k[a+4>>2]|0)+4>>2]&15](a,1,n+20|0)|0;k[o>>2]=0;i[o+4>>0]=k[e>>2];k[o+8>>2]=f;k[o+12>>2]=n;e=o+20|0;k[o+16>>2]=e;k[p>>2]=o;k[h+168>>2]=0;g=0;j=11}else{e=0;g=0;d=c}}else{e=k[h+168>>2]|0;g=e;o=d;e=(k[d+16>>2]|0)+e|0;n=k[d+12>>2]|0;f=0;j=11}if((j|0)==11){a:do if(g>>>0<n>>>0){j=h+168|0;m=r+12|0;d=g;while(1){k[r>>2]=c;k[s>>2]=b;k[j>>2]=d;if(!b){if(!(cb[k[m>>2]&15](a)|0)){b=0;break}b=k[s>>2]|0;c=k[r>>2]|0}if(d>>>0<n>>>0&(b|0)!=0){h=e;g=c;while(1){c=g+1|0;e=h+1|0;i[h>>0]=i[g>>0]|0;b=b+-1|0;d=d+1|0;if(d>>>0<n>>>0&(b|0)!=0){h=e;g=c}else break}}if(d>>>0>=n>>>0){g=b;d=c;break a}}return b|0}else{g=b;d=c}while(0);if(!o){b=g;g=n}else{c=a+304|0;b=k[c>>2]|0;if(!b)k[c>>2]=o;else{while(1){c=k[b>>2]|0;if(!c)break;else b=c}k[b>>2]=o}b=g;e=k[o+16>>2]|0;g=n;f=(k[o+8>>2]|0)-n|0}}k[p>>2]=0;c=k[a+416>>2]|0;b:do switch(c|0){case 224:{bd(a,e,g,f);break}case 238:{if(((((g>>>0>11?(i[e>>0]|0)==65:0)?(i[e+1>>0]|0)==100:0)?(i[e+2>>0]|0)==111:0)?(i[e+3>>0]|0)==98:0)?(i[e+4>>0]|0)==101:0){m=l[e+7>>0]<<8|l[e+8>>0];n=l[e+9>>0]<<8|l[e+10>>0];p=i[e+11>>0]|0;o=k[a>>2]|0;k[o+24>>2]=l[e+5>>0]<<8|l[e+6>>0];k[o+28>>2]=m;k[o+32>>2]=n;k[o+36>>2]=p&255;k[o+20>>2]=76;ab[k[o+4>>2]&31](a,1);k[a+292>>2]=1;i[a+296>>0]=p;break b}p=k[a>>2]|0;k[p+20>>2]=78;k[p+24>>2]=f+g;ab[k[p+4>>2]&31](a,1);break}default:{p=k[a>>2]|0;k[p+20>>2]=91;k[p+24>>2]=c;k[p+28>>2]=f+g;ab[k[p+4>>2]&31](a,1)}}while(0);k[r>>2]=d;k[s>>2]=b;if((f|0)<=0){a=1;return a|0}ab[k[(k[q>>2]|0)+16>>2]&31](a,f);a=1;return a|0}function wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=k[a+364>>2]|0;d=a+200|0;if(k[d>>2]|0){e=t+68|0;c=k[e>>2]|0;if(!c){s=t+72|0;Gd(a,k[s>>2]|0);c=k[d>>2]|0;k[e>>2]=c;k[s>>2]=(k[s>>2]|0)+1&7}k[e>>2]=c+-1}q=a+272|0;if((k[q>>2]|0)<=0)return 1;r=t+204|0;s=0;do{p=k[b+(s<<2)>>2]|0;f=k[a+276+(s<<2)>>2]|0;n=k[a+248+(f<<2)>>2]|0;i=k[n+20>>2]|0;g=t+76+(i<<2)|0;m=t+52+(f<<2)|0;c=(k[g>>2]|0)+(k[m>>2]|0)|0;e=j[p>>1]|0;f=t+36+(f<<2)|0;o=k[f>>2]|0;d=e-o|0;if((e|0)!=(o|0)){k[f>>2]=e;Pb(a,c,1);if((d|0)>0){Pb(a,c+1|0,0);c=c+2|0;e=4}else{Pb(a,c+1|0,1);c=c+3|0;e=8;d=0-d|0}k[m>>2]=e;h=d+-1|0;if(h){Pb(a,c,1);e=(k[g>>2]|0)+20|0;c=h>>1;if(!c){f=1;c=e}else{d=1;do{Pb(a,e,1);d=d<<1;e=e+1|0;c=c>>1}while((c|0)!=0);f=d;c=e}}else f=0;Pb(a,c,0);if((f|0)>=(1<<l[a+120+i>>0]>>1|0)){if((f|0)>(1<<l[a+136+i>>0]>>1|0))k[m>>2]=(k[m>>2]|0)+8}else k[m>>2]=0;d=c+14|0;c=f>>1;if(c|0)do{Pb(a,d,(c&h|0)!=0&1);c=c>>1}while((c|0)!=0)}else{Pb(a,c,0);k[m>>2]=0}o=k[n+24>>2]|0;d=63;while(1){if(j[p+(k[14344+(d<<2)>>2]<<1)>>1]|0)break;c=d+-1|0;if((d|0)>1)d=c;else{d=c;break}}if((d|0)>=1){m=t+140+(o<<2)|0;n=a+152+o|0;c=1;do{h=(k[m>>2]|0)+((c*3|0)+-3)|0;Pb(a,h,0);f=j[p+(k[14344+(c<<2)>>2]<<1)>>1]|0;e=f<<16>>16;g=h+1|0;if(!(f<<16>>16)){f=h;while(1){Pb(a,g,0);h=f+3|0;c=c+1|0;e=j[p+(k[14344+(c<<2)>>2]<<1)>>1]|0;g=f+4|0;if(!(e<<16>>16))f=h;else break}f=e;e=e<<16>>16;i=c;c=h}else{i=c;c=h}Pb(a,g,1);if(f<<16>>16>0)Pb(a,r,0);else{Pb(a,r,1);e=0-e|0}c=c+2|0;g=e+-1|0;if(g){Pb(a,c,1);if(g>>>0>=2){Pb(a,c,1);f=(k[m>>2]|0)+((i|0)<=(l[n>>0]|0)?189:217)|0;c=g>>2;if(!c){e=2;c=f}else{e=2;do{Pb(a,f,1);e=e<<1;f=f+1|0;c=c>>1}while((c|0)!=0);c=f}}else e=1}else e=0;Pb(a,c,0);f=c+14|0;c=e>>1;if(c|0)do{Pb(a,f,(c&g|0)!=0&1);c=c>>1}while((c|0)!=0);c=i+1|0}while((i|0)<(d|0));if((c|0)<64)u=40}else{c=1;u=40}if((u|0)==40){u=0;Pb(a,(k[t+140+(o<<2)>>2]|0)+((c*3|0)+-3)|0,1)}s=s+1|0}while((s|0)<(k[q>>2]|0));return 1}function xc(a){a=a|0;var b=0,c=0,d=0;d=Ya[k[k[a+4>>2]>>2]&15](a,1,12)|0;k[a+352>>2]=d;k[d>>2]=41;c=a+40|0;b=k[c>>2]|0;switch(b|0){case 1:{if((k[a+36>>2]|0)!=1){b=k[a>>2]|0;k[b+20>>2]=9;$a[k[b>>2]&63](a)}break}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{if((k[a+36>>2]|0)!=(k[14680+(b<<2)>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=9;$a[k[b>>2]&63](a)}break}case 3:{if((k[a+36>>2]|0)!=3){b=k[a>>2]|0;k[b+20>>2]=9;$a[k[b>>2]&63](a)}break}case 5:case 4:{if((k[a+36>>2]|0)!=4){b=k[a>>2]|0;k[b+20>>2]=9;$a[k[b>>2]&63](a)}break}default:if((k[a+36>>2]|0)<1){b=k[a>>2]|0;k[b+20>>2]=9;$a[k[b>>2]&63](a)}}b=k[a+64>>2]|0;switch(b|0){case 1:{if((k[a+60>>2]|0)!=1){b=k[a>>2]|0;k[b+20>>2]=10;$a[k[b>>2]&63](a)}switch(k[c>>2]|0){case 1:{k[d+4>>2]=2;return}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:if(!(Zj()|0)){k[d>>2]=42;k[d+4>>2]=4;return}else{k[d+4>>2]=3;return}case 3:{k[d+4>>2]=2;return}default:{d=k[a>>2]|0;k[d+20>>2]=27;$a[k[d>>2]&63](a);return}}}case 2:{if((k[a+60>>2]|0)!=3){b=k[a>>2]|0;k[b+20>>2]=10;$a[k[b>>2]&63](a)}b=k[c>>2]|0;if((4292>>>b&1|0?13252>>>b&1|0:0)?324>>>b&1|0:0){k[d+4>>2]=5;return}switch(b|0){case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{k[d+4>>2]=6;return}default:{d=k[a>>2]|0;k[d+20>>2]=27;$a[k[d>>2]&63](a);return}}}case 3:{if((k[a+60>>2]|0)!=3){b=k[a>>2]|0;k[b+20>>2]=10;$a[k[b>>2]&63](a)}switch(k[c>>2]|0){case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:if(!(Zj()|0)){k[d>>2]=42;k[d+4>>2]=8;return}else{k[d+4>>2]=7;return}case 3:{k[d+4>>2]=5;return}default:{d=k[a>>2]|0;k[d+20>>2]=27;$a[k[d>>2]&63](a);return}}}case 4:{if((k[a+60>>2]|0)!=4){b=k[a>>2]|0;k[b+20>>2]=10;$a[k[b>>2]&63](a)}if((k[c>>2]|0)==4){k[d+4>>2]=5;return}else{d=k[a>>2]|0;k[d+20>>2]=27;$a[k[d>>2]&63](a);return}}case 5:{if((k[a+60>>2]|0)!=4){b=k[a>>2]|0;k[b+20>>2]=10;$a[k[b>>2]&63](a)}switch(k[c>>2]|0){case 4:{k[d>>2]=42;k[d+4>>2]=9;return}case 5:{k[d+4>>2]=5;return}default:{d=k[a>>2]|0;k[d+20>>2]=27;$a[k[d>>2]&63](a);return}}}default:{if(!((b|0)==(k[c>>2]|0)?(k[a+60>>2]|0)==(k[a+36>>2]|0):0)){c=k[a>>2]|0;k[c+20>>2]=27;$a[k[c>>2]&63](a)}k[d+4>>2]=5;return}}}function yc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=k[a+444>>2]|0;j=a+400|0;e=k[j>>2]|0;n=(e|0)==0;l=a+404|0;b=k[l>>2]|0;if(n)b=(b|0)!=0&1;else b=(k[a+328>>2]|0)==1?((e|0)>(b|0)|(b|0)>63)&1:1;o=a+408|0;c=k[o>>2]|0;i=a+412|0;d=k[i>>2]|0;if(c)b=(d|0)==(c+-1|0)?b:1;if(!((b|0)==0&(d|0)<14)){m=k[a>>2]|0;k[m+20>>2]=16;k[m+24>>2]=e;k[m+28>>2]=k[l>>2];k[m+32>>2]=k[o>>2];k[m+36>>2]=k[i>>2];$a[k[m>>2]&63](a)}m=a+328|0;d=k[m>>2]|0;if((d|0)>0){h=a+160|0;if(n){b=k[l>>2]|0;g=0;do{e=k[(k[a+332+(g<<2)>>2]|0)+4>>2]|0;f=k[h>>2]|0;c=k[j>>2]|0;if((c|0)<=(b|0)){while(1){b=f+(e<<8)+(c<<2)|0;d=k[b>>2]|0;if((k[o>>2]|0)!=(((d|0)<0?0:d)|0)){d=k[a>>2]|0;k[d+20>>2]=115;k[d+24>>2]=e;k[d+28>>2]=c;ab[k[d+4>>2]&31](a,-1)}k[b>>2]=k[i>>2];b=k[l>>2]|0;if((c|0)<(b|0))c=c+1|0;else break}d=k[m>>2]|0}g=g+1|0}while((g|0)<(d|0))}else{f=0;do{d=k[(k[a+332+(f<<2)>>2]|0)+4>>2]|0;e=k[h>>2]|0;if((k[e+(d<<8)>>2]|0)<0){g=k[a>>2]|0;k[g+20>>2]=115;k[g+24>>2]=d;k[g+28>>2]=0;ab[k[g+4>>2]&31](a,-1)}b=k[j>>2]|0;if((b|0)<=(k[l>>2]|0))while(1){c=e+(d<<8)+(b<<2)|0;g=k[c>>2]|0;if((k[o>>2]|0)!=(((g|0)<0?0:g)|0)){g=k[a>>2]|0;k[g+20>>2]=115;k[g+24>>2]=d;k[g+28>>2]=b;ab[k[g+4>>2]&31](a,-1)}k[c>>2]=k[i>>2];if((b|0)<(k[l>>2]|0))b=b+1|0;else break}f=f+1|0;d=k[m>>2]|0}while((f|0)<(d|0))}}c=k[o>>2]|0;b=p+4|0;do if(!c)if(n){k[b>>2]=24;break}else{k[b>>2]=25;break}else if(n){k[b>>2]=26;break}else{k[b>>2]=27;break}while(0);if((d|0)<=0){n=p+8|0;o=a+276|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[n+12>>2]=0;o=k[o>>2]|0;a=p+40|0;k[a>>2]=o;return}d=p+60|0;if(n)b=0;else{b=0;do{n=k[(k[a+332+(b<<2)>>2]|0)+24>>2]|0;o=p+44+(n<<2)|0;Xc(a,0,n,o);k[d>>2]=k[o>>2];k[p+24+(b<<2)>>2]=0;b=b+1|0}while((b|0)<(k[m>>2]|0));n=p+8|0;o=a+276|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[n+12>>2]=0;o=k[o>>2]|0;a=p+40|0;k[a>>2]=o;return}while(1){if(!c){n=k[(k[a+332+(b<<2)>>2]|0)+20>>2]|0;Xc(a,1,n,p+44+(n<<2)|0)}k[p+24+(b<<2)>>2]=0;b=b+1|0;if((b|0)>=(k[m>>2]|0))break;c=k[o>>2]|0}n=p+8|0;o=a+276|0;k[n>>2]=0;k[n+4>>2]=0;k[n+8>>2]=0;k[n+12>>2]=0;o=k[o>>2]|0;a=p+40|0;k[a>>2]=o;return}function zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=a+428|0;C=k[K>>2]|0;E=(k[a+348>>2]|0)+-1|0;H=a+320|0;f=k[H>>2]|0;F=f+-1|0;I=C+24|0;c=k[I>>2]|0;D=C+28|0;d=k[D>>2]|0;do if((c|0)<(d|0)){G=C+20|0;w=C+32|0;x=a+356|0;y=a+444|0;z=a+328|0;A=a+448|0;B=a+148|0;e=d;d=k[G>>2]|0;a:while(1){if(d>>>0>E>>>0)d=e;else{do{vj(k[w>>2]|0,k[x>>2]<<7);if(!(gb[k[(k[y>>2]|0)+4>>2]&63](a,w)|0))break a;e=k[z>>2]|0;if((e|0)>0){v=d>>>0<E>>>0;f=0;u=0;do{t=k[a+332+(u<<2)>>2]|0;b:do if(k[t+48>>2]|0){h=k[t+4>>2]|0;m=k[(k[A>>2]|0)+4+(h<<2)>>2]|0;n=t+52|0;o=k[(v?n:t+68|0)>>2]|0;p=t+36|0;q=ha(k[t+64>>2]|0,d)|0;r=t+56|0;j=k[r>>2]|0;if((j|0)>0){i=k[p>>2]|0;s=t+72|0;if((o|0)<=0){h=k[n>>2]|0;g=0;while(1){f=h+f|0;g=g+1|0;if((g|0)>=(j|0))break b}}g=j;j=i;i=(k[b+(h<<2)>>2]|0)+((ha(i,c)|0)<<2)|0;l=0;while(1){if((k[B>>2]|0)>>>0>=F>>>0?(l+c|0)>=(k[s>>2]|0):0)e=j;else{g=q;h=0;J=19}if((J|0)==19){while(1){J=0;_a[m&63](a,t,k[C+32+(h+f<<2)>>2]|0,i,g);e=k[p>>2]|0;h=h+1|0;if((h|0)==(o|0))break;else{g=e+g|0;J=19}}g=k[r>>2]|0}f=(k[n>>2]|0)+f|0;l=l+1|0;if((l|0)>=(g|0))break;else{j=e;i=i+(e<<2)|0}}e=k[z>>2]|0}}else f=(k[t+60>>2]|0)+f|0;while(0);u=u+1|0}while((u|0)<(e|0))}d=d+1|0}while(d>>>0<=E>>>0);d=k[D>>2]|0}k[G>>2]=0;c=c+1|0;if((c|0)>=(d|0)){J=26;break}else{e=d;d=0}}if((J|0)==26){c=B;f=k[H>>2]|0;break}k[I>>2]=c;k[G>>2]=d;a=0;return a|0}else c=a+148|0;while(0);e=a+156|0;k[e>>2]=(k[e>>2]|0)+1;e=(k[c>>2]|0)+1|0;k[c>>2]=e;if(e>>>0>=f>>>0){$a[k[(k[a+436>>2]|0)+12>>2]&63](a);a=4;return a|0}d=k[K>>2]|0;do if((k[a+328>>2]|0)<=1){c=k[a+332>>2]|0;if(e>>>0<(f+-1|0)>>>0){k[d+28>>2]=k[c+12>>2];break}else{k[d+28>>2]=k[c+72>>2];break}}else k[d+28>>2]=1;while(0);k[d+20>>2]=0;k[d+24>>2]=0;a=3;return a|0}function Ac(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,q=0,r=0,s=0,t=0.0,u=0;g=k[a+448>>2]|0;h=a+36|0;if((k[h>>2]|0)<=0)return;n=a+72|0;q=0;r=k[a+216>>2]|0;c=0;d=0;while(1){b=k[r+36>>2]|0;a:do switch(b|0){case 1:{f=0;d=35;break}case 2:{d=(Zj()|0)==0;f=0;d=d?26:25;break}case 3:{f=0;d=36;break}case 4:{d=(Zj()|0)==0;f=0;d=d?28:27;break}case 5:{f=0;d=37;break}case 6:{f=0;d=38;break}case 7:{f=0;d=39;break}case 8:switch(k[n>>2]|0){case 0:{d=(Zj()|0)==0;f=0;d=d?30:29;break a}case 1:{d=(Zj()|0)==0;f=1;d=d?32:31;break a}case 2:{d=(Zj()|0)==0;f=2;d=d?34:33;break a}default:{f=k[a>>2]|0;k[f+20>>2]=48;$a[k[f>>2]&63](a);f=c;break a}}case 9:{f=0;d=40;break}case 10:{f=0;d=41;break}case 11:{f=0;d=42;break}case 12:{f=0;d=43;break}case 13:{f=0;d=44;break}case 14:{f=0;d=45;break}case 15:{f=0;d=46;break}case 16:{f=0;d=47;break}default:{f=k[a>>2]|0;k[f+20>>2]=7;k[f+24>>2]=b;$a[k[f>>2]&63](a);f=c}}while(0);k[g+4+(q<<2)>>2]=d;b:do if((k[r+48>>2]|0?(i=g+44+(q<<2)|0,(k[i>>2]|0)!=(f|0)):0)?(l=k[r+76>>2]|0,l|0):0){k[i>>2]=f;switch(f|0){case 0:{b=k[r+80>>2]|0;c=0;do{k[b+(c<<2)>>2]=m[l+(c<<1)>>1];c=c+1|0}while((c|0)!=64);break}case 1:{b=k[r+80>>2]|0;c=0;do{e=(ha(j[15920+(c<<1)>>1]|0,m[l+(c<<1)>>1]|0)|0)+2048>>12;k[b+(c<<2)>>2]=e;c=c+1|0}while((c|0)!=64);break}case 2:{b=k[r+80>>2]|0;c=0;e=0;while(1){t=+p[8+(e<<3)>>3];o[b+(c<<2)>>2]=+(m[l+(c<<1)>>1]|0)*t;s=c|1;o[b+(s<<2)>>2]=+(m[l+(s<<1)>>1]|0)*t*1.387039845;s=s+1|0;o[b+(s<<2)>>2]=+(m[l+(s<<1)>>1]|0)*t*1.306562965;s=c|3;o[b+(s<<2)>>2]=+(m[l+(s<<1)>>1]|0)*t*1.175875602;u=s+1|0;o[b+(u<<2)>>2]=+(m[l+(u<<1)>>1]|0)*t;u=s+2|0;o[b+(u<<2)>>2]=+(m[l+(u<<1)>>1]|0)*t*.785694958;s=s+3|0;o[b+(s<<2)>>2]=+(m[l+(s<<1)>>1]|0)*t*.5411961;s=c|7;o[b+(s<<2)>>2]=+(m[l+(s<<1)>>1]|0)*t*.275899379;e=e+1|0;if((e|0)==8)break;else c=c+8|0}break}default:{u=k[a>>2]|0;k[u+20>>2]=48;$a[k[u>>2]&63](a);break b}}}while(0);q=q+1|0;if((q|0)>=(k[h>>2]|0))break;else{r=r+84|0;c=f}}return}function Bc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0;o=r;r=r+256|0;f=o;l=k[a+324>>2]|0;m=8;g=k[b+80>>2]|0;h=f;while(1){b=j[c+16>>1]|0;a=j[c+32>>1]|0;if(!((b|a)<<16>>16))if(((((j[c+48>>1]|0)==0?(j[c+64>>1]|0)==0:0)?(j[c+80>>1]|0)==0:0)?(j[c+96>>1]|0)==0:0)?(j[c+112>>1]|0)==0:0){b=ha(j[c>>1]|0,k[g>>2]|0)|0;k[h>>2]=b;k[h+32>>2]=b;k[h+64>>2]=b;k[h+96>>2]=b;k[h+128>>2]=b;k[h+160>>2]=b;k[h+192>>2]=b;k[h+224>>2]=b}else{a=0;n=9}else n=9;if((n|0)==9){n=0;s=ha(j[c>>1]|0,k[g>>2]|0)|0;v=ha(a<<16>>16,k[g+64>>2]|0)|0;u=ha(j[c+64>>1]|0,k[g+128>>2]|0)|0;q=ha(j[c+96>>1]|0,k[g+192>>2]|0)|0;t=u+s|0;u=s-u|0;a=q+v|0;q=((v-q|0)*362>>8)-a|0;v=a+t|0;a=t-a|0;t=q+u|0;q=u-q|0;u=ha(b<<16>>16,k[g+32>>2]|0)|0;s=ha(j[c+48>>1]|0,k[g+96>>2]|0)|0;x=ha(j[c+80>>1]|0,k[g+160>>2]|0)|0;w=ha(j[c+112>>1]|0,k[g+224>>2]|0)|0;p=x+s|0;s=x-s|0;x=w+u|0;w=u-w|0;u=x+p|0;b=(w+s|0)*473>>8;s=((ha(s,-669)|0)>>8)-u+b|0;p=((x-p|0)*362>>8)-s|0;b=p+((w*277>>8)-b)|0;k[h>>2]=u+v;k[h+224>>2]=v-u;k[h+32>>2]=s+t;k[h+192>>2]=t-s;k[h+64>>2]=p+q;k[h+160>>2]=q-p;k[h+128>>2]=b+a;k[h+96>>2]=a-b}if((m|0)>1){m=m+-1|0;c=c+2|0;g=g+4|0;h=h+4|0}else break}g=l+128|0;h=0;while(1){c=(k[d+(h<<2)>>2]|0)+e|0;b=k[f+4>>2]|0;a=k[f+8>>2]|0;if(!(b|a))if(((((k[f+12>>2]|0)==0?(k[f+16>>2]|0)==0:0)?(k[f+20>>2]|0)==0:0)?(k[f+24>>2]|0)==0:0)?(k[f+28>>2]|0)==0:0){x=i[g+((k[f>>2]|0)>>>5&1023)>>0]|0;i[c>>0]=x;eh(c+1|0,x|0,7)|0}else{a=0;n=19}else n=19;if((n|0)==19){n=0;u=k[f>>2]|0;m=k[f+16>>2]|0;s=m+u|0;m=u-m|0;u=k[f+24>>2]|0;w=u+a|0;u=((a-u|0)*362>>8)-w|0;p=w+s|0;w=s-w|0;s=u+m|0;u=m-u|0;m=k[f+20>>2]|0;t=k[f+12>>2]|0;v=t+m|0;t=m-t|0;m=k[f+28>>2]|0;l=m+b|0;m=b-m|0;q=l+v|0;x=(m+t|0)*473>>8;t=((ha(t,-669)|0)>>8)-q+x|0;v=((l-v|0)*362>>8)-t|0;x=v+((m*277>>8)-x)|0;i[c>>0]=i[g+((q+p|0)>>>5&1023)>>0]|0;i[c+7>>0]=i[g+((p-q|0)>>>5&1023)>>0]|0;i[c+1>>0]=i[g+((t+s|0)>>>5&1023)>>0]|0;i[c+6>>0]=i[g+((s-t|0)>>>5&1023)>>0]|0;i[c+2>>0]=i[g+((v+u|0)>>>5&1023)>>0]|0;i[c+5>>0]=i[g+((u-v|0)>>>5&1023)>>0]|0;i[c+4>>0]=i[g+((x+w|0)>>>5&1023)>>0]|0;i[c+3>>0]=i[g+((w-x|0)>>>5&1023)>>0]|0}h=h+1|0;if((h|0)==8)break;else f=f+32|0}r=o;return}function Cc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=a+436|0;e=k[r>>2]|0;b=e+20|0;if(k[b>>2]|0){a=2;return a|0}c=a+440|0;d=cb[k[(k[c>>2]|0)+4>>2]&15](a)|0;switch(d|0){case 1:{q=e+24|0;if(!(k[q>>2]|0)){if(!(k[e+16>>2]|0)){r=k[a>>2]|0;k[r+20>>2]=35;$a[k[r>>2]&63](a)}Lc(a);a=1;return a|0}p=a+32|0;if(!((k[p>>2]|0)<=65500?(k[a+28>>2]|0)<=65500:0)){o=k[a>>2]|0;k[o+20>>2]=41;k[o+24>>2]=65500;$a[k[o>>2]&63](a)}b=k[a+212>>2]|0;if((b|0)!=8){o=k[a>>2]|0;k[o+20>>2]=15;k[o+24>>2]=b;$a[k[o>>2]&63](a)}o=a+36|0;b=k[o>>2]|0;if((b|0)>10){n=k[a>>2]|0;k[n+20>>2]=26;k[n+24>>2]=b;k[n+28>>2]=10;$a[k[n>>2]&63](a);b=k[o>>2]|0}m=a+308|0;k[m>>2]=1;n=a+312|0;k[n>>2]=1;j=a+216|0;if((b|0)>0){c=b;b=1;d=1;h=0;i=k[j>>2]|0;while(1){e=i+8|0;f=k[e>>2]|0;g=i+12|0;if((f+-1|0)>>>0<=3?(l=k[g>>2]|0,(l+-1|0)>>>0<=3):0)e=l;else{d=k[a>>2]|0;k[d+20>>2]=18;$a[k[d>>2]&63](a);d=k[m>>2]|0;f=k[e>>2]|0;b=k[n>>2]|0;e=k[g>>2]|0;c=k[o>>2]|0}d=(d|0)>(f|0)?d:f;k[m>>2]=d;b=(b|0)>(e|0)?b:e;k[n>>2]=b;h=h+1|0;if((h|0)>=(c|0))break;else i=i+84|0}k[a+316>>2]=8;if((c|0)>0){e=a+28|0;b=0;c=k[j>>2]|0;while(1){k[c+36>>2]=8;j=c+8|0;l=pj(ha(k[j>>2]|0,k[e>>2]|0)|0,d<<3)|0;k[c+28>>2]=l;l=c+12|0;i=ha(k[l>>2]|0,k[p>>2]|0)|0;i=pj(i,k[n>>2]<<3)|0;k[c+32>>2]=i;j=ha(k[j>>2]|0,k[e>>2]|0)|0;j=pj(j,k[m>>2]|0)|0;k[c+40>>2]=j;l=ha(k[l>>2]|0,k[p>>2]|0)|0;l=pj(l,k[n>>2]|0)|0;k[c+44>>2]=l;k[c+48>>2]=1;k[c+76>>2]=0;b=b+1|0;if((b|0)>=(k[o>>2]|0))break;d=k[m>>2]|0;c=c+84|0}b=k[n>>2]|0}}else{k[a+316>>2]=8;b=1}p=pj(k[p>>2]|0,b<<3)|0;k[a+320>>2]=p;if((k[a+328>>2]|0)>=(k[o>>2]|0)?(k[a+220>>2]|0)==0:0)k[(k[r>>2]|0)+16>>2]=0;else k[(k[r>>2]|0)+16>>2]=1;k[q>>2]=0;a=1;return a|0}case 2:{k[b>>2]=1;if(!(k[e+24>>2]|0)){c=a+152|0;b=k[a+144>>2]|0;if((k[c>>2]|0)<=(b|0)){a=2;return a|0}k[c>>2]=b;a=2;return a|0}else{if(!(k[(k[c>>2]|0)+16>>2]|0)){a=2;return a|0}r=k[a>>2]|0;k[r+20>>2]=59;$a[k[r>>2]&63](a);a=2;return a|0}}default:{a=d;return a|0}}return 0}function Dc(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+20>>2]|0;if((c|0)!=100){d=k[a>>2]|0;k[d+20>>2]=20;k[d+24>>2]=c;$a[k[d>>2]&63](a)}k[a+64>>2]=b;c=a+208|0;k[c>>2]=0;d=a+220|0;k[d>>2]=0;switch(b|0){case 1:{k[c>>2]=1;k[a+60>>2]=1;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=1;k[a+12>>2]=1;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;return}case 2:{k[d>>2]=1;k[a+60>>2]=3;a=k[a+68>>2]|0;k[a>>2]=82;k[a+8>>2]=1;k[a+12>>2]=1;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=71;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;k[a+168>>2]=66;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=0;k[a+188>>2]=0;k[a+192>>2]=0;return}case 3:{k[c>>2]=1;k[a+60>>2]=3;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=2;k[a+12>>2]=2;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=2;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=1;k[a+104>>2]=1;k[a+108>>2]=1;k[a+168>>2]=3;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=1;k[a+188>>2]=1;k[a+192>>2]=1;return}case 4:{k[d>>2]=1;k[a+60>>2]=4;a=k[a+68>>2]|0;k[a>>2]=67;k[a+8>>2]=1;k[a+12>>2]=1;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=77;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;k[a+168>>2]=89;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=0;k[a+188>>2]=0;k[a+192>>2]=0;k[a+252>>2]=75;k[a+260>>2]=1;k[a+264>>2]=1;k[a+268>>2]=0;k[a+272>>2]=0;k[a+276>>2]=0;return}case 5:{k[d>>2]=1;k[a+60>>2]=4;a=k[a+68>>2]|0;k[a>>2]=1;k[a+8>>2]=2;k[a+12>>2]=2;k[a+16>>2]=0;k[a+20>>2]=0;k[a+24>>2]=0;k[a+84>>2]=2;k[a+92>>2]=1;k[a+96>>2]=1;k[a+100>>2]=1;k[a+104>>2]=1;k[a+108>>2]=1;k[a+168>>2]=3;k[a+176>>2]=1;k[a+180>>2]=1;k[a+184>>2]=1;k[a+188>>2]=1;k[a+192>>2]=1;k[a+252>>2]=4;k[a+260>>2]=2;k[a+264>>2]=2;k[a+268>>2]=0;k[a+272>>2]=0;k[a+276>>2]=0;return}case 0:{c=k[a+36>>2]|0;d=a+60|0;k[d>>2]=c;if((c+-1|0)>>>0>9){b=k[a>>2]|0;k[b+20>>2]=26;k[b+24>>2]=c;k[b+28>>2]=10;$a[k[b>>2]&63](a);c=k[d>>2]|0}if((c|0)<=0)return;d=k[a+68>>2]|0;b=0;do{k[d+(b*84|0)>>2]=b;k[d+(b*84|0)+8>>2]=1;k[d+(b*84|0)+12>>2]=1;k[d+(b*84|0)+16>>2]=0;k[d+(b*84|0)+20>>2]=0;k[d+(b*84|0)+24>>2]=0;b=b+1|0}while((b|0)<(c|0));return}default:{b=k[a>>2]|0;k[b+20>>2]=10;$a[k[b>>2]&63](a);return}}}function Ec(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;e=a+332|0;h=k[e>>2]|0;g=h+4212|0;b=k[g>>2]|0;k[h+44>>2]=(b|0)<(k[h+4224>>2]|0)&1;c=h+4208|0;a:do switch(k[c>>2]|0){case 0:{Bd(a);Qd(a);if(!(k[a+176>>2]|0)){$a[k[k[a+352>>2]>>2]&63](a);$a[k[k[a+356>>2]>>2]&63](a);ab[k[k[a+340>>2]>>2]&31](a,0)}$a[k[k[a+360>>2]>>2]&63](a);b=k[k[a+364>>2]>>2]|0;c=a+184|0;if((k[c>>2]|0)==0?(k[(k[e>>2]|0)+24>>2]|0)==0:0)d=0;else d=(k[a+180>>2]|0)==0;ab[b&31](a,d&1);ab[k[k[a+344>>2]>>2]&31](a,(k[h+4216>>2]|0)>1?3:0);ab[k[k[a+336>>2]>>2]&31](a,0);if((k[c>>2]|0)==0?(k[(k[e>>2]|0)+24>>2]|0)==0:0){k[h+12>>2]=1;break a}k[h+12>>2]=0;break}case 1:{Bd(a);Qd(a);if(((k[a+316>>2]|0)==0?k[a+324>>2]|0:0)?(k[a+180>>2]|0)==0:0){k[c>>2]=2;k[g>>2]=(k[g>>2]|0)+1;f=16;break a}ab[k[k[a+364>>2]>>2]&31](a,1);ab[k[k[a+344>>2]>>2]&31](a,2);k[h+12>>2]=0;break}case 2:{f=16;break}case 3:{if(((b|0)%(ha(k[h+40>>2]|0?4:2,k[a+60>>2]|0)|0)|0|0)==1?k[h+48>>2]|0:0){c=k[e>>2]|0;b=1;do{p[c+56+(b<<3)>>3]=0.0;p[c+2104+(b<<3)>>3]=0.0;b=b+1|0}while((b|0)!=64);b=1;do{p[c+568+(b<<3)>>3]=0.0;p[c+2616+(b<<3)>>3]=0.0;b=b+1|0}while((b|0)!=64);b=1;do{p[c+1080+(b<<3)>>3]=0.0;p[c+3128+(b<<3)>>3]=0.0;b=b+1|0}while((b|0)!=64);b=1;do{p[c+1592+(b<<3)>>3]=0.0;p[c+3640+(b<<3)>>3]=0.0;b=b+1|0}while((b|0)!=64)}ab[k[k[a+364>>2]>>2]&31](a,(k[a+180>>2]|0)==0&1);ab[k[k[a+344>>2]>>2]&31](a,4);k[h+12>>2]=0;break}default:{e=k[a>>2]|0;k[e+20>>2]=48;$a[k[e>>2]&63](a)}}while(0);if((f|0)==16){if(!(k[a+184>>2]|0)){Bd(a);Qd(a)}if(!(k[(k[e>>2]|0)+20>>2]|0))b=h+4220|0;else{f=a+24|0;k[h+5020>>2]=k[f>>2];k[f>>2]=0;b=h+4220|0;k[h+4484+(k[b>>2]<<2)>>2]=0;e=k[b>>2]|0;gf(a,h+4228+(e<<2)|0,h+4484+(e<<2)|0);$a[k[(k[f>>2]|0)+8>>2]&63](a)}ab[k[k[a+364>>2]>>2]&31](a,0);ab[k[k[a+344>>2]>>2]&31](a,2);c=a+348|0;if(!(k[b>>2]|0))$a[k[(k[c>>2]|0)+4>>2]&63](a);$a[k[(k[c>>2]|0)+8>>2]&63](a);k[h+12>>2]=0}c=k[g>>2]|0;d=k[h+4216>>2]|0;k[h+16>>2]=(c|0)==(d+-1|0)&1;b=k[a+8>>2]|0;if(!b)return;k[b+12>>2]=c;k[b+16>>2]=d;return}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0;w=r;r=r+32|0;u=w;v=k[a+444>>2]|0;m=k[a+404>>2]|0;n=k[a+412>>2]|0;d=a+276|0;if(k[d>>2]|0?(e=v+40|0,(k[e>>2]|0)==0):0){s=v+16|0;t=k[a+440>>2]|0;q=t+24|0;k[q>>2]=(k[q>>2]|0)+((k[s>>2]|0)/8|0);k[s>>2]=0;if(!(cb[k[t+8>>2]&15](a)|0)){v=0;r=w;return v|0}c=a+328|0;if((k[c>>2]|0)>0){f=0;do{k[v+24+(f<<2)>>2]=0;f=f+1|0}while((f|0)<(k[c>>2]|0))}k[v+20>>2]=0;k[e>>2]=k[d>>2];if(!(k[a+416>>2]|0))k[v+8>>2]=0}if(!(k[v+8>>2]|0)){t=v+20|0;c=k[t>>2]|0;if(!c){k[u+16>>2]=a;o=a+24|0;q=k[o>>2]|0;k[u>>2]=k[q>>2];p=u+4|0;k[p>>2]=k[q+4>>2];q=v+12|0;d=k[q>>2]|0;s=v+16|0;e=k[s>>2]|0;g=k[b>>2]|0;h=k[v+60>>2]|0;c=k[a+400>>2]|0;a:do if((c|0)<=(m|0)){l=u+8|0;i=u+12|0;a=c;while(1){if((e|0)<8){if(!(Pd(u,d,e,0)|0)){c=0;b=39;break}d=k[l>>2]|0;e=k[i>>2]|0;if((e|0)<8){c=1;b=18}else b=16}else b=16;if((b|0)==16){b=0;f=k[h+148+((d>>e+-8&255)<<2)>>2]|0;c=f>>8;if((c|0)<9){e=e-c|0;c=f&255}else b=18}if((b|0)==18){c=ff(u,d,e,h,c)|0;if((c|0)<0){c=0;b=39;break}e=k[i>>2]|0;d=k[l>>2]|0}f=c>>4;b=c&15;if(!b){if((f|0)!=15){b=29;break}c=a+15|0}else{f=f+a|0;if((e|0)<(b|0)){if(!(Pd(u,d,e,b)|0)){c=0;b=39;break}e=k[i>>2]|0;d=k[l>>2]|0}e=e-b|0;c=d>>e&(1<<b)+-1;if((c|0)<(1<<b+-1|0))c=(-1<<b)+1+c|0;j[g+(k[14344+(f<<2)>>2]<<1)>>1]=c<<n;c=f}if((c|0)<(m|0))a=c+1|0;else{c=0;break a}}if((b|0)==29){c=1<<f;if(f){do if((e|0)<(f|0))if(!(Pd(u,d,e,f)|0)){v=0;r=w;return v|0}else{e=k[i>>2]|0;d=k[l>>2]|0;break}while(0);e=e-f|0;c=(d>>e&c+-1)+c|0}c=c+-1|0;break}else if((b|0)==39){r=w;return c|0}}else c=0;while(0);o=k[o>>2]|0;k[o>>2]=k[u>>2];k[o+4>>2]=k[p>>2];k[q>>2]=d;k[s>>2]=e}else c=c+-1|0;k[t>>2]=c}v=v+40|0;k[v>>2]=(k[v>>2]|0)+-1;v=1;r=w;return v|0}function Gc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;l=a;i=b;j=i;g=c;n=d;h=n;if(!j){f=(e|0)!=0;if(!h){if(f){k[e>>2]=(l>>>0)%(g>>>0);k[e+4>>2]=0}n=0;e=(l>>>0)/(g>>>0)>>>0;return (L=n,e)|0}else{if(!f){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=b&0;n=0;e=0;return (L=n,e)|0}}f=(h|0)==0;do if(g){if(!f){f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=31){m=f+1|0;h=31-f|0;b=f-31>>31;g=m;a=l>>>(m>>>0)&b|j<<h;b=j>>>(m>>>0)&b;f=0;h=l<<h;break}if(!e){n=0;e=0;return (L=n,e)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;n=0;e=0;return (L=n,e)|0}f=g-1|0;if(f&g|0){h=(ja(g|0)|0)+33-(ja(j|0)|0)|0;p=64-h|0;m=32-h|0;i=m>>31;o=h-32|0;b=o>>31;g=h;a=m-1>>31&j>>>(o>>>0)|(j<<m|l>>>(h>>>0))&b;b=b&j>>>(h>>>0);f=l<<p&i;h=(j<<p|l>>>(o>>>0))&i|l<<m&h-33>>31;break}if(e|0){k[e>>2]=f&l;k[e+4>>2]=0}if((g|0)==1){o=i|b&0;p=a|0|0;return (L=o,p)|0}else{p=Gh(g|0)|0;o=j>>>(p>>>0)|0;p=j<<32-p|l>>>(p>>>0)|0;return (L=o,p)|0}}else{if(f){if(e|0){k[e>>2]=(j>>>0)%(g>>>0);k[e+4>>2]=0}o=0;p=(j>>>0)/(g>>>0)>>>0;return (L=o,p)|0}if(!l){if(e|0){k[e>>2]=0;k[e+4>>2]=(j>>>0)%(h>>>0)}o=0;p=(j>>>0)/(h>>>0)>>>0;return (L=o,p)|0}f=h-1|0;if(!(f&h)){if(e|0){k[e>>2]=a|0;k[e+4>>2]=f&j|b&0}o=0;p=j>>>((Gh(h|0)|0)>>>0);return (L=o,p)|0}f=(ja(h|0)|0)-(ja(j|0)|0)|0;if(f>>>0<=30){b=f+1|0;h=31-f|0;g=b;a=j<<h|l>>>(b>>>0);b=j>>>(b>>>0);f=0;h=l<<h;break}if(!e){o=0;p=0;return (L=o,p)|0}k[e>>2]=a|0;k[e+4>>2]=i|b&0;o=0;p=0;return (L=o,p)|0}while(0);if(!g){j=h;i=0;h=0}else{m=c|0|0;l=n|d&0;j=zi(m|0,l|0,-1,-1)|0;c=L;i=h;h=0;do{d=i;i=f>>>31|i<<1;f=h|f<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;pi(j|0,c|0,d|0,n|0)|0;p=L;o=p>>31|((p|0)<0?-1:0)<<1;h=o&1;a=pi(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=L;g=g-1|0}while((g|0)!=0);j=i;i=0}g=0;if(e|0){k[e>>2]=a;k[e+4>>2]=b}o=(f|0)>>>31|(j|g)<<1|(g<<1|f>>>31)&0|i;p=(f<<1|0>>>31)&-2|h;return (L=o,p)|0}function Hc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+48|0;x=A+20|0;z=A;y=k[a+444>>2]|0;s=k[a+412>>2]|0;d=a+276|0;if(k[d>>2]|0?(e=y+40|0,(k[e>>2]|0)==0):0){v=y+16|0;w=k[a+440>>2]|0;u=w+24|0;k[u>>2]=(k[u>>2]|0)+((k[v>>2]|0)/8|0);k[v>>2]=0;if(!(cb[k[w+8>>2]&15](a)|0)){z=0;r=A;return z|0}c=a+328|0;if((k[c>>2]|0)>0){f=0;do{k[y+24+(f<<2)>>2]=0;f=f+1|0}while((f|0)<(k[c>>2]|0))}k[y+20>>2]=0;k[e>>2]=k[d>>2];if(!(k[a+416>>2]|0))k[y+8>>2]=0}if(!(k[y+8>>2]|0)){k[x+16>>2]=a;q=a+24|0;g=k[q>>2]|0;f=k[g>>2]|0;k[x>>2]=f;e=k[g+4>>2]|0;t=x+4|0;k[t>>2]=e;u=y+12|0;c=k[u>>2]|0;v=y+16|0;d=k[v>>2]|0;w=y+20|0;k[z>>2]=k[w>>2];k[z+4>>2]=k[w+4>>2];k[z+8>>2]=k[w+8>>2];k[z+12>>2]=k[w+12>>2];k[z+16>>2]=k[w+16>>2];p=a+356|0;do if((k[p>>2]|0)>0){n=x+8|0;o=x+12|0;m=0;while(1){i=k[b+(m<<2)>>2]|0;l=k[a+360+(m<<2)>>2]|0;g=k[y+44+(k[(k[a+332+(l<<2)>>2]|0)+20>>2]<<2)>>2]|0;if((d|0)<8){if(!(Pd(x,c,d,0)|0)){c=0;h=28;break}c=k[n>>2]|0;d=k[o>>2]|0;if((d|0)<8){e=1;h=16}else h=14}else h=14;if((h|0)==14){h=0;f=k[g+148+((c>>d+-8&255)<<2)>>2]|0;e=f>>8;if((e|0)<9){d=d-e|0;e=f&255}else h=16}if((h|0)==16){e=ff(x,c,d,g,e)|0;if((e|0)<0){c=0;h=28;break}d=k[o>>2]|0;c=k[n>>2]|0}if(e){if((d|0)<(e|0)){if(!(Pd(x,c,d,e)|0)){c=0;h=28;break}d=k[o>>2]|0;c=k[n>>2]|0}d=d-e|0;f=c>>d&(1<<e)+-1;if((f|0)<(1<<e+-1|0))e=(-1<<e)+1+f|0;else e=f}else e=0;h=z+4+(l<<2)|0;l=(k[h>>2]|0)+e|0;k[h>>2]=l;j[i>>1]=l<<s;m=m+1|0;if((m|0)>=(k[p>>2]|0)){h=25;break}}if((h|0)==25){g=k[q>>2]|0;f=k[x>>2]|0;e=k[t>>2]|0;break}else if((h|0)==28){r=A;return c|0}}while(0);k[g>>2]=f;k[g+4>>2]=e;k[u>>2]=c;k[v>>2]=d;k[w>>2]=k[z>>2];k[w+4>>2]=k[z+4>>2];k[w+8>>2]=k[z+8>>2];k[w+12>>2]=k[z+12>>2];k[w+16>>2]=k[z+16>>2]}z=y+40|0;k[z>>2]=(k[z>>2]|0)+-1;z=1;r=A;return z|0}function Ic(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;w=a+424|0;x=k[w>>2]|0;z=x+48|0;do if(!(k[z>>2]|0))if(!(gb[k[(k[a+428>>2]|0)+12>>2]&63](a,k[x+56+(k[x+64>>2]<<2)>>2]|0)|0))return;else{k[z>>2]=1;y=x+76|0;k[y>>2]=(k[y>>2]|0)+1;break}while(0);y=x+68|0;switch(k[y>>2]|0){case 2:{e=x+52|0;f=x+72|0;Za[k[(k[a+432>>2]|0)+4>>2]&15](a,k[x+56+(k[x+64>>2]<<2)>>2]|0,e,k[f>>2]|0,b,c,d);if((k[e>>2]|0)>>>0<(k[f>>2]|0)>>>0)return;k[y>>2]=0;if((k[c>>2]|0)>>>0<d>>>0)g=9;else return;break}case 0:{e=x+52|0;f=x+72|0;g=9;break}case 1:{v=x+52|0;u=x+72|0;break}default:return}if((g|0)==9){k[e>>2]=0;g=a+316|0;k[f>>2]=(k[g>>2]|0)+-1;if((k[x+76>>2]|0)==(k[a+320>>2]|0)?(r=k[w>>2]|0,s=k[a+36>>2]|0,(s|0)>0):0){j=k[g>>2]|0;l=r+72|0;m=r+64|0;p=0;q=k[a+216>>2]|0;while(1){v=ha(k[q+36>>2]|0,k[q+12>>2]|0)|0;g=(v|0)/(j|0)|0;i=((k[q+44>>2]|0)>>>0)%(v>>>0)|0;i=(i|0)==0?v:i;if(!p)k[l>>2]=((i+-1|0)/(g|0)|0)+1;n=k[(k[r+56+(k[m>>2]<<2)>>2]|0)+(p<<2)>>2]|0;o=g<<1;if((g|0)>0){g=n+(i+-1<<2)|0;h=0;do{k[n+(h+i<<2)>>2]=k[g>>2];h=h+1|0}while((h|0)<(o|0))}p=p+1|0;if((p|0)==(s|0))break;else q=q+84|0}}k[y>>2]=1;v=e;u=f}t=x+64|0;Za[k[(k[a+432>>2]|0)+4>>2]&15](a,k[x+56+(k[t>>2]<<2)>>2]|0,v,k[u>>2]|0,b,c,d);if((k[v>>2]|0)>>>0<(k[u>>2]|0)>>>0)return;if((k[x+76>>2]|0)==1){f=k[w>>2]|0;e=k[a+316>>2]|0;r=k[a+36>>2]|0;if((r|0)>0){s=f+56|0;n=f+60|0;o=e+1|0;p=e+2|0;q=0;l=k[a+216>>2]|0;while(1){f=(ha(k[l+36>>2]|0,k[l+12>>2]|0)|0)/(e|0)|0;g=k[(k[s>>2]|0)+(q<<2)>>2]|0;h=k[(k[n>>2]|0)+(q<<2)>>2]|0;if((f|0)>0){i=ha(f,o)|0;j=ha(f,p)|0;m=0;do{b=m+i|0;a=m-f|0;k[g+(a<<2)>>2]=k[g+(b<<2)>>2];k[h+(a<<2)>>2]=k[h+(b<<2)>>2];a=m+j|0;k[g+(a<<2)>>2]=k[g+(m<<2)>>2];k[h+(a<<2)>>2]=k[h+(m<<2)>>2];m=m+1|0}while((m|0)!=(f|0))}q=q+1|0;if((q|0)==(r|0))break;else l=l+84|0}}}else e=k[a+316>>2]|0;k[t>>2]=k[t>>2]^1;k[z>>2]=0;k[v>>2]=e+1;k[u>>2]=e+2;k[y>>2]=2;return}function Jc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;l=r;r=r+320|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){s=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;n=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;u=(n*9373|0)+s|0;x=(ha(n,-3580)|0)+s|0;s=(ha(n,-11586)|0)+s>>11;n=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;p=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;w=(p+n|0)*6810|0;n=w+(n*4209|0)|0;p=w+(ha(p,-17828)|0)|0;w=n+u|0;n=u-n|0;u=p+x|0;p=x-p|0;x=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;y=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;t=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;q=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;o=q+y|0;q=y-q|0;y=q*2531|0;z=t<<13;A=o*7791|0;m=y+z|0;v=A+(x*11443|0)+m|0;m=(x*1812|0)-A+m|0;o=o*4815|0;y=z-y-(q<<12)|0;q=x-t-q<<2;t=(x*10323|0)-o-y|0;o=y+((x*5260|0)-o)|0;k[b>>2]=v+w>>11;k[b+288>>2]=w-v>>11;k[b+32>>2]=t+u>>11;k[b+256>>2]=u-t>>11;k[b+64>>2]=q+s;k[b+224>>2]=s-q;k[b+96>>2]=o+p>>11;k[b+192>>2]=p-o>>11;k[b+128>>2]=m+n>>11;k[b+160>>2]=n-m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){A=(k[d+(c<<2)>>2]|0)+e|0;y=(k[f>>2]<<13)+131072|0;u=k[f+16>>2]|0;s=y+(u*9373|0)|0;o=y+(ha(u,-3580)|0)|0;u=y+(ha(u,-11586)|0)|0;y=k[f+8>>2]|0;w=k[f+24>>2]|0;p=(w+y|0)*6810|0;y=p+(y*4209|0)|0;w=p+(ha(w,-17828)|0)|0;p=y+s|0;y=s-y|0;s=w+o|0;w=o-w|0;o=k[f+4>>2]|0;n=k[f+12>>2]|0;v=k[f+20>>2]<<13;t=k[f+28>>2]|0;x=t+n|0;t=n-t|0;n=t*2531|0;m=x*7791|0;z=n+v|0;q=m+(o*11443|0)+z|0;z=(o*1812|0)-m+z|0;x=x*4815|0;n=v-n-(t<<12)|0;v=(o-t<<13)-v|0;t=(o*10323|0)-x-n|0;x=n+((o*5260|0)-x)|0;i[A>>0]=i[a+((q+p|0)>>>18&1023)>>0]|0;i[A+9>>0]=i[a+((p-q|0)>>>18&1023)>>0]|0;i[A+1>>0]=i[a+((t+s|0)>>>18&1023)>>0]|0;i[A+8>>0]=i[a+((s-t|0)>>>18&1023)>>0]|0;i[A+2>>0]=i[a+((v+u|0)>>>18&1023)>>0]|0;i[A+7>>0]=i[a+((u-v|0)>>>18&1023)>>0]|0;i[A+3>>0]=i[a+((x+w|0)>>>18&1023)>>0]|0;i[A+6>>0]=i[a+((w-x|0)>>>18&1023)>>0]|0;i[A+4>>0]=i[a+((z+y|0)>>>18&1023)>>0]|0;i[A+5>>0]=i[a+((y-z|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==10)break;else f=f+32|0}r=l;return}function Kc(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+20>>2]|0;if((b|0)!=100){e=k[a>>2]|0;k[e+20>>2]=20;k[e+24>>2]=b;$a[k[e>>2]&63](a)}b=a+68|0;if(!(k[b>>2]|0)){e=Ya[k[k[a+4>>2]>>2]&15](a,0,840)|0;k[b>>2]=e;b=a}else b=a;e=a+56|0;k[e>>2]=8;he(a,50,1);c=(k[a+16>>2]|0)==0;d=c?a+88|0:a+180|0;c=c?a+104|0:a+196|0;Af(b,d,22009,22026);Af(b,c,22038,22055);Af(b,d+4|0,22217,22234);Af(b,c+4|0,22246,22263);i[a+120>>0]=0;i[a+136>>0]=1;i[a+152>>0]=5;i[a+121>>0]=0;i[a+137>>0]=1;i[a+153>>0]=5;i[a+122>>0]=0;i[a+138>>0]=1;i[a+154>>0]=5;i[a+123>>0]=0;i[a+139>>0]=1;i[a+155>>0]=5;i[a+124>>0]=0;i[a+140>>0]=1;i[a+156>>0]=5;i[a+125>>0]=0;i[a+141>>0]=1;i[a+157>>0]=5;i[a+126>>0]=0;i[a+142>>0]=1;i[a+158>>0]=5;i[a+127>>0]=0;i[a+143>>0]=1;i[a+159>>0]=5;i[a+128>>0]=0;i[a+144>>0]=1;i[a+160>>0]=5;i[a+129>>0]=0;i[a+145>>0]=1;i[a+161>>0]=5;i[a+130>>0]=0;i[a+146>>0]=1;i[a+162>>0]=5;i[a+131>>0]=0;i[a+147>>0]=1;i[a+163>>0]=5;i[a+132>>0]=0;i[a+148>>0]=1;i[a+164>>0]=5;i[a+133>>0]=0;i[a+149>>0]=1;i[a+165>>0]=5;i[a+134>>0]=0;i[a+150>>0]=1;i[a+166>>0]=5;i[a+135>>0]=0;i[a+151>>0]=1;i[a+167>>0]=5;c=a+168|0;b=a+332|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;c=k[b>>2]|0;d=c+4152|0;k[a+184>>2]=(k[e>>2]|0)>8?1:(k[d>>2]|0)==1560820397&1;k[a+188>>2]=0;k[c+52>>2]=(k[d>>2]|0)==1560820397&1;c=a+192|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;i[a+212>>0]=1;i[a+213>>0]=1;i[a+214>>0]=0;j[a+216>>1]=1;j[a+218>>1]=1;Zb(a);c=k[b>>2]|0;k[c+4156>>2]=1;d=k[c+4152>>2]|0;e=c+20|0;if((d|0)==1560820397){k[e>>2]=1;rb(a);d=k[b>>2]|0;a=d;d=k[d+4152>>2]|0;d=(d|0)==1560820397;c=d&1;e=a+24|0;k[e>>2]=c;e=a+4196|0;o[e>>2]=14.75;e=a+4200|0;o[e>>2]=16.5;d=d?3:0;e=a+4160|0;k[e>>2]=d;e=a+36|0;k[e>>2]=1;e=a+40|0;k[e>>2]=0;e=a+4164|0;k[e>>2]=8;e=a+4168|0;k[e>>2]=1;e=a+48|0;k[e>>2]=0;e=a+28|0;k[e>>2]=1;a=a+4204|0;o[a>>2]=0.0;return}else{k[e>>2]=0;a=c;d=(d|0)==1560820397;c=d&1;e=a+24|0;k[e>>2]=c;e=a+4196|0;o[e>>2]=14.75;e=a+4200|0;o[e>>2]=16.5;d=d?3:0;e=a+4160|0;k[e>>2]=d;e=a+36|0;k[e>>2]=1;e=a+40|0;k[e>>2]=0;e=a+4164|0;k[e>>2]=8;e=a+4168|0;k[e>>2]=1;e=a+48|0;k[e>>2]=0;e=a+28|0;k[e>>2]=1;a=a+4204|0;o[a>>2]=0.0;return}}function Lc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;g=a+328|0;b=k[g>>2]|0;if((b|0)!=1){if((b+-1|0)>>>0>3){f=k[a>>2]|0;k[f+20>>2]=26;k[f+24>>2]=b;k[f+28>>2]=4;$a[k[f>>2]&63](a)}e=pj(k[a+28>>2]|0,k[a+308>>2]<<3)|0;k[a+348>>2]=e;e=pj(k[a+32>>2]|0,k[a+312>>2]<<3)|0;k[a+352>>2]=e;e=a+356|0;k[e>>2]=0;if((k[g>>2]|0)<=0){g=a+444|0;g=k[g>>2]|0;g=k[g>>2]|0;$a[g&63](a);g=a+428|0;f=k[g>>2]|0;f=k[f>>2]|0;$a[f&63](a);g=k[g>>2]|0;g=g+4|0;g=k[g>>2]|0;a=a+436|0;a=k[a>>2]|0;k[a>>2]=g;return}d=0;c=0;while(1){f=k[a+332+(c<<2)>>2]|0;j=k[f+8>>2]|0;k[f+52>>2]=j;i=k[f+12>>2]|0;k[f+56>>2]=i;b=ha(i,j)|0;k[f+60>>2]=b;h=ha(k[f+36>>2]|0,j)|0;k[f+64>>2]=h;h=((k[f+28>>2]|0)>>>0)%(j>>>0)|0;k[f+68>>2]=(h|0)==0?j:h;h=((k[f+32>>2]|0)>>>0)%(i>>>0)|0;k[f+72>>2]=(h|0)==0?i:h;if((b+d|0)>10){j=k[a>>2]|0;k[j+20>>2]=13;$a[k[j>>2]&63](a)}if((b|0)>0)while(1){j=k[e>>2]|0;k[e>>2]=j+1;k[a+360+(j<<2)>>2]=c;if((b|0)>1)b=b+-1|0;else break}c=c+1|0;b=k[g>>2]|0;if((c|0)>=(b|0))break;d=k[e>>2]|0}if((b|0)<=0){i=a+444|0;i=k[i>>2]|0;i=k[i>>2]|0;$a[i&63](a);i=a+428|0;j=k[i>>2]|0;j=k[j>>2]|0;$a[j&63](a);i=k[i>>2]|0;i=i+4|0;i=k[i>>2]|0;j=a+436|0;j=k[j>>2]|0;k[j>>2]=i;return}}else{b=k[a+332>>2]|0;k[a+348>>2]=k[b+28>>2];j=k[b+32>>2]|0;k[a+352>>2]=j;k[b+52>>2]=1;k[b+56>>2]=1;k[b+60>>2]=1;k[b+64>>2]=k[b+36>>2];k[b+68>>2]=1;i=k[b+12>>2]|0;j=(j>>>0)%(i>>>0)|0;k[b+72>>2]=(j|0)==0?i:j;k[a+356>>2]=1;k[a+360>>2]=0;b=1}f=a+4|0;e=0;do{c=k[a+332+(e<<2)>>2]|0;d=c+76|0;if(!(k[d>>2]|0)){c=k[c+16>>2]|0;b=a+164+(c<<2)|0;if(!(c>>>0<=3?(k[b>>2]|0)!=0:0)){j=k[a>>2]|0;k[j+20>>2]=52;k[j+24>>2]=c;$a[k[j>>2]&63](a)}j=Ya[k[k[f>>2]>>2]&15](a,1,132)|0;_g(j|0,k[b>>2]|0,132)|0;k[d>>2]=j;b=k[g>>2]|0}e=e+1|0}while((e|0)<(b|0));i=a+444|0;i=k[i>>2]|0;i=k[i>>2]|0;$a[i&63](a);i=a+428|0;j=k[i>>2]|0;j=k[j>>2]|0;$a[j&63](a);i=k[i>>2]|0;i=i+4|0;i=k[i>>2]|0;j=a+436|0;j=k[j>>2]|0;k[j>>2]=i;return}function Mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0;h=k[a+72+(b<<2)>>2]|0;if(!h){d=k[a>>2]|0;k[d+20>>2]=52;k[d+24>>2]=b;$a[k[d>>2]&63](a);d=0;c=0}else{d=0;c=0}do{c=(m[h+(d<<1)>>1]|0)>255?1:c;d=d+1|0}while((d|0)!=64);f=h+128|0;if(k[f>>2]|0)return c|0;g=a+24|0;d=k[g>>2]|0;l=k[d>>2]|0;k[d>>2]=l+1;i[l>>0]=-1;l=d+4|0;e=(k[l>>2]|0)+-1|0;k[l>>2]=e;if((e|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a)}d=k[g>>2]|0;e=k[d>>2]|0;k[d>>2]=e+1;i[e>>0]=-37;e=d+4|0;l=(k[e>>2]|0)+-1|0;k[e>>2]=l;if((l|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a)}e=(c|0)!=0;d=k[g>>2]|0;n=k[d>>2]|0;k[d>>2]=n+1;i[n>>0]=0;n=d+4|0;l=(k[n>>2]|0)+-1|0;k[n>>2]=l;if((l|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}d=k[g>>2]|0;l=k[d>>2]|0;k[d>>2]=l+1;i[l>>0]=e?-125:67;l=d+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}d=k[g>>2]|0;l=k[d>>2]|0;k[d>>2]=l+1;i[l>>0]=(c<<4)+b;l=d+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}if(e){b=0;do{e=j[h+(k[14344+(b<<2)>>2]<<1)>>1]|0;d=k[g>>2]|0;l=k[d>>2]|0;k[d>>2]=l+1;i[l>>0]=(e&65535)>>>8;l=d+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}d=k[g>>2]|0;l=k[d>>2]|0;k[d>>2]=l+1;i[l>>0]=e;l=d+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}b=b+1|0}while((b|0)!=64)}else{e=0;do{d=k[g>>2]|0;n=j[h+(k[14344+(e<<2)>>2]<<1)>>1]&255;l=k[d>>2]|0;k[d>>2]=l+1;i[l>>0]=n;l=d+4|0;n=(k[l>>2]|0)+-1|0;k[l>>2]=n;if((n|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}e=e+1|0}while((e|0)!=64)}k[f>>2]=1;return c|0}function Nc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,p=0,q=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;p=r;r=r+256|0;f=p;n=k[a+324>>2]|0;l=8;g=k[b+80>>2]|0;h=f;while(1){b=j[c+16>>1]|0;a=j[c+32>>1]|0;if(!((b|a)<<16>>16))if(((((j[c+48>>1]|0)==0?(j[c+64>>1]|0)==0:0)?(j[c+80>>1]|0)==0:0)?(j[c+96>>1]|0)==0:0)?(j[c+112>>1]|0)==0:0){q=+(j[c>>1]|0)*+o[g>>2]*.125;o[h>>2]=q;o[h+32>>2]=q;o[h+64>>2]=q;o[h+96>>2]=q;o[h+128>>2]=q;o[h+160>>2]=q;o[h+192>>2]=q;o[h+224>>2]=q}else{a=0;m=9}else m=9;if((m|0)==9){m=0;s=+(j[c>>1]|0)*+o[g>>2]*.125;y=+(a<<16>>16)*+o[g+64>>2]*.125;x=+(j[c+64>>1]|0)*+o[g+128>>2]*.125;u=+(j[c+96>>1]|0)*+o[g+192>>2]*.125;w=s+x;x=s-x;s=y+u;u=(y-u)*1.4142135381698608-s;y=w+s;s=w-s;w=x+u;u=x-u;x=+(b<<16>>16)*+o[g+32>>2]*.125;v=+(j[c+48>>1]|0)*+o[g+96>>2]*.125;A=+(j[c+80>>1]|0)*+o[g+160>>2]*.125;q=+(j[c+112>>1]|0)*+o[g+224>>2]*.125;t=v+A;v=A-v;A=x+q;q=x-q;x=t+A;z=(v+q)*1.8477590084075928;v=z-v*2.613126039505005-x;t=(A-t)*1.4142135381698608-v;q=z-q*1.0823922157287598-t;o[h>>2]=y+x;o[h+224>>2]=y-x;o[h+32>>2]=w+v;o[h+192>>2]=w-v;o[h+64>>2]=u+t;o[h+160>>2]=u-t;o[h+96>>2]=s+q;o[h+128>>2]=s-q}if((l|0)>1){l=l+-1|0;c=c+2|0;g=g+4|0;h=h+4|0}else{a=0;break}}while(1){m=(k[d+(a<<2)>>2]|0)+e|0;t=+o[f>>2]+128.5;u=+o[f+16>>2];v=t+u;u=t-u;t=+o[f+8>>2];x=+o[f+24>>2];z=t+x;x=(t-x)*1.4142135381698608-z;t=v+z;z=v-z;v=u+x;x=u-x;u=+o[f+20>>2];w=+o[f+12>>2];y=u+w;w=u-w;u=+o[f+4>>2];A=+o[f+28>>2];q=u+A;A=u-A;u=y+q;s=(w+A)*1.8477590084075928;w=s-w*2.613126039505005-u;y=(q-y)*1.4142135381698608-w;A=s-A*1.0823922157287598-y;i[m>>0]=i[n+(~~(t+u)&1023)>>0]|0;i[m+7>>0]=i[n+(~~(t-u)&1023)>>0]|0;i[m+1>>0]=i[n+(~~(v+w)&1023)>>0]|0;i[m+6>>0]=i[n+(~~(v-w)&1023)>>0]|0;i[m+2>>0]=i[n+(~~(x+y)&1023)>>0]|0;i[m+5>>0]=i[n+(~~(x-y)&1023)>>0]|0;i[m+3>>0]=i[n+(~~(z+A)&1023)>>0]|0;i[m+4>>0]=i[n+(~~(z-A)&1023)>>0]|0;a=a+1|0;if((a|0)==8)break;else f=f+32|0}r=p;return}function Oc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=k[a+364>>2]|0;if(b|0){l=k[a>>2]|0;k[l+20>>2]=48;$a[k[l>>2]&63](a)}do if((k[(k[a+332>>2]|0)+44>>2]|0)==0?(k[a+228>>2]|0)!=0:0){b=(k[a+316>>2]|0)==0;c=m+4|0;if(!(k[a+324>>2]|0))if(b){k[c>>2]=28;b=0;break}else{k[c>>2]=29;b=0;break}else if(b){k[c>>2]=30;b=0;break}else{k[c>>2]=31;b=0;break}}else d=12;while(0);if((d|0)==12){k[m+4>>2]=32;b=1}j=a+244|0;a:do if((k[j>>2]|0)>0){l=a+4|0;f=a+320|0;g=a+316|0;h=a+324|0;if(b){e=0;while(1){d=k[a+248+(e<<2)>>2]|0;b=k[d+20>>2]|0;if(b>>>0>15){h=k[a>>2]|0;k[h+20>>2]=125;k[h+24>>2]=b;$a[k[h>>2]&63](a)}c=m+76+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[l>>2]>>2]&15](a,1,64)|0;k[c>>2]=b}c=b+64|0;do{i[b>>0]=0;b=b+1|0}while((b|0)<(c|0));k[m+36+(e<<2)>>2]=0;k[m+52+(e<<2)>>2]=0;b=k[d+24>>2]|0;if(b>>>0>15){h=k[a>>2]|0;k[h+20>>2]=125;k[h+24>>2]=b;$a[k[h>>2]&63](a)}c=m+140+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[l>>2]>>2]&15](a,1,256)|0;k[c>>2]=b}eh(b|0,0,256)|0;e=e+1|0;if((e|0)>=(k[j>>2]|0))break a}}else e=0;do{d=k[a+248+(e<<2)>>2]|0;if((k[g>>2]|0)==0?(k[h>>2]|0)==0:0){b=k[d+20>>2]|0;if(b>>>0>15){c=k[a>>2]|0;k[c+20>>2]=125;k[c+24>>2]=b;$a[k[c>>2]&63](a)}c=m+76+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[l>>2]>>2]&15](a,1,64)|0;k[c>>2]=b}c=b+64|0;do{i[b>>0]=0;b=b+1|0}while((b|0)<(c|0));k[m+36+(e<<2)>>2]=0;k[m+52+(e<<2)>>2]=0}if(k[f>>2]|0){b=k[d+24>>2]|0;if(b>>>0>15){d=k[a>>2]|0;k[d+20>>2]=125;k[d+24>>2]=b;$a[k[d>>2]&63](a)}c=m+140+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[l>>2]>>2]&15](a,1,256)|0;k[c>>2]=b}eh(b|0,0,256)|0}e=e+1|0}while((e|0)<(k[j>>2]|0))}while(0);k[m+12>>2]=0;k[m+16>>2]=65536;k[m+20>>2]=0;k[m+24>>2]=0;k[m+28>>2]=11;k[m+32>>2]=-1;k[m+68>>2]=k[a+200>>2];k[m+72>>2]=0;return}function Pc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0;h=(c|0)==0;d=h?b:b+16|0;h=k[(h?a+88+(b<<2)|0:a+104+(b<<2)|0)>>2]|0;if(!h){g=k[a>>2]|0;k[g+20>>2]=50;k[g+24>>2]=d;$a[k[g>>2]&63](a)}g=h+276|0;if(k[g>>2]|0)return;f=a+24|0;c=k[f>>2]|0;b=k[c>>2]|0;k[c>>2]=b+1;i[b>>0]=-1;b=c+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}c=k[f>>2]|0;b=k[c>>2]|0;k[c>>2]=b+1;i[b>>0]=-60;b=c+4|0;e=(k[b>>2]|0)+-1|0;k[b>>2]=e;if((e|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}e=(l[h+16>>0]|0)+((l[h+15>>0]|0)+((l[h+14>>0]|0)+((l[h+13>>0]|0)+((l[h+12>>0]|0)+((l[h+11>>0]|0)+((l[h+10>>0]|0)+((l[h+9>>0]|0)+((l[h+8>>0]|0)+((l[h+7>>0]|0)+((l[h+6>>0]|0)+((l[h+5>>0]|0)+((l[h+4>>0]|0)+((l[h+3>>0]|0)+((l[h+2>>0]|0)+(l[h+1>>0]|0)))))))))))))))|0;b=e+19|0;c=k[f>>2]|0;m=k[c>>2]|0;k[c>>2]=m+1;i[m>>0]=b>>>8;m=c+4|0;j=(k[m>>2]|0)+-1|0;k[m>>2]=j;if((j|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}c=k[f>>2]|0;j=k[c>>2]|0;k[c>>2]=j+1;i[j>>0]=b;j=c+4|0;m=(k[j>>2]|0)+-1|0;k[j>>2]=m;if((m|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}c=k[f>>2]|0;j=k[c>>2]|0;k[c>>2]=j+1;i[j>>0]=d;j=c+4|0;m=(k[j>>2]|0)+-1|0;k[j>>2]=m;if((m|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}b=1;do{m=i[h+b>>0]|0;c=k[f>>2]|0;j=k[c>>2]|0;k[c>>2]=j+1;i[j>>0]=m;j=c+4|0;m=(k[j>>2]|0)+-1|0;k[j>>2]=m;if((m|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}b=b+1|0}while((b|0)!=17);if((e|0)>0){b=0;do{m=i[h+17+b>>0]|0;c=k[f>>2]|0;j=k[c>>2]|0;k[c>>2]=j+1;i[j>>0]=m;j=c+4|0;m=(k[j>>2]|0)+-1|0;k[j>>2]=m;if((m|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){m=k[a>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](a)}b=b+1|0}while((b|0)!=(e|0))}k[g>>2]=1;return}function Qc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=k[a+444>>2]|0;o=a+276|0;if(k[o>>2]|0){p=r+56|0;c=k[p>>2]|0;if(!c){if(!(cb[k[(k[a+440>>2]|0)+8>>2]&15](a)|0)){s=k[a>>2]|0;k[s+20>>2]=24;$a[k[s>>2]&63](a)}c=a+328|0;if((k[c>>2]|0)>0){d=a+220|0;e=a+400|0;f=a+408|0;h=0;do{g=k[a+332+(h<<2)>>2]|0;if(k[d>>2]|0)if(!(k[e>>2]|0)){if(!(k[f>>2]|0))q=10}else q=12;else q=10;if((q|0)==10){q=0;m=k[r+60+(k[g+20>>2]<<2)>>2]|0;n=m+64|0;do{i[m>>0]=0;m=m+1|0}while((m|0)<(n|0));k[r+24+(h<<2)>>2]=0;k[r+40+(h<<2)>>2]=0;if(!((k[d>>2]|0)!=0?!(k[e>>2]|0):0))q=12}if((q|0)==12){q=0;eh(k[r+124+(k[g+24>>2]<<2)>>2]|0,0,256)|0}h=h+1|0}while((h|0)<(k[c>>2]|0))}k[r+12>>2]=0;k[r+16>>2]=0;k[r+20>>2]=-16;c=k[o>>2]|0;k[p>>2]=c}k[p>>2]=c+-1}s=r+20|0;if((k[s>>2]|0)==-1)return 1;o=k[b>>2]|0;c=k[(k[a+332>>2]|0)+24>>2]|0;d=k[a+400>>2]|0;p=a+404|0;if((d|0)>(k[p>>2]|0))return 1;q=r+124+(c<<2)|0;m=r+188|0;n=a+412|0;h=a+260+c|0;c=d;a:while(1){d=(k[q>>2]|0)+((c*3|0)+-3)|0;if(sd(a,d)|0){q=32;break}while(1){if(sd(a,d+1|0)|0)break;if((c|0)<(k[p>>2]|0)){c=c+1|0;d=d+3|0}else{q=22;break a}}g=sd(a,m)|0;e=d+2|0;d=sd(a,e)|0;if(d){if(sd(a,e)|0){d=d<<1;e=(k[q>>2]|0)+((c|0)<=(l[h>>0]|0|0)?189:217)|0;if(sd(a,e)|0)do{d=d<<1;if((d|0)==32768){q=27;break a}e=e+1|0}while((sd(a,e)|0)!=0)}f=e+14|0;e=d>>1;if(e)do{r=(sd(a,f)|0)==0;d=(r?0:e)|d;e=e>>1}while((e|0)!=0)}else d=0;j[o+(k[14344+(c<<2)>>2]<<1)>>1]=((g|0)==0?d+1|0:~d)<<k[n>>2];if((c|0)<(k[p>>2]|0))c=c+1|0;else{q=32;break}}if((q|0)==22){r=k[a>>2]|0;k[r+20>>2]=126;ab[k[r+4>>2]&31](a,-1);k[s>>2]=-1;return 1}else if((q|0)==27){r=k[a>>2]|0;k[r+20>>2]=126;ab[k[r+4>>2]&31](a,-1);k[s>>2]=-1;return 1}else if((q|0)==32)return 1;return 0}function Rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=k[a+444>>2]|0;o=a+276|0;if(k[o>>2]|0){p=s+56|0;c=k[p>>2]|0;if(!c){if(!(cb[k[(k[a+440>>2]|0)+8>>2]&15](a)|0)){r=k[a>>2]|0;k[r+20>>2]=24;$a[k[r>>2]&63](a)}c=a+328|0;if((k[c>>2]|0)>0){d=a+220|0;e=a+400|0;f=a+408|0;h=0;do{g=k[a+332+(h<<2)>>2]|0;if(k[d>>2]|0)if(!(k[e>>2]|0)){if(!(k[f>>2]|0))t=10}else t=12;else t=10;if((t|0)==10){t=0;m=k[s+60+(k[g+20>>2]<<2)>>2]|0;n=m+64|0;do{i[m>>0]=0;m=m+1|0}while((m|0)<(n|0));k[s+24+(h<<2)>>2]=0;k[s+40+(h<<2)>>2]=0;if(!((k[d>>2]|0)!=0?!(k[e>>2]|0):0))t=12}if((t|0)==12){t=0;eh(k[s+124+(k[g+24>>2]<<2)>>2]|0,0,256)|0}h=h+1|0}while((h|0)<(k[c>>2]|0))}k[s+12>>2]=0;k[s+16>>2]=0;k[s+20>>2]=-16;c=k[o>>2]|0;k[p>>2]=c}k[p>>2]=c+-1}n=s+20|0;if((k[n>>2]|0)==-1)return 1;o=a+356|0;if((k[o>>2]|0)<=0)return 1;p=a+412|0;r=0;a:while(1){q=k[b+(r<<2)>>2]|0;h=k[a+360+(r<<2)>>2]|0;f=k[(k[a+332+(h<<2)>>2]|0)+20>>2]|0;d=s+60+(f<<2)|0;g=s+40+(h<<2)|0;c=(k[d>>2]|0)+(k[g>>2]|0)|0;if(!(sd(a,c)|0)){k[g>>2]=0;c=k[s+24+(h<<2)>>2]|0}else{m=sd(a,c+1|0)|0;e=c+2+m|0;c=sd(a,e)|0;if(c){d=(k[d>>2]|0)+20|0;if(!(sd(a,d)|0))e=d;else while(1){c=c<<1;if((c|0)==32768)break a;d=d+1|0;if(!(sd(a,d)|0)){e=d;break}}}else c=0;do if((c|0)>=(1<<(l[a+228+f>>0]|0)>>1|0)){d=m<<2;if((c|0)>(1<<(l[a+244+f>>0]|0)>>1|0)){k[g>>2]=d+12;break}else{k[g>>2]=d+4;break}}else k[g>>2]=0;while(0);e=e+14|0;d=c>>1;if(d)do{g=(sd(a,e)|0)==0;c=(g?0:d)|c;d=d>>1}while((d|0)!=0);h=s+24+(h<<2)|0;c=(k[h>>2]|0)+((m|0)==0?c+1|0:~c)|0;k[h>>2]=c}j[q>>1]=c<<k[p>>2];r=r+1|0;if((r|0)>=(k[o>>2]|0)){t=35;break}}if((t|0)==35)return 1;t=k[a>>2]|0;k[t+20>>2]=126;ab[k[t+4>>2]&31](a,-1);k[n>>2]=-1;return 1}function Sc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;p=k[a+344>>2]|0;v=(k[a+240>>2]|0)+-1|0;w=a+60|0;if((k[w>>2]|0)<=0){b=$c(a,b)|0;return b|0}q=a+4|0;r=p+8|0;s=a+360|0;z=0;A=k[a+68>>2]|0;while(1){t=A+12|0;u=k[t>>2]|0;l=ha(u,k[r>>2]|0)|0;u=hb[k[(k[q>>2]|0)+32>>2]&3](a,k[p+64+(z<<2)>>2]|0,l,u,1)|0;l=k[t>>2]|0;o=ha(l,k[r>>2]|0)|0;l=hb[k[(k[q>>2]|0)+32>>2]&3](a,k[p+104+(z<<2)>>2]|0,o,l,1)|0;if((k[r>>2]|0)>>>0<v>>>0)c=k[t>>2]|0;else{o=k[t>>2]|0;c=((k[A+32>>2]|0)>>>0)%(o>>>0)|0;c=(c|0)==0?o:c}m=k[A+28>>2]|0;o=k[A+8>>2]|0;i=(m>>>0)%(o>>>0)|0;i=(i|0)>0?o-i|0:i;a:do if((c|0)>0){n=b+(z<<2)|0;d=i<<7;if((i|0)>0)h=0;else{d=0;while(1){eb[k[(k[s>>2]|0)+4>>2]&3](a,A,k[n>>2]|0,k[u+(d<<2)>>2]|0,d<<3,0,m,k[l+(d<<2)>>2]|0);d=d+1|0;if((d|0)==(c|0))break a}}do{e=k[u+(h<<2)>>2]|0;eb[k[(k[s>>2]|0)+4>>2]&3](a,A,k[n>>2]|0,e,h<<3,0,m,k[l+(h<<2)>>2]|0);e=e+(m<<7)|0;vj(e,d);f=j[e+-128>>1]|0;g=0;do{j[e+(g<<7)>>1]=f;g=g+1|0}while((g|0)!=(i|0));h=h+1|0}while((h|0)!=(c|0))}while(0);b:do if((k[r>>2]|0)==(v|0)?(x=i+m|0,y=(x>>>0)/(o>>>0)|0,(c|0)<(k[t>>2]|0)):0){m=x<<7;i=o+-1|0;l=(o|0)>0;if(!y)if(l)while(1){vj(k[u+(c<<2)>>2]|0,m);c=c+1|0;if((c|0)>=(k[t>>2]|0))break b}else while(1){vj(k[u+(c<<2)>>2]|0,m);c=c+1|0;if((c|0)>=(k[t>>2]|0))break b}do{e=k[u+(c<<2)>>2]|0;d=k[u+(c+-1<<2)>>2]|0;vj(e,m);if(l){h=0;while(1){f=j[d+(i<<7)>>1]|0;g=0;do{j[e+(g<<7)>>1]=f;g=g+1|0}while((g|0)!=(o|0));h=h+1|0;if(h>>>0>=y>>>0)break;else{d=d+(o<<7)|0;e=e+(o<<7)|0}}}c=c+1|0}while((c|0)<(k[t>>2]|0))}while(0);z=z+1|0;if((z|0)>=(k[w>>2]|0))break;else A=A+84|0}b=$c(a,b)|0;return b|0}function Tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=k[a+444>>2]|0;n=a+276|0;if(k[n>>2]|0){o=p+56|0;c=k[o>>2]|0;if(!c){if(!(cb[k[(k[a+440>>2]|0)+8>>2]&15](a)|0)){r=k[a>>2]|0;k[r+20>>2]=24;$a[k[r>>2]&63](a)}c=a+328|0;if((k[c>>2]|0)>0){d=a+220|0;e=a+400|0;f=a+408|0;h=0;do{g=k[a+332+(h<<2)>>2]|0;if(k[d>>2]|0)if(!(k[e>>2]|0)){if(!(k[f>>2]|0))s=10}else s=12;else s=10;if((s|0)==10){s=0;l=k[p+60+(k[g+20>>2]<<2)>>2]|0;m=l+64|0;do{i[l>>0]=0;l=l+1|0}while((l|0)<(m|0));k[p+24+(h<<2)>>2]=0;k[p+40+(h<<2)>>2]=0;if(!((k[d>>2]|0)!=0?!(k[e>>2]|0):0))s=12}if((s|0)==12){s=0;eh(k[p+124+(k[g+24>>2]<<2)>>2]|0,0,256)|0}h=h+1|0}while((h|0)<(k[c>>2]|0))}k[p+12>>2]=0;k[p+16>>2]=0;k[p+20>>2]=-16;c=k[n>>2]|0;k[o>>2]=c}k[o>>2]=c+-1}r=p+20|0;if((k[r>>2]|0)==-1)return 1;n=k[b>>2]|0;e=k[(k[a+332>>2]|0)+24>>2]|0;b=k[a+412>>2]|0;o=1<<b;b=-1<<b;q=a+404|0;f=k[q>>2]|0;a:do if((f|0)>0){d=f;while(1){if(j[n+(k[14344+(d<<2)>>2]<<1)>>1]|0){c=d;break a}c=d+-1|0;if((d|0)>1)d=c;else break}}else c=f;while(0);d=k[a+400>>2]|0;if((d|0)>(f|0))return 1;m=p+124+(e<<2)|0;g=p+188|0;h=o&65535;l=b&65535;b:while(1){e=(k[m>>2]|0)+((d*3|0)+-3)|0;if((d|0)>(c|0)?(sd(a,e)|0)!=0:0){s=36;break}while(1){f=n+(k[14344+(d<<2)>>2]<<1)|0;if(j[f>>1]|0){s=25;break}if(sd(a,e+1|0)|0){s=30;break}if((d|0)<(k[q>>2]|0)){d=d+1|0;e=e+3|0}else{s=34;break b}}do if((s|0)==25){if(sd(a,e+2|0)|0){s=j[f>>1]|0;e=s<<16>>16;if(s<<16>>16<0){j[f>>1]=e+b;break}else{j[f>>1]=e+o;break}}}else if((s|0)==30)if(!(sd(a,g)|0)){j[f>>1]=h;break}else{j[f>>1]=l;break}while(0);if((d|0)<(k[q>>2]|0))d=d+1|0;else{s=36;break}}if((s|0)==34){s=k[a>>2]|0;k[s+20>>2]=126;ab[k[s+4>>2]&31](a,-1);k[r>>2]=-1;return 1}else if((s|0)==36)return 1;return 0}function Uc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;l=r;r=r+288|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){q=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;x=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;o=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;m=ha((k[a+192>>2]|0)*5793|0,j[c+96>>1]|0)|0;w=m+q|0;m=q-m-m|0;q=x-o|0;t=m+(q*5793|0)|0;m=(ha(q,-11586)|0)+m|0;q=(o+x|0)*10887|0;x=x*8875|0;o=o*2012|0;v=q-o+w|0;q=w-q+x|0;o=w-x+o|0;x=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;w=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;s=ha(j[c+112>>1]|0,k[a+224>>2]|0)|0;y=ha(ha(k[a+96>>2]|0,-10033)|0,j[c+48>>1]|0)|0;p=(w+x|0)*7447|0;n=(s+x|0)*3962|0;u=p-y+n|0;z=(w-s|0)*11409|0;p=y-z+p|0;n=z+y+n|0;s=(x-w-s|0)*10033|0;k[b>>2]=u+v>>11;k[b+256>>2]=v-u>>11;k[b+32>>2]=s+t>>11;k[b+224>>2]=t-s>>11;k[b+64>>2]=p+q>>11;k[b+192>>2]=q-p>>11;k[b+96>>2]=n+o>>11;k[b+160>>2]=o-n>>11;k[b+128>>2]=m>>11;h=h+1|0;if((h|0)==8)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){z=(k[d+(c<<2)>>2]|0)+e|0;u=(k[f>>2]<<13)+131072|0;n=k[f+8>>2]|0;w=k[f+16>>2]|0;y=(k[f+24>>2]|0)*5793|0;o=y+u|0;y=u-y-y|0;u=n-w|0;s=y+(u*5793|0)|0;y=(ha(u,-11586)|0)+y|0;u=(w+n|0)*10887|0;n=n*8875|0;w=w*2012|0;p=u-w+o|0;u=o-u+n|0;w=o-n+w|0;n=k[f+4>>2]|0;o=k[f+20>>2]|0;t=k[f+28>>2]|0;m=ha(k[f+12>>2]|0,-10033)|0;v=(o+n|0)*7447|0;x=(t+n|0)*3962|0;q=v-m+x|0;h=(o-t|0)*11409|0;v=m-h+v|0;x=h+m+x|0;t=(n-o-t|0)*10033|0;i[z>>0]=i[a+((q+p|0)>>>18&1023)>>0]|0;i[z+8>>0]=i[a+((p-q|0)>>>18&1023)>>0]|0;i[z+1>>0]=i[a+((t+s|0)>>>18&1023)>>0]|0;i[z+7>>0]=i[a+((s-t|0)>>>18&1023)>>0]|0;i[z+2>>0]=i[a+((v+u|0)>>>18&1023)>>0]|0;i[z+6>>0]=i[a+((u-v|0)>>>18&1023)>>0]|0;i[z+3>>0]=i[a+((x+w|0)>>>18&1023)>>0]|0;i[z+5>>0]=i[a+((w-x|0)>>>18&1023)>>0]|0;i[z+4>>0]=i[a+(y>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==9)break;else f=f+32|0}r=l;return}function Vc(a,b){a=+a;b=+b;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,q=0.0;p[t>>3]=a;c=k[t>>2]|0;j=k[t+4>>2]|0;p[t>>3]=b;l=k[t>>2]|0;m=k[t+4>>2]|0;d=ni(c|0,j|0,52)|0;d=d&2047;h=ni(l|0,m|0,52)|0;h=h&2047;n=j&-2147483648;g=mi(l|0,m|0,1)|0;i=L;a:do if(!((g|0)==0&(i|0)==0)?(q=+W(+b),p[t>>3]=q,f=k[t+4>>2]|0,!(f>>>0>2146435072|(f|0)==2146435072&(k[t>>2]|0)>>>0>0|(d|0)==2047)):0){e=mi(c|0,j|0,1)|0;f=L;if(!(f>>>0>i>>>0|(f|0)==(i|0)&e>>>0>g>>>0))return +((e|0)==(g|0)&(f|0)==(i|0)?a*0.0:a);if(!d){d=mi(c|0,j|0,12)|0;e=L;if((e|0)>-1|(e|0)==-1&d>>>0>4294967295){f=d;d=0;do{d=d+-1|0;f=mi(f|0,e|0,1)|0;e=L}while((e|0)>-1|(e|0)==-1&f>>>0>4294967295)}else d=0;c=mi(c|0,j|0,1-d|0)|0;e=L}else e=j&1048575|1048576;if(!h){f=mi(l|0,m|0,12)|0;g=L;if((g|0)>-1|(g|0)==-1&f>>>0>4294967295){h=0;do{h=h+-1|0;f=mi(f|0,g|0,1)|0;g=L}while((g|0)>-1|(g|0)==-1&f>>>0>4294967295)}else h=0;l=mi(l|0,m|0,1-h|0)|0;j=L}else j=m&1048575|1048576;i=pi(c|0,e|0,l|0,j|0)|0;g=L;f=(g|0)>-1|(g|0)==-1&i>>>0>4294967295;b:do if((d|0)>(h|0)){while(1){if(f)if((c|0)==(l|0)&(e|0)==(j|0))break;else{c=i;e=g}c=mi(c|0,e|0,1)|0;e=L;d=d+-1|0;i=pi(c|0,e|0,l|0,j|0)|0;g=L;f=(g|0)>-1|(g|0)==-1&i>>>0>4294967295;if((d|0)<=(h|0))break b}b=a*0.0;break a}while(0);if(f)if((c|0)==(l|0)&(e|0)==(j|0)){b=a*0.0;break}else{e=g;c=i}if(e>>>0<1048576|(e|0)==1048576&c>>>0<0)do{c=mi(c|0,e|0,1)|0;e=L;d=d+-1|0}while(e>>>0<1048576|(e|0)==1048576&c>>>0<0);if((d|0)>0){m=zi(c|0,e|0,0,-1048576)|0;c=L;d=mi(d|0,0,52)|0;c=c|L;d=m|d}else{d=ni(c|0,e|0,1-d|0)|0;c=L}k[t>>2]=d;k[t+4>>2]=c|n;b=+p[t>>3]}else o=3;while(0);if((o|0)==3){b=a*b;b=b/b}return +b}function Wc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0;p=r;r=r+2096|0;n=p+2056|0;o=p+1028|0;m=p;e=n;f=e+33|0;do{i[e>>0]=0;e=e+1|0}while((e|0)<(f|0));eh(o|0,0,1028)|0;eh(m|0,-1,1028)|0;k[c+1024>>2]=1;j=-1;d=0;e=1e9;a:while(1){if((d|0)<257){h=k[c+(d<<2)>>2]|0;g=(h|0)==0|(h|0)>(e|0);j=g?j:d;d=d+1|0;e=g?e:h;continue}else{d=-1;f=0;h=1e9}while(1){e=k[c+(f<<2)>>2]|0;g=(f|0)==(j|0)|((e|0)==0|(e|0)>(h|0));d=g?d:f;f=f+1|0;if((f|0)==257){f=d;break}else h=g?h:e}if((f|0)<0)break;d=c+(f<<2)|0;e=c+(j<<2)|0;k[e>>2]=(k[e>>2]|0)+(k[d>>2]|0);k[d>>2]=0;d=o+(j<<2)|0;k[d>>2]=(k[d>>2]|0)+1;d=m+(j<<2)|0;e=k[d>>2]|0;if((e|0)>-1)do{d=o+(e<<2)|0;k[d>>2]=(k[d>>2]|0)+1;d=m+(e<<2)|0;e=k[d>>2]|0}while((e|0)>-1);k[d>>2]=f;d=o+(f<<2)|0;k[d>>2]=(k[d>>2]|0)+1;d=k[m+(f<<2)>>2]|0;if((d|0)<=-1){j=-1;d=0;e=1e9;continue}while(1){j=o+(d<<2)|0;k[j>>2]=(k[j>>2]|0)+1;d=k[m+(d<<2)>>2]|0;if((d|0)<=-1){j=-1;d=0;e=1e9;continue a}}}e=0;do{d=k[o+(e<<2)>>2]|0;if(d|0){if((d|0)>32){m=k[a>>2]|0;k[m+20>>2]=39;$a[k[m>>2]&63](a)}m=n+d|0;i[m>>0]=(i[m>>0]|0)+1<<24>>24}e=e+1|0}while((e|0)!=257);d=32;do{j=n+d|0;e=i[j>>0]|0;if(!(e<<24>>24))d=d+-1|0;else{c=d+-2|0;d=d+-1|0;h=n+d|0;do{g=c;while(1){f=n+g|0;if(!(i[f>>0]|0))g=g+-1|0;else break}i[j>>0]=(e&255)+254;i[h>>0]=(i[h>>0]|0)+1<<24>>24;a=n+(g+1)|0;i[a>>0]=(l[a>>0]|0)+2;i[f>>0]=(i[f>>0]|0)+-1<<24>>24;e=i[j>>0]|0}while(e<<24>>24!=0)}}while((d|0)>16);f=16;while(1){e=n+f|0;d=i[e>>0]|0;if(!(d<<24>>24))f=f+-1|0;else break}i[e>>0]=d+-1<<24>>24;e=b;d=n;f=e+17|0;do{i[e>>0]=i[d>>0]|0;e=e+1|0;d=d+1|0}while((e|0)<(f|0));d=1;e=0;do{f=0;do{if((k[o+(f<<2)>>2]|0)==(d|0)){i[b+17+e>>0]=f;e=e+1|0}f=f+1|0}while((f|0)!=256);d=d+1|0}while((d|0)!=33);k[b+276>>2]=0;r=p;return}function Xc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0;v=r;r=r+1296|0;h=v+1028|0;u=v;if(c>>>0>3){t=k[a>>2]|0;k[t+20>>2]=50;k[t+24>>2]=c;$a[k[t>>2]&63](a)}s=(b|0)!=0;t=k[(s?a+180+(c<<2)|0:a+196+(c<<2)|0)>>2]|0;if(!t){q=k[a>>2]|0;k[q+20>>2]=50;k[q+24>>2]=c;$a[k[q>>2]&63](a)}b=k[d>>2]|0;if(!b){b=Ya[k[k[a+4>>2]>>2]&15](a,1,1172)|0;k[d>>2]=b;q=a}else q=a;k[b+144>>2]=t;g=1;f=0;while(1){d=i[t+g>>0]|0;e=d&255;c=e+f|0;if((c|0)>256){p=k[a>>2]|0;k[p+20>>2]=8;$a[k[p>>2]&63](q)}if(!(d<<24>>24))c=f;else eh(h+f|0,g&255|0,e|0)|0;g=g+1|0;if((g|0)==17){p=c;break}else f=c}i[h+p>>0]=0;c=i[h>>0]|0;if(!(c<<24>>24)){f=1;e=0}else{f=c;d=0;e=0;g=c<<24>>24;while(1){if((f<<24>>24|0)==(g|0)){c=e;while(1){e=c+1|0;k[u+(c<<2)>>2]=d;d=d+1|0;c=i[h+e>>0]|0;if((c<<24>>24|0)==(g|0))c=e;else break}}else c=f;if((d|0)>=(1<<g|0)){o=k[a>>2]|0;k[o+20>>2]=8;$a[k[o>>2]&63](q)}if(!(c<<24>>24)){f=1;e=0;break}else{f=c;d=d<<1;g=g+1|0}}}while(1){c=t+f|0;if(!(i[c>>0]|0)){d=-1;c=e}else{k[b+72+(f<<2)>>2]=e-(k[u+(e<<2)>>2]|0);c=(l[c>>0]|0)+e|0;d=k[u+(c+-1<<2)>>2]|0}k[b+(f<<2)>>2]=d;f=f+1|0;if((f|0)==17)break;else e=c}k[b+140>>2]=0;k[b+68>>2]=1048575;c=0;do{k[b+148+(c<<2)>>2]=2304;c=c+1|0}while((c|0)!=256);o=1;c=0;do{g=t+o|0;if(i[g>>0]|0){h=8-o|0;j=1<<h;m=o<<8;n=1;while(1){d=t+17+c|0;e=j;f=k[u+(c<<2)>>2]<<h;while(1){k[b+148+(f<<2)>>2]=l[d>>0]|m;if((e|0)>1){e=e+-1|0;f=f+1|0}else break}c=c+1|0;if((n|0)<(l[g>>0]|0))n=n+1|0;else break}}o=o+1|0}while((o|0)!=9);if(s&(p|0)>0)b=0;else{r=v;return}do{if((l[t+17+b>>0]|0)>15){u=k[a>>2]|0;k[u+20>>2]=8;$a[k[u>>2]&63](q)}b=b+1|0}while((b|0)!=(p|0));r=v;return}function Yc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;g=k[b>>2]|0;t=k[d>>2]|0;d=k[d+4>>2]|0;w=k[a+452>>2]|0;x=k[a+324>>2]|0;y=k[w+16>>2]|0;z=k[w+20>>2]|0;A=k[w+24>>2]|0;w=k[w+28>>2]|0;e=k[a+140>>2]|0;m=k[14748+((e&3)<<2)>>2]|0;e=k[14748+((e+1&3)<<2)>>2]|0;h=c<<1;i=k[g+(h<<2)>>2]|0;h=k[g+((h|1)<<2)>>2]|0;g=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;f=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;s=a+112|0;c=k[s>>2]|0;u=c>>>1;if(!u){a=m;b=t}else{v=u<<2;b=t+v|0;r=u;a=m;n=i;o=h;p=g;q=f;c=t;m=d;while(1){D=l[p>>0]|0;F=l[q>>0]|0;E=k[y+(F<<2)>>2]|0;F=(k[A+(F<<2)>>2]|0)+(k[w+(D<<2)>>2]|0)>>16;D=k[z+(D<<2)>>2]|0;C=l[n>>0]|0;G=a&255;t=a>>>8;B=l[n+1>>0]|0;I=e&255;H=e>>>8;B=(l[x+(F+(I>>>1)+B)>>0]|0)<<3&2016|(l[x+(E+I+B)>>0]|0)<<8&63488|(l[x+(D+I+B)>>0]|0)>>>3;j[c>>1]=(l[x+(F+(G>>>1)+C)>>0]|0)<<3&2016|(l[x+(E+G+C)>>0]|0)<<8&63488|(l[x+(D+G+C)>>0]|0)>>>3;j[c+2>>1]=B;B=l[o>>0]|0;C=t&255;a=(a<<24|t)>>>8|t<<24;t=l[o+1>>0]|0;G=H&255;e=(e<<24|H)>>>8|H<<24;t=(l[x+(F+(G>>>1)+t)>>0]|0)<<3&2016|(l[x+(E+G+t)>>0]|0)<<8&63488|(l[x+(D+G+t)>>0]|0)>>>3;j[m>>1]=(l[x+(F+(C>>>1)+B)>>0]|0)<<3&2016|(l[x+(E+C+B)>>0]|0)<<8&63488|(l[x+(D+C+B)>>0]|0)>>>3;j[m+2>>1]=t;r=r+-1|0;if(!r)break;else{n=n+2|0;o=o+2|0;p=p+1|0;q=q+1|0;c=c+4|0;m=m+4|0}}I=u<<1;c=k[s>>2]|0;i=i+I|0;h=h+I|0;g=g+u|0;f=f+u|0;d=d+v|0}if(!(c&1))return;G=l[g>>0]|0;E=l[f>>0]|0;F=k[y+(E<<2)>>2]|0;E=(k[A+(E<<2)>>2]|0)+(k[w+(G<<2)>>2]|0)>>16;G=k[z+(G<<2)>>2]|0;I=l[i>>0]|0;H=a&255;j[b>>1]=(l[x+(E+(H>>>1)+I)>>0]|0)<<3&2016|(l[x+(F+H+I)>>0]|0)<<8&63488|(l[x+(G+H+I)>>0]|0)>>>3;I=l[h>>0]|0;H=e&255;j[d>>1]=(l[x+(E+(H>>>1)+I)>>0]|0)<<3&2016|(l[x+(F+H+I)>>0]|0)<<8&63488|(l[x+(G+H+I)>>0]|0)>>>3;return}function Zc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=r;r=r+16|0;y=B;z=a+428|0;w=k[z>>2]|0;A=a+328|0;if((k[A>>2]|0)>0){b=a+4|0;c=a+148|0;d=0;do{t=k[a+332+(d<<2)>>2]|0;v=k[t+12>>2]|0;u=ha(v,k[c>>2]|0)|0;v=hb[k[(k[b>>2]|0)+32>>2]&3](a,k[w+76+(k[t+4>>2]<<2)>>2]|0,u,v,1)|0;k[y+(d<<2)>>2]=v;d=d+1|0}while((d|0)<(k[A>>2]|0))}u=w+24|0;b=k[u>>2]|0;p=w+28|0;c=k[p>>2]|0;a:do if((b|0)<(c|0)){v=w+20|0;q=a+348|0;s=a+444|0;t=w+32|0;e=c;c=k[v>>2]|0;d=k[q>>2]|0;b:while(1){if(c>>>0<d>>>0){while(1){n=k[A>>2]|0;if((n|0)>0){d=0;o=0;do{m=k[a+332+(o<<2)>>2]|0;j=m+52|0;e=k[j>>2]|0;l=ha(e,c)|0;m=k[m+56>>2]|0;c:do if((m|0)>0?(x=k[y+(o<<2)>>2]|0,(e|0)>0):0){f=0;while(1){g=d;h=(k[x+(f+b<<2)>>2]|0)+(l<<7)|0;i=0;while(1){d=g+1|0;k[w+32+(g<<2)>>2]=h;i=i+1|0;if((i|0)>=(e|0))break;else{g=d;h=h+128|0}}f=f+1|0;if((f|0)>=(m|0))break c;e=k[j>>2]|0}}while(0);o=o+1|0}while((o|0)<(n|0))}if(!(gb[k[(k[s>>2]|0)+4>>2]&63](a,t)|0))break b;c=c+1|0;d=k[q>>2]|0;if(c>>>0>=d>>>0){c=d;break}}d=c;c=k[p>>2]|0}else c=e;k[v>>2]=0;b=b+1|0;if((b|0)>=(c|0))break a;else{e=c;c=0}}k[u>>2]=b;k[v>>2]=c;a=0;r=B;return a|0}while(0);e=a+148|0;d=(k[e>>2]|0)+1|0;k[e>>2]=d;e=k[a+320>>2]|0;if(d>>>0>=e>>>0){$a[k[(k[a+436>>2]|0)+12>>2]&63](a);a=4;r=B;return a|0}c=k[z>>2]|0;do if((k[A>>2]|0)<=1){b=k[a+332>>2]|0;if(d>>>0<(e+-1|0)>>>0){k[c+28>>2]=k[b+12>>2];break}else{k[c+28>>2]=k[b+72>>2];break}}else k[c+28>>2]=1;while(0);k[c+20>>2]=0;k[c+24>>2]=0;a=3;r=B;return a|0}function _c(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;o=r;r=r+128|0;f=o;m=k[a+324>>2]|0;a=8;h=k[b+80>>2]|0;l=f;while(1){if((a|0)!=4){g=j[c+16>>1]|0;b=j[c+32>>1]|0;if(!((g|b)<<16>>16))if((((j[c+48>>1]|0)==0?(j[c+80>>1]|0)==0:0)?(j[c+96>>1]|0)==0:0)?(j[c+112>>1]|0)==0:0){g=ha(k[h>>2]<<2,j[c>>1]|0)|0;k[l>>2]=g;k[l+32>>2]=g;k[l+64>>2]=g;k[l+96>>2]=g}else{b=0;n=9}else n=9;if((n|0)==9){n=0;p=ha(k[h>>2]<<14,j[c>>1]|0)|0;b=(ha(ha(k[h+192>>2]|0,-6270)|0,j[c+96>>1]|0)|0)+(ha((k[h+64>>2]|0)*15137|0,b<<16>>16)|0)|0;t=ha(j[c+112>>1]|0,k[h+224>>2]|0)|0;u=ha(j[c+80>>1]|0,k[h+160>>2]|0)|0;s=ha(j[c+48>>1]|0,k[h+96>>2]|0)|0;q=ha(g<<16>>16,k[h+32>>2]|0)|0;g=(u*11893|0)+(ha(t,-1730)|0)+(ha(s,-17799)|0)+(q*8697|0)|0;q=(ha(u,-4926)|0)+(ha(t,-4176)|0)+(s*7373|0)+(q*20995|0)|0;s=b+p+2048|0;k[l>>2]=s+q>>12;k[l+96>>2]=s-q>>12;b=p-b+2048|0;k[l+32>>2]=b+g>>12;k[l+64>>2]=b-g>>12}if((a|0)>1)a=a+-1|0;else break}else a=3;c=c+2|0;h=h+4|0;l=l+4|0}g=m+128|0;h=0;while(1){c=(k[d+(h<<2)>>2]|0)+e|0;b=k[f+4>>2]|0;a=k[f+8>>2]|0;if(!(b|a))if((((k[f+12>>2]|0)==0?(k[f+20>>2]|0)==0:0)?(k[f+24>>2]|0)==0:0)?(k[f+28>>2]|0)==0:0){u=i[g+(((k[f>>2]|0)+16|0)>>>5&1023)>>0]|0;i[c>>0]=u;i[c+1>>0]=u;i[c+2>>0]=u;i[c+3>>0]=u}else{a=0;n=19}else n=19;if((n|0)==19){n=0;s=k[f>>2]<<14;t=(ha(k[f+24>>2]|0,-6270)|0)+(a*15137|0)|0;p=k[f+28>>2]|0;m=k[f+20>>2]|0;q=k[f+12>>2]|0;u=(m*11893|0)+(ha(p,-1730)|0)+(ha(q,-17799)|0)+(b*8697|0)|0;q=(ha(m,-4926)|0)+(ha(p,-4176)|0)+(q*7373|0)+(b*20995|0)|0;p=t+s+262144|0;i[c>>0]=i[g+((p+q|0)>>>19&1023)>>0]|0;i[c+3>>0]=i[g+((p-q|0)>>>19&1023)>>0]|0;t=s-t+262144|0;i[c+1>>0]=i[g+((t+u|0)>>>19&1023)>>0]|0;i[c+2>>0]=i[g+((t-u|0)>>>19&1023)>>0]|0}h=h+1|0;if((h|0)==4)break;else f=f+32|0}r=o;return}function $c(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=r;r=r+16|0;x=C;y=a+344|0;z=k[y>>2]|0;w=a+244|0;b=k[w>>2]|0;if((b|0)>0){c=a+4|0;d=z+8|0;e=0;do{u=k[a+248+(e<<2)>>2]|0;b=k[u+12>>2]|0;v=ha(b,k[d>>2]|0)|0;b=hb[k[(k[c>>2]|0)+32>>2]&3](a,k[z+64+(k[u+4>>2]<<2)>>2]|0,v,b,0)|0;k[x+(e<<2)>>2]=b;e=e+1|0;b=k[w>>2]|0}while((e|0)<(b|0))}v=z+16|0;f=k[v>>2]|0;t=z+20|0;e=k[t>>2]|0;do if((f|0)<(e|0)){u=z+12|0;p=a+264|0;q=a+364|0;s=z+24|0;c=k[u>>2]|0;d=k[p>>2]|0;b=f;a:while(1){if(c>>>0<d>>>0){while(1){n=k[w>>2]|0;if((n|0)>0){d=0;o=0;do{m=k[a+248+(o<<2)>>2]|0;j=m+52|0;e=k[j>>2]|0;l=ha(e,c)|0;m=k[m+56>>2]|0;b:do if((m|0)>0?(A=k[x+(o<<2)>>2]|0,(e|0)>0):0){f=0;while(1){g=d;h=(k[A+(f+b<<2)>>2]|0)+(l<<7)|0;i=0;while(1){d=g+1|0;k[z+24+(g<<2)>>2]=h;i=i+1|0;if((i|0)>=(e|0))break;else{g=d;h=h+128|0}}f=f+1|0;if((f|0)>=(m|0))break b;e=k[j>>2]|0}}while(0);o=o+1|0}while((o|0)<(n|0))}if(!(gb[k[(k[q>>2]|0)+4>>2]&63](a,s)|0))break a;c=c+1|0;d=k[p>>2]|0;if(c>>>0>=d>>>0){c=d;break}}d=c;e=k[t>>2]|0}k[u>>2]=0;b=b+1|0;if((b|0)>=(e|0)){B=20;break}else c=0}if((B|0)==20){b=k[w>>2]|0;break}k[v>>2]=b;k[u>>2]=c;a=0;r=C;return a|0}while(0);c=z+8|0;k[c>>2]=(k[c>>2]|0)+1;c=k[y>>2]|0;do if((b|0)<=1){b=k[a+248>>2]|0;if((k[c+8>>2]|0)>>>0<((k[a+240>>2]|0)+-1|0)>>>0){k[c+20>>2]=k[b+12>>2];break}else{k[c+20>>2]=k[b+72>>2];break}}else k[c+20>>2]=1;while(0);k[c+12>>2]=0;k[c+16>>2]=0;a=1;r=C;return a|0}function ad(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=a+20|0;b=k[e>>2]|0;switch(b|0){case 200:{b=a+436|0;$a[k[(k[b>>2]|0)+4>>2]&63](a);$a[k[(k[a+24>>2]|0)+8>>2]&63](a);k[e>>2]=201;break}case 201:{b=a+436|0;break}case 210:case 208:case 207:case 206:case 205:case 204:case 203:{a=cb[k[k[a+436>>2]>>2]&15](a)|0;return a|0}case 202:{a=1;return a|0}default:{e=k[a>>2]|0;k[e+20>>2]=20;k[e+24>>2]=b;$a[k[e>>2]&63](a);a=0;return a|0}}b=cb[k[k[b>>2]>>2]&15](a)|0;if((b|0)!=1){a=b;return a|0}switch(k[a+36>>2]|0){case 1:{k[a+40>>2]=1;k[a+44>>2]=1;break}case 3:{a:do if(!(k[a+280>>2]|0)){if(k[a+292>>2]|0){b=l[a+296>>0]|0;switch(b|0){case 0:{k[a+40>>2]=2;break a}case 1:{k[a+40>>2]=3;break a}default:{d=k[a>>2]|0;k[d+20>>2]=114;k[d+24>>2]=b;ab[k[d+4>>2]&31](a,-1);k[a+40>>2]=3;break a}}}d=k[a+216>>2]|0;b=k[d>>2]|0;c=k[d+84>>2]|0;d=k[d+168>>2]|0;if((b|0)==1&(c|0)==2&(d|0)==3){k[a+40>>2]=3;break}if((b|0)==82&(c|0)==71&(d|0)==66){k[a+40>>2]=2;break}else{f=k[a>>2]|0;k[f+24>>2]=b;k[f+28>>2]=c;k[f+32>>2]=d;k[f+20>>2]=111;ab[k[f+4>>2]&31](a,1);k[a+40>>2]=3;break}}else k[a+40>>2]=3;while(0);k[a+44>>2]=2;break}case 4:{b:do if(!(k[a+292>>2]|0))k[a+40>>2]=4;else{b=l[a+296>>0]|0;switch(b|0){case 0:{k[a+40>>2]=4;break b}case 2:{k[a+40>>2]=5;break b}default:{f=k[a>>2]|0;k[f+20>>2]=114;k[f+24>>2]=b;ab[k[f+4>>2]&31](a,-1);k[a+40>>2]=5;break b}}}while(0);k[a+44>>2]=4;break}default:{k[a+40>>2]=0;k[a+44>>2]=0}}k[a+48>>2]=1;k[a+52>>2]=1;p[a+56>>3]=1.0;k[a+64>>2]=0;k[a+68>>2]=0;k[a+72>>2]=0;k[a+76>>2]=1;k[a+80>>2]=1;k[a+84>>2]=0;k[a+88>>2]=2;k[a+92>>2]=1;k[a+96>>2]=256;k[a+136>>2]=0;k[a+100>>2]=0;k[a+104>>2]=0;k[a+108>>2]=0;k[e>>2]=202;f=1;return f|0}function bd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0;o=d+c|0;if(c>>>0>13){if((i[b>>0]|0)==74)if((((i[b+1>>0]|0)==70?(i[b+2>>0]|0)==73:0)?(i[b+3>>0]|0)==70:0)?(i[b+4>>0]|0)==0:0){k[a+280>>2]=1;c=i[b+5>>0]|0;e=a+284|0;i[e>>0]=c;g=i[b+6>>0]|0;i[a+285>>0]=g;d=i[b+7>>0]|0;i[a+286>>0]=d;h=l[b+8>>0]<<8|l[b+9>>0];f=a+288|0;j[f>>1]=h;m=l[b+10>>0]<<8|l[b+11>>0];j[a+290>>1]=m;if(c<<24>>24==1){n=a;f=1;e=h;c=m}else{d=k[a>>2]|0;k[d+20>>2]=119;k[d+24>>2]=c&255;k[d+28>>2]=g&255;ab[k[d+4>>2]&31](a,-1);d=k[e>>2]|0;c=k[f>>2]|0;n=a;f=d&255;g=(d&65535)>>>8&255;e=c;c=c>>>16;d=d>>>16&255}m=k[a>>2]|0;k[m+24>>2]=f;k[m+28>>2]=g&255;k[m+32>>2]=e&65535;k[m+36>>2]=c&65535;k[m+40>>2]=d&255;k[m+20>>2]=87;ab[k[m+4>>2]&31](n,1);d=b+12|0;e=i[d>>0]|0;f=b+13|0;c=i[f>>0]|0;if((c|e)<<24>>24){e=k[a>>2]|0;k[e+20>>2]=90;k[e+24>>2]=l[d>>0];k[e+28>>2]=l[f>>0];ab[k[e+4>>2]&31](n,1);e=i[d>>0]|0;c=i[f>>0]|0}d=o+-14|0;if((d|0)==(ha((e&255)*3|0,c&255)|0))return;a=k[a>>2]|0;k[a+20>>2]=88;k[a+24>>2]=d;ab[k[a+4>>2]&31](n,1);return}else e=16}else if(c>>>0>5?(i[b>>0]|0)==74:0)e=16;if(((((e|0)==16?(i[b+1>>0]|0)==70:0)?(i[b+2>>0]|0)==88:0)?(i[b+3>>0]|0)==88:0)?(i[b+4>>0]|0)==0:0){d=b+5|0;switch(l[d>>0]|0){case 16:{b=k[a>>2]|0;k[b+20>>2]=108;k[b+24>>2]=o;ab[k[b+4>>2]&31](a,1);return}case 17:{b=k[a>>2]|0;k[b+20>>2]=109;k[b+24>>2]=o;ab[k[b+4>>2]&31](a,1);return}case 19:{b=k[a>>2]|0;k[b+20>>2]=110;k[b+24>>2]=o;ab[k[b+4>>2]&31](a,1);return}default:{b=k[a>>2]|0;k[b+20>>2]=89;k[b+24>>2]=l[d>>0];k[b+28>>2]=o;ab[k[b+4>>2]&31](a,1);return}}}b=k[a>>2]|0;k[b+20>>2]=77;k[b+24>>2]=o;ab[k[b+4>>2]&31](a,1);return}function cd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;v=k[a+456>>2]|0;y=k[a+324>>2]|0;z=k[v+8>>2]|0;A=k[v+12>>2]|0;B=k[v+16>>2]|0;v=k[v+20>>2]|0;if((e|0)<=0)return;w=b+4|0;x=b+8|0;h=k[14748+((k[a+140>>2]&3)<<2)>>2]|0;m=k[a+112>>2]|0;do{u=e;e=e+-1|0;a=k[(k[b>>2]|0)+(c<<2)>>2]|0;g=k[(k[w>>2]|0)+(c<<2)>>2]|0;i=k[(k[x>>2]|0)+(c<<2)>>2]|0;c=c+1|0;f=k[d>>2]|0;d=d+4|0;if(f&3){p=l[a>>0]|0;s=l[g>>0]|0;r=l[i>>0]|0;q=h&255;t=p+q|0;j[f>>1]=(l[y+(p+(q>>>1)+((k[B+(r<<2)>>2]|0)+(k[v+(s<<2)>>2]|0)>>16))>>0]|0)<<3&2016|(l[y+((k[z+(r<<2)>>2]|0)+t)>>0]|0)<<8&63488|(l[y+((k[A+(s<<2)>>2]|0)+t)>>0]|0)>>>3;a=a+1|0;g=g+1|0;i=i+1|0;m=m+-1|0;f=f+2|0}t=m>>>1;if(t){s=t<<1;r=0;n=a;o=g;p=i;q=f;while(1){L=l[n>>0]|0;I=l[o>>0]|0;J=l[p>>0]|0;K=h&255;H=L+K|0;M=h>>>8;G=l[n+1>>0]|0;D=l[o+1>>0]|0;E=l[p+1>>0]|0;F=M&255;C=G+F|0;h=(h<<24|M)>>>8|M<<24;k[q>>2]=(l[y+(L+(K>>>1)+((k[B+(J<<2)>>2]|0)+(k[v+(I<<2)>>2]|0)>>16))>>0]|0)<<3&2016|(l[y+((k[z+(J<<2)>>2]|0)+H)>>0]|0)<<8&63488|(l[y+((k[A+(I<<2)>>2]|0)+H)>>0]|0)>>>3|((l[y+(G+(F>>>1)+((k[B+(E<<2)>>2]|0)+(k[v+(D<<2)>>2]|0)>>16))>>0]|0)<<3&2016|(l[y+((k[z+(E<<2)>>2]|0)+C)>>0]|0)<<8&63488|(l[y+((k[A+(D<<2)>>2]|0)+C)>>0]|0)>>>3)<<16;r=r+1|0;if((r|0)==(t|0))break;else{n=n+2|0;o=o+2|0;p=p+2|0;q=q+4|0}}a=a+s|0;g=g+s|0;i=i+s|0;f=f+(t<<2)|0}if(m&1|0){I=l[a>>0]|0;L=l[g>>0]|0;K=l[i>>0]|0;J=h&255;M=I+J|0;j[f>>1]=(l[y+(I+(J>>>1)+((k[B+(K<<2)>>2]|0)+(k[v+(L<<2)>>2]|0)>>16))>>0]|0)<<3&2016|(l[y+((k[z+(K<<2)>>2]|0)+M)>>0]|0)<<8&63488|(l[y+((k[A+(L<<2)>>2]|0)+M)>>0]|0)>>>3}}while((u|0)>1);return}function dd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;l=r;r=r+208|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){m=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;x=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;o=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;v=ha(j[c+96>>1]|0,k[a+192>>2]|0)|0;w=(o-v|0)*7223|0;p=(x-o|0)*2578|0;t=(ha(o,-15083)|0)+m+p+w|0;n=v+x|0;q=(n*10438|0)+m|0;v=w+(ha(v,-637)|0)+q|0;q=p+(ha(x,-20239)|0)+q|0;x=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;p=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;w=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;y=(p+x|0)*7663|0;u=(x-p|0)*1395|0;p=ha(w+p|0,-11295)|0;s=y+u+p|0;x=(w+x|0)*5027|0;u=x+(y-u)|0;p=x+(w*15326|0)+p|0;k[b>>2]=u+v>>11;k[b+168>>2]=v-u>>11;k[b+28>>2]=s+t>>11;k[b+140>>2]=t-s>>11;k[b+56>>2]=p+q>>11;k[b+112>>2]=q-p>>11;k[b+84>>2]=((o-n|0)*11585|0)+m>>11;h=h+1|0;if((h|0)==7)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){y=(k[d+(c<<2)>>2]|0)+e|0;x=(k[f>>2]<<13)+131072|0;m=k[f+8>>2]|0;v=k[f+16>>2]|0;o=k[f+24>>2]|0;n=(v-o|0)*7223|0;u=(m-v|0)*2578|0;q=(ha(v,-15083)|0)+x+u+n|0;w=o+m|0;t=(w*10438|0)+x|0;o=n+(ha(o,-637)|0)+t|0;t=u+(ha(m,-20239)|0)+t|0;m=k[f+4>>2]|0;u=k[f+12>>2]|0;n=k[f+20>>2]|0;h=(u+m|0)*7663|0;p=(m-u|0)*1395|0;u=ha(n+u|0,-11295)|0;s=h+p+u|0;m=(n+m|0)*5027|0;p=h-p+m|0;u=m+(n*15326|0)+u|0;i[y>>0]=i[a+((p+o|0)>>>18&1023)>>0]|0;i[y+6>>0]=i[a+((o-p|0)>>>18&1023)>>0]|0;i[y+1>>0]=i[a+((s+q|0)>>>18&1023)>>0]|0;i[y+5>>0]=i[a+((q-s|0)>>>18&1023)>>0]|0;i[y+2>>0]=i[a+((u+t|0)>>>18&1023)>>0]|0;i[y+4>>0]=i[a+((t-u|0)>>>18&1023)>>0]|0;i[y+3>>0]=i[a+((((v-w|0)*11585|0)+x|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==7)break;else f=f+28|0}r=l;return}function ed(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;o=r;r=r+3648|0;n=o+32|0;i=o+24|0;h=o+16|0;g=o+8|0;c=o;m=o+3644|0;f=o+3640|0;l=o+40|0;j=Lg(b,21580)|0;if(!j){n=k[3856]|0;k[c>>2]=b;ei(n,21696,c)|0;n=0;r=o;return n|0}a:do if(Kf(j,f,m)|0){c=0;e=l;b:while(1){if((c|0)>99){d=6;break}k[e+4>>2]=k[f>>2];if((k[m>>2]|0)==32){d=1;do{if((d|0)>3){d=9;break b}if(!(Kf(j,f,m)|0)){d=20;break b}k[e+4+(d<<2)>>2]=k[f>>2];d=d+1|0}while((k[m>>2]|0)==32)}else d=1;k[e>>2]=d;if((k[m>>2]|0)==58){d=(Kf(j,f,m)|0)==0;if(d|(k[m>>2]|0)!=32){d=20;break}k[e+20>>2]=k[f>>2];d=(Kf(j,f,m)|0)==0;if(d|(k[m>>2]|0)!=32){d=20;break}k[e+24>>2]=k[f>>2];d=(Kf(j,f,m)|0)==0;if(d|(k[m>>2]|0)!=32){d=20;break}k[e+28>>2]=k[f>>2];if(!(Kf(j,f,m)|0)){d=20;break}k[e+32>>2]=k[f>>2]}else{k[e+20>>2]=0;k[e+24>>2]=63;k[e+28>>2]=0;k[e+32>>2]=0}switch(k[m>>2]|0){case 59:case -1:break;default:{d=20;break b}}c=c+1|0;if(!(Kf(j,f,m)|0))break a;else e=e+36|0}if((d|0)==6){n=k[3856]|0;k[g>>2]=b;ei(n,21732,g)|0;ch(j)|0;n=0;r=o;return n|0}else if((d|0)==9){n=k[3856]|0;k[h>>2]=b;ei(n,21767,h)|0;ch(j)|0;n=0;r=o;return n|0}else if((d|0)==20){n=k[3856]|0;k[i>>2]=b;ei(n,21811,i)|0;ch(j)|0;n=0;r=o;return n|0}}else c=0;while(0);if((k[m>>2]|0)!=-1){m=k[3856]|0;k[n>>2]=b;ei(m,21667,n)|0;ch(j)|0;n=0;r=o;return n|0}if((c|0)>0){m=c*36|0;n=Ya[k[k[a+4>>2]>>2]&15](a,1,m)|0;_g(n|0,l|0,m|0)|0;k[a+172>>2]=n;k[a+168>>2]=c;ne(a,1745618462,0)}ch(j)|0;n=1;r=o;return n|0}function fd(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=k[a+340>>2]|0;w=a+236|0;y=(k[w>>2]|0)*3|0;z=o+48|0;if((k[f>>2]|0)>>>0>=g>>>0)return;A=o+60|0;B=o+52|0;p=a+352|0;q=o+8|0;r=a+32|0;s=a+60|0;t=a+28|0;u=a+356|0;v=o+56|0;while(1){h=k[c>>2]|0;if(h>>>0>=d>>>0){if(k[z>>2]|0){j=29;break}i=k[B>>2]|0;h=k[A>>2]|0;if((i|0)<(h|0)){j=k[s>>2]|0;if((j|0)>0){l=0;while(1){m=k[o+8+(l<<2)>>2]|0;n=k[t>>2]|0;if((i|0)<(h|0)){j=i+-1|0;do{vh(m,j,m,i,1,n);i=i+1|0}while((i|0)!=(h|0));j=k[s>>2]|0}l=l+1|0;if((l|0)>=(j|0))break;i=k[B>>2]|0;h=k[A>>2]|0}h=k[A>>2]|0}k[B>>2]=h;j=25}else j=24}else{m=d-h|0;n=k[B>>2]|0;l=(k[A>>2]|0)-n|0;m=l>>>0<m>>>0?l:m;_a[k[(k[p>>2]|0)+4>>2]&63](a,b+(h<<2)|0,q,n,m);if((k[z>>2]|0)==(k[r>>2]|0)?(x=k[s>>2]|0,(x|0)>0):0){h=k[w>>2]|0;i=x;l=0;do{if((h|0)>=1){i=o+8+(l<<2)|0;j=1;while(1){h=k[i>>2]|0;vh(h,0,h,0-j|0,1,k[t>>2]|0);h=k[w>>2]|0;if((j|0)<(h|0))j=j+1|0;else break}i=k[s>>2]|0}l=l+1|0}while((l|0)<(i|0))}k[c>>2]=(k[c>>2]|0)+m;i=(k[B>>2]|0)+m|0;k[B>>2]=i;k[z>>2]=(k[z>>2]|0)-m;h=k[A>>2]|0;j=24}if((j|0)==24?(j=0,(i|0)==(h|0)):0)j=25;if((j|0)==25){_a[k[(k[u>>2]|0)+4>>2]&63](a,q,k[v>>2]|0,e,k[f>>2]|0);k[f>>2]=(k[f>>2]|0)+1;i=k[w>>2]|0;h=(k[v>>2]|0)+i|0;k[v>>2]=(h|0)<(y|0)?h:0;h=k[B>>2]|0;if((h|0)>=(y|0)){k[B>>2]=0;h=0}k[A>>2]=i+h}if((k[f>>2]|0)>>>0>=g>>>0){j=29;break}}if((j|0)==29)return}function gd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;m=a+4|0;b=Ya[k[k[m>>2]>>2]&15](a,1,160)|0;k[a+452>>2]=b;k[b>>2]=28;k[b+4>>2]=8;x=b+8|0;k[x>>2]=0;if(k[a+300>>2]|0){w=k[a>>2]|0;k[w+20>>2]=25;$a[k[w>>2]&63](a)}if(!(k[a+76>>2]|0))n=0;else n=(k[a+316>>2]|0)>1;o=a+36|0;if((k[o>>2]|0)<=0)return;p=a+316|0;q=a+308|0;r=a+312|0;s=b+100|0;t=b+52|0;u=a+112|0;v=b+12|0;w=b+140|0;h=b+150|0;j=0;l=k[a+216>>2]|0;while(1){d=k[l+36>>2]|0;b=ha(d,k[l+8>>2]|0)|0;c=k[p>>2]|0;b=(b|0)/(c|0)|0;c=(ha(k[l+12>>2]|0,d)|0)/(c|0)|0;d=k[q>>2]|0;e=k[r>>2]|0;k[s+(j<<2)>>2]=c;do if(!(k[l+48>>2]|0))k[t+(j<<2)>>2]=18;else{f=(c|0)==(e|0);if((b|0)==(d|0)&f){k[t+(j<<2)>>2]=19;break}g=(b<<1|0)==(d|0);do if(g&f){if(n?(k[l+40>>2]|0)>>>0>2:0){b=t+(j<<2)|0;if(!(Zj()|0)){k[b>>2]=21;break}else{k[b>>2]=20;break}}b=t+(j<<2)|0;if(!(Zj()|0)){k[b>>2]=23;break}else{k[b>>2]=22;break}}else{if(!(g&(c<<1|0)==(e|0))){if(((d|0)%(b|0)|0|0)==0?((e|0)%(c|0)|0|0)==0:0){k[t+(j<<2)>>2]=28;i[w+j>>0]=(d|0)/(b|0)|0;i[h+j>>0]=(e|0)/(c|0)|0;break}g=k[a>>2]|0;k[g+20>>2]=38;$a[k[g>>2]&63](a);break}if(n?(k[l+40>>2]|0)>>>0>2:0){g=(Zj()|0)==0;k[t+(j<<2)>>2]=g?25:24;k[x>>2]=1;break}b=t+(j<<2)|0;if(!(Zj()|0)){k[b>>2]=27;break}else{k[b>>2]=26;break}}while(0);f=k[(k[m>>2]|0)+8>>2]|0;g=bj(k[u>>2]|0,k[q>>2]|0)|0;g=fb[f&3](a,1,g,k[r>>2]|0)|0;k[v+(j<<2)>>2]=g}while(0);j=j+1|0;if((j|0)>=(k[o>>2]|0))break;else l=l+84|0}return}function hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,m=0,n=0;b=a+460|0;h=k[b>>2]|0;k[a+136>>2]=k[h+16>>2];k[a+132>>2]=k[h+20>>2];switch(k[a+88>>2]|0){case 0:{b=h+4|0;if((k[a+120>>2]|0)==3){k[b>>2]=29;return}else{k[b>>2]=30;return}}case 1:{j=a+120|0;k[h+4>>2]=(k[j>>2]|0)==3?32:31;k[h+48>>2]=0;if(!(k[h+28>>2]|0))ge(a);if(k[h+52>>2]|0)return;h=k[b>>2]|0;b=k[j>>2]|0;if((b|0)<=0)return;i=a+4|0;g=0;do{d=k[h+32+(g<<2)>>2]|0;a:do if((g|0)>0){c=0;while(1){if((d|0)==(k[h+32+(c<<2)>>2]|0))break;c=c+1|0;if((c|0)>=(g|0)){m=14;break a}}c=k[h+52+(c<<2)>>2]|0;if(!c)m=14}else m=14;while(0);if((m|0)==14){m=0;c=Ya[k[k[i>>2]>>2]&15](a,1,1024)|0;d=(d<<9)+-512|0;e=0;do{f=0;do{n=255-((l[27201+(e<<4)+f>>0]|0)<<1)|0;b=n*255|0;if((n|0)<0)b=0-((0-b|0)/(d|0)|0)|0;else b=(b|0)/(d|0)|0;k[c+(e<<6)+(f<<2)>>2]=b;f=f+1|0}while((f|0)!=16);e=e+1|0}while((e|0)!=16);b=k[j>>2]|0}k[h+52+(g<<2)>>2]=c;g=g+1|0}while((g|0)<(b|0));return}case 2:{k[h+4>>2]=33;k[h+84>>2]=0;if(!(k[h+68>>2]|0)){b=a+112|0;c=(k[b>>2]<<1)+4|0;e=a+120|0;if((k[e>>2]|0)<=0)return;f=a+4|0;g=0;do{d=Ya[k[(k[f>>2]|0)+4>>2]&15](a,1,c)|0;k[h+68+(g<<2)>>2]=d;g=g+1|0;d=k[e>>2]|0}while((g|0)<(d|0))}else{d=a+120|0;e=d;b=a+112|0;d=k[d>>2]|0}c=(k[b>>2]<<1)+4|0;if((d|0)>0)b=0;else return;do{vj(k[h+68+(b<<2)>>2]|0,c);b=b+1|0}while((b|0)<(k[e>>2]|0));return}default:{n=k[a>>2]|0;k[n+20>>2]=48;$a[k[n>>2]&63](a);return}}}function id(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0;p=k[a+364>>2]|0;d=a+200|0;if(k[d>>2]|0){e=p+68|0;c=k[e>>2]|0;if(!c){o=p+72|0;Gd(a,k[o>>2]|0);c=k[d>>2]|0;k[e>>2]=c;k[o>>2]=(k[o>>2]|0)+1&7}k[e>>2]=c+-1}l=k[b>>2]|0;o=k[(k[a+248>>2]|0)+24>>2]|0;n=a+320|0;d=k[n>>2]|0;m=a+328|0;a:do if((d|0)>0){e=d;while(1){i=j[l+(k[14344+(e<<2)>>2]<<1)>>1]|0;c=i<<16>>16;if(i<<16>>16>-1){if(c>>k[m>>2]|0){c=e;break}}else if(0-c>>k[m>>2]|0){c=e;break}c=e+-1|0;if((e|0)>1)e=c;else break}b=a+324|0;if((c|0)>0){f=c;while(1){i=j[l+(k[14344+(f<<2)>>2]<<1)>>1]|0;e=i<<16>>16;if(i<<16>>16>-1){if(e>>k[b>>2]|0){i=c;e=f;break a}}else if(0-e>>k[b>>2]|0){i=c;e=f;break a}e=f+-1|0;if((f|0)>1)f=e;else{i=c;break}}}else{i=c;e=c}}else{i=d;e=d}while(0);c=k[a+316>>2]|0;if((c|0)<=(i|0)){g=p+140+(o<<2)|0;h=p+204|0;do{d=(k[g>>2]|0)+((c*3|0)+-3)|0;if((c|0)>(e|0))Pb(a,d,0);while(1){f=j[l+(k[14344+(c<<2)>>2]<<1)>>1]|0;b=f<<16>>16;if(f<<16>>16>-1){b=b>>k[m>>2];if(b|0){f=21;break}}else{b=0-b>>k[m>>2];if(b|0){f=25;break}}Pb(a,d+1|0,0);c=c+1|0;d=d+3|0}do if((f|0)==21)if(b>>>0>1){Pb(a,d+2|0,b&1);d=c;break}else{Pb(a,d+1|0,1);Pb(a,h,0);d=c;break}else if((f|0)==25)if(b>>>0>1){Pb(a,d+2|0,b&1);d=c;break}else{Pb(a,d+1|0,1);Pb(a,h,1);d=c;break}while(0);c=d+1|0}while((d|0)<(i|0));d=k[n>>2]|0}if((c|0)>(d|0))return 1;Pb(a,(k[p+140+(o<<2)>>2]|0)+((c*3|0)+-3)|0,1);return 1}function jd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;b=7;c=a;while(1){d=k[c>>2]|0;o=c+28|0;g=k[o>>2]|0;r=g+d|0;g=d-g|0;d=c+4|0;f=k[d>>2]|0;i=c+24|0;l=k[i>>2]|0;t=l+f|0;l=f-l|0;f=c+8|0;h=k[f>>2]|0;m=c+20|0;n=k[m>>2]|0;q=n+h|0;n=h-n|0;h=c+12|0;s=k[h>>2]|0;e=c+16|0;p=k[e>>2]|0;j=p+s|0;p=s-p|0;s=j+r|0;j=r-j|0;r=q+t|0;q=t-q|0;k[c>>2]=s+r<<2;k[e>>2]=s-r<<2;e=(j+q|0)*4433|0;k[f>>2]=(j*6270|0)+1024+e>>11;e=(ha(q,-15137)|0)+1024+e>>11;k[i>>2]=e;i=p+l|0;e=n+g|0;q=(i+e|0)*9633|0;f=ha(p+g|0,-7373)|0;j=ha(n+l|0,-20995)|0;i=q+(ha(i,-16069)|0)|0;e=q+(ha(e,-3196)|0)|0;k[o>>2]=(p*2446|0)+1024+f+i>>11;k[m>>2]=(n*16819|0)+1024+j+e>>11;k[h>>2]=(l*25172|0)+1024+j+i>>11;k[d>>2]=(g*12299|0)+1024+f+e>>11;if((b|0)>0){b=b+-1|0;c=c+32|0}else{b=7;break}}while(1){t=k[a>>2]|0;i=a+224|0;q=k[i>>2]|0;e=q+t|0;q=t-q|0;t=a+32|0;r=k[t>>2]|0;o=a+192|0;m=k[o>>2]|0;d=m+r|0;m=r-m|0;r=a+64|0;p=k[r>>2]|0;l=a+160|0;j=k[l>>2]|0;g=j+p|0;j=p-j|0;p=a+96|0;f=k[p>>2]|0;s=a+128|0;h=k[s>>2]|0;n=h+f|0;h=f-h|0;f=n+e|0;n=e-n|0;e=g+d|0;g=d-g|0;k[a>>2]=e+2+f>>2;k[s>>2]=2-e+f>>2;s=(n+g|0)*4433|0;k[r>>2]=(n*6270|0)+16384+s>>15;s=(ha(g,-15137)|0)+16384+s>>15;k[o>>2]=s;o=h+m|0;s=j+q|0;g=(o+s|0)*9633|0;r=ha(h+q|0,-7373)|0;n=ha(j+m|0,-20995)|0;o=g+(ha(o,-16069)|0)|0;s=g+(ha(s,-3196)|0)|0;k[i>>2]=(h*2446|0)+16384+r+o>>15;k[l>>2]=(j*16819|0)+16384+n+s>>15;k[p>>2]=(m*25172|0)+16384+n+o>>15;k[t>>2]=(q*12299|0)+16384+r+s>>15;if((b|0)>0){b=b+-1|0;a=a+4|0}else break}return}function kd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;e=k[a+460>>2]|0;R=k[e+24>>2]|0;S=k[a+112>>2]|0;T=k[a+324>>2]|0;U=k[e+40>>2]|0;P=k[a+136>>2]|0;N=k[P>>2]|0;O=k[P+4>>2]|0;P=k[P+8>>2]|0;if((d|0)<=0)return;Q=e+36|0;H=e+32|0;I=(S|0)==0;J=S+-1|0;K=J*3|0;L=(S*3|0)+3|0;M=0;do{f=k[b+(M<<2)>>2]|0;g=k[c+(M<<2)>>2]|0;if(!(k[Q>>2]|0)){E=1;F=3;e=k[H>>2]|0;h=1}else{E=-1;F=-3;e=(k[H>>2]|0)+(L<<1)|0;f=f+K|0;g=g+J|0;h=0}k[Q>>2]=h;if(I){g=0;h=0;f=0}else{x=F+1|0;y=F+2|0;G=ha(S,F)|0;z=0;A=0;B=0;w=0;h=0;n=0;C=S;m=0;o=0;p=0;D=e;while(1){v=D;D=D+(F<<1)|0;s=l[T+((l[f>>0]|0)+(k[U+(m+8+(j[D>>1]|0)>>4<<2)>>2]|0))>>0]|0;t=l[T+((l[f+1>>0]|0)+(k[U+(o+8+(j[v+(x<<1)>>1]|0)>>4<<2)>>2]|0))>>0]|0;u=l[T+((l[f+2>>0]|0)+(k[U+(p+8+(j[v+(y<<1)>>1]|0)>>4<<2)>>2]|0))>>0]|0;o=u>>>3;p=t>>>2;q=s>>>3;r=(k[R+(q<<2)>>2]|0)+(p<<6)+(o<<1)|0;m=j[r>>1]|0;if(!(m<<16>>16)){Gb(a,q,p,o);m=j[r>>1]|0}p=(m&65535)+-1|0;i[g>>0]=p;q=s-(l[N+p>>0]|0)|0;o=t-(l[O+p>>0]|0)|0;p=u-(l[P+p>>0]|0)|0;j[v>>1]=(q*3|0)+w;m=(q*5|0)+z|0;j[v+2>>1]=(o*3|0)+h;h=(o*5|0)+A|0;j[v+4>>1]=(p*3|0)+n;n=(p*5|0)+B|0;C=C+-1|0;if(!C){g=m;f=n;break}else{z=q;A=o;B=p;w=m;m=q*7|0;o=o*7|0;p=p*7|0;f=f+F|0;g=g+E|0}}e=e+(G<<1)|0}j[e>>1]=g;j[e+2>>1]=h;j[e+4>>1]=f;M=M+1|0}while((M|0)!=(d|0));return}function ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0;r=k[a+364>>2]|0;d=a+200|0;if(k[d>>2]|0){e=r+68|0;c=k[e>>2]|0;if(!c){q=r+72|0;Gd(a,k[q>>2]|0);c=k[d>>2]|0;k[e>>2]=c;k[q>>2]=(k[q>>2]|0)+1&7}k[e>>2]=c+-1}n=k[b>>2]|0;q=k[(k[a+248>>2]|0)+24>>2]|0;p=a+320|0;d=k[p>>2]|0;o=a+328|0;a:do if((d|0)>0){e=d;while(1){m=j[n+(k[14344+(e<<2)>>2]<<1)>>1]|0;c=m<<16>>16;if(m<<16>>16>-1){if(c>>k[o>>2]|0)break a}else if(0-c>>k[o>>2]|0)break a;c=e+-1|0;if((e|0)>1)e=c;else{e=c;break}}}else e=d;while(0);c=k[a+316>>2]|0;if((c|0)<=(e|0)){h=r+140+(q<<2)|0;i=r+204|0;m=a+152+q|0;do{b=(k[h>>2]|0)+((c*3|0)+-3)|0;Pb(a,b,0);while(1){g=j[n+(k[14344+(c<<2)>>2]<<1)>>1]|0;d=g<<16>>16;if(g<<16>>16>-1){d=d>>k[o>>2];if(d|0){f=15;break}}else{d=0-d>>k[o>>2];if(d|0){f=17;break}}Pb(a,b+1|0,0);c=c+1|0;b=b+3|0}if((f|0)==15){Pb(a,b+1|0,1);Pb(a,i,0);g=c}else if((f|0)==17){Pb(a,b+1|0,1);Pb(a,i,1);g=c}c=b+2|0;f=d+-1|0;if(f){Pb(a,c,1);if(f>>>0>=2){Pb(a,c,1);b=(k[h>>2]|0)+((g|0)<=(l[m>>0]|0|0)?189:217)|0;c=f>>2;if(!c){d=2;c=b}else{d=2;do{Pb(a,b,1);d=d<<1;b=b+1|0;c=c>>1}while((c|0)!=0);c=b}}else d=1}else d=0;Pb(a,c,0);b=c+14|0;c=d>>1;if(c|0)do{Pb(a,b,(c&f|0)!=0&1);c=c>>1}while((c|0)!=0);c=g+1|0}while((g|0)<(e|0));d=k[p>>2]|0}if((c|0)>(d|0))return 1;Pb(a,(k[r+140+(q<<2)>>2]|0)+((c*3|0)+-3)|0,1);return 1}function md(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;w=k[a+456>>2]|0;x=k[a+324>>2]|0;y=k[w+8>>2]|0;z=k[w+12>>2]|0;A=k[w+16>>2]|0;w=k[w+20>>2]|0;if((e|0)<=0)return;u=k[b>>2]|0;v=k[b+4>>2]|0;t=k[b+8>>2]|0;h=k[a+112>>2]|0;do{s=e;e=e+-1|0;b=k[u+(c<<2)>>2]|0;f=k[v+(c<<2)>>2]|0;g=k[t+(c<<2)>>2]|0;c=c+1|0;a=k[d>>2]|0;d=d+4|0;if(a&3){r=l[b>>0]|0;q=l[f>>0]|0;p=l[g>>0]|0;j[a>>1]=(l[x+(((k[A+(p<<2)>>2]|0)+(k[w+(q<<2)>>2]|0)>>16)+r)>>0]|0)<<3&2016|(l[x+((k[y+(p<<2)>>2]|0)+r)>>0]|0)<<8&63488|(l[x+((k[z+(q<<2)>>2]|0)+r)>>0]|0)>>>3;b=b+1|0;f=f+1|0;g=g+1|0;h=h+-1|0;a=a+2|0}r=h>>>1;if(r){q=r<<1;i=0;m=b;n=f;o=g;p=a;while(1){E=l[m>>0]|0;F=l[n>>0]|0;G=l[o>>0]|0;B=l[m+1>>0]|0;C=l[n+1>>0]|0;D=l[o+1>>0]|0;k[p>>2]=(l[x+(((k[A+(G<<2)>>2]|0)+(k[w+(F<<2)>>2]|0)>>16)+E)>>0]|0)<<3&2016|(l[x+((k[y+(G<<2)>>2]|0)+E)>>0]|0)<<8&63488|(l[x+((k[z+(F<<2)>>2]|0)+E)>>0]|0)>>>3|((l[x+(((k[A+(D<<2)>>2]|0)+(k[w+(C<<2)>>2]|0)>>16)+B)>>0]|0)<<3&2016|(l[x+((k[y+(D<<2)>>2]|0)+B)>>0]|0)<<8&63488|(l[x+((k[z+(C<<2)>>2]|0)+B)>>0]|0)>>>3)<<16;i=i+1|0;if((i|0)==(r|0))break;else{m=m+2|0;n=n+2|0;o=o+2|0;p=p+4|0}}b=b+q|0;f=f+q|0;g=g+q|0;a=a+(r<<2)|0}if(h&1|0){G=l[b>>0]|0;F=l[f>>0]|0;E=l[g>>0]|0;j[a>>1]=(l[x+(((k[A+(E<<2)>>2]|0)+(k[w+(F<<2)>>2]|0)>>16)+G)>>0]|0)<<3&2016|(l[x+((k[y+(E<<2)>>2]|0)+G)>>0]|0)<<8&63488|(l[x+((k[z+(F<<2)>>2]|0)+G)>>0]|0)>>>3}}while((s|0)>1);return}function nd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0;l=r;r=r+48|0;j=l+24|0;f=l+16|0;e=l+8|0;d=l;h=l+32|0;g=l+36|0;o[h>>2]=75.0;a:do if(!(i[b>>0]|0)){d=~~+Ji(75.0);k[1088]=d}else{i[g>>0]=44;k[d>>2]=h;k[d+4>>2]=g;d=(fi(b,21849,d)|0)>0;if(!(d&(i[g>>0]|0)==44)){c=0;r=l;return c|0}d=~~+Ji(+o[h>>2]);k[1088]=d;do{d=i[b>>0]|0;if(!(d<<24>>24))break a;b=b+1|0}while(d<<24>>24!=44)}while(0);b:do if(!(i[b>>0]|0)){e=~~+Ji(+o[h>>2]);k[1089]=e}else{i[g>>0]=44;k[e>>2]=h;k[e+4>>2]=g;e=(fi(b,21849,e)|0)>0;if(!(e&(i[g>>0]|0)==44)){c=0;r=l;return c|0}e=~~+Ji(+o[h>>2]);k[1089]=e;do{d=i[b>>0]|0;if(!(d<<24>>24))break b;b=b+1|0}while(d<<24>>24!=44)}while(0);c:do if(!(i[b>>0]|0)){f=~~+Ji(+o[h>>2]);k[1090]=f}else{i[g>>0]=44;k[f>>2]=h;k[f+4>>2]=g;f=(fi(b,21849,f)|0)>0;if(!(f&(i[g>>0]|0)==44)){c=0;r=l;return c|0}f=~~+Ji(+o[h>>2]);k[1090]=f;do{d=i[b>>0]|0;if(!(d<<24>>24))break c;b=b+1|0}while(d<<24>>24!=44)}while(0);d:do if(!(i[b>>0]|0)){j=~~+Ji(+o[h>>2]);k[1091]=j}else{i[g>>0]=44;k[j>>2]=h;k[j+4>>2]=g;j=(fi(b,21849,j)|0)>0;if(!(j&(i[g>>0]|0)==44)){c=0;r=l;return c|0}j=~~+Ji(+o[h>>2]);k[1091]=j;while(1){d=i[b>>0]|0;if(!(d<<24>>24))break d;if(d<<24>>24==44)break;else b=b+1|0}}while(0);if(!(Df(a,1145645745)|0))b=0;else b=df(a,1145645745)|0;ef(a,0,4368+(b<<8)|0,k[1088]|0,c);ef(a,1,6672+(b<<8)|0,k[1089]|0,c);c=1;r=l;return c|0}function od(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;e=k[b>>2]|0;t=k[d>>2]|0;d=k[d+4>>2]|0;u=k[a+452>>2]|0;v=k[a+324>>2]|0;w=k[u+16>>2]|0;x=k[u+20>>2]|0;y=k[u+24>>2]|0;u=k[u+28>>2]|0;f=c<<1;g=k[e+(f<<2)>>2]|0;f=k[e+((f|1)<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;r=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(!q){a=r;b=t}else{s=q<<2;b=t+s|0;h=q;i=g;m=f;n=e;o=r;c=t;a=d;while(1){z=l[n>>0]|0;C=l[o>>0]|0;B=k[w+(C<<2)>>2]|0;C=(k[y+(C<<2)>>2]|0)+(k[u+(z<<2)>>2]|0)>>16;z=k[x+(z<<2)>>2]|0;t=l[i>>0]|0;A=l[i+1>>0]|0;A=(l[v+(A+C)>>0]|0)<<3&2016|(l[v+(A+B)>>0]|0)<<8&63488|(l[v+(A+z)>>0]|0)>>>3;j[c>>1]=(l[v+(t+C)>>0]|0)<<3&2016|(l[v+(t+B)>>0]|0)<<8&63488|(l[v+(t+z)>>0]|0)>>>3;j[c+2>>1]=A;A=l[m>>0]|0;t=l[m+1>>0]|0;t=(l[v+(t+C)>>0]|0)<<3&2016|(l[v+(t+B)>>0]|0)<<8&63488|(l[v+(t+z)>>0]|0)>>>3;j[a>>1]=(l[v+(A+C)>>0]|0)<<3&2016|(l[v+(A+B)>>0]|0)<<8&63488|(l[v+(A+z)>>0]|0)>>>3;j[a+2>>1]=t;h=h+-1|0;if(!h)break;else{i=i+2|0;m=m+2|0;n=n+1|0;o=o+1|0;c=c+4|0;a=a+4|0}}a=q<<1;c=k[p>>2]|0;g=g+a|0;f=f+a|0;e=e+q|0;a=r+q|0;d=d+s|0}if(!(c&1))return;C=l[e>>0]|0;z=l[a>>0]|0;A=k[w+(z<<2)>>2]|0;z=(k[y+(z<<2)>>2]|0)+(k[u+(C<<2)>>2]|0)>>16;C=k[x+(C<<2)>>2]|0;B=l[g>>0]|0;j[b>>1]=(l[v+(B+z)>>0]|0)<<3&2016|(l[v+(B+A)>>0]|0)<<8&63488|(l[v+(B+C)>>0]|0)>>>3;B=l[f>>0]|0;j[d>>1]=(l[v+(B+z)>>0]|0)<<3&2016|(l[v+(B+A)>>0]|0)<<8&63488|(l[v+(B+C)>>0]|0)>>>3;return}function pd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;n=k[b+28>>2]|0;m=n<<3;h=c+-4|0;e=k[a+236>>2]|0;j=k[a+28>>2]|0;n=n<<4;if((e|0)>-2&(n-j|0)>0){g=j+~n|0;g=(n|2)-j+((g|0)>-2?g:-2)|0;e=e+1|0;f=0;while(1){C=(k[h+(f<<2)>>2]|0)+j|0;eh(C|0,i[C+-1>>0]|0,g|0)|0;if((f|0)==(e|0))break;else f=f+1|0}}C=k[a+192>>2]|0;B=(ha(C,-80)|0)+16384|0;C=C<<4;z=b+12|0;if((k[z>>2]|0)<=0)return;A=m+-2|0;y=m+-1|0;r=n+-2|0;u=0;v=0;do{e=k[d+(v<<2)>>2]|0;j=k[c+(u<<2)>>2]|0;s=k[c+((u|1)<<2)>>2]|0;x=k[c+(u+-1<<2)>>2]|0;u=u+2|0;t=k[c+(u<<2)>>2]|0;b=l[j>>0]|0;a=l[s>>0]|0;o=l[x>>0]|0;w=l[t>>0]|0;p=j+2|0;q=s+2|0;m=x+2|0;n=t+2|0;w=((ha((l[j+1>>0]|0)+b+a+(l[s+1>>0]|0)|0,B)|0)+32768+(ha(w+o+(l[m>>0]|0)+(l[n>>0]|0)+(a+b+o+(l[x+1>>0]|0)+w+(l[t+1>>0]|0)+(l[p>>0]|0)+(l[q>>0]|0)<<1)|0,C)|0)|0)>>>16&255;i[e>>0]=w;w=e+y|0;x=x+r|0;o=A;while(1){b=e+1|0;a=l[p+1>>0]|0;j=l[q+1>>0]|0;h=a+(l[p>>0]|0)+(l[q>>0]|0)+j|0;g=l[m+1>>0]|0;f=l[n+1>>0]|0;e=g+(l[m>>0]|0)+(l[n>>0]|0)+f+(l[p+-1>>0]|0)|0;if(!o)break;j=p+2|0;a=q+2|0;f=m+2|0;g=n+2|0;e=((ha(h,B)|0)+32768+(ha((l[f>>0]|0)+(l[m+-1>>0]|0)+((l[j>>0]|0)+e+(l[q+-1>>0]|0)+(l[a>>0]|0)<<1)+(l[n+-1>>0]|0)+(l[g>>0]|0)|0,C)|0)|0)>>>16&255;i[b>>0]=e;e=b;m=f;n=g;o=o+-1|0;p=j;q=a}x=((ha(h,B)|0)+32768+(ha(f+g+(l[x+-1>>0]|0)+(l[t+r+-1>>0]|0)+(j+a+e+(l[s+r+-1>>0]|0)<<1)|0,C)|0)|0)>>>16&255;i[w>>0]=x;v=v+1|0}while((v|0)<(k[z>>2]|0));return}function qd(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=k[a+340>>2]|0;i=k[c>>2]|0;if(i>>>0>=d>>>0)return;s=a+236|0;t=p+52|0;u=a+352|0;v=p+8|0;w=p+48|0;x=a+60|0;q=a+28|0;r=a+356|0;while(1){if((k[f>>2]|0)>>>0>=g>>>0){l=28;break}o=d-i|0;j=k[t>>2]|0;n=(k[s>>2]|0)-j|0;o=n>>>0<o>>>0?n:o;_a[k[(k[u>>2]|0)+4>>2]&63](a,b+(i<<2)|0,v,j,o);k[c>>2]=(k[c>>2]|0)+o;j=(k[t>>2]|0)+o|0;k[t>>2]=j;n=k[w>>2]|0;k[w>>2]=n-o;i=k[s>>2]|0;if(!((n|0)==(o|0)&(j|0)<(i|0))){if((j|0)==(i|0))l=15}else{l=k[x>>2]|0;if((l|0)>0){m=0;while(1){n=k[p+8+(m<<2)>>2]|0;o=k[q>>2]|0;if((j|0)<(i|0)){l=j+-1|0;do{vh(n,l,n,j,1,o);j=j+1|0}while((j|0)!=(i|0));l=k[x>>2]|0}m=m+1|0;if((m|0)>=(l|0))break;j=k[t>>2]|0;i=k[s>>2]|0}i=k[s>>2]|0}k[t>>2]=i;l=15}if((l|0)==15){l=0;_a[k[(k[r>>2]|0)+4>>2]&63](a,v,0,e,k[f>>2]|0);k[t>>2]=0;k[f>>2]=(k[f>>2]|0)+1}if((k[w>>2]|0)==0?(h=k[f>>2]|0,h>>>0<g>>>0):0){l=19;break}i=k[c>>2]|0;if(i>>>0>=d>>>0){l=28;break}}if((l|0)==19){i=k[x>>2]|0;a:do if((i|0)>0){j=0;o=k[a+68>>2]|0;while(1){m=k[e+(j<<2)>>2]|0;n=k[o+28>>2]<<3;l=k[o+12>>2]|0;h=ha(l,h)|0;l=ha(l,g)|0;if((h|0)<(l|0)){i=h+-1|0;do{vh(m,i,m,h,1,n);h=h+1|0}while((h|0)!=(l|0));i=k[x>>2]|0}j=j+1|0;if((j|0)>=(i|0))break a;h=k[f>>2]|0;o=o+84|0}}while(0);k[f>>2]=g;return}else if((l|0)==28)return}function rd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0;o=r;r=r+64|0;n=o;h=k[a+324>>2]|0;l=8;f=k[b+80>>2]|0;g=n;while(1){do if(!((l|0)==2|(l|2|0)==6)){b=j[c+16>>1]|0;a=j[c+48>>1]|0;if(!((b|a)<<16>>16))if((j[c+80>>1]|0)==0?(j[c+112>>1]|0)==0:0){b=ha(k[f>>2]<<2,j[c>>1]|0)|0;k[g>>2]=b;k[g+32>>2]=b;break}else a=0;p=ha(k[f>>2]<<15,j[c>>1]|0)|0;q=ha(ha(k[f+224>>2]|0,-5906)|0,j[c+112>>1]|0)|0;q=(ha((k[f+160>>2]|0)*6967|0,j[c+80>>1]|0)|0)+q|0;a=q+(ha(ha(k[f+96>>2]|0,-10426)|0,a<<16>>16)|0)|0;b=a+(ha((k[f+32>>2]|0)*29692|0,b<<16>>16)|0)|0;a=p|4096;k[g>>2]=a+b>>13;k[g+32>>2]=a-b>>13}while(0);if((l|0)>1){l=l+-1|0;c=c+2|0;f=f+4|0;g=g+4|0}else break}g=h+128|0;c=(k[d>>2]|0)+e|0;b=k[n+4>>2]|0;a=k[n+12>>2]|0;if(!(b|a))if((k[n+20>>2]|0)==0?(k[n+28>>2]|0)==0:0){q=i[g+(((k[n>>2]|0)+16|0)>>>5&1023)>>0]|0;i[c>>0]=q;i[c+1>>0]=q}else{a=0;m=13}else m=13;if((m|0)==13){q=ha(k[n+28>>2]|0,-5906)|0;q=((k[n+20>>2]|0)*6967|0)+q+(ha(a,-10426)|0)+(b*29692|0)|0;p=(k[n>>2]<<15)+524288|0;i[c>>0]=i[g+((p+q|0)>>>20&1023)>>0]|0;i[c+1>>0]=i[g+((p-q|0)>>>20&1023)>>0]|0}f=n+32|0;c=(k[d+4>>2]|0)+e|0;b=k[n+36>>2]|0;a=k[n+44>>2]|0;if(!(b|a))if((k[n+52>>2]|0)==0?(k[n+60>>2]|0)==0:0){q=i[g+(((k[f>>2]|0)+16|0)>>>5&1023)>>0]|0;i[c>>0]=q;i[c+1>>0]=q;r=o;return}else a=0;q=ha(k[n+60>>2]|0,-5906)|0;q=((k[n+52>>2]|0)*6967|0)+q+(ha(a,-10426)|0)+(b*29692|0)|0;p=(k[f>>2]<<15)+524288|0;i[c>>0]=i[g+((p+q|0)>>>20&1023)>>0]|0;i[c+1>>0]=i[g+((p-q|0)>>>20&1023)>>0]|0;r=o;return}function sd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0;d=k[a+444>>2]|0;m=d+16|0;c=k[m>>2]|0;h=d+20|0;if((c|0)<32768){e=a+416|0;g=a+24|0;f=d+12|0;c=k[h>>2]|0;while(1){d=c+-1|0;k[h>>2]=d;if((c|0)<1){a:do if(!(k[e>>2]|0)){c=k[g>>2]|0;d=c+4|0;if((k[d>>2]|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}k[d>>2]=(k[d>>2]|0)+-1;j=k[c>>2]|0;k[c>>2]=j+1;j=i[j>>0]|0;c=j&255;if(j<<24>>24==-1){b:while(1){c=k[g>>2]|0;d=c+4|0;if((k[d>>2]|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){j=k[a>>2]|0;k[j+20>>2]=24;$a[k[j>>2]&63](a)}k[d>>2]=(k[d>>2]|0)+-1;j=k[c>>2]|0;k[c>>2]=j+1;c=l[j>>0]|0;switch(c|0){case 0:{c=255;break a}case 255:break;default:break b}}k[e>>2]=c;c=0}}else c=0;while(0);k[f>>2]=k[f>>2]<<8|c;c=k[h>>2]|0;d=c+8|0;k[h>>2]=d;if((c|0)<-8){c=c+9|0;k[h>>2]=c;if(!c){k[m>>2]=32768;d=0}else d=c}}c=k[m>>2]<<1;k[m>>2]=c;if((c|0)<32768)c=d;else break}}else{f=d+12|0;d=k[h>>2]|0}g=l[b>>0]|0;a=k[14764+((g&127)<<2)>>2]|0;h=a>>8;j=a>>16;e=c-j|0;k[m>>2]=e;c=e<<d;d=k[f>>2]|0;if((d|0)>=(c|0)){k[f>>2]=d-c;k[m>>2]=j;c=g&128;if((e|0)<(j|0)){i[b>>0]=c^h;b=g;b=b>>7;return b|0}else{i[b>>0]=c^a;b=g^128;b=b>>7;return b|0}}if((e|0)>=32768){b=g;b=b>>7;return b|0}c=g&128;if((e|0)<(j|0)){i[b>>0]=c^a;b=g^128;b=b>>7;return b|0}else{i[b>>0]=c^h;b=g;b=b>>7;return b|0}return 0}function td(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=k[a+360>>2]|0;l=k[b+16>>2]|0;s=k[r+24+(l<<2)>>2]|0;l=k[a+72+(l<<2)>>2]|0;t=k[r+8>>2]|0;p=k[r+12>>2]|0;i=k[r+16>>2]|0;q=k[r+20>>2]|0;r=k[r+40>>2]|0;n=c+(e<<2)|0;if(!g)return;o=(h|0)==0;m=a+196|0;if(!i){a=f;f=0;while(1){db[p&15](n,a,r);$a[t&63](r);a:do if(!o){if((k[m>>2]|0)==1)e=0;else{b=0;while(1){j[h+(f<<7)+(b<<1)>>1]=k[r+(b<<2)>>2];b=b+1|0;if((b|0)==64)break a}}do{l=k[r+(e<<2)>>2]|0;b=j[15920+(e<<1)>>1]|0;c=l<<15;if((l|0)>-1)b=(b+c|0)/(b<<1|0)|0;else b=(c-b|0)/(b<<1|0)|0;j[h+(f<<7)+(e<<1)>>1]=b;e=e+1|0}while((e|0)!=64)}while(0);db[q&15](d+(f<<7)|0,s,r);f=f+1|0;if((f|0)==(g|0))break;else a=a+8|0}return}else a=0;while(1){db[p&15](n,f,r);ab[i&31](r,l);$a[t&63](r);b:do if(!o){if((k[m>>2]|0)==1)e=0;else{b=0;while(1){j[h+(a<<7)+(b<<1)>>1]=k[r+(b<<2)>>2];b=b+1|0;if((b|0)==64)break b}}do{u=k[r+(e<<2)>>2]|0;b=j[15920+(e<<1)>>1]|0;c=u<<15;if((u|0)>-1)b=(b+c|0)/(b<<1|0)|0;else b=(c-b|0)/(b<<1|0)|0;j[h+(a<<7)+(e<<1)>>1]=b;e=e+1|0}while((e|0)!=64)}while(0);db[q&15](d+(a<<7)|0,s,r);e=0;do{b=d+(a<<7)+(e<<1)|0;c=j[b>>1]|0;if(c<<16>>16>=-1023){if(c<<16>>16>1023)j[b>>1]=1023}else j[b>>1]=-1023;e=e+1|0}while((e|0)!=64);a=a+1|0;if((a|0)==(g|0))break;else f=f+8|0}return}function ud(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0;o=r;r=r+16|0;n=o;h=a+24|0;j=k[h>>2]|0;m=j+4|0;b=k[m>>2]|0;do if(!b)if(!(cb[k[j+12>>2]&15](a)|0)){a=0;r=o;return a|0}else{b=k[m>>2]|0;break}while(0);d=k[j>>2]|0;b=b+-1|0;c=d+1|0;d=l[d>>0]<<8;do if(!b)if(!(cb[k[j+12>>2]&15](a)|0)){a=0;r=o;return a|0}else{b=k[m>>2]|0;c=k[j>>2]|0;break}while(0);g=l[c>>0]|d;f=g+-2|0;g=(f|0)>13?14:g>>>0>2?f:0;b=b+-1|0;d=c+1|0;a:do if(!g)e=b;else{e=j+12|0;c=0;while(1){if(!b){if(!(cb[k[e>>2]&15](a)|0)){b=0;break}b=k[m>>2]|0;d=k[j>>2]|0}i[n+c>>0]=i[d>>0]|0;c=c+1|0;b=b+-1|0;d=d+1|0;if(c>>>0>=g>>>0){e=b;break a}}r=o;return b|0}while(0);b=f-g|0;c=k[a+416>>2]|0;b:do switch(c|0){case 224:{bd(a,n,g,b);break}case 238:{if((((g>>>0>11&(i[n>>0]|0)==65?(i[n+1>>0]|0)==100:0)?(i[n+2>>0]|0)==111:0)?(i[n+3>>0]|0)==98:0)?(i[n+4>>0]|0)==101:0){p=l[n+7>>0]<<8|l[n+8>>0];c=l[n+9>>0]<<8|l[n+10>>0];g=i[n+11>>0]|0;f=k[a>>2]|0;k[f+24>>2]=l[n+5>>0]<<8|l[n+6>>0];k[f+28>>2]=p;k[f+32>>2]=c;k[f+36>>2]=g&255;k[f+20>>2]=76;ab[k[f+4>>2]&31](a,1);k[a+292>>2]=1;i[a+296>>0]=g;break b}p=k[a>>2]|0;k[p+20>>2]=78;k[p+24>>2]=f;ab[k[p+4>>2]&31](a,1);break}default:{p=k[a>>2]|0;k[p+20>>2]=68;k[p+24>>2]=c;$a[k[p>>2]&63](a)}}while(0);k[j>>2]=d;k[m>>2]=e;if((b|0)<=0){p=1;r=o;return p|0}ab[k[(k[h>>2]|0)+16>>2]&31](a,b);p=1;r=o;return p|0}function vd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;h=k[b+12>>2]|0;m=k[a+8>>2]|0;n=a+32|0;c=k[n>>2]|0;o=(m|0)!=0;if(c){f=m+4|0;g=m+8|0;i=a+4|0;j=b+36|0;l=b+44|0;if(o){e=0;do{k[f>>2]=e;k[g>>2]=c;$a[k[m>>2]&63](a);d=hb[k[(k[i>>2]|0)+28>>2]&3](a,k[j>>2]|0,e,1,1)|0;d=pf(k[d>>2]|0,1,k[l>>2]|0,h)|0;do if((d|0)!=(k[l>>2]|0)){p=(ki(h)|0)==0;c=k[a>>2]|0;d=c+20|0;if(p){k[d>>2]=36;$a[k[c>>2]&63](a);break}else{k[d>>2]=43;$a[k[c>>2]&63](a);break}}while(0);e=e+1|0;c=k[n>>2]|0}while(e>>>0<c>>>0)}else{e=0;do{p=hb[k[(k[i>>2]|0)+28>>2]&3](a,k[j>>2]|0,e,1,1)|0;p=pf(k[p>>2]|0,1,k[l>>2]|0,h)|0;do if((p|0)!=(k[l>>2]|0)){p=(ki(h)|0)==0;c=k[a>>2]|0;d=c+20|0;if(p){k[d>>2]=36;$a[k[c>>2]&63](a);break}else{k[d>>2]=43;$a[k[c>>2]&63](a);break}}while(0);e=e+1|0;c=k[n>>2]|0}while(e>>>0<c>>>0)}}else c=0;if(o){p=m+20|0;k[p>>2]=(k[p>>2]|0)+1}switch(k[b+48>>2]|0){case 8:{k[b+4>>2]=10;n=c;p=10;o=b+40|0;k[o>>2]=n;p=gb[p&63](a,b)|0;return p|0}case 24:{k[b+4>>2]=11;n=c;p=11;o=b+40|0;k[o>>2]=n;p=gb[p&63](a,b)|0;return p|0}case 32:{k[b+4>>2]=12;n=c;p=12;o=b+40|0;k[o>>2]=n;p=gb[p&63](a,b)|0;return p|0}default:{p=k[a>>2]|0;k[p+20>>2]=1002;$a[k[p>>2]&63](a);n=k[n>>2]|0;p=k[b+4>>2]|0;o=b+40|0;k[o>>2]=n;p=gb[p&63](a,b)|0;return p|0}}return 0}function wd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+20|0;b=k[j>>2]|0;a:do switch(b|0){case 202:{sc(a);if(!(k[a+64>>2]|0)){k[j>>2]=203;c=6;break a}k[j>>2]=207;a=1;return a|0}case 203:{c=6;break}case 204:{b=a+420|0;break}default:{c=k[a>>2]|0;k[c+20>>2]=20;k[c+24>>2]=b;$a[k[c>>2]&63](a);c=16}}while(0);if((c|0)==6){g=a+436|0;b:do if(k[(k[g>>2]|0)+16>>2]|0){e=a+8|0;f=a+320|0;b=k[e>>2]|0;c:while(1){if(b|0)$a[k[b>>2]&63](a);c=cb[k[k[g>>2]>>2]&15](a)|0;switch(c|0){case 2:break b;case 0:{b=0;break c}default:{}}b=k[e>>2]|0;if(!((c|2|0)==3&(b|0)!=0))continue;c=b+4|0;i=(k[c>>2]|0)+1|0;k[c>>2]=i;c=b+8|0;d=k[c>>2]|0;if((i|0)<(d|0))continue;k[c>>2]=(k[f>>2]|0)+d}return b|0}while(0);k[a+152>>2]=k[a+144>>2];c=16}if((c|0)==16){b=a+420|0;if((k[j>>2]|0)!=204){$a[k[k[b>>2]>>2]&63](a);k[a+140>>2]=0;k[j>>2]=204}}d:do if(k[(k[b>>2]|0)+8>>2]|0){e=a+140|0;f=a+116|0;g=a+8|0;h=a+424|0;i=k[e>>2]|0;while(1){c=k[f>>2]|0;if(i>>>0>=c>>>0){$a[k[(k[b>>2]|0)+4>>2]&63](a);$a[k[k[b>>2]>>2]&63](a);k[e>>2]=0;if(!(k[(k[b>>2]|0)+8>>2]|0))break d;else{i=0;continue}}d=k[g>>2]|0;if(!d)c=i;else{k[d+4>>2]=i;k[d+8>>2]=c;$a[k[d>>2]&63](a);c=k[e>>2]|0}ib[k[(k[h>>2]|0)+4>>2]&63](a,0,e,0);i=k[e>>2]|0;if((i|0)==(c|0)){b=0;break}}return b|0}while(0);k[j>>2]=k[a+68>>2]|0?206:205;a=1;return a|0}function xd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=a+56|0;c=k[g>>2]|0;if(!c)c=a+12|0;else{d=0;while(1){c=c>>1;if(!c)break;else d=d+1|0}if((d|0)>14){f=k[a+32>>2]|0;e=k[f>>2]|0;k[e+20>>2]=40;$a[k[e>>2]&63](f)}e=k[a+52>>2]|0;f=d<<4;c=a+12|0;if(!(k[c>>2]|0)){e=k[a+76+(e<<2)>>2]|0;xe(a,k[e+(f<<2)>>2]|0,i[e+1024+f>>0]|0)}else{f=(k[a+92+(e<<2)>>2]|0)+(f<<2)|0;k[f>>2]=(k[f>>2]|0)+1}if(d|0)xe(a,k[g>>2]|0,d);k[g>>2]=0;f=a+60|0;d=k[f>>2]|0;if((d|0)!=0&(k[c>>2]|0)==0){e=k[a+64>>2]|0;while(1){xe(a,i[e>>0]|0,1);d=d+-1|0;if(!d)break;else e=e+1|0}}k[f>>2]=0}if(!(k[c>>2]|0)){xe(a,127,7);k[a+24>>2]=0;k[a+28>>2]=0;e=a+16|0;f=k[e>>2]|0;k[e>>2]=f+1;i[f>>0]=-1;f=a+20|0;d=(k[f>>2]|0)+-1|0;k[f>>2]=d;if(!d){c=a+32|0;h=k[c>>2]|0;d=k[h+24>>2]|0;if(!(cb[k[d+12>>2]&15](h)|0)){h=k[c>>2]|0;c=k[h>>2]|0;k[c+20>>2]=24;$a[k[c>>2]&63](h)}c=k[d>>2]|0;k[e>>2]=c;k[f>>2]=k[d+4>>2]}else c=k[e>>2]|0;k[e>>2]=c+1;i[c>>0]=b+208;h=(k[f>>2]|0)+-1|0;k[f>>2]=h;if(!h){c=a+32|0;h=k[c>>2]|0;d=k[h+24>>2]|0;if(!(cb[k[d+12>>2]&15](h)|0)){h=k[c>>2]|0;b=k[h>>2]|0;k[b+20>>2]=24;$a[k[b>>2]&63](h)}k[e>>2]=k[d>>2];k[f>>2]=k[d+4>>2]}}d=a+32|0;c=k[d>>2]|0;if(k[c+316>>2]|0){k[g>>2]=0;k[a+60>>2]=0;return}if((k[c+244>>2]|0)>0)c=0;else return;do{k[a+36+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(k[(k[d>>2]|0)+244>>2]|0));return}function yd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=k[d>>2]|0;v=a+312|0;if((k[v>>2]|0)<=0)return;s=b+40|0;t=0;u=0;do{q=c+(t<<2)|0;f=k[q>>2]|0;g=k[c+(t+-1<<2)>>2]|0;r=u|1;p=k[w+(u<<2)>>2]|0;h=((l[f>>0]|0)*3|0)+(l[g>>0]|0)|0;d=((l[f+1>>0]|0)*3|0)+(l[g+1>>0]|0)|0;i[p>>0]=((h<<2)+8|0)>>>4;i[p+1>>0]=((h*3|0)+7+d|0)>>>4;b=k[s>>2]|0;e=b+-2|0;a=p+2|0;if(!e){e=p;b=h}else{o=b<<1;n=p+-4|0;m=p;j=f+2|0;g=g+2|0;f=h;b=d;while(1){d=((l[j>>0]|0)*3|0)+(l[g>>0]|0)|0;h=b*3|0;i[a>>0]=(f+8+h|0)>>>4;i[m+3>>0]=(h+7+d|0)>>>4;e=e+-1|0;if(!e){a=b;break}else{f=b;m=a;j=j+1|0;g=g+1|0;a=a+2|0;b=d}}e=n+o|0;b=a;a=p+-2+o|0}i[a>>0]=(b+8+(d*3|0)|0)>>>4;i[e+3>>0]=((d<<2)+7|0)>>>4;f=k[q>>2]|0;t=t+1|0;g=k[c+(t<<2)>>2]|0;p=k[w+(r<<2)>>2]|0;h=((l[f>>0]|0)*3|0)+(l[g>>0]|0)|0;d=((l[f+1>>0]|0)*3|0)+(l[g+1>>0]|0)|0;i[p>>0]=((h<<2)+8|0)>>>4;i[p+1>>0]=((h*3|0)+7+d|0)>>>4;b=k[s>>2]|0;e=b+-2|0;a=p+2|0;if(!e){e=p;b=h}else{o=b<<1;n=p+-4|0;m=p;j=f+2|0;g=g+2|0;f=h;b=d;while(1){d=((l[j>>0]|0)*3|0)+(l[g>>0]|0)|0;r=b*3|0;i[a>>0]=(f+8+r|0)>>>4;i[m+3>>0]=(r+7+d|0)>>>4;e=e+-1|0;if(!e){a=b;break}else{f=b;m=a;j=j+1|0;g=g+1|0;a=a+2|0;b=d}}e=n+o|0;b=a;a=p+-2+o|0}i[a>>0]=(b+8+(d*3|0)|0)>>>4;i[e+3>>0]=((d<<2)+7|0)>>>4;u=u+2|0}while((u|0)<(k[v>>2]|0));return}function zd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0;f=r;r=r+48|0;g=f;a=k[a+324>>2]|0;q=k[b+80>>2]|0;l=ha(k[q>>2]<<13,j[c>>1]|0)|0|1024;h=ha((k[q+64>>2]|0)*5793|0,j[c+32>>1]|0)|0;n=h+l|0;l=(ha(h,-2)|0)+l|0;h=ha((k[q+32>>2]|0)*10033|0,j[c+16>>1]|0)|0;m=h+n>>11;k[g>>2]=m;k[g+24>>2]=n-h>>11;h=g+12|0;k[h>>2]=l>>11;l=ha(k[q+4>>2]<<13,j[c+2>>1]|0)|0|1024;n=ha((k[q+68>>2]|0)*5793|0,j[c+34>>1]|0)|0;p=n+l|0;l=(ha(n,-2)|0)+l|0;n=ha((k[q+36>>2]|0)*10033|0,j[c+18>>1]|0)|0;o=n+p>>11;k[g+4>>2]=o;k[g+28>>2]=p-n>>11;l=l>>11;k[g+16>>2]=l;n=ha(k[q+8>>2]<<13,j[c+4>>1]|0)|0|1024;p=ha((k[q+72>>2]|0)*5793|0,j[c+36>>1]|0)|0;b=p+n|0;n=(ha(p,-2)|0)+n|0;c=ha((k[q+40>>2]|0)*10033|0,j[c+20>>1]|0)|0;q=c+b>>11;k[g+8>>2]=q;c=b-c>>11;k[g+32>>2]=c;n=n>>11;k[g+20>>2]=n;b=a+128|0;a=(k[d>>2]|0)+e|0;m=(m<<13)+131072|0;p=m+(q*5793|0)|0;m=(ha(q,-11586)|0)+m|0;o=o*10033|0;i[a>>0]=i[b+((p+o|0)>>>18&1023)>>0]|0;i[a+2>>0]=i[b+((p-o|0)>>>18&1023)>>0]|0;i[a+1>>0]=i[b+(m>>>18&1023)>>0]|0;a=(k[d+4>>2]|0)+e|0;h=(k[h>>2]<<13)+131072|0;m=h+(n*5793|0)|0;h=(ha(n,-11586)|0)+h|0;l=l*10033|0;i[a>>0]=i[b+((m+l|0)>>>18&1023)>>0]|0;i[a+2>>0]=i[b+((m-l|0)>>>18&1023)>>0]|0;i[a+1>>0]=i[b+(h>>>18&1023)>>0]|0;e=(k[d+8>>2]|0)+e|0;d=(k[g+24>>2]<<13)+131072|0;a=d+(c*5793|0)|0;d=(ha(c,-11586)|0)+d|0;c=(k[g+28>>2]|0)*10033|0;i[e>>0]=i[b+((a+c|0)>>>18&1023)>>0]|0;i[e+2>>0]=i[b+((a-c|0)>>>18&1023)>>0]|0;i[e+1>>0]=i[b+(d>>>18&1023)>>0]|0;r=f;return}function Ad(a){a=a|0;var b=0,c=0,d=0,e=0;c=a+4|0;e=Ya[k[k[c>>2]>>2]&15](a,1,80)|0;k[a+360>>2]=e;k[e>>2]=43;d=a+196|0;a:do switch(k[d>>2]|0){case 0:{k[e+4>>2]=1;b=e+8|0;if(!(Zj()|0)){k[b>>2]=45;break a}else{k[b>>2]=44;break a}}case 1:{k[e+4>>2]=1;b=e+8|0;if(!(Zj()|0)){k[b>>2]=47;break a}else{k[b>>2]=46;break a}}case 2:{k[e+4>>2]=2;b=e+44|0;if(!(Zj()|0)){k[b>>2]=49;break a}else{k[b>>2]=48;break a}}default:{b=k[a>>2]|0;k[b+20>>2]=48;$a[k[b>>2]&63](a)}}while(0);b:do switch(k[d>>2]|0){case 1:case 0:{b=(Zj()|0)==0;k[e+12>>2]=b?3:2;k[e+16>>2]=(k[(k[a+332>>2]|0)+52>>2]|0)==0?0:22;b=e+20|0;if(!(Zj()|0)){k[b>>2]=5;break b}else{k[b>>2]=4;break b}}case 2:{b=(Zj()|0)==0;k[e+48>>2]=b?7:6;k[e+52>>2]=(k[(k[a+332>>2]|0)+52>>2]|0)==0?0:23;b=e+56|0;if(!(Zj()|0)){k[b>>2]=9;break b}else{k[b>>2]=8;break b}}default:{b=k[a>>2]|0;k[b+20>>2]=48;$a[k[b>>2]&63](a)}}while(0);d=(k[d>>2]|0)==2;b=Ya[k[k[c>>2]>>2]&15](a,1,256)|0;if(d){k[e+76>>2]=b;d=e+24|0;a=e+60|0;k[d>>2]=0;k[a>>2]=0;a=e+28|0;k[a>>2]=0;a=e+64|0;k[a>>2]=0;a=e+32|0;k[a>>2]=0;a=e+68|0;k[a>>2]=0;a=e+36|0;k[a>>2]=0;e=e+72|0;k[e>>2]=0;return}else{k[e+40>>2]=b;d=e+24|0;a=e+60|0;k[d>>2]=0;k[a>>2]=0;a=e+28|0;k[a>>2]=0;a=e+64|0;k[a>>2]=0;a=e+32|0;k[a>>2]=0;a=e+68|0;k[a>>2]=0;a=e+36|0;k[a>>2]=0;e=e+72|0;k[e>>2]=0;return}}function Bd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;e=a+332|0;h=k[e>>2]|0;c=k[h+4212>>2]|0;if((c|0)<(k[h+4224>>2]|0)){k[a+244>>2]=1;b=k[h+4168>>2]|0;if(!(k[h+40>>2]|0)){k[a+248>>2]=(k[a+68>>2]|0)+(((c|0)/(b<<1|0)|0)*84|0);k[a+316>>2]=1;k[a+320>>2]=63;return}k[a+248>>2]=(k[a+68>>2]|0)+(((c|0)/(b<<2|0)|0)*84|0);if(((c|0)%4|0|0)<2){k[a+316>>2]=1;b=k[h+4164>>2]|0}else{k[a+316>>2]=(k[h+4164>>2]|0)+1;b=63}k[a+320>>2]=b;return}f=k[a+172>>2]|0;if(!f){d=a+60|0;b=k[d>>2]|0;if((b|0)>4){h=k[a>>2]|0;k[h+20>>2]=26;k[h+24>>2]=b;k[h+28>>2]=4;$a[k[h>>2]&63](a);b=k[d>>2]|0}k[a+244>>2]=b;if((b|0)>0){b=a+68|0;c=0;do{k[a+248+(c<<2)>>2]=(k[b>>2]|0)+(c*84|0);c=c+1|0}while((c|0)<(k[d>>2]|0))}k[a+316>>2]=0;k[a+320>>2]=63;k[a+324>>2]=0;k[a+328>>2]=0;return}g=k[h+4220>>2]|0;b=f+(g*36|0)|0;d=k[b>>2]|0;k[a+244>>2]=d;if((d|0)>0){d=a+68|0;b=k[b>>2]|0;c=0;do{k[a+248+(c<<2)>>2]=(k[d>>2]|0)+((k[f+(g*36|0)+4+(c<<2)>>2]|0)*84|0);c=c+1|0}while((c|0)<(b|0));d=k[e>>2]|0}else d=h;k[a+316>>2]=k[f+(g*36|0)+20>>2];k[a+320>>2]=k[f+(g*36|0)+24>>2];k[a+324>>2]=k[f+(g*36|0)+28>>2];b=k[f+(g*36|0)+32>>2]|0;c=a+328|0;k[c>>2]=b;if(k[d+20>>2]|0){if((g|0)>=((k[d+4176>>2]|0)+2+((k[d+4188>>2]|0)*3|0)|0)?(g|0)<(k[d+4172>>2]|0):0){b=k[h+5008>>2]|0;k[c>>2]=b}if((g|0)>=((k[d+4172>>2]|0)+4+(k[d+4180>>2]|0)+((k[d+4192>>2]|0)*6|0)|0)?(g|0)<(k[a+168>>2]|0):0){b=k[h+5012>>2]|0;k[c>>2]=b}}k[h+4740+(g<<2)>>2]=b;return}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if(!b)q=a;else{q=k[a>>2]|0;k[q+20>>2]=4;$a[k[q>>2]&63](a);q=a}r=a+4|0;p=Ya[k[k[r>>2]>>2]&15](q,1,64)|0;k[a+340>>2]=p;k[p>>2]=12;b=p+4|0;if(!(k[(k[a+356>>2]|0)+8>>2]|0)){k[b>>2]=2;e=a+60|0;if((k[e>>2]|0)<=0)return;f=a+232|0;g=a+236|0;c=p+8|0;d=0;b=k[a+68>>2]|0;while(1){p=ha(k[b+28>>2]<<3,k[f>>2]|0)|0;p=fb[k[(k[r>>2]|0)+8>>2]&3](q,1,(p|0)/(k[b+8>>2]|0)|0,k[g>>2]|0)|0;k[c+(d<<2)>>2]=p;d=d+1|0;if((d|0)>=(k[e>>2]|0))break;else b=b+84|0}return}k[b>>2]=1;n=k[a+236>>2]|0;o=a+60|0;b=ha(n*20|0,k[o>>2]|0)|0;b=Ya[k[k[r>>2]>>2]&15](q,1,b)|0;c=k[a+68>>2]|0;if((k[o>>2]|0)<=0)return;i=a+232|0;j=n*3|0;l=n*12|0;m=n*5|0;g=n<<1;a=n<<2;if((n|0)>0)h=0;else{d=0;while(1){a=ha(k[c+28>>2]<<3,k[i>>2]|0)|0;h=b+(n<<2)|0;_g(h|0,fb[k[(k[r>>2]|0)+8>>2]&3](q,1,(a|0)/(k[c+8>>2]|0)|0,j)|0,l|0)|0;k[p+8+(d<<2)>>2]=h;d=d+1|0;if((d|0)>=(k[o>>2]|0))break;else{c=c+84|0;b=b+(m<<2)|0}}return}while(1){d=ha(k[c+28>>2]<<3,k[i>>2]|0)|0;d=fb[k[(k[r>>2]|0)+8>>2]&3](q,1,(d|0)/(k[c+8>>2]|0)|0,j)|0;e=b+(n<<2)|0;_g(e|0,d|0,l|0)|0;f=0;do{k[b+(f<<2)>>2]=k[d+(f+g<<2)>>2];k[b+(f+a<<2)>>2]=k[d+(f<<2)>>2];f=f+1|0}while((f|0)!=(n|0));k[p+8+(h<<2)>>2]=e;h=h+1|0;if((h|0)>=(k[o>>2]|0))break;else{c=c+84|0;b=b+(m<<2)|0}}return}function Dd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+16|0;m=n;l=k[a+364>>2]|0;f=l+56|0;b=k[f>>2]|0;if(b|0){c=0;while(1){b=b>>1;if(!b)break;else c=c+1|0}if((c|0)>14){g=k[l+32>>2]|0;e=k[g>>2]|0;k[e+20>>2]=40;$a[k[e>>2]&63](g)}b=k[l+52>>2]|0;d=c<<4;e=l+12|0;if(!(k[e>>2]|0)){g=k[l+76+(b<<2)>>2]|0;xe(l,k[g+(d<<2)>>2]|0,i[g+1024+d>>0]|0)}else{g=(k[l+92+(b<<2)>>2]|0)+(d<<2)|0;k[g>>2]=(k[g>>2]|0)+1}if(c|0)xe(l,k[f>>2]|0,c);k[f>>2]=0;d=l+60|0;b=k[d>>2]|0;if((b|0)!=0&(k[e>>2]|0)==0){c=k[l+64>>2]|0;while(1){xe(l,i[c>>0]|0,1);b=b+-1|0;if(!b)break;else c=c+1|0}}k[d>>2]=0}c=k[a+316>>2]|0;k[m>>2]=0;k[m+4>>2]=0;k[m+8>>2]=0;k[m+12>>2]=0;g=a+244|0;b=k[g>>2]|0;if((b|0)<=0){r=n;return}e=a+324|0;if(!c)d=0;else{f=0;do{e=k[(k[a+248+(f<<2)>>2]|0)+24>>2]|0;d=m+(e<<2)|0;if(!(k[d>>2]|0)){c=a+104+(e<<2)|0;b=k[c>>2]|0;if(!b){b=Ei(a)|0;k[c>>2]=b}Wc(a,b,k[l+92+(e<<2)>>2]|0);k[d>>2]=1;b=k[g>>2]|0}f=f+1|0}while((f|0)<(b|0));r=n;return}do{if((k[e>>2]|0)==0?(j=k[(k[a+248+(d<<2)>>2]|0)+20>>2]|0,h=m+(j<<2)|0,(k[h>>2]|0)==0):0){c=a+88+(j<<2)|0;b=k[c>>2]|0;if(!b){b=Ei(a)|0;k[c>>2]=b}Wc(a,b,k[l+92+(j<<2)>>2]|0);k[h>>2]=1;b=k[g>>2]|0}d=d+1|0}while((d|0)<(b|0));r=n;return}function Ed(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;s=r;r=r+272|0;l=s+16|0;q=s;m=k[a+364>>2]|0;n=a+24|0;b=k[n>>2]|0;c=k[b>>2]|0;b=k[b+4>>2]|0;o=m+12|0;g=k[o>>2]|0;p=m+16|0;e=k[p>>2]|0;m=m+20|0;k[q>>2]=k[m>>2];k[q+4>>2]=k[m+4>>2];k[q+8>>2]=k[m+8>>2];k[q+12>>2]=k[m+12>>2];h=b>>>0<256;j=c;d=h?l:j;g=g<<7|127;if((e|0)>0){f=e+7|0;do{f=f+-8|0;t=g>>>f;e=d+1|0;i[d>>0]=t;if((t&255|0)==255){i[e>>0]=0;d=d+2|0}else d=e}while((f|0)>7)}a:do if(h)if((d|0)==(l|0))d=c;else{e=j;h=l;g=d-l|0;while(1){f=g>>>0<b>>>0?g:b;_g(e|0,h|0,f|0)|0;d=c+f|0;c=d;h=h+f|0;e=b-f|0;if((b|0)==(f|0)){b=k[n>>2]|0;if(!(cb[k[b+12>>2]&15](a)|0)){b=e;break}c=k[b>>2]|0;d=c;b=k[b+4>>2]|0}else b=e;if((g|0)==(f|0)){d=c;break a}else{e=d;g=g-f|0}}l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a);l=c;a=b;t=k[n>>2]|0;k[t>>2]=l;t=t+4|0;k[t>>2]=a;k[o>>2]=0;k[p>>2]=0;k[m>>2]=k[q>>2];k[m+4>>2]=k[q+4>>2];k[m+8>>2]=k[q+8>>2];k[m+12>>2]=k[q+12>>2];r=s;return}else{t=d;d=t;b=b+c-t|0}while(0);l=d;a=b;t=k[n>>2]|0;k[t>>2]=l;t=t+4|0;k[t>>2]=a;k[o>>2]=0;k[p>>2]=0;k[m>>2]=k[q>>2];k[m+4>>2]=k[q+4>>2];k[m+8>>2]=k[q+8>>2];k[m+12>>2]=k[q+12>>2];r=s;return}function Fd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,p=0,q=0;q=k[a+364>>2]|0;f=a+200|0;d=k[f>>2]|0;if(d|0){g=q+36|0;c=k[g>>2]|0;if(!c){e=a+244|0;if((k[e>>2]|0)>0){c=0;do{k[q+20+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(k[e>>2]|0));c=k[f>>2]|0}else c=d;k[g>>2]=c}k[g>>2]=c+-1}l=a+272|0;if((k[l>>2]|0)<=0)return 1;p=0;do{n=k[a+276+(p<<2)>>2]|0;o=k[a+248+(n<<2)>>2]|0;m=b+(p<<2)|0;i=k[m>>2]|0;n=q+20+(n<<2)|0;f=k[q+76+(k[o+20>>2]<<2)>>2]|0;o=k[q+92+(k[o+24>>2]<<2)>>2]|0;c=(j[i>>1]|0)-(k[n>>2]|0)|0;c=(c|0)<0?0-c|0:c;if(c){d=0;e=c;while(1){c=d+1|0;e=e>>1;if(!e)break;else d=c}if((d|0)>10){h=k[a>>2]|0;k[h+20>>2]=6;$a[k[h>>2]&63](a)}}else c=0;g=f+(c<<2)|0;k[g>>2]=(k[g>>2]|0)+1;g=o+960|0;h=1;c=0;do{e=j[i+(k[14344+(h<<2)>>2]<<1)>>1]|0;f=e<<16>>16;if(!(e<<16>>16))c=c+1|0;else{if((c|0)>15){d=c+-16|0;c=d>>>4;k[g>>2]=c+1+(k[g>>2]|0);c=d-(c<<4)|0}d=1;e=e<<16>>16<0?0-f|0:f;while(1){e=e>>1;if(!e)break;else d=d+1|0}if((d|0)>10){f=k[a>>2]|0;k[f+20>>2]=6;$a[k[f>>2]&63](a)}c=o+(d+(c<<4)<<2)|0;k[c>>2]=(k[c>>2]|0)+1;c=0}h=h+1|0}while((h|0)!=64);if((c|0)>0)k[o>>2]=(k[o>>2]|0)+1;k[n>>2]=j[k[m>>2]>>1];p=p+1|0}while((p|0)<(k[l>>2]|0));return 1}function Gd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=k[a+364>>2]|0;Mb(a);c=a+24|0;d=k[c>>2]|0;e=a+332|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(j=k[d>>2]|0,k[d>>2]=j+1,i[j>>0]=-1,j=d+4|0,l=(k[j>>2]|0)+-1|0,k[j>>2]=l,(l|0)==0):0)?(cb[k[d+12>>2]&15](a)|0)==0:0){l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a)}c=k[c>>2]|0;if(((k[(k[e>>2]|0)+44>>2]|0)==0?(j=k[c>>2]|0,k[c>>2]=j+1,i[j>>0]=b+208,j=c+4|0,l=(k[j>>2]|0)+-1|0,k[j>>2]=l,(l|0)==0):0)?(cb[k[c+12>>2]&15](a)|0)==0:0){l=k[a>>2]|0;k[l+20>>2]=24;$a[k[l>>2]&63](a)}e=a+244|0;if((k[e>>2]|0)<=0){a=m+12|0;k[a>>2]=0;a=m+16|0;k[a>>2]=65536;a=m+20|0;k[a>>2]=0;a=m+24|0;k[a>>2]=0;a=m+28|0;k[a>>2]=11;a=m+32|0;k[a>>2]=-1;return}b=a+228|0;f=a+320|0;g=a+316|0;h=a+324|0;l=0;do{j=k[a+248+(l<<2)>>2]|0;if(k[b>>2]|0)if((k[g>>2]|0)==0?(k[h>>2]|0)==0:0)c=14;else c=15;else c=14;if((c|0)==14){c=k[m+76+(k[j+20>>2]<<2)>>2]|0;d=c+64|0;do{i[c>>0]=0;c=c+1|0}while((c|0)<(d|0));k[m+36+(l<<2)>>2]=0;k[m+52+(l<<2)>>2]=0;if(!(k[b>>2]|0))c=16;else c=15}if((c|0)==15?(c=0,k[f>>2]|0):0)c=16;if((c|0)==16)eh(k[m+140+(k[j+24>>2]<<2)>>2]|0,0,256)|0;l=l+1|0}while((l|0)<(k[e>>2]|0));a=m+12|0;k[a>>2]=0;a=m+16|0;k[a>>2]=65536;a=m+20|0;k[a>>2]=0;a=m+24|0;k[a>>2]=0;a=m+28|0;k[a>>2]=11;a=m+32|0;k[a>>2]=-1;return}function Hd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=7;c=a;while(1){g=k[c>>2]|0;d=c+28|0;m=k[d>>2]|0;t=m+g|0;m=g-m|0;g=c+4|0;q=k[g>>2]|0;n=c+24|0;j=k[n>>2]|0;r=j+q|0;j=q-j|0;q=c+8|0;h=k[q>>2]|0;l=c+20|0;f=k[l>>2]|0;o=f+h|0;f=h-f|0;h=c+12|0;e=k[h>>2]|0;s=c+16|0;i=k[s>>2]|0;p=i+e|0;u=p+t|0;p=t-p|0;t=o+r|0;k[c>>2]=u+t;k[s>>2]=u-t;o=(r-o+p|0)*181>>8;k[q>>2]=o+p;k[n>>2]=p-o;i=e-i+f|0;e=j+m|0;n=(i-e|0)*98>>8;i=n+(i*139>>8)|0;e=n+(e*334>>8)|0;j=(f+j|0)*181>>8;f=j+m|0;j=m-j|0;k[l>>2]=i+j;k[h>>2]=j-i;k[g>>2]=e+f;k[d>>2]=f-e;if((b|0)>0){b=b+-1|0;c=c+32|0}else{b=7;break}}while(1){r=k[a>>2]|0;u=a+224|0;m=k[u>>2]|0;e=m+r|0;m=r-m|0;r=a+32|0;h=k[r>>2]|0;l=a+192|0;o=k[l>>2]|0;g=o+h|0;o=h-o|0;h=a+64|0;q=k[h>>2]|0;n=a+160|0;s=k[n>>2]|0;j=s+q|0;s=q-s|0;q=a+96|0;t=k[q>>2]|0;f=a+128|0;p=k[f>>2]|0;i=p+t|0;d=i+e|0;i=e-i|0;e=j+g|0;k[a>>2]=d+e;k[f>>2]=d-e;j=(g-j+i|0)*181>>8;k[h>>2]=j+i;k[l>>2]=i-j;p=t-p+s|0;t=o+m|0;l=(p-t|0)*98>>8;p=l+(p*139>>8)|0;t=l+(t*334>>8)|0;o=(s+o|0)*181>>8;s=o+m|0;o=m-o|0;k[n>>2]=p+o;k[q>>2]=o-p;k[r>>2]=t+s;k[u>>2]=s-t;if((b|0)>0){b=b+-1|0;a=a+4|0}else break}return}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;k[a>>2]=b;break a}case 10:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(k[c>>2]|0)+(4-1)&~(4-1);b=k[d>>2]|0;k[c>>2]=d+4;d=a;k[d>>2]=b;k[d+4>>2]=0;break a}case 12:{d=(k[c>>2]|0)+(8-1)&~(8-1);b=d;e=k[b>>2]|0;b=k[b+4>>2]|0;k[c>>2]=d+8;d=a;k[d>>2]=e;k[d+4>>2]=b;break a}case 13:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&65535;k[e+4>>2]=0;break a}case 15:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;d=(d&255)<<24>>24;e=a;k[e>>2]=d;k[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(k[c>>2]|0)+(4-1)&~(4-1);d=k[e>>2]|0;k[c>>2]=e+4;e=a;k[e>>2]=d&255;k[e+4>>2]=0;break a}case 17:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}case 18:{e=(k[c>>2]|0)+(8-1)&~(8-1);f=+p[e>>3];k[c>>2]=e+8;p[a>>3]=f;break a}default:break a}while(0);while(0);return}
function jb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=r;r=r+256|0;v=x;p=k[e+960>>2]|0;q=i[e+1264>>0]|0;s=a+8|0;t=a+12|0;w=a+4|0;if((k[w>>2]|0)>>>0<256){f=v;u=1}else{f=k[a>>2]|0;u=0}g=(j[b>>1]|0)-c|0;m=g>>31;h=m+g|0;m=l[27471+((m^g)-m)>>0]|0;g=i[d+1024+m>>0]|0;c=g+(k[t>>2]|0)|0;g=k[s>>2]<<g|k[d+(m<<2)>>2];if((c|0)>15){o=g>>>(c+-8|0);d=f+1|0;i[f>>0]=o;if((o&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;o=g>>>c;f=d+1|0;i[d>>0]=o;if((o&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h&(1<<m)+-1;if((d|0)>15){o=g>>>(d+-8|0);c=f+1|0;i[f>>0]=o;if((o&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;o=g>>>d;f=c+1|0;i[c>>0]=o;if((o&255|0)==255){i[f>>0]=0;f=c+2|0}}o=j[b+2>>1]|0;c=o<<16>>16;if(o<<16>>16){h=c>>31;m=l[27471+((h^c)-h)>>0]|0;o=i[e+1024+m>>0]|0;h=(1<<m)+-1&h+c;c=o+d|0;g=g<<o|k[e+(m<<2)>>2];if((c|0)>15){o=g>>>(c+-8|0);d=f+1|0;i[f>>0]=o;if((o&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;o=g>>>c;f=d+1|0;i[d>>0]=o;if((o&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){o=g>>>(d+-8|0);c=f+1|0;i[f>>0]=o;if((o&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;o=g>>>d;f=c+1|0;i[c>>0]=o;if((o&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=1;o=j[b+16>>1]|0;c=o<<16>>16;if(o<<16>>16){y=c>>31;m=l[27471+((y^c)-y)>>0]|0;o=(h<<4)+m|0;n=i[e+1024+o>>0]|0;h=(1<<m)+-1&y+c;c=n+d|0;g=g<<n|k[e+(o<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+32>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+18>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+4>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+6>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+20>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+34>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+48>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+64>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+50>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+36>>1]|0;c=y<<16>>16;if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=d+2|0}}d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)==255){i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=0}else h=h+1|0;y=j[b+22>>1]|0;c=y<<16>>16;do if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){h=0;break}i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=h+1|0;while(0);y=j[b+8>>1]|0;c=y<<16>>16;do if(y<<16>>16){n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+m|0;g=g<<m|h;if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){h=0;break}i[f>>0]=0;f=c+2|0;h=0}else h=0}else h=h+1|0;while(0);y=j[b+10>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))h=h+1|0;else{n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+m|0;g=g<<m|h;if((d|0)<=15){h=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){h=0;break}i[f>>0]=0;f=c+2|0;h=0}while(0);y=j[b+24>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))m=h+1|0;else{n=c>>31;m=l[27471+((n^c)-n)>>0]|0;y=(h<<4)+m|0;o=i[e+1024+y>>0]|0;h=(1<<m)+-1&n+c;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+m|0;g=g<<m|h;if((d|0)<=15){m=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){m=0;break}i[f>>0]=0;f=c+2|0;m=0}while(0);y=j[b+38>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=m+1|0;else{n=c>>31;h=n+c|0;n=l[27471+((n^c)-n)>>0]|0;if((m|0)>15){d=d+q|0;g=g<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);c=m&15}else c=m;y=(c<<4)+n|0;o=i[e+1024+y>>0]|0;h=(1<<n)+-1&h;c=o+d|0;g=g<<o|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+n|0;g=g<<n|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+52>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+66>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+80>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+96>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+82>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+68>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+54>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+40>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+26>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+12>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+14>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+28>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+42>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+56>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+70>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+84>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+98>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+112>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+114>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+100>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+86>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+72>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+58>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+44>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+30>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+46>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+60>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+74>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+88>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+102>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+116>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+118>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+104>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+90>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+76>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+62>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+78>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+92>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+106>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+120>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+122>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+108>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+94>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+110>>1]|0;c=y<<16>>16;do if(!(y<<16>>16))n=n+1|0;else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){n=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){n=0;break}i[f>>0]=0;f=c+2|0;n=0}while(0);y=j[b+124>>1]|0;c=y<<16>>16;do if(!(y<<16>>16)){h=g;c=n+1|0}else{o=c>>31;m=o+c|0;o=l[27471+((o^c)-o)>>0]|0;if((n|0)>15){c=g;h=n;while(1){d=d+q|0;g=c<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=c+2|0}while(0);h=h+-16|0;if((h|0)<=15)break;else c=g}c=n&15}else c=n;y=(c<<4)+o|0;n=i[e+1024+y>>0]|0;h=(1<<o)+-1&m;c=n+d|0;g=g<<n|k[e+(y<<2)>>2];do if((c|0)>15){y=g>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=g>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);d=c+o|0;g=g<<o|h;if((d|0)<=15){h=g;c=0;break}y=g>>>(d+-8|0);c=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[c>>0]=0;c=f+2|0}d=d+-16|0;y=g>>>d;f=c+1|0;i[c>>0]=y;if((y&255|0)!=255){h=g;c=0;break}i[f>>0]=0;f=c+2|0;h=g;c=0}while(0);y=j[b+126>>1]|0;g=y<<16>>16;do if(!(y<<16>>16)){c=i[e+1024>>0]|0;g=c+d|0;c=h<<c|k[e>>2];if((g|0)<=15)break;y=c>>>(g+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}g=g+-16|0;y=c>>>g;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}else{o=g>>31;n=o+g|0;o=l[27471+((o^g)-o)>>0]|0;if((c|0)>15){g=h;m=c;do{d=d+q|0;g=g<<q|p;do if((d|0)>15){y=g>>>(d+-8|0);h=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[h>>0]=0;h=f+2|0}d=d+-16|0;y=g>>>d;f=h+1|0;i[h>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=h+2|0}while(0);m=m+-16|0}while((m|0)>15);c=c&15}else g=h;h=(c<<4)+o|0;y=i[e+1024+h>>0]|0;m=(1<<o)+-1&n;c=y+d|0;h=g<<y|k[e+(h<<2)>>2];do if((c|0)>15){y=h>>>(c+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}c=c+-16|0;y=h>>>c;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);g=c+o|0;c=h<<o|m;if((g|0)<=15)break;y=c>>>(g+-8|0);d=f+1|0;i[f>>0]=y;if((y&255|0)==255){i[d>>0]=0;d=f+2|0}g=g+-16|0;y=c>>>g;f=d+1|0;i[d>>0]=y;if((y&255|0)!=255)break;i[f>>0]=0;f=d+2|0}while(0);k[s>>2]=c;k[t>>2]=g;if(!u){k[w>>2]=(k[a>>2]|0)-f+(k[w>>2]|0);k[a>>2]=f;y=1;r=x;return y|0}g=a+32|0;if((f|0)==(v|0)){y=1;r=x;return y|0}h=v;f=f-v|0;while(1){d=k[w>>2]|0;d=f>>>0<d>>>0?f:d;_g(k[a>>2]|0,h|0,d|0)|0;k[a>>2]=(k[a>>2]|0)+d;h=h+d|0;y=k[w>>2]|0;k[w>>2]=y-d;if((y|0)==(d|0)){y=k[g>>2]|0;c=k[y+24>>2]|0;if(!(cb[k[c+12>>2]&15](y)|0)){c=0;d=1155;break}k[a>>2]=k[c>>2];k[w>>2]=k[c+4>>2]}if((f|0)==(d|0)){c=1;d=1155;break}else f=f-d|0}if((d|0)==1155){r=x;return c|0}return 0}function kb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;i=k[24051]|0;b=i>>>a;if(b&3|0){b=(b&1^1)+a|0;c=96244+(b<<1<<2)|0;d=c+8|0;e=k[d>>2]|0;f=e+8|0;g=k[f>>2]|0;do if((c|0)!=(g|0)){if(g>>>0<(k[24055]|0)>>>0)Pa();a=g+12|0;if((k[a>>2]|0)==(e|0)){k[a>>2]=c;k[d>>2]=g;break}else Pa()}else k[24051]=i&~(1<<b);while(0);L=b<<3;k[e+4>>2]=L|3;L=e+L+4|0;k[L>>2]=k[L>>2]|1;L=f;return L|0}g=k[24053]|0;if(o>>>0>g>>>0){if(b|0){c=2<<a;c=b<<a&(c|0-c);c=(c&0-c)+-1|0;h=c>>>12&16;c=c>>>h;e=c>>>5&8;c=c>>>e;f=c>>>2&4;c=c>>>f;d=c>>>1&2;c=c>>>d;b=c>>>1&1;b=(e|h|f|d|b)+(c>>>b)|0;c=96244+(b<<1<<2)|0;d=c+8|0;f=k[d>>2]|0;h=f+8|0;e=k[h>>2]|0;do if((c|0)!=(e|0)){if(e>>>0<(k[24055]|0)>>>0)Pa();a=e+12|0;if((k[a>>2]|0)==(f|0)){k[a>>2]=c;k[d>>2]=e;j=k[24053]|0;break}else Pa()}else{k[24051]=i&~(1<<b);j=g}while(0);g=(b<<3)-o|0;k[f+4>>2]=o|3;d=f+o|0;k[d+4>>2]=g|1;k[d+g>>2]=g;if(j|0){e=k[24056]|0;b=j>>>3;c=96244+(b<<1<<2)|0;a=k[24051]|0;b=1<<b;if(a&b){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[24055]|0)>>>0)Pa();else{l=a;m=b}}else{k[24051]=a|b;l=c+8|0;m=c}k[l>>2]=e;k[m+12>>2]=e;k[e+8>>2]=m;k[e+12>>2]=c}k[24053]=g;k[24056]=d;L=h;return L|0}a=k[24052]|0;if(a){c=(a&0-a)+-1|0;K=c>>>12&16;c=c>>>K;J=c>>>5&8;c=c>>>J;L=c>>>2&4;c=c>>>L;b=c>>>1&2;c=c>>>b;d=c>>>1&1;d=k[96508+((J|K|L|b|d)+(c>>>d)<<2)>>2]|0;c=(k[d+4>>2]&-8)-o|0;b=d;while(1){a=k[b+16>>2]|0;if(!a){a=k[b+20>>2]|0;if(!a){i=d;break}}b=(k[a+4>>2]&-8)-o|0;L=b>>>0<c>>>0;c=L?b:c;b=a;d=L?a:d}f=k[24055]|0;if(i>>>0<f>>>0)Pa();h=i+o|0;if(i>>>0>=h>>>0)Pa();g=k[i+24>>2]|0;d=k[i+12>>2]|0;do if((d|0)==(i|0)){b=i+20|0;a=k[b>>2]|0;if(!a){b=i+16|0;a=k[b>>2]|0;if(!a){n=0;break}}while(1){d=a+20|0;e=k[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=k[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)Pa();else{k[b>>2]=0;n=a;break}}else{e=k[i+8>>2]|0;if(e>>>0<f>>>0)Pa();a=e+12|0;if((k[a>>2]|0)!=(i|0))Pa();b=d+8|0;if((k[b>>2]|0)==(i|0)){k[a>>2]=d;k[b>>2]=e;n=d;break}else Pa()}while(0);do if(g|0){a=k[i+28>>2]|0;b=96508+(a<<2)|0;if((i|0)==(k[b>>2]|0)){k[b>>2]=n;if(!n){k[24052]=k[24052]&~(1<<a);break}}else{if(g>>>0<(k[24055]|0)>>>0)Pa();a=g+16|0;if((k[a>>2]|0)==(i|0))k[a>>2]=n;else k[g+20>>2]=n;if(!n)break}b=k[24055]|0;if(n>>>0<b>>>0)Pa();k[n+24>>2]=g;a=k[i+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)Pa();else{k[n+16>>2]=a;k[a+24>>2]=n;break}while(0);a=k[i+20>>2]|0;if(a|0)if(a>>>0<(k[24055]|0)>>>0)Pa();else{k[n+20>>2]=a;k[a+24>>2]=n;break}}while(0);if(c>>>0<16){L=c+o|0;k[i+4>>2]=L|3;L=i+L+4|0;k[L>>2]=k[L>>2]|1}else{k[i+4>>2]=o|3;k[h+4>>2]=c|1;k[h+c>>2]=c;a=k[24053]|0;if(a|0){e=k[24056]|0;b=a>>>3;d=96244+(b<<1<<2)|0;a=k[24051]|0;b=1<<b;if(a&b){a=d+8|0;b=k[a>>2]|0;if(b>>>0<(k[24055]|0)>>>0)Pa();else{p=a;q=b}}else{k[24051]=a|b;p=d+8|0;q=d}k[p>>2]=e;k[q+12>>2]=e;k[e+8>>2]=q;k[e+12>>2]=d}k[24053]=c;k[24056]=h}L=i+8|0;return L|0}}}else if(a>>>0<=4294967231){a=a+11|0;o=a&-8;i=k[24052]|0;if(i){c=0-o|0;a=a>>>8;if(a)if(o>>>0>16777215)h=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>16&4;E=E<<p;h=(E+245760|0)>>>16&2;h=14-(p|q|h)+(E<<h>>>15)|0;h=o>>>(h+7|0)&1|h<<1}else h=0;b=k[96508+(h<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{e=c;a=0;f=o<<((h|0)==31?0:25-(h>>>1)|0);g=b;b=0;while(1){d=k[g+4>>2]&-8;c=d-o|0;if(c>>>0<e>>>0)if((d|0)==(o|0)){a=g;b=g;E=90;break a}else b=g;else c=e;d=k[g+20>>2]|0;g=k[g+16+(f>>>31<<2)>>2]|0;a=(d|0)==0|(d|0)==(g|0)?a:d;d=(g|0)==0;if(d){E=86;break}else{e=c;f=f<<(d&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<h;a=i&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=k[96508+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){h=c;i=b}else E=90}if((E|0)==90)while(1){E=0;q=(k[a+4>>2]&-8)-o|0;d=q>>>0<c>>>0;c=d?q:c;b=d?a:b;d=k[a+16>>2]|0;if(d|0){a=d;E=90;continue}a=k[a+20>>2]|0;if(!a){h=c;i=b;break}else E=90}if((i|0)!=0?h>>>0<((k[24053]|0)-o|0)>>>0:0){e=k[24055]|0;if(i>>>0<e>>>0)Pa();g=i+o|0;if(i>>>0>=g>>>0)Pa();f=k[i+24>>2]|0;c=k[i+12>>2]|0;do if((c|0)==(i|0)){b=i+20|0;a=k[b>>2]|0;if(!a){b=i+16|0;a=k[b>>2]|0;if(!a){s=0;break}}while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<e>>>0)Pa();else{k[b>>2]=0;s=a;break}}else{d=k[i+8>>2]|0;if(d>>>0<e>>>0)Pa();a=d+12|0;if((k[a>>2]|0)!=(i|0))Pa();b=c+8|0;if((k[b>>2]|0)==(i|0)){k[a>>2]=c;k[b>>2]=d;s=c;break}else Pa()}while(0);do if(f|0){a=k[i+28>>2]|0;b=96508+(a<<2)|0;if((i|0)==(k[b>>2]|0)){k[b>>2]=s;if(!s){k[24052]=k[24052]&~(1<<a);break}}else{if(f>>>0<(k[24055]|0)>>>0)Pa();a=f+16|0;if((k[a>>2]|0)==(i|0))k[a>>2]=s;else k[f+20>>2]=s;if(!s)break}b=k[24055]|0;if(s>>>0<b>>>0)Pa();k[s+24>>2]=f;a=k[i+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)Pa();else{k[s+16>>2]=a;k[a+24>>2]=s;break}while(0);a=k[i+20>>2]|0;if(a|0)if(a>>>0<(k[24055]|0)>>>0)Pa();else{k[s+20>>2]=a;k[a+24>>2]=s;break}}while(0);do if(h>>>0>=16){k[i+4>>2]=o|3;k[g+4>>2]=h|1;k[g+h>>2]=h;a=h>>>3;if(h>>>0<256){c=96244+(a<<1<<2)|0;b=k[24051]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[24055]|0)>>>0)Pa();else{u=a;v=b}}else{k[24051]=b|a;u=c+8|0;v=c}k[u>>2]=g;k[v+12>>2]=g;k[g+8>>2]=v;k[g+12>>2]=c;break}a=h>>>8;if(a)if(h>>>0>16777215)c=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;c=(L+245760|0)>>>16&2;c=14-(J|K|c)+(L<<c>>>15)|0;c=h>>>(c+7|0)&1|c<<1}else c=0;d=96508+(c<<2)|0;k[g+28>>2]=c;a=g+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[24052]|0;b=1<<c;if(!(a&b)){k[24052]=a|b;k[d>>2]=g;k[g+24>>2]=d;k[g+12>>2]=g;k[g+8>>2]=g;break}e=h<<((c|0)==31?0:25-(c>>>1)|0);a=k[d>>2]|0;while(1){if((k[a+4>>2]&-8|0)==(h|0)){c=a;E=148;break}b=a+16+(e>>>31<<2)|0;c=k[b>>2]|0;if(!c){E=145;break}else{e=e<<1;a=c}}if((E|0)==145)if(b>>>0<(k[24055]|0)>>>0)Pa();else{k[b>>2]=g;k[g+24>>2]=a;k[g+12>>2]=g;k[g+8>>2]=g;break}else if((E|0)==148){a=c+8|0;b=k[a>>2]|0;L=k[24055]|0;if(b>>>0>=L>>>0&c>>>0>=L>>>0){k[b+12>>2]=g;k[a>>2]=g;k[g+8>>2]=b;k[g+12>>2]=c;k[g+24>>2]=0;break}else Pa()}}else{L=h+o|0;k[i+4>>2]=L|3;L=i+L+4|0;k[L>>2]=k[L>>2]|1}while(0);L=i+8|0;return L|0}}}else o=-1;while(0);c=k[24053]|0;if(c>>>0>=o>>>0){a=c-o|0;b=k[24056]|0;if(a>>>0>15){L=b+o|0;k[24056]=L;k[24053]=a;k[L+4>>2]=a|1;k[L+a>>2]=a;k[b+4>>2]=o|3}else{k[24053]=0;k[24056]=0;k[b+4>>2]=c|3;L=b+c+4|0;k[L>>2]=k[L>>2]|1}L=b+8|0;return L|0}a=k[24054]|0;if(a>>>0>o>>>0){J=a-o|0;k[24054]=J;L=k[24057]|0;K=L+o|0;k[24057]=K;k[K+4>>2]=J|1;k[L+4>>2]=o|3;L=L+8|0;return L|0}do if(!(k[24169]|0)){a=Ia(30)|0;if(!(a+-1&a)){k[24171]=a;k[24170]=a;k[24172]=-1;k[24173]=-1;k[24174]=0;k[24162]=0;v=(Ra(0)|0)&-16^1431655768;k[24169]=v;break}else Pa()}while(0);g=o+48|0;f=k[24171]|0;h=o+47|0;e=f+h|0;f=0-f|0;i=e&f;if(i>>>0<=o>>>0){L=0;return L|0}a=k[24161]|0;if(a|0?(u=k[24159]|0,v=u+i|0,v>>>0<=u>>>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(k[24162]&4)){a=k[24057]|0;c:do if(a){c=96652;while(1){b=k[c>>2]|0;if(b>>>0<=a>>>0?(r=c+4|0,(b+(k[r>>2]|0)|0)>>>0>a>>>0):0){d=c;c=r;break}c=k[c+8>>2]|0;if(!c){E=173;break c}}a=e-(k[24054]|0)&f;if(a>>>0<2147483647){b=Ga(a|0)|0;if((b|0)==((k[d>>2]|0)+(k[c>>2]|0)|0)){if((b|0)!=(-1|0)){g=b;e=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ga(0)|0,(t|0)!=(-1|0)):0){a=t;b=k[24170]|0;c=b+-1|0;if(!(c&a))a=i;else a=i-a+(c+a&0-b)|0;b=k[24159]|0;c=b+a|0;if(a>>>0>o>>>0&a>>>0<2147483647){v=k[24161]|0;if(v|0?c>>>0<=b>>>0|c>>>0>v>>>0:0)break;b=Ga(a|0)|0;if((b|0)==(t|0)){g=t;e=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){c=0-a|0;do if(g>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=k[24171]|0,w=h-a+w&0-w,w>>>0<2147483647):0)if((Ga(w|0)|0)==(-1|0)){Ga(c|0)|0;break d}else{a=w+a|0;break}while(0);if((b|0)!=(-1|0)){g=b;e=a;E=193;break b}}while(0);k[24162]=k[24162]|4;E=190}else E=190;while(0);if((((E|0)==190?i>>>0<2147483647:0)?(x=Ga(i|0)|0,y=Ga(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){g=x;e=z;E=193}if((E|0)==193){a=(k[24159]|0)+e|0;k[24159]=a;if(a>>>0>(k[24160]|0)>>>0)k[24160]=a;h=k[24057]|0;do if(h){d=96652;do{a=k[d>>2]|0;b=d+4|0;c=k[b>>2]|0;if((g|0)==(a+c|0)){A=a;B=b;C=c;D=d;E=203;break}d=k[d+8>>2]|0}while((d|0)!=0);if(((E|0)==203?(k[D+12>>2]&8|0)==0:0)?h>>>0<g>>>0&h>>>0>=A>>>0:0){k[B>>2]=C+e;L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=e-L+(k[24054]|0)|0;k[24057]=K;k[24054]=L;k[K+4>>2]=L|1;k[K+L+4>>2]=40;k[24058]=k[24173];break}a=k[24055]|0;if(g>>>0<a>>>0){k[24055]=g;i=g}else i=a;c=g+e|0;a=96652;while(1){if((k[a>>2]|0)==(c|0)){b=a;E=211;break}a=k[a+8>>2]|0;if(!a){b=96652;break}}if((E|0)==211)if(!(k[a+12>>2]&8)){k[b>>2]=g;l=a+4|0;k[l>>2]=(k[l>>2]|0)+e;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;a=c+8|0;a=c+((a&7|0)==0?0:0-a&7)|0;j=l+o|0;f=a-l-o|0;k[l+4>>2]=o|3;do if((a|0)!=(h|0)){if((a|0)==(k[24056]|0)){L=(k[24053]|0)+f|0;k[24053]=L;k[24056]=j;k[j+4>>2]=L|1;k[j+L>>2]=L;break}b=k[a+4>>2]|0;if((b&3|0)==1){h=b&-8;e=b>>>3;e:do if(b>>>0>=256){g=k[a+24>>2]|0;d=k[a+12>>2]|0;do if((d|0)==(a|0)){c=a+16|0;d=c+4|0;b=k[d>>2]|0;if(!b){b=k[c>>2]|0;if(!b){J=0;break}}else c=d;while(1){d=b+20|0;e=k[d>>2]|0;if(e|0){b=e;c=d;continue}d=b+16|0;e=k[d>>2]|0;if(!e)break;else{b=e;c=d}}if(c>>>0<i>>>0)Pa();else{k[c>>2]=0;J=b;break}}else{e=k[a+8>>2]|0;if(e>>>0<i>>>0)Pa();b=e+12|0;if((k[b>>2]|0)!=(a|0))Pa();c=d+8|0;if((k[c>>2]|0)==(a|0)){k[b>>2]=d;k[c>>2]=e;J=d;break}else Pa()}while(0);if(!g)break;b=k[a+28>>2]|0;c=96508+(b<<2)|0;do if((a|0)!=(k[c>>2]|0)){if(g>>>0<(k[24055]|0)>>>0)Pa();b=g+16|0;if((k[b>>2]|0)==(a|0))k[b>>2]=J;else k[g+20>>2]=J;if(!J)break e}else{k[c>>2]=J;if(J|0)break;k[24052]=k[24052]&~(1<<b);break e}while(0);d=k[24055]|0;if(J>>>0<d>>>0)Pa();k[J+24>>2]=g;b=a+16|0;c=k[b>>2]|0;do if(c|0)if(c>>>0<d>>>0)Pa();else{k[J+16>>2]=c;k[c+24>>2]=J;break}while(0);b=k[b+4>>2]|0;if(!b)break;if(b>>>0<(k[24055]|0)>>>0)Pa();else{k[J+20>>2]=b;k[b+24>>2]=J;break}}else{c=k[a+8>>2]|0;d=k[a+12>>2]|0;b=96244+(e<<1<<2)|0;do if((c|0)!=(b|0)){if(c>>>0<i>>>0)Pa();if((k[c+12>>2]|0)==(a|0))break;Pa()}while(0);if((d|0)==(c|0)){k[24051]=k[24051]&~(1<<e);break}do if((d|0)==(b|0))G=d+8|0;else{if(d>>>0<i>>>0)Pa();b=d+8|0;if((k[b>>2]|0)==(a|0)){G=b;break}Pa()}while(0);k[c+12>>2]=d;k[G>>2]=c}while(0);a=a+h|0;f=h+f|0}a=a+4|0;k[a>>2]=k[a>>2]&-2;k[j+4>>2]=f|1;k[j+f>>2]=f;a=f>>>3;if(f>>>0<256){c=96244+(a<<1<<2)|0;b=k[24051]|0;a=1<<a;do if(!(b&a)){k[24051]=b|a;K=c+8|0;L=c}else{a=c+8|0;b=k[a>>2]|0;if(b>>>0>=(k[24055]|0)>>>0){K=a;L=b;break}Pa()}while(0);k[K>>2]=j;k[L+12>>2]=j;k[j+8>>2]=L;k[j+12>>2]=c;break}a=f>>>8;do if(!a)c=0;else{if(f>>>0>16777215){c=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;c=(L+245760|0)>>>16&2;c=14-(J|K|c)+(L<<c>>>15)|0;c=f>>>(c+7|0)&1|c<<1}while(0);d=96508+(c<<2)|0;k[j+28>>2]=c;a=j+16|0;k[a+4>>2]=0;k[a>>2]=0;a=k[24052]|0;b=1<<c;if(!(a&b)){k[24052]=a|b;k[d>>2]=j;k[j+24>>2]=d;k[j+12>>2]=j;k[j+8>>2]=j;break}e=f<<((c|0)==31?0:25-(c>>>1)|0);a=k[d>>2]|0;while(1){if((k[a+4>>2]&-8|0)==(f|0)){c=a;E=281;break}b=a+16+(e>>>31<<2)|0;c=k[b>>2]|0;if(!c){E=278;break}else{e=e<<1;a=c}}if((E|0)==278)if(b>>>0<(k[24055]|0)>>>0)Pa();else{k[b>>2]=j;k[j+24>>2]=a;k[j+12>>2]=j;k[j+8>>2]=j;break}else if((E|0)==281){a=c+8|0;b=k[a>>2]|0;L=k[24055]|0;if(b>>>0>=L>>>0&c>>>0>=L>>>0){k[b+12>>2]=j;k[a>>2]=j;k[j+8>>2]=b;k[j+12>>2]=c;k[j+24>>2]=0;break}else Pa()}}else{L=(k[24054]|0)+f|0;k[24054]=L;k[24057]=j;k[j+4>>2]=L|1}while(0);L=l+8|0;return L|0}else b=96652;while(1){a=k[b>>2]|0;if(a>>>0<=h>>>0?(F=a+(k[b+4>>2]|0)|0,F>>>0>h>>>0):0){b=F;break}b=k[b+8>>2]|0}f=b+-47|0;c=f+8|0;c=f+((c&7|0)==0?0:0-c&7)|0;f=h+16|0;c=c>>>0<f>>>0?h:c;a=c+8|0;d=g+8|0;d=(d&7|0)==0?0:0-d&7;L=g+d|0;d=e+-40-d|0;k[24057]=L;k[24054]=d;k[L+4>>2]=d|1;k[L+d+4>>2]=40;k[24058]=k[24173];d=c+4|0;k[d>>2]=27;k[a>>2]=k[24163];k[a+4>>2]=k[24164];k[a+8>>2]=k[24165];k[a+12>>2]=k[24166];k[24163]=g;k[24164]=e;k[24166]=0;k[24165]=a;a=c+24|0;do{a=a+4|0;k[a>>2]=7}while((a+4|0)>>>0<b>>>0);if((c|0)!=(h|0)){g=c-h|0;k[d>>2]=k[d>>2]&-2;k[h+4>>2]=g|1;k[c>>2]=g;a=g>>>3;if(g>>>0<256){c=96244+(a<<1<<2)|0;b=k[24051]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[24055]|0)>>>0)Pa();else{H=a;I=b}}else{k[24051]=b|a;H=c+8|0;I=c}k[H>>2]=h;k[I+12>>2]=h;k[h+8>>2]=I;k[h+12>>2]=c;break}a=g>>>8;if(a)if(g>>>0>16777215)c=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;c=(L+245760|0)>>>16&2;c=14-(J|K|c)+(L<<c>>>15)|0;c=g>>>(c+7|0)&1|c<<1}else c=0;e=96508+(c<<2)|0;k[h+28>>2]=c;k[h+20>>2]=0;k[f>>2]=0;a=k[24052]|0;b=1<<c;if(!(a&b)){k[24052]=a|b;k[e>>2]=h;k[h+24>>2]=e;k[h+12>>2]=h;k[h+8>>2]=h;break}d=g<<((c|0)==31?0:25-(c>>>1)|0);a=k[e>>2]|0;while(1){if((k[a+4>>2]&-8|0)==(g|0)){c=a;E=307;break}b=a+16+(d>>>31<<2)|0;c=k[b>>2]|0;if(!c){E=304;break}else{d=d<<1;a=c}}if((E|0)==304)if(b>>>0<(k[24055]|0)>>>0)Pa();else{k[b>>2]=h;k[h+24>>2]=a;k[h+12>>2]=h;k[h+8>>2]=h;break}else if((E|0)==307){a=c+8|0;b=k[a>>2]|0;L=k[24055]|0;if(b>>>0>=L>>>0&c>>>0>=L>>>0){k[b+12>>2]=h;k[a>>2]=h;k[h+8>>2]=b;k[h+12>>2]=c;k[h+24>>2]=0;break}else Pa()}}}else{L=k[24055]|0;if((L|0)==0|g>>>0<L>>>0)k[24055]=g;k[24163]=g;k[24164]=e;k[24166]=0;k[24060]=k[24169];k[24059]=-1;a=0;do{L=96244+(a<<1<<2)|0;k[L+12>>2]=L;k[L+8>>2]=L;a=a+1|0}while((a|0)!=32);L=g+8|0;L=(L&7|0)==0?0:0-L&7;K=g+L|0;L=e+-40-L|0;k[24057]=K;k[24054]=L;k[K+4>>2]=L|1;k[K+L+4>>2]=40;k[24058]=k[24173]}while(0);a=k[24054]|0;if(a>>>0>o>>>0){J=a-o|0;k[24054]=J;L=k[24057]|0;K=L+o|0;k[24057]=K;k[K+4>>2]=J|1;k[L+4>>2]=o|3;L=L+8|0;return L|0}}L=Ai()|0;k[L>>2]=12;L=0;return L|0}function lb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0.0,g=0,h=0,j=0.0,m=0,n=0,o=0,p=0.0,q=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0.0;K=r;r=r+512|0;G=K;switch(b|0){case 0:{J=24;I=-149;y=4;break}case 1:{J=53;I=-1074;y=4;break}case 2:{J=53;I=-1074;y=4;break}default:d=0.0}a:do if((y|0)==4){D=a+4|0;C=a+100|0;do{b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0}while((xj(b)|0)!=0);b:do switch(b|0){case 43:case 45:{e=1-(((b|0)==45&1)<<1)|0;b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0;H=e;break b}else{b=Ff(a)|0;H=e;break b}}default:H=1}while(0);e=b;b=0;do{if((e|32|0)!=(i[96115+b>>0]|0))break;do if(b>>>0<7){e=k[D>>2]|0;if(e>>>0<(k[C>>2]|0)>>>0){k[D>>2]=e+1;e=l[e>>0]|0;break}else{e=Ff(a)|0;break}}while(0);b=b+1|0}while(b>>>0<8);c:do switch(b|0){case 8:break;case 3:{y=23;break}default:{g=(c|0)!=0;if(g&b>>>0>3)if((b|0)==8)break c;else{y=23;break c}d:do if(!b){b=0;do{if((e|32|0)!=(i[96124+b>>0]|0))break d;do if(b>>>0<2){e=k[D>>2]|0;if(e>>>0<(k[C>>2]|0)>>>0){k[D>>2]=e+1;e=l[e>>0]|0;break}else{e=Ff(a)|0;break}}while(0);b=b+1|0}while(b>>>0<3)}while(0);switch(b|0){case 3:{b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if((b|0)==40)b=1;else{if(!(k[C>>2]|0)){d=A;break a}k[D>>2]=(k[D>>2]|0)+-1;d=A;break a}while(1){e=k[D>>2]|0;if(e>>>0<(k[C>>2]|0)>>>0){k[D>>2]=e+1;e=l[e>>0]|0}else e=Ff(a)|0;if(!((e+-48|0)>>>0<10|(e+-65|0)>>>0<26)?!((e|0)==95|(e+-97|0)>>>0<26):0)break;b=b+1|0}if((e|0)==41){d=A;break a}e=(k[C>>2]|0)==0;if(!e)k[D>>2]=(k[D>>2]|0)+-1;if(!g){J=Ai()|0;k[J>>2]=22;Kh(a,0);d=0.0;break a}if(!b){d=A;break a}while(1){b=b+-1|0;if(!e)k[D>>2]=(k[D>>2]|0)+-1;if(!b){d=A;break a}}}case 0:{do if((e|0)==48){b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if((b|32|0)!=120){if(!(k[C>>2]|0)){b=48;break}k[D>>2]=(k[D>>2]|0)+-1;b=48;break}b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0;g=0}else{b=Ff(a)|0;g=0}e:while(1){switch(b|0){case 46:{y=74;break e}case 48:break;default:{w=0;h=0;v=0;e=0;m=g;n=0;u=0;j=1.0;g=0;d=0.0;break e}}b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0;g=1;continue}else{b=Ff(a)|0;g=1;continue}}if((y|0)==74){b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if((b|0)==48){g=0;e=0;do{b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;g=zi(g|0,e|0,-1,-1)|0;e=L}while((b|0)==48);w=0;h=0;v=g;m=1;n=1;u=0;j=1.0;g=0;d=0.0}else{w=0;h=0;v=0;e=0;m=g;n=1;u=0;j=1.0;g=0;d=0.0}}while(1){s=b+-48|0;o=b|32;if(s>>>0>=10){t=(b|0)==46;if(!(t|(o+-97|0)>>>0<6)){o=v;s=w;break}if(t)if(!n){t=h;e=w;s=w;n=1;o=u;f=j}else{o=v;s=w;b=46;break}else y=86}else y=86;if((y|0)==86){y=0;b=(b|0)>57?o+-87|0:s;do if(!((w|0)<0|(w|0)==0&h>>>0<8)){if((w|0)<0|(w|0)==0&h>>>0<14){q=j*.0625;o=u;f=q;d=d+q*+(b|0);break}if((u|0)!=0|(b|0)==0){o=u;f=j}else{o=1;f=j;d=d+j*.5}}else{o=u;f=j;g=b+(g<<4)|0}while(0);h=zi(h|0,w|0,1,0)|0;t=v;s=L;m=1}b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;w=s;v=t;b=l[b>>0]|0;u=o;j=f;continue}else{w=s;v=t;b=Ff(a)|0;u=o;j=f;continue}}if(!m){b=(k[C>>2]|0)==0;if(!b)k[D>>2]=(k[D>>2]|0)+-1;if(c){if(!b?(x=k[D>>2]|0,k[D>>2]=x+-1,n|0):0)k[D>>2]=x+-2}else Kh(a,0);d=+(H|0)*0.0;break a}m=(n|0)==0;n=m?h:o;m=m?s:e;if((s|0)<0|(s|0)==0&h>>>0<8){e=s;do{g=g<<4;h=zi(h|0,e|0,1,0)|0;e=L}while((e|0)<0|(e|0)==0&h>>>0<8)}if((b|32|0)==112){e=Sd(a,c)|0;b=L;if((e|0)==0&(b|0)==-2147483648){if(!c){Kh(a,0);d=0.0;break a}if(!(k[C>>2]|0)){e=0;b=0}else{k[D>>2]=(k[D>>2]|0)+-1;e=0;b=0}}}else if(!(k[C>>2]|0)){e=0;b=0}else{k[D>>2]=(k[D>>2]|0)+-1;e=0;b=0}G=mi(n|0,m|0,2)|0;G=zi(G|0,L|0,-32,-1)|0;b=zi(G|0,L|0,e|0,b|0)|0;e=L;if(!g){d=+(H|0)*0.0;break a}if((e|0)>0|(e|0)==0&b>>>0>(0-I|0)>>>0){J=Ai()|0;k[J>>2]=34;d=+(H|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}G=I+-106|0;F=((G|0)<0)<<31>>31;if((e|0)<(F|0)|(e|0)==(F|0)&b>>>0<G>>>0){J=Ai()|0;k[J>>2]=34;d=+(H|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((g|0)>-1){do{F=!(d>=.5);G=F&1|g<<1;g=G^1;d=d+(F?d:d+-1.0);b=zi(b|0,e|0,-1,-1)|0;e=L}while((G|0)>-1);h=b;j=d}else{h=b;j=d}b=pi(32,0,I|0,((I|0)<0)<<31>>31|0)|0;b=zi(h|0,e|0,b|0,L|0)|0;I=L;if(0>(I|0)|0==(I|0)&J>>>0>b>>>0)if((b|0)<0){b=0;y=127}else y=125;else{b=J;y=125}if((y|0)==125)if((b|0)<53)y=127;else{e=b;f=+(H|0);d=0.0}if((y|0)==127){d=+(H|0);e=b;f=d;d=+Ej(+Ag(1.0,84-b|0),d)}J=(g&1|0)==0&(j!=0.0&(e|0)<32);d=f*(J?0.0:j)+(d+f*+(((J&1)+g|0)>>>0))-d;if(!(d!=0.0)){J=Ai()|0;k[J>>2]=34}d=+Fj(d,h);break a}else b=e;while(0);E=I+J|0;F=0-E|0;g=0;f:while(1){switch(b|0){case 46:{y=138;break f}case 48:break;default:{e=0;o=0;n=0;break f}}b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0;g=1;continue}else{b=Ff(a)|0;g=1;continue}}if((y|0)==138){b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if((b|0)==48){e=0;b=0;while(1){e=zi(e|0,b|0,-1,-1)|0;g=L;b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if((b|0)==48)b=g;else{o=g;g=1;n=1;break}}}else{e=0;o=0;n=1}}k[G>>2]=0;m=b+-48|0;h=(b|0)==46;g:do if(h|m>>>0<10){z=G+496|0;w=0;t=0;u=h;y=o;s=g;x=n;g=0;h=0;n=0;h:while(1){do if(u)if(!x){e=w;o=t;x=1}else{o=y;b=w;m=t;break h}else{u=zi(w|0,t|0,1,0)|0;t=L;v=(b|0)!=48;if((h|0)>=125){if(!v){o=y;w=u;break}k[z>>2]=k[z>>2]|1;o=y;w=u;break}o=G+(h<<2)|0;if(g)m=b+-48+((k[o>>2]|0)*10|0)|0;k[o>>2]=m;g=g+1|0;m=(g|0)==9;o=y;w=u;s=1;g=m?0:g;h=(m&1)+h|0;n=v?u:n}while(0);b=k[D>>2]|0;if(b>>>0<(k[C>>2]|0)>>>0){k[D>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;m=b+-48|0;u=(b|0)==46;if(!(u|m>>>0<10)){m=x;y=161;break g}else y=o}s=(s|0)!=0;y=169}else{w=0;t=0;s=g;m=n;g=0;h=0;n=0;y=161}while(0);do if((y|0)==161){z=(m|0)==0;e=z?w:e;o=z?t:o;s=(s|0)!=0;if(!((b|32|0)==101&s))if((b|0)>-1){b=w;m=t;y=169;break}else{b=w;m=t;y=171;break}m=Sd(a,c)|0;b=L;if((m|0)==0&(b|0)==-2147483648){if(!c){Kh(a,0);d=0.0;break}if(!(k[C>>2]|0)){m=0;b=0}else{k[D>>2]=(k[D>>2]|0)+-1;m=0;b=0}}e=zi(m|0,b|0,e|0,o|0)|0;s=w;o=L;m=t;y=173}while(0);if((y|0)==169)if(k[C>>2]|0){k[D>>2]=(k[D>>2]|0)+-1;if(s){s=b;y=173}else y=172}else y=171;if((y|0)==171)if(s){s=b;y=173}else y=172;do if((y|0)==172){J=Ai()|0;k[J>>2]=22;Kh(a,0);d=0.0}else if((y|0)==173){b=k[G>>2]|0;if(!b){d=+(H|0)*0.0;break}if(((m|0)<0|(m|0)==0&s>>>0<10)&((e|0)==(s|0)&(o|0)==(m|0))?J>>>0>30|(b>>>J|0)==0:0){d=+(H|0)*+(b>>>0);break}a=(I|0)/-2|0;D=((a|0)<0)<<31>>31;if((o|0)>(D|0)|(o|0)==(D|0)&e>>>0>a>>>0){J=Ai()|0;k[J>>2]=34;d=+(H|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=I+-106|0;D=((a|0)<0)<<31>>31;if((o|0)<(D|0)|(o|0)==(D|0)&e>>>0<a>>>0){J=Ai()|0;k[J>>2]=34;d=+(H|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(g){if((g|0)<9){m=G+(h<<2)|0;b=k[m>>2]|0;do{b=b*10|0;g=g+1|0}while((g|0)!=9);k[m>>2]=b}h=h+1|0}if((n|0)<9?(n|0)<=(e|0)&(e|0)<18:0){if((e|0)==9){d=+(H|0)*+((k[G>>2]|0)>>>0);break}if((e|0)<9){d=+(H|0)*+((k[G>>2]|0)>>>0)/+(k[15888+(8-e<<2)>>2]|0);break}a=J+27+(ha(e,-3)|0)|0;b=k[G>>2]|0;if((a|0)>30|(b>>>a|0)==0){d=+(H|0)*+(b>>>0)*+(k[15888+(e+-10<<2)>>2]|0);break}}b=(e|0)%9|0;if(!b){g=0;b=0}else{s=(e|0)>-1?b:b+9|0;m=k[15888+(8-s<<2)>>2]|0;if(h){n=1e9/(m|0)|0;g=0;b=0;o=0;do{C=G+(o<<2)|0;D=k[C>>2]|0;a=((D>>>0)/(m>>>0)|0)+b|0;k[C>>2]=a;b=ha((D>>>0)%(m>>>0)|0,n)|0;a=(o|0)==(g|0)&(a|0)==0;o=o+1|0;e=a?e+-9|0:e;g=a?o&127:g}while((o|0)!=(h|0));if(b){k[G+(h<<2)>>2]=b;h=h+1|0}}else{g=0;h=0}b=0;e=9-s+e|0}i:while(1){t=(e|0)<18;u=(e|0)==18;v=G+(g<<2)|0;do{if(!t){if(!u){w=h;break i}if((k[v>>2]|0)>>>0>=9007199){e=18;w=h;break i}}m=0;n=h+127|0;while(1){s=n&127;o=G+(s<<2)|0;n=mi(k[o>>2]|0,0,29)|0;n=zi(n|0,L|0,m|0,0)|0;m=L;if(m>>>0>0|(m|0)==0&n>>>0>1e9){a=Ti(n|0,m|0,1e9,0)|0;n=Qh(n|0,m|0,1e9,0)|0;m=a}else m=0;k[o>>2]=n;a=(s|0)==(g|0);h=(s|0)!=(h+127&127|0)|a?h:(n|0)==0?s:h;if(a)break;else n=s+-1|0}b=b+-29|0}while((m|0)==0);g=g+127&127;if((g|0)==(h|0)){a=h+127&127;h=G+((h+126&127)<<2)|0;k[h>>2]=k[h>>2]|k[G+(a<<2)>>2];h=a}k[G+(g<<2)>>2]=m;e=e+9|0}j:while(1){h=w+1&127;v=G+((w+127&127)<<2)|0;while(1){t=(e|0)==18;u=(e|0)>27?9:1;s=t^1;while(1){n=g&127;o=(n|0)==(w|0);do if(!o){m=k[G+(n<<2)>>2]|0;if(m>>>0<9007199){y=219;break}if(m>>>0>9007199)break;m=g+1&127;if((m|0)==(w|0)){y=219;break}m=k[G+(m<<2)>>2]|0;if(m>>>0<254740991){y=219;break}if(!(m>>>0>254740991|s)){e=n;h=w;break j}}else y=219;while(0);if((y|0)==219?(y=0,t):0){y=220;break j}b=b+u|0;if((g|0)==(w|0))g=w;else break}s=(1<<u)+-1|0;t=1e9>>>u;n=g;m=0;o=g;while(1){D=G+(o<<2)|0;a=k[D>>2]|0;g=(a>>>u)+m|0;k[D>>2]=g;m=ha(a&s,t)|0;g=(o|0)==(n|0)&(g|0)==0;o=o+1&127;e=g?e+-9|0:e;g=g?o:n;if((o|0)==(w|0))break;else n=g}if(!m)continue;if((h|0)!=(g|0))break;k[v>>2]=k[v>>2]|1}k[G+(w<<2)>>2]=m;w=h}if((y|0)==220)if(o){k[G+(h+-1<<2)>>2]=0;e=w}else{e=n;h=w}d=+((k[G+(e<<2)>>2]|0)>>>0);e=g+1&127;if((e|0)==(h|0)){h=g+2&127;k[G+(h+-1<<2)>>2]=0}q=+(H|0);f=q*(d*1.0e9+ +((k[G+(e<<2)>>2]|0)>>>0));t=b+53|0;o=t-I|0;s=(o|0)<(J|0);e=s&1;n=s?((o|0)<0?0:o):J;if((n|0)<53){M=+Ej(+Ag(1.0,105-n|0),f);j=+Kj(f,+Ag(1.0,53-n|0));p=M;d=j;j=M+(f-j)}else{p=0.0;d=0.0;j=f}m=g+2&127;do if((m|0)==(h|0))f=d;else{m=k[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if(m>>>0>5e8){d=q*.75+d;break}if((g+3&127|0)==(h|0)){d=q*.5+d;break}else{d=q*.75+d;break}}else{if((m|0)==0?(g+3&127|0)==(h|0):0)break;d=q*.25+d}while(0);if((53-n|0)<=1){f=d;break}if(+Kj(d,1.0)!=0.0){f=d;break}f=d+1.0}while(0);d=j+f-p;do if((t&2147483647|0)>(-2-E|0)){if(+W(+d)>=9007199254740992.0){e=s&(n|0)==(o|0)?0:e;b=b+1|0;d=d*.5}if((b+50|0)<=(F|0)?!(f!=0.0&(e|0)!=0):0)break;J=Ai()|0;k[J>>2]=34}while(0);d=+Fj(d,b)}while(0);break a}default:{if(k[C>>2]|0)k[D>>2]=(k[D>>2]|0)+-1;J=Ai()|0;k[J>>2]=22;Kh(a,0);d=0.0;break a}}}}while(0);if((y|0)==23){e=(k[C>>2]|0)==0;if(!e)k[D>>2]=(k[D>>2]|0)+-1;if((c|0)!=0&b>>>0>3)do{if(!e)k[D>>2]=(k[D>>2]|0)+-1;b=b+-1|0}while(b>>>0>3)}d=+(H|0)*B}while(0);r=K;return +d}function mb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0;Za=r;r=r+288|0;Qa=Za+256|0;Ra=Za;Xa=a+416|0;Ya=a+440|0;E=a+24|0;P=a+228|0;_=a+244|0;ja=a+260|0;ua=a+229|0;Fa=a+245|0;Oa=a+261|0;Pa=a+230|0;u=a+246|0;v=a+262|0;w=a+231|0;x=a+247|0;y=a+263|0;z=a+232|0;A=a+248|0;B=a+264|0;C=a+233|0;D=a+249|0;F=a+265|0;G=a+234|0;H=a+250|0;I=a+266|0;J=a+235|0;K=a+251|0;L=a+267|0;M=a+236|0;N=a+252|0;O=a+268|0;Q=a+237|0;R=a+253|0;S=a+269|0;T=a+238|0;U=a+254|0;V=a+270|0;W=a+239|0;X=a+255|0;Y=a+271|0;Z=a+240|0;$=a+256|0;aa=a+272|0;ba=a+241|0;ca=a+257|0;da=a+273|0;ea=a+242|0;fa=a+258|0;ga=a+274|0;ha=a+243|0;ia=a+259|0;ka=a+275|0;la=a+276|0;ma=a+40|0;na=a+300|0;oa=a+280|0;pa=a+284|0;qa=a+285|0;ra=a+286|0;sa=a+288|0;ta=a+290|0;va=a+292|0;wa=a+296|0;xa=Qa+1|0;ya=Qa+2|0;za=Qa+3|0;Aa=Qa+4|0;Ba=Qa+5|0;Ca=Qa+6|0;Da=Qa+7|0;Ea=Qa+8|0;Ga=Qa+9|0;Ha=Qa+10|0;Ia=Qa+11|0;Ja=Qa+12|0;Ka=Qa+13|0;La=Qa+14|0;Ma=Qa+15|0;Na=Qa+16|0;c=k[Xa>>2]|0;a:while(1){do if(!c){if(k[(k[Ya>>2]|0)+12>>2]|0){if(!(pe(a)|0)){Sa=0;Wa=189;break a}c=k[Xa>>2]|0;break}n=k[E>>2]|0;o=n+4|0;c=k[o>>2]|0;if(!c){if(!(cb[k[n+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[o>>2]|0}g=k[n>>2]|0;c=c+-1|0;e=g+1|0;g=i[g>>0]|0;h=g&255;if(!c){if(!(cb[k[n+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}f=k[o>>2]|0;e=k[n>>2]|0}else f=c;t=i[e>>0]|0;c=t&255;if(g<<24>>24!=-1|t<<24>>24!=-40){t=k[a>>2]|0;k[t+20>>2]=53;k[t+24>>2]=h;k[t+28>>2]=c;$a[k[t>>2]&63](a)}k[Xa>>2]=c;k[n>>2]=e+1;k[o>>2]=f+-1}while(0);do switch(c|0){case 218:{Wa=24;break a}case 217:{Wa=65;break a}case 216:{c=k[a>>2]|0;k[c+20>>2]=102;ab[k[c+4>>2]&31](a,1);c=k[Ya>>2]|0;if(k[c+12>>2]|0){c=k[a>>2]|0;k[c+20>>2]=61;$a[k[c>>2]&63](a);c=k[Ya>>2]|0}i[P>>0]=0;i[_>>0]=1;i[ja>>0]=5;i[ua>>0]=0;i[Fa>>0]=1;i[Oa>>0]=5;i[Pa>>0]=0;i[u>>0]=1;i[v>>0]=5;i[w>>0]=0;i[x>>0]=1;i[y>>0]=5;i[z>>0]=0;i[A>>0]=1;i[B>>0]=5;i[C>>0]=0;i[D>>0]=1;i[F>>0]=5;i[G>>0]=0;i[H>>0]=1;i[I>>0]=5;i[J>>0]=0;i[K>>0]=1;i[L>>0]=5;i[M>>0]=0;i[N>>0]=1;i[O>>0]=5;i[Q>>0]=0;i[R>>0]=1;i[S>>0]=5;i[T>>0]=0;i[U>>0]=1;i[V>>0]=5;i[W>>0]=0;i[X>>0]=1;i[Y>>0]=5;i[Z>>0]=0;i[$>>0]=1;i[aa>>0]=5;i[ba>>0]=0;i[ca>>0]=1;i[da>>0]=5;i[ea>>0]=0;i[fa>>0]=1;i[ga>>0]=5;i[ha>>0]=0;i[ia>>0]=1;i[ka>>0]=5;k[la>>2]=0;k[ma>>2]=0;k[na>>2]=0;k[oa>>2]=0;i[pa>>0]=1;i[qa>>0]=1;i[ra>>0]=0;j[sa>>1]=1;j[ta>>1]=1;k[va>>2]=0;i[wa>>0]=0;k[c+12>>2]=1;break}case 193:case 192:{if(!(Yb(a,0,0)|0)){Sa=0;Wa=189;break a}break}case 194:{if(!(Yb(a,1,0)|0)){Sa=0;Wa=189;break a}break}case 201:{if(!(Yb(a,0,1)|0)){Sa=0;Wa=189;break a}break}case 202:{if(!(Yb(a,1,1)|0)){Sa=0;Wa=189;break a}break}case 207:case 206:case 205:case 203:case 200:case 199:case 198:case 197:case 195:{t=k[a>>2]|0;k[t+20>>2]=60;k[t+24>>2]=c;$a[k[t>>2]&63](a);break}case 204:{s=k[E>>2]|0;t=s+4|0;c=k[t>>2]|0;if(!c){if(!(cb[k[s+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[t>>2]|0}f=k[s>>2]|0;c=c+-1|0;e=f+1|0;f=(l[f>>0]|0)<<8;if(!c){if(!(cb[k[s+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[t>>2]|0;e=k[s>>2]|0}g=c+-1|0;c=e+1|0;q=l[e>>0]|0|f;f=q+-2|0;if(q>>>0>2){q=s+12|0;e=g;while(1){if(!e){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break a}e=k[t>>2]|0;c=k[s>>2]|0}e=e+-1|0;g=c+1|0;o=i[c>>0]|0;p=o&255;if(!e){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break a}e=k[t>>2]|0;g=k[s>>2]|0}e=e+-1|0;c=g+1|0;g=i[g>>0]|0;h=g&255;n=f+-2|0;_a=k[a>>2]|0;k[_a+20>>2]=79;k[_a+24>>2]=p;k[_a+28>>2]=h;ab[k[_a+4>>2]&31](a,1);if((o&255)<=31)if((o&255)<=15){o=h&15;i[a+228+p>>0]=o;_a=(g&255)>>>4;i[a+244+p>>0]=_a;if(o>>>0>(_a&255)>>>0){_a=k[a>>2]|0;k[_a+20>>2]=29;k[_a+24>>2]=h;$a[k[_a>>2]&63](a)}}else Wa=83;else{Wa=k[a>>2]|0;k[Wa+20>>2]=28;k[Wa+24>>2]=p;$a[k[Wa>>2]&63](a);Wa=83}if((Wa|0)==83){Wa=0;i[p+-16+(a+260)>>0]=g}if((f|0)>2)f=n;else{f=n;break}}}else e=g;if(f|0){_a=k[a>>2]|0;k[_a+20>>2]=11;$a[k[_a>>2]&63](a)}k[s>>2]=c;k[t>>2]=e;break}case 196:{s=k[E>>2]|0;t=s+4|0;c=k[t>>2]|0;if(!c){if(!(cb[k[s+12>>2]&15](a)|0)){Wa=125;break a}c=k[t>>2]|0}g=k[s>>2]|0;c=c+-1|0;e=g+1|0;g=(l[g>>0]|0)<<8;if(!c){if(!(cb[k[s+12>>2]&15](a)|0)){Wa=125;break a}c=k[t>>2]|0;e=k[s>>2]|0}f=c+-1|0;c=e+1|0;e=(l[e>>0]|0|g)+-2|0;if((e|0)>16){q=s+12|0;do{if(!f){if(!(cb[k[q>>2]&15](a)|0)){Wa=125;break a}f=k[t>>2]|0;c=k[s>>2]|0}p=i[c>>0]|0;o=p&255;g=k[a>>2]|0;k[g+20>>2]=80;k[g+24>>2]=o;ab[k[g+4>>2]&31](a,1);i[Qa>>0]=0;f=f+-1|0;g=0;h=1;c=c+1|0;do{if(!f){if(!(cb[k[q>>2]&15](a)|0)){Wa=125;break a}f=k[t>>2]|0;c=k[s>>2]|0}_a=i[c>>0]|0;i[Qa+h>>0]=_a;g=(_a&255)+g|0;h=h+1|0;f=f+-1|0;c=c+1|0}while((h|0)<17);n=e+-17|0;_a=k[a>>2]|0;k[_a+24>>2]=l[xa>>0];k[_a+28>>2]=l[ya>>0];k[_a+32>>2]=l[za>>0];k[_a+36>>2]=l[Aa>>0];k[_a+40>>2]=l[Ba>>0];k[_a+44>>2]=l[Ca>>0];k[_a+48>>2]=l[Da>>0];k[_a+52>>2]=l[Ea>>0];k[_a+20>>2]=86;ab[k[_a+4>>2]&31](a,2);_a=k[a>>2]|0;k[_a+24>>2]=l[Ga>>0];k[_a+28>>2]=l[Ha>>0];k[_a+32>>2]=l[Ia>>0];k[_a+36>>2]=l[Ja>>0];k[_a+40>>2]=l[Ka>>0];k[_a+44>>2]=l[La>>0];k[_a+48>>2]=l[Ma>>0];k[_a+52>>2]=l[Na>>0];k[_a+20>>2]=86;ab[k[_a+4>>2]&31](a,2);if((g|0)>256|(n|0)<(g|0)){_a=k[a>>2]|0;k[_a+20>>2]=8;$a[k[_a>>2]&63](a)}if((g|0)>0){h=0;do{if(!f){if(!(cb[k[q>>2]&15](a)|0)){Wa=125;break a}f=k[t>>2]|0;e=k[s>>2]|0}else e=c;f=f+-1|0;c=e+1|0;i[Ra+h>>0]=i[e>>0]|0;h=h+1|0}while((h|0)<(g|0))}eh(Ra+g|0,0,256-g|0)|0;e=n-g|0;if(!(o&16)){if((p&255)>3){_a=k[a>>2]|0;k[_a+20>>2]=30;k[_a+24>>2]=o;$a[k[_a>>2]&63](a)}o=a+180+(o<<2)|0}else{g=o+-16|0;if((p&255)<16|(g|0)>3){_a=k[a>>2]|0;k[_a+20>>2]=30;k[_a+24>>2]=g;$a[k[_a>>2]&63](a)}o=a+196+(g<<2)|0}g=k[o>>2]|0;if(!g){g=Ei(a)|0;k[o>>2]=g}h=Qa;n=g+17|0;do{i[g>>0]=i[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(n|0));_g((k[o>>2]|0)+17|0,Ra|0,256)|0}while((e|0)>16)}if(e|0){_a=k[a>>2]|0;k[_a+20>>2]=11;$a[k[_a>>2]&63](a)}k[s>>2]=c;k[t>>2]=f;break}case 219:{s=k[E>>2]|0;t=s+4|0;c=k[t>>2]|0;if(!c){if(!(cb[k[s+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[t>>2]|0}g=k[s>>2]|0;c=c+-1|0;e=g+1|0;g=(l[g>>0]|0)<<8;if(!c){if(!(cb[k[s+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[t>>2]|0;e=k[s>>2]|0}f=c+-1|0;c=e+1|0;_a=l[e>>0]|0|g;e=_a+-2|0;if(_a>>>0>2){q=s+12|0;do{if(!f){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break a}f=k[t>>2]|0;c=k[s>>2]|0}g=l[c>>0]|0;n=g>>>4;g=g&15;_a=k[a>>2]|0;k[_a+20>>2]=81;k[_a+24>>2]=g;k[_a+28>>2]=n;ab[k[_a+4>>2]&31](a,1);if(g>>>0>3){_a=k[a>>2]|0;k[_a+20>>2]=31;k[_a+24>>2]=g;$a[k[_a>>2]&63](a)}g=a+164+(g<<2)|0;h=k[g>>2]|0;if(!h){h=Di(a)|0;k[g>>2]=h}f=f+-1|0;c=c+1|0;p=(n|0)==0;if(p){g=0;do{if(!f){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break a}f=k[t>>2]|0;c=k[s>>2]|0}j[h+(k[14344+(g<<2)>>2]<<1)>>1]=l[c>>0]|0;g=g+1|0;f=f+-1|0;c=c+1|0}while((g|0)<64)}else{o=0;do{if(!f){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break a}f=k[t>>2]|0;c=k[s>>2]|0}f=f+-1|0;g=c+1|0;n=(l[c>>0]|0)<<8;if(!f){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break a}f=k[t>>2]|0;c=k[s>>2]|0}else c=g;j[h+(k[14344+(o<<2)>>2]<<1)>>1]=l[c>>0]|0|n;o=o+1|0;f=f+-1|0;c=c+1|0}while((o|0)<64)}g=k[a>>2]|0;b:do if((k[g+104>>2]|0)>1){n=0;while(1){k[g+24>>2]=m[h+(n<<1)>>1];k[g+28>>2]=m[h+((n|1)<<1)>>1];k[g+32>>2]=m[h+((n|2)<<1)>>1];k[g+36>>2]=m[h+((n|3)<<1)>>1];k[g+40>>2]=m[h+((n|4)<<1)>>1];k[g+44>>2]=m[h+((n|5)<<1)>>1];k[g+48>>2]=m[h+((n|6)<<1)>>1];k[g+52>>2]=m[h+((n|7)<<1)>>1];k[g+20>>2]=93;ab[k[g+4>>2]&31](a,2);n=n+8|0;if((n|0)>=64)break b;g=k[a>>2]|0}}while(0);e=(p?-65:-129)+e|0}while((e|0)>0)}if(e|0){_a=k[a>>2]|0;k[_a+20>>2]=11;$a[k[_a>>2]&63](a)}k[s>>2]=c;k[t>>2]=f;break}case 221:{h=k[E>>2]|0;n=h+4|0;c=k[n>>2]|0;if(!c){if(!(cb[k[h+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[n>>2]|0}g=k[h>>2]|0;c=c+-1|0;e=g+1|0;g=(l[g>>0]|0)<<8;if(!c){if(!(cb[k[h+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[n>>2]|0;e=k[h>>2]|0}c=c+-1|0;f=e+1|0;if((l[e>>0]|0|g|0)!=4){_a=k[a>>2]|0;k[_a+20>>2]=11;$a[k[_a>>2]&63](a)}if(!c){if(!(cb[k[h+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[n>>2]|0;f=k[h>>2]|0}e=c+-1|0;c=f+1|0;f=(l[f>>0]|0)<<8;if(!e){if(!(cb[k[h+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}e=k[n>>2]|0;c=k[h>>2]|0}_a=l[c>>0]|0|f;t=k[a>>2]|0;k[t+20>>2]=82;k[t+24>>2]=_a;ab[k[t+4>>2]&31](a,1);k[la>>2]=_a;k[h>>2]=c+1;k[n>>2]=e+-1;break}case 239:case 238:case 237:case 236:case 235:case 234:case 233:case 232:case 231:case 230:case 229:case 228:case 227:case 226:case 225:case 224:{if(!(cb[k[(k[Ya>>2]|0)+32+(c+-224<<2)>>2]&15](a)|0)){Sa=0;Wa=189;break a}break}case 254:{if(!(cb[k[(k[Ya>>2]|0)+28>>2]&15](a)|0)){Sa=0;Wa=189;break a}break}case 1:case 215:case 214:case 213:case 212:case 211:case 210:case 209:case 208:{_a=k[a>>2]|0;k[_a+20>>2]=92;k[_a+24>>2]=c;ab[k[_a+4>>2]&31](a,1);break}case 220:{h=k[E>>2]|0;n=h+4|0;c=k[n>>2]|0;if(!c){if(!(cb[k[h+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[n>>2]|0}g=k[h>>2]|0;c=c+-1|0;e=g+1|0;g=(l[g>>0]|0)<<8;if(!c){if(!(cb[k[h+12>>2]&15](a)|0)){Sa=0;Wa=189;break a}c=k[n>>2]|0;f=k[h>>2]|0}else f=e;_a=l[f>>0]|0|g;e=_a+-2|0;t=k[a>>2]|0;k[t+20>>2]=91;k[t+24>>2]=k[Xa>>2];k[t+28>>2]=e;ab[k[t+4>>2]&31](a,1);k[h>>2]=f+1;k[n>>2]=c+-1;if(_a>>>0>2)ab[k[(k[E>>2]|0)+16>>2]&31](a,e);break}default:{_a=k[a>>2]|0;k[_a+20>>2]=68;k[_a+24>>2]=c;$a[k[_a>>2]&63](a)}}while(0);k[Xa>>2]=0;c=0}if((Wa|0)==24){v=k[E>>2]|0;e=k[v>>2]|0;w=v+4|0;c=k[w>>2]|0;if(!(k[(k[Ya>>2]|0)+16>>2]|0)){_a=k[a>>2]|0;k[_a+20>>2]=62;$a[k[_a>>2]&63](a)}do if(!c)if(!(cb[k[v+12>>2]&15](a)|0)){_a=0;r=Za;return _a|0}else{c=k[w>>2]|0;e=k[v>>2]|0;break}while(0);c=c+-1|0;f=e+1|0;g=(l[e>>0]|0)<<8;do if(!c)if(!(cb[k[v+12>>2]&15](a)|0)){_a=0;r=Za;return _a|0}else{c=k[w>>2]|0;f=k[v>>2]|0;break}while(0);c=c+-1|0;e=f+1|0;f=l[f>>0]|0|g;do if(!c)if(!(cb[k[v+12>>2]&15](a)|0)){_a=0;r=Za;return _a|0}else{c=k[w>>2]|0;e=k[v>>2]|0;break}while(0);g=i[e>>0]|0;u=g&255;_a=k[a>>2]|0;k[_a+20>>2]=103;k[_a+24>>2]=u;ab[k[_a+4>>2]&31](a,1);if((g+-1&255)>3|(f|0)!=((u<<1)+6|0)){_a=k[a>>2]|0;k[_a+20>>2]=11;$a[k[_a>>2]&63](a)}k[a+328>>2]=u;f=a+332|0;k[f>>2]=0;k[f+4>>2]=0;k[f+8>>2]=0;k[f+12>>2]=0;f=c+-1|0;e=e+1|0;c=(f|0)==0;c:do if(g<<24>>24){q=v+12|0;s=a+216|0;t=a+36|0;g=f;p=0;while(1){if(c){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break}c=k[w>>2]|0;e=k[v>>2]|0}else c=g;c=c+-1|0;f=e+1|0;o=l[e>>0]|0;if(!c){if(!(cb[k[q>>2]&15](a)|0)){Sa=0;Wa=189;break}c=k[w>>2]|0;f=k[v>>2]|0}g=l[f>>0]|0;e=k[s>>2]|0;h=k[t>>2]|0;d:do if((h|0)>0){n=0;while(1){if((o|0)==(k[e>>2]|0)?(k[a+332+(n<<2)>>2]|0)==0:0){Va=e;break d}n=n+1|0;e=e+84|0;if(!((n|0)<4&(n|0)<(h|0))){Ua=e;Wa=49;break}}}else{Ua=e;Wa=49}while(0);if((Wa|0)==49){Wa=0;Va=k[a>>2]|0;k[Va+20>>2]=5;k[Va+24>>2]=o;$a[k[Va>>2]&63](a);Va=Ua}k[a+332+(p<<2)>>2]=Va;Ra=Va+20|0;k[Ra>>2]=g>>>4;Sa=Va+24|0;k[Sa>>2]=g&15;_a=k[a>>2]|0;k[_a+24>>2]=o;k[_a+28>>2]=k[Ra>>2];k[_a+32>>2]=k[Sa>>2];k[_a+20>>2]=104;ab[k[_a+4>>2]&31](a,1);if((p|0)>0){e=0;do{if((k[a+332+(e<<2)>>2]|0)==(Va|0)){_a=k[a>>2]|0;k[_a+20>>2]=5;k[_a+24>>2]=o;$a[k[_a>>2]&63](a)}e=e+1|0}while((e|0)!=(p|0))}p=p+1|0;g=c+-1|0;e=f+1|0;c=(g|0)==0;if((p|0)>=(u|0)){Ta=c;b=g;d=e;break c}}if((Wa|0)==189){r=Za;return Sa|0}}else{Ta=c;b=f;d=e}while(0);do if(Ta)if(!(cb[k[v+12>>2]&15](a)|0)){_a=0;r=Za;return _a|0}else{b=k[w>>2]|0;d=k[v>>2]|0;break}while(0);b=b+-1|0;c=d+1|0;f=a+400|0;k[f>>2]=l[d>>0];do if(!b)if(!(cb[k[v+12>>2]&15](a)|0)){_a=0;r=Za;return _a|0}else{b=k[w>>2]|0;c=k[v>>2]|0;break}while(0);d=b+-1|0;b=c+1|0;e=a+404|0;k[e>>2]=l[c>>0];do if(!d)if(!(cb[k[v+12>>2]&15](a)|0)){_a=0;r=Za;return _a|0}else{d=k[w>>2]|0;b=k[v>>2]|0;break}while(0);_a=l[b>>0]|0;Va=a+408|0;k[Va>>2]=_a>>>4;Wa=a+412|0;k[Wa>>2]=_a&15;_a=k[a>>2]|0;k[_a+24>>2]=k[f>>2];k[_a+28>>2]=k[e>>2];k[_a+32>>2]=k[Va>>2];k[_a+36>>2]=k[Wa>>2];k[_a+20>>2]=105;ab[k[_a+4>>2]&31](a,1);k[(k[Ya>>2]|0)+20>>2]=0;_a=a+144|0;k[_a>>2]=(k[_a>>2]|0)+1;k[v>>2]=b+1;k[w>>2]=d+-1;k[Xa>>2]=0;_a=1;r=Za;return _a|0}else if((Wa|0)==65){_a=k[a>>2]|0;k[_a+20>>2]=85;ab[k[_a+4>>2]&31](a,1);k[Xa>>2]=0;_a=2;r=Za;return _a|0}else if((Wa|0)==125){_a=0;r=Za;return _a|0}else if((Wa|0)==189){r=Za;return Sa|0}return 0}function nb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,m=0,n=0.0,o=0,q=0,s=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0;ia=r;r=r+624|0;ca=ia+24|0;ea=ia+16|0;da=ia+588|0;$=ia+576|0;ba=ia;W=ia+536|0;ga=ia+8|0;fa=ia+528|0;M=(a|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ga+4|0;Y=da;Z=0-Y|0;_=$+12|0;$=$+11|0;aa=_;O=aa-Y|0;P=-2-Y|0;Q=aa+2|0;R=ca+288|0;S=da+9|0;T=S;U=da+8|0;f=0;h=0;g=0;y=b;a:while(1){do if((f|0)>-1)if((h|0)>(2147483647-f|0)){f=Ai()|0;k[f>>2]=75;f=-1;break}else{f=h+f|0;break}while(0);b=i[y>>0]|0;if(!(b<<24>>24)){K=244;break}else h=y;b:while(1){switch(b<<24>>24){case 37:{b=h;K=9;break b}case 0:{b=h;break b}default:{}}J=h+1|0;b=i[J>>0]|0;h=J}c:do if((K|0)==9)while(1){K=0;if((i[b+1>>0]|0)!=37)break c;h=h+1|0;b=b+2|0;if((i[b>>0]|0)==37)K=9;else break}while(0);w=h-y|0;if(M?(k[a>>2]&32|0)==0:0)sf(y,w,a)|0;if((h|0)!=(y|0)){h=w;y=b;continue}o=b+1|0;h=i[o>>0]|0;m=(h<<24>>24)+-48|0;if(m>>>0<10){J=(i[b+2>>0]|0)==36;o=J?b+3|0:o;h=i[o>>0]|0;u=J?m:-1;g=J?1:g}else u=-1;b=h<<24>>24;d:do if((b&-32|0)==32){m=0;while(1){if(!(1<<b+-32&75913)){q=m;break d}m=1<<(h<<24>>24)+-32|m;o=o+1|0;h=i[o>>0]|0;b=h<<24>>24;if((b&-32|0)!=32){q=m;break}}}else q=0;while(0);do if(h<<24>>24==42){h=o+1|0;b=(i[h>>0]|0)+-48|0;if(b>>>0<10?(i[o+2>>0]|0)==36:0){k[e+(b<<2)>>2]=10;g=1;o=o+3|0;b=k[d+((i[h>>0]|0)+-48<<3)>>2]|0}else{if(g|0){f=-1;break a}if(!M){v=q;g=0;o=h;J=0;break}g=(k[c>>2]|0)+(4-1)&~(4-1);b=k[g>>2]|0;k[c>>2]=g+4;g=0;o=h}if((b|0)<0){v=q|8192;J=0-b|0}else{v=q;J=b}}else{m=(h<<24>>24)+-48|0;if(m>>>0<10){b=o;h=0;do{h=(h*10|0)+m|0;b=b+1|0;m=(i[b>>0]|0)+-48|0}while(m>>>0<10);if((h|0)<0){f=-1;break a}else{v=q;o=b;J=h}}else{v=q;J=0}}while(0);e:do if((i[o>>0]|0)==46){b=o+1|0;h=i[b>>0]|0;if(h<<24>>24!=42){m=(h<<24>>24)+-48|0;if(m>>>0<10)h=0;else{q=0;break}while(1){h=(h*10|0)+m|0;b=b+1|0;m=(i[b>>0]|0)+-48|0;if(m>>>0>=10){q=h;break e}}}b=o+2|0;h=(i[b>>0]|0)+-48|0;if(h>>>0<10?(i[o+3>>0]|0)==36:0){k[e+(h<<2)>>2]=10;q=k[d+((i[b>>0]|0)+-48<<3)>>2]|0;b=o+4|0;break}if(g|0){f=-1;break a}if(M){I=(k[c>>2]|0)+(4-1)&~(4-1);q=k[I>>2]|0;k[c>>2]=I+4}else q=0}else{q=-1;b=o}while(0);s=0;while(1){h=(i[b>>0]|0)+-65|0;if(h>>>0>57){f=-1;break a}m=b+1|0;h=i[95315+(s*58|0)+h>>0]|0;o=h&255;if((o+-1|0)>>>0<8){b=m;s=o}else{I=m;break}}if(!(h<<24>>24)){f=-1;break}m=(u|0)>-1;do if(h<<24>>24==19)if(m){f=-1;break a}else K=52;else{if(m){k[e+(u<<2)>>2]=o;G=d+(u<<3)|0;H=k[G+4>>2]|0;K=ba;k[K>>2]=k[G>>2];k[K+4>>2]=H;K=52;break}if(!M){f=0;break a}Id(ba,o,c)}while(0);if((K|0)==52?(K=0,!M):0){h=w;y=I;continue}u=i[b>>0]|0;u=(s|0)!=0&(u&15|0)==3?u&-33:u;m=v&-65537;H=(v&8192|0)==0?v:m;f:do switch(u|0){case 110:switch(s|0){case 0:{k[k[ba>>2]>>2]=f;h=w;y=I;continue a}case 1:{k[k[ba>>2]>>2]=f;h=w;y=I;continue a}case 2:{h=k[ba>>2]|0;k[h>>2]=f;k[h+4>>2]=((f|0)<0)<<31>>31;h=w;y=I;continue a}case 3:{j[k[ba>>2]>>1]=f;h=w;y=I;continue a}case 4:{i[k[ba>>2]>>0]=f;h=w;y=I;continue a}case 6:{k[k[ba>>2]>>2]=f;h=w;y=I;continue a}case 7:{h=k[ba>>2]|0;k[h>>2]=f;k[h+4>>2]=((f|0)<0)<<31>>31;h=w;y=I;continue a}default:{h=w;y=I;continue a}}case 112:{s=H|8;q=q>>>0>8?q:8;u=120;K=64;break}case 88:case 120:{s=H;K=64;break}case 111:{m=ba;h=k[m>>2]|0;m=k[m+4>>2]|0;if((h|0)==0&(m|0)==0)b=N;else{b=N;do{b=b+-1|0;i[b>>0]=h&7|48;h=ni(h|0,m|0,3)|0;m=L}while(!((h|0)==0&(m|0)==0))}if(!(H&8)){h=H;s=0;o=95795;K=77}else{s=V-b|0;h=H;q=(q|0)>(s|0)?q:s+1|0;s=0;o=95795;K=77}break}case 105:case 100:{h=ba;b=k[h>>2]|0;h=k[h+4>>2]|0;if((h|0)<0){b=pi(0,0,b|0,h|0)|0;h=L;m=ba;k[m>>2]=b;k[m+4>>2]=h;m=1;o=95795;K=76;break f}if(!(H&2048)){o=H&1;m=o;o=(o|0)==0?95795:95797;K=76}else{m=1;o=95796;K=76}break}case 117:{h=ba;b=k[h>>2]|0;h=k[h+4>>2]|0;m=0;o=95795;K=76;break}case 99:{i[W>>0]=k[ba>>2];b=W;u=1;w=0;v=95795;h=N;break}case 109:{h=Ai()|0;h=$g(k[h>>2]|0)|0;K=82;break}case 115:{h=k[ba>>2]|0;h=h|0?h:95805;K=82;break}case 67:{k[ga>>2]=k[ba>>2];k[X>>2]=0;k[ba>>2]=ga;b=ga;q=-1;K=86;break}case 83:{b=k[ba>>2]|0;if(!q){hg(a,32,J,0,H);b=0;K=97}else K=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{n=+p[ba>>3];k[ea>>2]=0;p[t>>3]=n;if((k[t+4>>2]|0)>=0)if(!(H&2048)){G=H&1;F=G;G=(G|0)==0?95813:95818}else{F=1;G=95815}else{n=-n;F=1;G=95812}p[t>>3]=n;E=k[t+4>>2]&2146435072;do if(E>>>0<2146435072|(E|0)==2146435072&0<0){x=+Hj(n,ea)*2.0;h=x!=0.0;if(h)k[ea>>2]=(k[ea>>2]|0)+-1;C=u|32;if((C|0)==97){v=u&32;y=(v|0)==0?G:G+9|0;w=F|2;b=12-q|0;do if(!(q>>>0>11|(b|0)==0)){n=8.0;do{b=b+-1|0;n=n*16.0}while((b|0)!=0);if((i[y>>0]|0)==45){n=-(n+(-x-n));break}else{n=x+n-n;break}}else n=x;while(0);h=k[ea>>2]|0;b=(h|0)<0?0-h|0:h;b=Sg(b,((b|0)<0)<<31>>31,_)|0;if((b|0)==(_|0)){i[$>>0]=48;b=$}i[b+-1>>0]=(h>>31&2)+43;s=b+-2|0;i[s>>0]=u+15;o=(q|0)<1;m=(H&8|0)==0;h=da;while(1){G=~~n;b=h+1|0;i[h>>0]=l[95779+G>>0]|v;n=(n-+(G|0))*16.0;do if((b-Y|0)==1){if(m&(o&n==0.0))break;i[b>>0]=46;b=h+2|0}while(0);if(!(n!=0.0))break;else h=b}m=s;q=(q|0)!=0&(P+b|0)<(q|0)?Q+q-m|0:O-m+b|0;o=q+w|0;hg(a,32,J,o,H);if(!(k[a>>2]&32))sf(y,w,a)|0;hg(a,48,J,o,H^65536);h=b-Y|0;if(!(k[a>>2]&32))sf(da,h,a)|0;b=aa-m|0;hg(a,48,q-(h+b)|0,0,0);if(!(k[a>>2]&32))sf(s,b,a)|0;hg(a,32,J,o,H^8192);b=(o|0)<(J|0)?J:o;break}b=(q|0)<0?6:q;if(h){h=(k[ea>>2]|0)+-28|0;k[ea>>2]=h;n=x*268435456.0}else{n=x;h=k[ea>>2]|0}E=(h|0)<0?ca:R;D=E;h=E;do{B=~~n>>>0;k[h>>2]=B;h=h+4|0;n=(n-+(B>>>0))*1.0e9}while(n!=0.0);m=h;h=k[ea>>2]|0;if((h|0)>0){q=E;while(1){s=(h|0)>29?29:h;o=m+-4|0;do if(o>>>0<q>>>0)o=q;else{h=0;do{B=mi(k[o>>2]|0,0,s|0)|0;B=zi(B|0,L|0,h|0,0)|0;h=L;A=Qh(B|0,h|0,1e9,0)|0;k[o>>2]=A;h=Ti(B|0,h|0,1e9,0)|0;o=o+-4|0}while(o>>>0>=q>>>0);if(!h){o=q;break}o=q+-4|0;k[o>>2]=h}while(0);while(1){if(m>>>0<=o>>>0)break;h=m+-4|0;if(!(k[h>>2]|0))m=h;else break}h=(k[ea>>2]|0)-s|0;k[ea>>2]=h;if((h|0)>0)q=o;else break}}else o=E;if((h|0)<0){y=((b+25|0)/9|0)+1|0;z=(C|0)==102;v=o;while(1){w=0-h|0;w=(w|0)>9?9:w;do if(v>>>0<m>>>0){h=(1<<w)+-1|0;q=1e9>>>w;o=0;s=v;do{B=k[s>>2]|0;k[s>>2]=(B>>>w)+o;o=ha(B&h,q)|0;s=s+4|0}while(s>>>0<m>>>0);h=(k[v>>2]|0)==0?v+4|0:v;if(!o){o=h;break}k[m>>2]=o;o=h;m=m+4|0}else o=(k[v>>2]|0)==0?v+4|0:v;while(0);h=z?E:o;m=(m-h>>2|0)>(y|0)?h+(y<<2)|0:m;h=(k[ea>>2]|0)+w|0;k[ea>>2]=h;if((h|0)>=0){z=o;break}else v=o}}else z=o;do if(z>>>0<m>>>0){h=(D-z>>2)*9|0;q=k[z>>2]|0;if(q>>>0<10)break;else o=10;do{o=o*10|0;h=h+1|0}while(q>>>0>=o>>>0)}else h=0;while(0);A=(C|0)==103;B=(b|0)!=0;o=b-((C|0)!=102?h:0)+((B&A)<<31>>31)|0;if((o|0)<(((m-D>>2)*9|0)+-9|0)){s=o+9216|0;o=E+4+(((s|0)/9|0)+-1024<<2)|0;s=((s|0)%9|0)+1|0;if((s|0)<9){q=10;do{q=q*10|0;s=s+1|0}while((s|0)!=9)}else q=10;w=k[o>>2]|0;y=(w>>>0)%(q>>>0)|0;s=(o+4|0)==(m|0);do if(s&(y|0)==0)q=z;else{x=(((w>>>0)/(q>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(q|0)/2|0;if(y>>>0<v>>>0)n=.5;else n=s&(y|0)==(v|0)?1.0:1.5;do if(F){if((i[G>>0]|0)!=45)break;x=-x;n=-n}while(0);s=w-y|0;k[o>>2]=s;if(!(x+n!=x)){q=z;break}C=s+q|0;k[o>>2]=C;if(C>>>0>999999999){h=z;while(1){q=o+-4|0;k[o>>2]=0;if(q>>>0<h>>>0){h=h+-4|0;k[h>>2]=0}C=(k[q>>2]|0)+1|0;k[q>>2]=C;if(C>>>0>999999999)o=q;else{v=h;o=q;break}}}else v=z;h=(D-v>>2)*9|0;s=k[v>>2]|0;if(s>>>0<10){q=v;break}else q=10;do{q=q*10|0;h=h+1|0}while(s>>>0>=q>>>0);q=v}while(0);C=o+4|0;z=q;m=m>>>0>C>>>0?C:m}w=0-h|0;while(1){if(m>>>0<=z>>>0){y=0;C=m;break}o=m+-4|0;if(!(k[o>>2]|0))m=o;else{y=1;C=m;break}}do if(A){b=(B&1^1)+b|0;if((b|0)>(h|0)&(h|0)>-5){u=u+-1|0;b=b+-1-h|0}else{u=u+-2|0;b=b+-1|0}m=H&8;if(m|0)break;do if(y){m=k[C+-4>>2]|0;if(!m){o=9;break}if(!((m>>>0)%10|0)){q=10;o=0}else{o=0;break}do{q=q*10|0;o=o+1|0}while(!((m>>>0)%(q>>>0)|0|0))}else o=9;while(0);m=((C-D>>2)*9|0)+-9|0;if((u|32|0)==102){m=m-o|0;m=(m|0)<0?0:m;b=(b|0)<(m|0)?b:m;m=0;break}else{m=m+h-o|0;m=(m|0)<0?0:m;b=(b|0)<(m|0)?b:m;m=0;break}}else m=H&8;while(0);v=b|m;q=(v|0)!=0&1;s=(u|32|0)==102;if(s){h=(h|0)>0?h:0;u=0}else{o=(h|0)<0?w:h;o=Sg(o,((o|0)<0)<<31>>31,_)|0;if((aa-o|0)<2)do{o=o+-1|0;i[o>>0]=48}while((aa-o|0)<2);i[o+-1>>0]=(h>>31&2)+43;D=o+-2|0;i[D>>0]=u;h=aa-D|0;u=D}w=F+1+b+q+h|0;hg(a,32,J,w,H);if(!(k[a>>2]&32))sf(G,F,a)|0;hg(a,48,J,w,H^65536);do if(s){o=z>>>0>E>>>0?E:z;h=o;do{m=Sg(k[h>>2]|0,0,S)|0;do if((h|0)==(o|0)){if((m|0)!=(S|0))break;i[U>>0]=48;m=U}else{if(m>>>0<=da>>>0)break;eh(da|0,48,m-Y|0)|0;do m=m+-1|0;while(m>>>0>da>>>0)}while(0);if(!(k[a>>2]&32))sf(m,T-m|0,a)|0;h=h+4|0}while(h>>>0<=E>>>0);do if(v|0){if(k[a>>2]&32|0)break;sf(95843,1,a)|0}while(0);if((b|0)>0&h>>>0<C>>>0){m=h;while(1){h=Sg(k[m>>2]|0,0,S)|0;if(h>>>0>da>>>0){eh(da|0,48,h-Y|0)|0;do h=h+-1|0;while(h>>>0>da>>>0)}if(!(k[a>>2]&32))sf(h,(b|0)>9?9:b,a)|0;m=m+4|0;h=b+-9|0;if(!((b|0)>9&m>>>0<C>>>0)){b=h;break}else b=h}}hg(a,48,b+9|0,9,0)}else{s=y?C:z+4|0;if((b|0)>-1){q=(m|0)==0;o=z;do{h=Sg(k[o>>2]|0,0,S)|0;if((h|0)==(S|0)){i[U>>0]=48;h=U}do if((o|0)==(z|0)){m=h+1|0;if(!(k[a>>2]&32))sf(h,1,a)|0;if(q&(b|0)<1){h=m;break}if(k[a>>2]&32|0){h=m;break}sf(95843,1,a)|0;h=m}else{if(h>>>0<=da>>>0)break;eh(da|0,48,h+Z|0)|0;do h=h+-1|0;while(h>>>0>da>>>0)}while(0);m=T-h|0;if(!(k[a>>2]&32))sf(h,(b|0)>(m|0)?m:b,a)|0;b=b-m|0;o=o+4|0}while(o>>>0<s>>>0&(b|0)>-1)}hg(a,48,b+18|0,18,0);if(k[a>>2]&32|0)break;sf(u,aa-u|0,a)|0}while(0);hg(a,32,J,w,H^8192);b=(w|0)<(J|0)?J:w}else{s=(u&32|0)!=0;q=n!=n|0.0!=0.0;h=q?0:F;o=h+3|0;hg(a,32,J,o,m);b=k[a>>2]|0;if(!(b&32)){sf(G,h,a)|0;b=k[a>>2]|0}if(!(b&32))sf(q?(s?96124:95839):s?95831:95835,3,a)|0;hg(a,32,J,o,H^8192);b=(o|0)<(J|0)?J:o}while(0);h=b;y=I;continue a}default:{b=y;m=H;u=q;w=0;v=95795;h=N}}while(0);g:do if((K|0)==64){m=ba;h=k[m>>2]|0;m=k[m+4>>2]|0;o=u&32;if(!((h|0)==0&(m|0)==0)){b=N;do{b=b+-1|0;i[b>>0]=l[95779+(h&15)>>0]|o;h=ni(h|0,m|0,4)|0;m=L}while(!((h|0)==0&(m|0)==0));K=ba;if((s&8|0)==0|(k[K>>2]|0)==0&(k[K+4>>2]|0)==0){h=s;s=0;o=95795;K=77}else{h=s;s=2;o=95795+(u>>4)|0;K=77}}else{b=N;h=s;s=0;o=95795;K=77}}else if((K|0)==76){b=Sg(b,h,N)|0;h=H;s=m;K=77}else if((K|0)==82){K=0;H=af(h,0,q)|0;G=(H|0)==0;b=h;u=G?q:H-h|0;w=0;v=95795;h=G?h+q|0:H}else if((K|0)==86){K=0;m=0;h=0;s=b;while(1){o=k[s>>2]|0;if(!o)break;h=Qi(fa,o)|0;if((h|0)<0|h>>>0>(q-m|0)>>>0)break;m=h+m|0;if(q>>>0>m>>>0)s=s+4|0;else break}if((h|0)<0){f=-1;break a}hg(a,32,J,m,H);if(!m){b=0;K=97}else{o=0;while(1){h=k[b>>2]|0;if(!h){b=m;K=97;break g}h=Qi(fa,h)|0;o=h+o|0;if((o|0)>(m|0)){b=m;K=97;break g}if(!(k[a>>2]&32))sf(fa,h,a)|0;if(o>>>0>=m>>>0){b=m;K=97;break}else b=b+4|0}}}while(0);if((K|0)==97){K=0;hg(a,32,J,b,H^8192);h=(J|0)>(b|0)?J:b;y=I;continue}if((K|0)==77){K=0;m=(q|0)>-1?h&-65537:h;h=ba;h=(k[h>>2]|0)!=0|(k[h+4>>2]|0)!=0;if((q|0)!=0|h){u=(h&1^1)+(V-b)|0;u=(q|0)>(u|0)?q:u;w=s;v=o;h=N}else{b=N;u=0;w=s;v=o;h=N}}s=h-b|0;o=(u|0)<(s|0)?s:u;q=w+o|0;h=(J|0)<(q|0)?q:J;hg(a,32,h,q,m);if(!(k[a>>2]&32))sf(v,w,a)|0;hg(a,48,h,q,m^65536);hg(a,48,o,s,0);if(!(k[a>>2]&32))sf(b,s,a)|0;hg(a,32,h,q,m^8192);y=I}h:do if((K|0)==244)if(!a)if(g){f=1;while(1){g=k[e+(f<<2)>>2]|0;if(!g)break;Id(d+(f<<3)|0,g,c);f=f+1|0;if((f|0)>=10){f=1;break h}}if((f|0)<10)while(1){if(k[e+(f<<2)>>2]|0){f=-1;break h}f=f+1|0;if((f|0)>=10){f=1;break}}else f=1}else f=0;while(0);r=ia;return f|0}function ob(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=r;r=r+64|0;B=D+48|0;A=D+32|0;v=D+16|0;u=D;C=k[a+348>>2]|0;a:do if(!(k[a+180>>2]|0)){k[B>>2]=0;k[B+4>>2]=0;k[B+8>>2]=0;k[B+12>>2]=0;k[A>>2]=0;k[A+4>>2]=0;k[A+8>>2]=0;k[A+12>>2]=0;k[v>>2]=0;k[v+4>>2]=0;k[v+8>>2]=0;k[v+12>>2]=0;k[u>>2]=0;k[u+4>>2]=0;k[u+8>>2]=0;k[u+12>>2]=0;do if((k[(k[a+332>>2]|0)+4152>>2]|0)==720002228){b=a+244|0;g=b;b=k[b>>2]|0}else{g=a+244|0;if((k[g>>2]|0)>0){h=a+316|0;j=a+324|0;m=a+320|0;n=v+4|0;o=v+8|0;p=v+12|0;q=u+4|0;s=u+8|0;t=u+12|0;w=0;c=2;do{e=k[a+248+(w<<2)>>2]|0;b=k[e+20>>2]|0;e=k[e+24>>2]|0;d=k[a+88+(b<<2)>>2]|0;f=k[a+104+(e<<2)>>2]|0;if((k[h>>2]|0)==0?(k[j>>2]|0)==0:0){if(!d){E=k[a>>2]|0;k[E+20>>2]=50;k[E+24>>2]=b;$a[k[E>>2]&63](a)}if((k[d+276>>2]|0)==0?((d|0)==(k[p>>2]|0)|0)==(0-(((d|0)==(k[o>>2]|0)&1)+(((d|0)==(k[v>>2]|0)&1)+((d|0)==(k[n>>2]|0)&1)))|0):0){k[v+(w<<2)>>2]=d;E=B+(w<<2)|0;x=(l[d+1>>0]|0)+(k[E>>2]|0)+(l[d+2>>0]|0)+(l[d+3>>0]|0)+(l[d+4>>0]|0)+(l[d+5>>0]|0)+(l[d+6>>0]|0)+(l[d+7>>0]|0)+(l[d+8>>0]|0)+(l[d+9>>0]|0)+(l[d+10>>0]|0)+(l[d+11>>0]|0)+(l[d+12>>0]|0)+(l[d+13>>0]|0)+(l[d+14>>0]|0)+(l[d+15>>0]|0)+(l[d+16>>0]|0)|0;k[E>>2]=x;c=c+17+x|0;x=52}}else x=52;if((x|0)==52){x=0;if(k[m>>2]|0){if(!f){E=k[a>>2]|0;k[E+20>>2]=50;k[E+24>>2]=e+16;$a[k[E>>2]&63](a)}if((k[f+276>>2]|0)==0?((f|0)==(k[t>>2]|0)|0)==(0-(((f|0)==(k[s>>2]|0)&1)+(((f|0)==(k[u>>2]|0)&1)+((f|0)==(k[q>>2]|0)&1)))|0):0){k[u+(w<<2)>>2]=f;e=A+(w<<2)|0;E=(l[f+1>>0]|0)+(k[e>>2]|0)+(l[f+2>>0]|0)+(l[f+3>>0]|0)+(l[f+4>>0]|0)+(l[f+5>>0]|0)+(l[f+6>>0]|0)+(l[f+7>>0]|0)+(l[f+8>>0]|0)+(l[f+9>>0]|0)+(l[f+10>>0]|0)+(l[f+11>>0]|0)+(l[f+12>>0]|0)+(l[f+13>>0]|0)+(l[f+14>>0]|0)+(l[f+15>>0]|0)+(l[f+16>>0]|0)|0;k[e>>2]=E;c=c+17+E|0}}}w=w+1|0;b=k[g>>2]|0}while((w|0)<(b|0));if((c|0)>65535)break}else c=2;p=a+24|0;b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=-1;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=-60;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=c>>>8;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=c;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}if((k[g>>2]|0)>0){h=a+316|0;j=a+324|0;m=a+320|0;o=0;do{f=k[a+248+(o<<2)>>2]|0;b=k[f+20>>2]|0;f=k[f+24>>2]|0;e=k[a+88+(b<<2)>>2]|0;n=k[a+104+(f<<2)>>2]|0;f=f+16|0;if(((k[h>>2]|0)==0?(k[j>>2]|0)==0:0)?(y=e+276|0,(k[y>>2]|0)==0):0){c=k[p>>2]|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=b;x=c+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;if((E|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=24;$a[k[c>>2]&63](a);c=1}else c=1;do{E=i[e+c>>0]|0;b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=E;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;do if(!E){if(cb[k[b+12>>2]&15](a)|0)break;E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}while(0);c=c+1|0}while((c|0)!=17);b=k[B+(o<<2)>>2]|0;if((b|0)>0){d=0;do{E=i[e+17+d>>0]|0;c=k[p>>2]|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=E;x=c+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;do if(!E){if(cb[k[c+12>>2]&15](a)|0)break;E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}while(0);d=d+1|0}while((d|0)!=(b|0))}k[y>>2]=1}if(k[m>>2]|0?(z=n+276|0,(k[z>>2]|0)==0):0){b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=f;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){c=k[a>>2]|0;k[c+20>>2]=24;$a[k[c>>2]&63](a);c=1}else c=1;do{E=i[n+c>>0]|0;b=k[p>>2]|0;x=k[b>>2]|0;k[b>>2]=x+1;i[x>>0]=E;x=b+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;do if(!E){if(cb[k[b+12>>2]&15](a)|0)break;E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}while(0);c=c+1|0}while((c|0)!=17);b=k[A+(o<<2)>>2]|0;if((b|0)>0){d=0;do{E=i[n+17+d>>0]|0;c=k[p>>2]|0;x=k[c>>2]|0;k[c>>2]=x+1;i[x>>0]=E;x=c+4|0;E=(k[x>>2]|0)+-1|0;k[x>>2]=E;do if(!E){if(cb[k[c+12>>2]&15](a)|0)break;E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}while(0);d=d+1|0}while((d|0)!=(b|0))}k[z>>2]=1}o=o+1|0}while((o|0)<(k[g>>2]|0))}break a}while(0);if((b|0)>0){b=a+316|0;c=a+324|0;d=a+320|0;f=0;do{e=k[a+248+(f<<2)>>2]|0;if((k[b>>2]|0)==0?(k[c>>2]|0)==0:0)Pc(a,k[e+20>>2]|0,0);if(k[d>>2]|0)Pc(a,k[e+24>>2]|0,1);f=f+1|0}while((f|0)<(k[g>>2]|0))}}else{b=A;c=b+16|0;do{i[b>>0]=0;b=b+1|0}while((b|0)<(c|0));b=B;c=b+16|0;do{i[b>>0]=0;b=b+1|0}while((b|0)<(c|0));d=k[a+244>>2]|0;b:do if((d|0)>0){b=(k[a+320>>2]|0)==0;if(k[a+316>>2]|0){if(b)break;else b=0;while(1){i[A+(k[(k[a+248+(b<<2)>>2]|0)+24>>2]|0)>>0]=1;b=b+1|0;if((b|0)==(d|0))break b}}c=(k[a+324>>2]|0)==0;if(b){if(c)b=0;else break;while(1){i[B+(k[(k[a+248+(b<<2)>>2]|0)+20>>2]|0)>>0]=1;b=b+1|0;if((b|0)==(d|0))break b}}if(c){b=0;do{E=k[a+248+(b<<2)>>2]|0;i[B+(k[E+20>>2]|0)>>0]=1;i[A+(k[E+24>>2]|0)>>0]=1;b=b+1|0}while((b|0)!=(d|0))}else{b=0;do{i[A+(k[(k[a+248+(b<<2)>>2]|0)+24>>2]|0)>>0]=1;b=b+1|0}while((b|0)!=(d|0))}}while(0);c=(i[A>>0]|0)+(i[B>>0]|0)+(i[B+1>>0]|0)+(i[A+1>>0]|0)+(i[B+2>>0]|0)+(i[A+2>>0]|0)+(i[B+3>>0]|0)+(i[A+3>>0]|0)+(i[B+4>>0]|0)+(i[A+4>>0]|0)+(i[B+5>>0]|0)+(i[A+5>>0]|0)+(i[B+6>>0]|0)+(i[A+6>>0]|0)+(i[B+7>>0]|0)+(i[A+7>>0]|0)+(i[B+8>>0]|0)+(i[A+8>>0]|0)+(i[B+9>>0]|0)+(i[A+9>>0]|0)+(i[B+10>>0]|0)+(i[A+10>>0]|0)+(i[B+11>>0]|0)+(i[A+11>>0]|0)+(i[B+12>>0]|0)+(i[A+12>>0]|0)+(i[B+13>>0]|0)+(i[A+13>>0]|0)+(i[B+14>>0]|0)+(i[A+14>>0]|0)+(i[B+15>>0]|0)+(i[A+15>>0]|0)|0;if(c|0){d=a+24|0;b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=-1;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=-52;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}c=(c<<1)+2|0;b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=c>>>8;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=c;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}c=0;do{if(i[B+c>>0]|0){b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=c;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[d>>2]|0;E=(l[a+136+c>>0]<<4)+(l[a+120+c>>0]|0)&255;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=E;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}}if(i[A+c>>0]|0){b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=c+16;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}E=i[a+152+c>>0]|0;b=k[d>>2]|0;z=k[b>>2]|0;k[b>>2]=z+1;i[z>>0]=E;z=b+4|0;E=(k[z>>2]|0)+-1|0;k[z>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}}c=c+1|0}while((c|0)!=16)}}while(0);e=a+200|0;d=C+28|0;m=a+24|0;if((k[e>>2]|0)!=(k[d>>2]|0)){b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=-1;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=-35;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=0;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=4;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}c=k[e>>2]|0;b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=c>>>8;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=c;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}k[d>>2]=k[e>>2]}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=-1;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=-38;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}j=a+244|0;c=(k[j>>2]<<1)+6|0;b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=c>>>8;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=c;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;E=k[j>>2]&255;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=E;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}if((k[j>>2]|0)>0){b=a+316|0;f=a+324|0;g=a+320|0;h=0;do{d=k[a+248+(h<<2)>>2]|0;c=k[m>>2]|0;E=k[d>>2]&255;C=k[c>>2]|0;k[c>>2]=C+1;i[C>>0]=E;C=c+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}if((k[b>>2]|0)==0?(k[f>>2]|0)==0:0)e=k[d+20>>2]|0;else e=0;if(!(k[g>>2]|0))c=0;else c=k[d+24>>2]|0;d=k[m>>2]|0;C=k[d>>2]|0;k[d>>2]=C+1;i[C>>0]=c+(e<<4);C=d+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}h=h+1|0}while((h|0)<(k[j>>2]|0))}else b=a+316|0;c=k[m>>2]|0;E=k[b>>2]&255;C=k[c>>2]|0;k[c>>2]=C+1;i[C>>0]=E;C=c+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;E=k[a+320>>2]&255;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=E;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if((E|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a)}b=k[m>>2]|0;E=(k[a+324>>2]<<4)+(k[a+328>>2]|0)&255;C=k[b>>2]|0;k[b>>2]=C+1;i[C>>0]=E;C=b+4|0;E=(k[C>>2]|0)+-1|0;k[C>>2]=E;if(E|0){r=D;return}if(cb[k[b+12>>2]&15](a)|0){r=D;return}E=k[a>>2]|0;k[E+20>>2]=24;$a[k[E>>2]&63](a);r=D;return}function pb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;switch(k[a+44>>2]|0){case 6:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;u=k[a+452>>2]|0;v=k[a+324>>2]|0;w=k[u+16>>2]|0;x=k[u+20>>2]|0;t=k[u+24>>2]|0;u=k[u+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q*6|0;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){y=l[n>>0]|0;A=l[o>>0]|0;B=k[w+(A<<2)>>2]|0;A=(k[t+(A<<2)>>2]|0)+(k[u+(y<<2)>>2]|0)>>16;y=k[x+(y<<2)>>2]|0;z=l[j>>0]|0;i[e>>0]=i[v+(z+B)>>0]|0;i[e+1>>0]=i[v+(z+A)>>0]|0;i[e+2>>0]=i[v+(z+y)>>0]|0;z=l[j+1>>0]|0;i[e+3>>0]=i[v+(z+B)>>0]|0;i[e+4>>0]=i[v+(z+A)>>0]|0;i[e+5>>0]=i[v+(z+y)>>0]|0;z=l[m>>0]|0;i[c>>0]=i[v+(z+B)>>0]|0;i[c+1>>0]=i[v+(z+A)>>0]|0;i[c+2>>0]=i[v+(z+y)>>0]|0;z=l[m+1>>0]|0;i[c+3>>0]=i[v+(z+B)>>0]|0;i[c+4>>0]=i[v+(z+A)>>0]|0;i[c+5>>0]=i[v+(z+y)>>0]|0;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+6|0;c=c+6|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[w+(z<<2)>>2]|0;z=(k[t+(z<<2)>>2]|0)+(k[u+(B<<2)>>2]|0)>>16;B=k[x+(B<<2)>>2]|0;A=l[h>>0]|0;i[e>>0]=i[v+(A+y)>>0]|0;i[e+1>>0]=i[v+(A+z)>>0]|0;i[e+2>>0]=i[v+(A+B)>>0]|0;A=l[g>>0]|0;i[d>>0]=i[v+(A+y)>>0]|0;i[d+1>>0]=i[v+(A+z)>>0]|0;i[d+2>>0]=i[v+(A+B)>>0]|0;return}case 12:case 7:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;x=k[a+452>>2]|0;t=k[a+324>>2]|0;u=k[x+16>>2]|0;v=k[x+20>>2]|0;w=k[x+24>>2]|0;x=k[x+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q<<3;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){B=l[n>>0]|0;z=l[o>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[j>>0]|0;i[e>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e+2>>0]=i[t+(A+B)>>0]|0;i[e+3>>0]=-1;A=l[j+1>>0]|0;i[e+4>>0]=i[t+(A+y)>>0]|0;i[e+5>>0]=i[t+(A+z)>>0]|0;i[e+6>>0]=i[t+(A+B)>>0]|0;i[e+7>>0]=-1;A=l[m>>0]|0;i[c>>0]=i[t+(A+y)>>0]|0;i[c+1>>0]=i[t+(A+z)>>0]|0;i[c+2>>0]=i[t+(A+B)>>0]|0;i[c+3>>0]=-1;A=l[m+1>>0]|0;i[c+4>>0]=i[t+(A+y)>>0]|0;i[c+5>>0]=i[t+(A+z)>>0]|0;i[c+6>>0]=i[t+(A+B)>>0]|0;i[c+7>>0]=-1;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+8|0;c=c+8|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[h>>0]|0;i[e>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e+2>>0]=i[t+(A+B)>>0]|0;i[e+3>>0]=-1;A=l[g>>0]|0;i[d>>0]=i[t+(A+y)>>0]|0;i[d+1>>0]=i[t+(A+z)>>0]|0;i[d+2>>0]=i[t+(A+B)>>0]|0;i[d+3>>0]=-1;return}case 8:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;x=k[a+452>>2]|0;t=k[a+324>>2]|0;u=k[x+16>>2]|0;v=k[x+20>>2]|0;w=k[x+24>>2]|0;x=k[x+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q*6|0;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){B=l[n>>0]|0;z=l[o>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[j>>0]|0;i[e+2>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e>>0]=i[t+(A+B)>>0]|0;A=l[j+1>>0]|0;i[e+5>>0]=i[t+(A+y)>>0]|0;i[e+4>>0]=i[t+(A+z)>>0]|0;i[e+3>>0]=i[t+(A+B)>>0]|0;A=l[m>>0]|0;i[c+2>>0]=i[t+(A+y)>>0]|0;i[c+1>>0]=i[t+(A+z)>>0]|0;i[c>>0]=i[t+(A+B)>>0]|0;A=l[m+1>>0]|0;i[c+5>>0]=i[t+(A+y)>>0]|0;i[c+4>>0]=i[t+(A+z)>>0]|0;i[c+3>>0]=i[t+(A+B)>>0]|0;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+6|0;c=c+6|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[h>>0]|0;i[e+2>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e>>0]=i[t+(A+B)>>0]|0;A=l[g>>0]|0;i[d+2>>0]=i[t+(A+y)>>0]|0;i[d+1>>0]=i[t+(A+z)>>0]|0;i[d>>0]=i[t+(A+B)>>0]|0;return}case 13:case 9:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;x=k[a+452>>2]|0;t=k[a+324>>2]|0;u=k[x+16>>2]|0;v=k[x+20>>2]|0;w=k[x+24>>2]|0;x=k[x+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q<<3;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){B=l[n>>0]|0;z=l[o>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[j>>0]|0;i[e+2>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e>>0]=i[t+(A+B)>>0]|0;i[e+3>>0]=-1;A=l[j+1>>0]|0;i[e+6>>0]=i[t+(A+y)>>0]|0;i[e+5>>0]=i[t+(A+z)>>0]|0;i[e+4>>0]=i[t+(A+B)>>0]|0;i[e+7>>0]=-1;A=l[m>>0]|0;i[c+2>>0]=i[t+(A+y)>>0]|0;i[c+1>>0]=i[t+(A+z)>>0]|0;i[c>>0]=i[t+(A+B)>>0]|0;i[c+3>>0]=-1;A=l[m+1>>0]|0;i[c+6>>0]=i[t+(A+y)>>0]|0;i[c+5>>0]=i[t+(A+z)>>0]|0;i[c+4>>0]=i[t+(A+B)>>0]|0;i[c+7>>0]=-1;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+8|0;c=c+8|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[h>>0]|0;i[e+2>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e>>0]=i[t+(A+B)>>0]|0;i[e+3>>0]=-1;A=l[g>>0]|0;i[d+2>>0]=i[t+(A+y)>>0]|0;i[d+1>>0]=i[t+(A+z)>>0]|0;i[d>>0]=i[t+(A+B)>>0]|0;i[d+3>>0]=-1;return}case 14:case 10:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;x=k[a+452>>2]|0;t=k[a+324>>2]|0;u=k[x+16>>2]|0;v=k[x+20>>2]|0;w=k[x+24>>2]|0;x=k[x+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q<<3;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){B=l[n>>0]|0;z=l[o>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[j>>0]|0;i[e+3>>0]=i[t+(A+y)>>0]|0;i[e+2>>0]=i[t+(A+z)>>0]|0;i[e+1>>0]=i[t+(A+B)>>0]|0;i[e>>0]=-1;A=l[j+1>>0]|0;i[e+7>>0]=i[t+(A+y)>>0]|0;i[e+6>>0]=i[t+(A+z)>>0]|0;i[e+5>>0]=i[t+(A+B)>>0]|0;i[e+4>>0]=-1;A=l[m>>0]|0;i[c+3>>0]=i[t+(A+y)>>0]|0;i[c+2>>0]=i[t+(A+z)>>0]|0;i[c+1>>0]=i[t+(A+B)>>0]|0;i[c>>0]=-1;A=l[m+1>>0]|0;i[c+7>>0]=i[t+(A+y)>>0]|0;i[c+6>>0]=i[t+(A+z)>>0]|0;i[c+5>>0]=i[t+(A+B)>>0]|0;i[c+4>>0]=-1;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+8|0;c=c+8|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[h>>0]|0;i[e+3>>0]=i[t+(A+y)>>0]|0;i[e+2>>0]=i[t+(A+z)>>0]|0;i[e+1>>0]=i[t+(A+B)>>0]|0;i[e>>0]=-1;A=l[g>>0]|0;i[d+3>>0]=i[t+(A+y)>>0]|0;i[d+2>>0]=i[t+(A+z)>>0]|0;i[d+1>>0]=i[t+(A+B)>>0]|0;i[d>>0]=-1;return}case 15:case 11:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;x=k[a+452>>2]|0;t=k[a+324>>2]|0;u=k[x+16>>2]|0;v=k[x+20>>2]|0;w=k[x+24>>2]|0;x=k[x+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q<<3;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){B=l[n>>0]|0;z=l[o>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[j>>0]|0;i[e+1>>0]=i[t+(A+y)>>0]|0;i[e+2>>0]=i[t+(A+z)>>0]|0;i[e+3>>0]=i[t+(A+B)>>0]|0;i[e>>0]=-1;A=l[j+1>>0]|0;i[e+5>>0]=i[t+(A+y)>>0]|0;i[e+6>>0]=i[t+(A+z)>>0]|0;i[e+7>>0]=i[t+(A+B)>>0]|0;i[e+4>>0]=-1;A=l[m>>0]|0;i[c+1>>0]=i[t+(A+y)>>0]|0;i[c+2>>0]=i[t+(A+z)>>0]|0;i[c+3>>0]=i[t+(A+B)>>0]|0;i[c>>0]=-1;A=l[m+1>>0]|0;i[c+5>>0]=i[t+(A+y)>>0]|0;i[c+6>>0]=i[t+(A+z)>>0]|0;i[c+7>>0]=i[t+(A+B)>>0]|0;i[c+4>>0]=-1;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+8|0;c=c+8|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[h>>0]|0;i[e+1>>0]=i[t+(A+y)>>0]|0;i[e+2>>0]=i[t+(A+z)>>0]|0;i[e+3>>0]=i[t+(A+B)>>0]|0;i[e>>0]=-1;A=l[g>>0]|0;i[d+1>>0]=i[t+(A+y)>>0]|0;i[d+2>>0]=i[t+(A+z)>>0]|0;i[d+3>>0]=i[t+(A+B)>>0]|0;i[d>>0]=-1;return}default:{f=k[b>>2]|0;e=k[d>>2]|0;d=k[d+4>>2]|0;x=k[a+452>>2]|0;t=k[a+324>>2]|0;u=k[x+16>>2]|0;v=k[x+20>>2]|0;w=k[x+24>>2]|0;x=k[x+28>>2]|0;g=c<<1;h=k[f+(g<<2)>>2]|0;g=k[f+((g|1)<<2)>>2]|0;f=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=a+112|0;c=k[p>>2]|0;q=c>>>1;if(q){s=q*6|0;r=e+s|0;a=q;j=h;m=g;n=f;o=b;c=d;while(1){B=l[n>>0]|0;z=l[o>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[j>>0]|0;i[e>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e+2>>0]=i[t+(A+B)>>0]|0;A=l[j+1>>0]|0;i[e+3>>0]=i[t+(A+y)>>0]|0;i[e+4>>0]=i[t+(A+z)>>0]|0;i[e+5>>0]=i[t+(A+B)>>0]|0;A=l[m>>0]|0;i[c>>0]=i[t+(A+y)>>0]|0;i[c+1>>0]=i[t+(A+z)>>0]|0;i[c+2>>0]=i[t+(A+B)>>0]|0;A=l[m+1>>0]|0;i[c+3>>0]=i[t+(A+y)>>0]|0;i[c+4>>0]=i[t+(A+z)>>0]|0;i[c+5>>0]=i[t+(A+B)>>0]|0;a=a+-1|0;if(!a)break;else{j=j+2|0;m=m+2|0;n=n+1|0;o=o+1|0;e=e+6|0;c=c+6|0}}e=q<<1;c=k[p>>2]|0;h=h+e|0;g=g+e|0;f=f+q|0;b=b+q|0;e=r;d=d+s|0}if(!(c&1))return;B=l[f>>0]|0;z=l[b>>0]|0;y=k[u+(z<<2)>>2]|0;z=(k[w+(z<<2)>>2]|0)+(k[x+(B<<2)>>2]|0)>>16;B=k[v+(B<<2)>>2]|0;A=l[h>>0]|0;i[e>>0]=i[t+(A+y)>>0]|0;i[e+1>>0]=i[t+(A+z)>>0]|0;i[e+2>>0]=i[t+(A+B)>>0]|0;A=l[g>>0]|0;i[d>>0]=i[t+(A+y)>>0]|0;i[d+1>>0]=i[t+(A+z)>>0]|0;i[d+2>>0]=i[t+(A+B)>>0]|0;return}}}function qb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,m=0.0,n=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0;P=r;r=r+304|0;G=P+16|0;I=P+8|0;H=P+33|0;J=P;y=P+32|0;if((k[a+76>>2]|0)>-1)O=Tj(a)|0;else O=0;d=i[b>>0]|0;a:do if(d<<24>>24){K=a+4|0;M=a+100|0;F=a+108|0;z=a+8|0;A=H+10|0;B=H+33|0;C=I+4|0;D=H+46|0;E=H+94|0;f=d;d=0;g=b;s=0;e=0;b=0;b:while(1){c:do if(!(xj(f&255)|0)){f=(i[g>>0]|0)==37;d:do if(f){n=g+1|0;h=i[n>>0]|0;e:do switch(h<<24>>24){case 37:break d;case 42:{x=0;h=g+2|0;break}default:{h=(h&255)+-48|0;if(h>>>0<10?(i[g+2>>0]|0)==36:0){k[G>>2]=k[c>>2];while(1){x=(k[G>>2]|0)+(4-1)&~(4-1);f=k[x>>2]|0;k[G>>2]=x+4;if(h>>>0>1)h=h+-1|0;else break}x=f;h=g+3|0;break e}h=(k[c>>2]|0)+(4-1)&~(4-1);x=k[h>>2]|0;k[c>>2]=h+4;h=n}}while(0);f=i[h>>0]|0;g=f&255;if((g+-48|0)>>>0<10){f=0;while(1){n=(f*10|0)+-48+g|0;h=h+1|0;f=i[h>>0]|0;g=f&255;if((g+-48|0)>>>0>=10)break;else f=n}}else n=0;if(f<<24>>24==109){h=h+1|0;q=i[h>>0]|0;f=(x|0)!=0&1;e=0;b=0}else{q=f;f=0}g=h+1|0;switch(q&255|0){case 104:{w=(i[g>>0]|0)==104;g=w?h+2|0:g;h=w?-2:-1;break}case 108:{w=(i[g>>0]|0)==108;g=w?h+2|0:g;h=w?3:1;break}case 106:{h=3;break}case 116:case 122:{h=1;break}case 76:{h=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{g=h;h=0;break}default:{N=154;break b}}q=l[g>>0]|0;t=(q&47|0)==3;q=t?q|32:q;t=t?1:h;switch(q|0){case 99:{w=s;v=(n|0)<1?1:n;break}case 91:{w=s;v=n;break}case 110:{if(!x){h=s;break c}switch(t|0){case -2:{i[x>>0]=s;h=s;break c}case -1:{j[x>>1]=s;h=s;break c}case 0:{k[x>>2]=s;h=s;break c}case 1:{k[x>>2]=s;h=s;break c}case 3:{h=x;k[h>>2]=s;k[h+4>>2]=((s|0)<0)<<31>>31;h=s;break c}default:{h=s;break c}}}default:{Kh(a,0);do{h=k[K>>2]|0;if(h>>>0<(k[M>>2]|0)>>>0){k[K>>2]=h+1;h=l[h>>0]|0}else h=Ff(a)|0}while((xj(h)|0)!=0);if(!(k[M>>2]|0))h=k[K>>2]|0;else{h=(k[K>>2]|0)+-1|0;k[K>>2]=h}w=(k[F>>2]|0)+s+h-(k[z>>2]|0)|0;v=n}}Kh(a,v);h=k[K>>2]|0;n=k[M>>2]|0;if(h>>>0<n>>>0)k[K>>2]=h+1;else{if((Ff(a)|0)<0){N=154;break b}n=k[M>>2]|0}if(n|0)k[K>>2]=(k[K>>2]|0)+-1;f:do switch(q|0){case 91:case 99:case 115:{u=(q|0)==99;g:do if((q|16|0)==115){eh(H|0,-1,257)|0;i[H>>0]=0;if((q|0)==115){i[B>>0]=0;i[A>>0]=0;i[A+1>>0]=0;i[A+2>>0]=0;i[A+3>>0]=0;i[A+4>>0]=0}}else{q=g+1|0;s=(i[q>>0]|0)==94;h=s&1;g=s?g+2|0:q;eh(H|0,s&1|0,257)|0;i[H>>0]=0;switch(i[g>>0]|0){case 45:{s=(h^1)&255;i[D>>0]=s;g=g+1|0;break}case 93:{s=(h^1)&255;i[E>>0]=s;g=g+1|0;break}default:s=(h^1)&255}while(1){h=i[g>>0]|0;h:do switch(h<<24>>24){case 0:{N=154;break b}case 93:break g;case 45:{q=g+1|0;h=i[q>>0]|0;switch(h<<24>>24){case 93:case 0:{h=45;break h}default:{}}g=i[g+-1>>0]|0;if((g&255)<(h&255)){g=g&255;do{g=g+1|0;i[H+g>>0]=s;h=i[q>>0]|0}while((g|0)<(h&255|0));g=q}else g=q;break}default:{}}while(0);i[H+((h&255)+1)>>0]=s;g=g+1|0}}while(0);q=u?v+1|0:31;s=(t|0)==1;t=(f|0)!=0;i:do if(s){if(t){b=kb(q<<2)|0;if(!b){e=0;N=154;break b}}else b=x;k[I>>2]=0;k[C>>2]=0;e=0;j:while(1){n=(b|0)==0;do{k:while(1){h=k[K>>2]|0;if(h>>>0<(k[M>>2]|0)>>>0){k[K>>2]=h+1;h=l[h>>0]|0}else h=Ff(a)|0;if(!(i[H+(h+1)>>0]|0))break j;i[y>>0]=h;switch(Ge(J,y,1,I)|0){case -1:{e=0;N=154;break b}case -2:break;default:break k}}if(!n){k[b+(e<<2)>>2]=k[J>>2];e=e+1|0}}while(!(t&(e|0)==(q|0)));e=q<<1|1;h=Ug(b,e<<2)|0;if(!h){e=0;N=154;break b}else{n=q;q=e;b=h;e=n}}if(!(Ui(I)|0)){e=0;N=154;break b}else{n=e;e=0}}else{if(t){e=kb(q)|0;if(!e){e=0;b=0;N=154;break b}else h=0;while(1){do{b=k[K>>2]|0;if(b>>>0<(k[M>>2]|0)>>>0){k[K>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if(!(i[H+(b+1)>>0]|0)){n=h;b=0;break i}i[e+h>>0]=b;h=h+1|0}while((h|0)!=(q|0));b=q<<1|1;h=Ug(e,b)|0;if(!h){b=0;N=154;break b}else{n=q;q=b;e=h;h=n}}}if(!x){e=n;while(1){b=k[K>>2]|0;if(b>>>0<e>>>0){k[K>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if(!(i[H+(b+1)>>0]|0)){n=0;e=0;b=0;break i}e=k[M>>2]|0}}else{e=0;while(1){b=k[K>>2]|0;if(b>>>0<n>>>0){k[K>>2]=b+1;b=l[b>>0]|0}else b=Ff(a)|0;if(!(i[H+(b+1)>>0]|0)){n=e;e=x;b=0;break i}i[x+e>>0]=b;n=k[M>>2]|0;e=e+1|0}}}while(0);if(!(k[M>>2]|0))h=k[K>>2]|0;else{h=(k[K>>2]|0)+-1|0;k[K>>2]=h}h=h-(k[z>>2]|0)+(k[F>>2]|0)|0;if(!h)break b;if(!((h|0)==(v|0)|u^1))break b;do if(t)if(s){k[x>>2]=b;break}else{k[x>>2]=e;break}while(0);if(!u){if(b|0)k[b+(n<<2)>>2]=0;if(!e){e=0;break f}i[e+n>>0]=0}break}case 120:case 88:case 112:{h=16;N=136;break}case 111:{h=8;N=136;break}case 117:case 100:{h=10;N=136;break}case 105:{h=0;N=136;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{m=+lb(a,t,0);if((k[F>>2]|0)==((k[z>>2]|0)-(k[K>>2]|0)|0))break b;if(x)switch(t|0){case 0:{o[x>>2]=m;break f}case 1:{p[x>>3]=m;break f}case 2:{p[x>>3]=m;break f}default:break f}break}default:{}}while(0);l:do if((N|0)==136){N=0;h=Jb(a,h,0,-1,-1)|0;if((k[F>>2]|0)==((k[z>>2]|0)-(k[K>>2]|0)|0))break b;if((x|0)!=0&(q|0)==112){k[x>>2]=h;break}if(x)switch(t|0){case -2:{i[x>>0]=h;break l}case -1:{j[x>>1]=h;break l}case 0:{k[x>>2]=h;break l}case 1:{k[x>>2]=h;break l}case 3:{v=x;k[v>>2]=h;k[v+4>>2]=L;break l}default:break l}}while(0);d=((x|0)!=0&1)+d|0;h=(k[F>>2]|0)+w+(k[K>>2]|0)-(k[z>>2]|0)|0;break c}while(0);g=g+(f&1)|0;Kh(a,0);f=k[K>>2]|0;if(f>>>0<(k[M>>2]|0)>>>0){k[K>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0;if((f|0)!=(l[g>>0]|0)){N=22;break b}h=s+1|0}else{while(1){f=g+1|0;if(!(xj(l[f>>0]|0)|0))break;else g=f}Kh(a,0);do{f=k[K>>2]|0;if(f>>>0<(k[M>>2]|0)>>>0){k[K>>2]=f+1;f=l[f>>0]|0}else f=Ff(a)|0}while((xj(f)|0)!=0);if(!(k[M>>2]|0))f=k[K>>2]|0;else{f=(k[K>>2]|0)+-1|0;k[K>>2]=f}h=(k[F>>2]|0)+s+f-(k[z>>2]|0)|0}while(0);g=g+1|0;f=i[g>>0]|0;if(!(f<<24>>24))break a;else s=h}if((N|0)==22){if(k[M>>2]|0)k[K>>2]=(k[K>>2]|0)+-1;if((d|0)!=0|(f|0)>-1)break;else{d=0;N=155}}else if((N|0)==154)if(!d){d=f;N=155}if((N|0)==155){f=d;d=-1}if(f){Ab(e);Ab(b)}}else d=0;while(0);if(O|0)Uj(a);r=P;return d|0}function rb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=a+332|0;do if(!(k[(k[h>>2]|0)+20>>2]|0))b=a+20|0;else{g=k[a+60>>2]|0;b=a+20|0;c=k[b>>2]|0;if((c|0)!=100){f=k[a>>2]|0;k[f+20>>2]=20;k[f+24>>2]=c;$a[k[f>>2]&63](a)}switch(g|0){case 3:{if((k[a+64>>2]|0)==3)e=64;else d=28;break}case 1:{e=23;break}default:d=28}if((d|0)==28){k[(k[h>>2]|0)+4172>>2]=0;break}c=a+368|0;d=k[c>>2]|0;b=a+372|0;if(!((d|0)!=0?(k[b>>2]|0)>=(e|0):0)){k[b>>2]=64;d=Ya[k[k[a+4>>2]>>2]&15](a,0,2304)|0;k[c>>2]=d}k[a+172>>2]=d;k[a+168>>2]=e;a=k[h>>2]|0;e=a+4188|0;k[e>>2]=3;k[a+4176>>2]=1;k[a+4184>>2]=5;k[a+4172>>2]=23;if(!(k[a+4156>>2]|0)){k[d>>2]=g;b=0;do{k[d+4+(b<<2)>>2]=b;b=b+1|0}while((b|0)!=(g|0));a=d+20|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0}else{k[d>>2]=1;k[d+4>>2]=0;a=d+20|0;k[a>>2]=0;k[a+4>>2]=0;k[a+8>>2]=0;k[a+12>>2]=0}k[d+36>>2]=1;k[d+40>>2]=0;k[d+56>>2]=1;k[d+60>>2]=8;k[d+64>>2]=0;k[d+68>>2]=0;c=d+72|0;k[c>>2]=1;k[d+76>>2]=0;k[d+92>>2]=9;k[d+96>>2]=63;k[d+100>>2]=0;k[d+104>>2]=0;b=d+108|0;if((k[e>>2]|0)>0){f=(k[h>>2]|0)+4188|0;e=0;while(1){d=e;e=e+1|0;k[b>>2]=1;k[c+40>>2]=0;k[c+56>>2]=1;k[c+60>>2]=63;k[c+64>>2]=e;k[c+68>>2]=d;k[c+72>>2]=1;k[c+76>>2]=0;k[c+92>>2]=1;k[c+96>>2]=8;k[c+100>>2]=0;k[c+104>>2]=e;d=c+108|0;k[d>>2]=1;k[c+112>>2]=0;k[c+128>>2]=9;k[c+132>>2]=63;k[c+136>>2]=0;k[c+140>>2]=e;b=c+144|0;if((e|0)>=(k[f>>2]|0)){c=d;break}else c=d}}k[b>>2]=1;k[c+40>>2]=0;k[c+56>>2]=1;k[c+60>>2]=63;k[c+64>>2]=0;k[c+68>>2]=0;f=k[h>>2]|0;e=f+4184|0;if((k[e>>2]|0)>0){b=0;while(1){d=c+72|0;a=k[13584+(b<<2)>>2]|0;k[d>>2]=1;k[c+76>>2]=0;k[c+92>>2]=1;k[c+96>>2]=a;k[c+100>>2]=0;k[c+104>>2]=0;k[c+108>>2]=1;k[c+112>>2]=0;k[c+128>>2]=a+1;k[c+132>>2]=63;k[c+136>>2]=0;k[c+140>>2]=0;b=b+1|0;if((b|0)>=(k[e>>2]|0)){c=d;break}else c=d}}b=f+4192|0;if((g|0)==1){k[b>>2]=0;k[(k[h>>2]|0)+4180>>2]=0;return}k[b>>2]=2;k[(k[h>>2]|0)+4180>>2]=3;k[c+72>>2]=2;k[c+76>>2]=1;k[c+80>>2]=2;e=c+92|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[c+108>>2]=1;k[c+112>>2]=1;e=c+128|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[c+144>>2]=1;k[c+148>>2]=2;e=c+164|0;k[e>>2]=0;k[e+4>>2]=0;k[e+8>>2]=0;k[e+12>>2]=0;k[c+180>>2]=1;k[c+184>>2]=1;k[c+200>>2]=1;k[c+204>>2]=8;k[c+208>>2]=0;k[c+212>>2]=0;k[c+216>>2]=1;k[c+220>>2]=1;k[c+236>>2]=9;k[c+240>>2]=63;k[c+244>>2]=0;k[c+248>>2]=0;k[c+252>>2]=1;k[c+256>>2]=2;k[c+272>>2]=1;k[c+276>>2]=8;k[c+280>>2]=0;k[c+284>>2]=0;e=c+288|0;k[e>>2]=1;k[c+292>>2]=2;k[c+308>>2]=9;k[c+312>>2]=63;k[c+316>>2]=0;k[c+320>>2]=0;b=c+324|0;c=k[h>>2]|0;f=c+4192|0;if((k[f>>2]|0)>0){d=0;while(1){c=d;d=d+1|0;k[b>>2]=1;k[e+40>>2]=1;k[e+56>>2]=1;k[e+60>>2]=63;k[e+64>>2]=d;k[e+68>>2]=c;k[e+72>>2]=1;k[e+76>>2]=2;k[e+92>>2]=1;k[e+96>>2]=63;k[e+100>>2]=d;k[e+104>>2]=c;k[e+108>>2]=1;k[e+112>>2]=1;k[e+128>>2]=1;k[e+132>>2]=8;k[e+136>>2]=0;k[e+140>>2]=d;k[e+144>>2]=1;k[e+148>>2]=1;k[e+164>>2]=9;k[e+168>>2]=63;k[e+172>>2]=0;k[e+176>>2]=d;k[e+180>>2]=1;k[e+184>>2]=2;k[e+200>>2]=1;k[e+204>>2]=8;k[e+208>>2]=0;k[e+212>>2]=d;c=e+216|0;k[c>>2]=1;k[e+220>>2]=2;k[e+236>>2]=9;k[e+240>>2]=63;k[e+244>>2]=0;k[e+248>>2]=d;b=e+252|0;if((d|0)>=(k[f>>2]|0))break;else e=c}e=c;c=k[h>>2]|0}k[b>>2]=1;k[e+40>>2]=1;k[e+56>>2]=1;k[e+60>>2]=63;k[e+64>>2]=0;k[e+68>>2]=0;k[e+72>>2]=1;k[e+76>>2]=2;k[e+92>>2]=1;k[e+96>>2]=63;k[e+100>>2]=0;k[e+104>>2]=0;if((k[c+4184>>2]|0)<=0)return;c=(k[h>>2]|0)+4184|0;d=0;b=e+108|0;while(1){g=k[13584+(d<<2)>>2]|0;k[b>>2]=1;k[b+4>>2]=1;k[b+20>>2]=1;k[b+24>>2]=g;k[b+28>>2]=0;k[b+32>>2]=0;h=g+1|0;k[b+36>>2]=1;k[b+40>>2]=1;k[b+56>>2]=h;k[b+60>>2]=63;k[b+64>>2]=0;k[b+68>>2]=0;k[b+72>>2]=1;k[b+76>>2]=2;k[b+92>>2]=1;k[b+96>>2]=g;k[b+100>>2]=0;k[b+104>>2]=0;k[b+108>>2]=1;k[b+112>>2]=2;k[b+128>>2]=h;k[b+132>>2]=63;k[b+136>>2]=0;k[b+140>>2]=0;d=d+1|0;if((d|0)>=(k[c>>2]|0))break;else b=b+144|0}return}while(0);b=k[b>>2]|0;if((b|0)!=100){g=k[a>>2]|0;k[g+20>>2]=20;k[g+24>>2]=b;$a[k[g>>2]&63](a)}g=k[a+60>>2]|0;f=(g|0)==3;if(f?(k[a+64>>2]|0)==3:0)e=10;else d=33;do if((d|0)==33){b=(g|0)>4;if((k[(k[h>>2]|0)+4152>>2]|0)==1560820397)if(b){e=g*5|0;break}else{e=g<<2|1;break}else if(b){e=g*6|0;break}else{e=g<<2|2;break}}while(0);c=a+368|0;d=k[c>>2]|0;b=a+372|0;if(!((d|0)!=0?(k[b>>2]|0)>=(e|0):0)){d=(e|0)>10?e:10;k[b>>2]=d;d=Ya[k[k[a+4>>2]>>2]&15](a,0,d*36|0)|0;k[c>>2]=d}k[a+172>>2]=d;k[a+168>>2]=e;if(f?(k[a+64>>2]|0)==3:0){b=k[h>>2]|0;if((k[b+4152>>2]|0)!=1560820397){k[d>>2]=3;k[d+4>>2]=0;k[d+8>>2]=1;k[d+12>>2]=2;k[d+24>>2]=0;k[d+20>>2]=0;k[d+28>>2]=0;k[d+32>>2]=1;k[d+36>>2]=1;k[d+40>>2]=0;k[d+56>>2]=1;k[d+60>>2]=5;k[d+64>>2]=0;k[d+68>>2]=2;k[d+72>>2]=1;k[d+76>>2]=2;k[d+92>>2]=1;k[d+96>>2]=63;k[d+100>>2]=0;k[d+104>>2]=1;k[d+108>>2]=1;k[d+112>>2]=1;k[d+128>>2]=1;k[d+132>>2]=63;k[d+136>>2]=0;k[d+140>>2]=1;k[d+144>>2]=1;k[d+148>>2]=0;k[d+164>>2]=6;k[d+168>>2]=63;k[d+172>>2]=0;k[d+176>>2]=2;k[d+180>>2]=1;k[d+184>>2]=0;k[d+200>>2]=1;k[d+204>>2]=63;k[d+208>>2]=2;k[d+212>>2]=1;k[d+216>>2]=3;k[d+220>>2]=0;k[d+224>>2]=1;k[d+228>>2]=2;k[d+240>>2]=0;k[d+236>>2]=0;k[d+244>>2]=1;k[d+248>>2]=0;k[d+252>>2]=1;k[d+256>>2]=2;k[d+272>>2]=1;k[d+276>>2]=63;k[d+280>>2]=1;k[d+284>>2]=0;k[d+288>>2]=1;k[d+292>>2]=1;k[d+308>>2]=1;k[d+312>>2]=63;k[d+316>>2]=1;k[d+320>>2]=0;k[d+324>>2]=1;k[d+328>>2]=0;k[d+344>>2]=1;k[d+348>>2]=63;k[d+352>>2]=1;k[d+356>>2]=0;return}switch(k[b+4156>>2]|0){case 0:{k[d>>2]=3;k[d+4>>2]=0;k[d+8>>2]=1;k[d+12>>2]=2;b=d+20|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;b=d+36|0;break}case 1:{k[d>>2]=1;k[d+4>>2]=0;b=d+20|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[d+36>>2]=1;k[d+40>>2]=1;b=d+56|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[d+72>>2]=1;k[d+76>>2]=2;b=d+92|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;b=d+108|0;break}default:{k[d>>2]=1;k[d+4>>2]=0;b=d+20|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;k[d+36>>2]=2;k[d+40>>2]=1;k[d+44>>2]=2;b=d+56|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;b=d+72|0}}k[b>>2]=1;k[b+4>>2]=0;k[b+20>>2]=1;k[b+24>>2]=8;k[b+28>>2]=0;k[b+32>>2]=2;k[b+36>>2]=1;k[b+40>>2]=1;k[b+56>>2]=1;k[b+60>>2]=8;k[b+64>>2]=0;k[b+68>>2]=0;k[b+72>>2]=1;k[b+76>>2]=2;k[b+92>>2]=1;k[b+96>>2]=8;k[b+100>>2]=0;k[b+104>>2]=0;k[b+108>>2]=1;k[b+112>>2]=0;k[b+128>>2]=9;k[b+132>>2]=63;k[b+136>>2]=0;k[b+140>>2]=2;k[b+144>>2]=1;k[b+148>>2]=0;k[b+164>>2]=1;k[b+168>>2]=63;k[b+172>>2]=2;k[b+176>>2]=1;k[b+180>>2]=1;k[b+184>>2]=0;k[b+200>>2]=1;k[b+204>>2]=63;k[b+208>>2]=1;k[b+212>>2]=0;k[b+216>>2]=1;k[b+220>>2]=1;k[b+236>>2]=9;k[b+240>>2]=63;k[b+244>>2]=0;k[b+248>>2]=0;k[b+252>>2]=1;k[b+256>>2]=2;k[b+272>>2]=9;k[b+276>>2]=63;k[b+280>>2]=0;k[b+284>>2]=0;return}f=(g|0)<5;if((k[(k[h>>2]|0)+4152>>2]|0)==1560820397){if(f){k[d>>2]=g;if((g|0)>0){b=0;do{k[d+4+(b<<2)>>2]=b;b=b+1|0}while((b|0)!=(g|0))}b=d+20|0;k[b>>2]=0;k[b+4>>2]=0;k[b+8>>2]=0;k[b+12>>2]=0;b=d+36|0}else{b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;h=b+20|0;c=c+1|0;k[h>>2]=0;k[h+4>>2]=0;k[h+8>>2]=0;k[h+12>>2]=0;if((c|0)==(g|0))break;else b=b+36|0}b=d+(g*36|0)|0}if((g|0)>0){c=b;d=0}else return;while(1){k[c>>2]=1;k[c+4>>2]=d;k[c+20>>2]=1;k[c+24>>2]=8;k[c+28>>2]=0;k[c+32>>2]=2;d=d+1|0;if((d|0)==(g|0))break;else c=c+36|0}d=b+(g*36|0)|0;b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=9;k[b+24>>2]=63;k[b+28>>2]=0;k[b+32>>2]=2;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}d=d+(g*36|0)|0;b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=1;k[b+24>>2]=63;k[b+28>>2]=2;k[b+32>>2]=1;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}b=d+(g*36|0)|0;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=1;k[b+24>>2]=63;k[b+28>>2]=1;k[b+32>>2]=0;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}return}if(f){k[d>>2]=g;if((g|0)>0){b=0;do{k[d+4+(b<<2)>>2]=b;b=b+1|0}while((b|0)!=(g|0))}k[d+24>>2]=0;k[d+20>>2]=0;k[d+28>>2]=0;k[d+32>>2]=1;b=d+36|0}else{b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=0;k[b+24>>2]=0;k[b+28>>2]=0;k[b+32>>2]=1;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}b=d+(g*36|0)|0}e=(g|0)>0;if(e){c=b;d=0;while(1){k[c>>2]=1;k[c+4>>2]=d;k[c+20>>2]=1;k[c+24>>2]=5;k[c+28>>2]=0;k[c+32>>2]=2;d=d+1|0;if((d|0)==(g|0))break;else c=c+36|0}d=b+(g*36|0)|0;b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=6;k[b+24>>2]=63;k[b+28>>2]=0;k[b+32>>2]=2;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}d=d+(g*36|0)|0;b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=1;k[b+24>>2]=63;k[b+28>>2]=2;k[b+32>>2]=1;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}d=d+(g*36|0)|0}else d=b;if(f){k[d>>2]=g;if(e){b=0;do{k[d+4+(b<<2)>>2]=b;b=b+1|0}while((b|0)!=(g|0))}k[d+24>>2]=0;k[d+20>>2]=0;k[d+28>>2]=1;k[d+32>>2]=0;b=d+36|0}else{b=d;c=0;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=0;k[b+24>>2]=0;k[b+28>>2]=1;k[b+32>>2]=0;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}b=d+(g*36|0)|0}if(e)c=0;else return;while(1){k[b>>2]=1;k[b+4>>2]=c;k[b+20>>2]=1;k[b+24>>2]=63;k[b+28>>2]=1;k[b+32>>2]=0;c=c+1|0;if((c|0)==(g|0))break;else b=b+36|0}return}function sb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;M=r;r=r+48|0;J=M+16|0;L=M;h=a+444|0;K=k[h>>2]|0;c=a+276|0;if(k[c>>2]|0){e=K+36|0;if(!(k[e>>2]|0)){G=K+16|0;I=k[a+440>>2]|0;F=I+24|0;k[F>>2]=(k[F>>2]|0)+((k[G>>2]|0)/8|0);k[G>>2]=0;if(!(cb[k[I+8>>2]&15](a)|0)){L=0;r=M;return L|0}d=a+328|0;if((k[d>>2]|0)>0){f=0;do{k[K+20+(f<<2)>>2]=0;f=f+1|0}while((f|0)<(k[d>>2]|0))}k[e>>2]=k[c>>2];if(!(k[a+416>>2]|0)){k[K+8>>2]=0;c=0}else c=0}else c=0}else c=1;I=a+24|0;g=k[I>>2]|0;C=g+4|0;D=k[C>>2]|0;G=a+356|0;E=k[G>>2]|0;if(!(D>>>0>=E<<7>>>0?(k[a+416>>2]|0)==0:0))c=0;a:do if(!(k[K+8>>2]|0)){F=k[h>>2]|0;do if(c){x=k[g>>2]|0;y=F+12|0;c=k[y>>2]|0;z=F+16|0;d=k[z>>2]|0;A=F+20|0;k[J>>2]=k[A>>2];k[J+4>>2]=k[A+4>>2];k[J+8>>2]=k[A+8>>2];k[J+12>>2]=k[A+12>>2];B=a+416|0;if((E|0)>0){h=d;w=0;f=x;e=c;do{t=k[b+(w<<2)>>2]|0;q=k[F+72+(w<<2)>>2]|0;v=k[F+112+(w<<2)>>2]|0;if((h|0)<16){m=f+1|0;u=i[f>>0]|0;n=i[m>>0]|0;o=n&255;e=e<<8;p=u&255|e;if(u<<24>>24==-1)if(!(n<<24>>24)){f=f+2|0;e=p}else k[B>>2]=o;else{f=m;e=p}o=f+1|0;u=i[f>>0]|0;m=i[o>>0]|0;n=m&255;e=e<<8;p=u&255|e;h=h+16|0;if(u<<24>>24==-1)if(!(m<<24>>24)){f=f+2|0;e=p}else k[B>>2]=n;else{f=o;e=p}}m=k[q+148+((e>>h+-8&255)<<2)>>2]|0;n=m>>8;h=h-n|0;m=m&255;if((n|0)>8){m=e>>h&(1<<n)+-1;if((m|0)>(k[q+(n<<2)>>2]|0))do{h=h+-1|0;m=e>>>h&1|m<<1;n=n+1|0}while((m|0)>(k[q+(n<<2)>>2]|0));m=l[((k[q+72+(n<<2)>>2]|0)+m&255)+((k[q+144>>2]|0)+17)>>0]|0}if(!m)m=0;else{if((h|0)<16){n=f+1|0;u=i[f>>0]|0;o=i[n>>0]|0;p=o&255;e=e<<8;q=u&255|e;if(u<<24>>24==-1)if(!(o<<24>>24)){f=f+2|0;e=q}else k[B>>2]=p;else{f=n;e=q}p=f+1|0;u=i[f>>0]|0;n=i[p>>0]|0;o=n&255;e=e<<8;q=u&255|e;h=h+16|0;if(u<<24>>24==-1)if(!(n<<24>>24)){f=f+2|0;e=q}else k[B>>2]=o;else{f=p;e=q}}h=h-m|0;u=e>>h&(1<<m)+-1;m=(u-(1<<m+-1)>>31&(-1<<m)+1)+u|0}if(k[F+152+(w<<2)>>2]|0){s=J+(k[a+360+(w<<2)>>2]<<2)|0;u=(k[s>>2]|0)+m|0;k[s>>2]=u;j[t>>1]=u}u=v+144|0;b:do if(!(k[F+192+(w<<2)>>2]|0)){t=1;do{do if((h|0)<16){m=f+1|0;s=i[f>>0]|0;n=i[m>>0]|0;o=n&255;e=e<<8;p=s&255|e;do if(s<<24>>24==-1){if(!(n<<24>>24)){f=f+2|0;e=p;break}k[B>>2]=o}else{f=m;e=p}while(0);o=f+1|0;s=i[f>>0]|0;m=i[o>>0]|0;n=m&255;e=e<<8;p=s&255|e;h=h+16|0;if(s<<24>>24==-1){if(!(m<<24>>24)){f=f+2|0;e=p;break}k[B>>2]=n}else{f=o;e=p}}while(0);m=k[v+148+((e>>h+-8&255)<<2)>>2]|0;n=m>>8;h=h-n|0;m=m&255;if((n|0)>8){m=e>>h&(1<<n)+-1;if((m|0)>(k[v+(n<<2)>>2]|0))do{h=h+-1|0;m=e>>>h&1|m<<1;n=n+1|0}while((m|0)>(k[v+(n<<2)>>2]|0));m=l[((k[v+72+(n<<2)>>2]|0)+m&255)+((k[u>>2]|0)+17)>>0]|0}q=m>>>4;s=m&15;if(!s)if((q|0)==15)m=15;else break b;else{do if((h|0)<16){m=f+1|0;N=i[f>>0]|0;n=i[m>>0]|0;o=n&255;e=e<<8;p=N&255|e;do if(N<<24>>24==-1){if(!(n<<24>>24)){f=f+2|0;e=p;break}k[B>>2]=o}else{f=m;e=p}while(0);n=f+1|0;N=i[f>>0]|0;m=i[n>>0]|0;e=e<<8;o=N&255|e;h=h+16|0;if(N<<24>>24!=-1){f=n;e=o;break}if(!(m<<24>>24)){f=f+2|0;e=o;break}k[B>>2]=m&255}while(0);m=q;h=h-s|0}t=t+1+m|0}while((t|0)<64)}else{q=1;do{do if((h|0)<16){m=f+1|0;N=i[f>>0]|0;n=i[m>>0]|0;o=n&255;e=e<<8;p=N&255|e;do if(N<<24>>24==-1){if(!(n<<24>>24)){m=f+2|0;e=p;break}k[B>>2]=o;m=f}else e=p;while(0);f=m+1|0;N=i[m>>0]|0;n=i[f>>0]|0;o=n&255;e=e<<8;p=N&255|e;h=h+16|0;if(N<<24>>24==-1){if(!(n<<24>>24)){f=m+2|0;e=p;break}k[B>>2]=o;f=m}else e=p}while(0);m=k[v+148+((e>>h+-8&255)<<2)>>2]|0;n=m>>8;h=h-n|0;m=m&255;if((n|0)>8){m=e>>h&(1<<n)+-1;if((m|0)>(k[v+(n<<2)>>2]|0))do{h=h+-1|0;m=e>>>h&1|m<<1;n=n+1|0}while((m|0)>(k[v+(n<<2)>>2]|0));m=l[((k[v+72+(n<<2)>>2]|0)+m&255)+((k[u>>2]|0)+17)>>0]|0}n=m>>>4;s=m&15;if(!s){if((n|0)!=15)break b;m=q+15|0}else{m=n+q|0;do if((h|0)<16){n=f+1|0;N=i[f>>0]|0;o=i[n>>0]|0;p=o&255;e=e<<8;q=N&255|e;do if(N<<24>>24==-1){if(!(o<<24>>24)){f=f+2|0;e=q;break}k[B>>2]=p}else{f=n;e=q}while(0);o=f+1|0;N=i[f>>0]|0;n=i[o>>0]|0;e=e<<8;p=N&255|e;h=h+16|0;if(N<<24>>24!=-1){f=o;e=p;break}if(!(n<<24>>24)){f=f+2|0;e=p;break}k[B>>2]=n&255}while(0);h=h-s|0;N=e>>h&(1<<s)+-1;j[t+(k[14344+(m<<2)>>2]<<1)>>1]=(N-(1<<s+-1)>>31&(-1<<s)+1)+N}q=m+1|0}while((q|0)<64)}while(0);w=w+1|0}while((w|0)!=(E|0))}else{h=d;f=x;e=c}if(!(k[B>>2]|0)){k[g>>2]=f;k[C>>2]=D+x-f;k[y>>2]=e;k[z>>2]=h;k[A>>2]=k[J>>2];k[A+4>>2]=k[J+4>>2];k[A+8>>2]=k[J+8>>2];k[A+12>>2]=k[J+12>>2];break a}else{k[B>>2]=0;break}}else{d=k[F+16>>2]|0;c=k[F+12>>2]|0}while(0);k[J+16>>2]=a;f=k[g>>2]|0;k[J>>2]=f;e=k[g+4>>2]|0;s=J+4|0;k[s>>2]=e;t=F+12|0;u=F+16|0;v=F+20|0;k[L>>2]=k[v>>2];k[L+4>>2]=k[v+4>>2];k[L+8>>2]=k[v+8>>2];k[L+12>>2]=k[v+12>>2];do if((E|0)>0){p=J+8|0;q=J+12|0;o=0;c:while(1){m=k[b+(o<<2)>>2]|0;g=k[F+72+(o<<2)>>2]|0;n=k[F+112+(o<<2)>>2]|0;if((d|0)<8){if(!(Pd(J,c,d,0)|0))break;c=k[p>>2]|0;d=k[q>>2]|0;if((d|0)<8){e=1;H=94}else H=92}else H=92;if((H|0)==92){H=0;f=k[g+148+((c>>d+-8&255)<<2)>>2]|0;e=f>>8;if((e|0)<9){d=d-e|0;e=f&255}else H=94}if((H|0)==94){H=0;e=ff(J,c,d,g,e)|0;if((e|0)<0)break;d=k[q>>2]|0;c=k[p>>2]|0}if(!e)e=0;else{if((d|0)<(e|0)){if(!(Pd(J,c,d,e)|0))break;d=k[q>>2]|0;c=k[p>>2]|0}d=d-e|0;N=c>>d&(1<<e)+-1;e=(N-(1<<e+-1)>>31&(-1<<e)+1)+N|0}if(k[F+152+(o<<2)>>2]|0){E=L+(k[a+360+(o<<2)>>2]<<2)|0;N=(k[E>>2]|0)+e|0;k[E>>2]=N;j[m>>1]=N}d:do if(!(k[F+192+(o<<2)>>2]|0)){g=1;do{if((d|0)<8){if(!(Pd(J,c,d,0)|0))break c;c=k[p>>2]|0;d=k[q>>2]|0;if((d|0)<8){e=1;H=124}else H=122}else H=122;if((H|0)==122){H=0;f=k[n+148+((c>>d+-8&255)<<2)>>2]|0;e=f>>8;if((e|0)<9){d=d-e|0;e=f&255}else H=124}if((H|0)==124){H=0;e=ff(J,c,d,n,e)|0;if((e|0)<0)break c;d=k[q>>2]|0;c=k[p>>2]|0}f=e>>4;e=e&15;if(!e)if((f|0)==15)f=15;else break d;else{if((d|0)<(e|0)){if(!(Pd(J,c,d,e)|0))break c;d=k[q>>2]|0;c=k[p>>2]|0}d=d-e|0}g=g+1+f|0}while((g|0)<64)}else{h=1;do{if((d|0)<8){if(!(Pd(J,c,d,0)|0))break c;c=k[p>>2]|0;d=k[q>>2]|0;if((d|0)<8){e=1;H=109}else H=107}else H=107;if((H|0)==107){H=0;f=k[n+148+((c>>d+-8&255)<<2)>>2]|0;e=f>>8;if((e|0)<9){d=d-e|0;e=f&255}else H=109}if((H|0)==109){H=0;e=ff(J,c,d,n,e)|0;if((e|0)<0)break c;d=k[q>>2]|0;c=k[p>>2]|0}f=e>>4;g=e&15;if(!g){if((f|0)!=15)break d;e=h+15|0}else{e=f+h|0;if((d|0)<(g|0)){if(!(Pd(J,c,d,g)|0))break c;d=k[q>>2]|0;c=k[p>>2]|0}d=d-g|0;N=c>>d&(1<<g)+-1;j[m+(k[14344+(e<<2)>>2]<<1)>>1]=(N-(1<<g+-1)>>31&(-1<<g)+1)+N}h=e+1|0}while((h|0)<64)}while(0);o=o+1|0;if((o|0)>=(k[G>>2]|0)){H=134;break}}if((H|0)==134){g=k[I>>2]|0;f=k[J>>2]|0;e=k[s>>2]|0;break}N=0;r=M;return N|0}while(0);k[g>>2]=f;k[g+4>>2]=e;k[t>>2]=c;k[u>>2]=d;k[v>>2]=k[L>>2];k[v+4>>2]=k[L+4>>2];k[v+8>>2]=k[L+8>>2];k[v+12>>2]=k[L+12>>2]}while(0);N=K+36|0;k[N>>2]=(k[N>>2]|0)+-1;N=1;r=M;return N|0}function tb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;ba=r;r=r+176|0;aa=ba+152|0;$=ba+144|0;_=ba+136|0;Q=ba+128|0;O=ba+120|0;G=ba+112|0;E=ba+104|0;P=ba+96|0;N=ba+88|0;M=ba+80|0;L=ba+72|0;D=ba+64|0;K=ba+48|0;C=ba+40|0;H=ba+32|0;F=ba+16|0;J=ba+8|0;I=ba;B=ba+156|0;A=ba+160|0;q=a+168|0;e=(k[q>>2]|0)!=0&1;k[24034]=0;k[24035]=0;k[24032]=0;k[(k[a>>2]|0)+104>>2]=0;a:do if((b|0)>1){w=a+192|0;x=a+204|0;y=a+200|0;z=a+184|0;s=a+4|0;R=k[3856]|0;t=a+196|0;u=a+172|0;v=a+180|0;j=1;o=0;n=0;m=0;l=0;h=0;p=0;g=e;b:while(1){e=k[c+(j<<2)>>2]|0;c:do if((i[e>>0]|0)==45){e=e+1|0;if(kg(e,17431,1)|0){k[v>>2]=1;k[z>>2]=0;e=j;f=p;break}if(kg(e,17442,1)|0){k[q>>2]=0;k[u>>2]=0;e=j;o=1;f=p;g=0;break}if(kg(e,17451,2)|0){e=j+1|0;if((e|0)>=(b|0)){f=12;break b}f=c+(e<<2)|0;if(kg(k[f>>2]|0,20254,1)|0){k[t>>2]=0;f=p;break}if(kg(k[f>>2]|0,20258,2)|0){k[t>>2]=1;f=p;break}if(!(kg(k[f>>2]|0,20263,2)|0)){f=19;break b}k[t>>2]=2;f=p;break}if((kg(e,20299,1)|0)==0?(kg(e,20305,1)|0)==0:0){if(kg(e,20802,4)|0){f=26;break b}if(kg(e,20810,4)|0){ne(a,1745618462,0);e=j;f=p;break}if((kg(e,20820,2)|0)==0?(kg(e,20830,2)|0)==0:0){if(kg(e,20840,3)|0){Dc(a,2);e=j;f=p;break}if(kg(e,20844,7)|0){e=j+1|0;if((e|0)>=(b|0)){f=36;break b}eg(a,1533126041,+Nj(k[c+(e<<2)>>2]|0));f=p;break}if(kg(e,20852,7)|0){e=j+1|0;if((e|0)>=(b|0)){f=40;break b}eg(a,-1178882557,+Nj(k[c+(e<<2)>>2]|0));f=p;break}if(kg(e,20860,3)|0){i[A>>0]=120;e=j+1|0;if((e|0)>=(b|0)){f=44;break b}j=k[c+(e<<2)>>2]|0;k[D>>2]=B;k[D+4>>2]=A;if((fi(j,27465,D)|0)<1){f=46;break b}switch(i[A>>0]|0){case 77:case 109:{f=(k[B>>2]|0)*1e3|0;k[B>>2]=f;break}default:f=k[B>>2]|0}k[(k[s>>2]|0)+44>>2]=f*1e3;f=p;break}if(kg(e,20870,3)|0){e=j+1|0;if((e|0)>=(b|0)){f=53;break b}Ce(a,199732540,yg(k[c+(e<<2)>>2]|0)|0);f=p;break}do if(!(kg(e,20920,1)|0)){if(kg(e,20929,1)|0)break;if(kg(e,20938,4)|0){e=j+1|0;if((e|0)>=(b|0)){f=60;break b}k[24035]=k[c+(e<<2)>>2];f=p;break c}if(kg(e,20980,1)|0){e=j;f=p;g=1;break c}if(kg(e,20992,2)|0){k[24032]=1;e=j;f=p;break c}if(kg(e,20999,1)|0){f=j+1|0;if((f|0)>=(b|0)){f=67;break b}e=f;l=k[c+(f<<2)>>2]|0;f=p;break c}if(kg(e,21041,2)|0){f=j+1|0;if((f|0)>=(b|0)){f=71;break b}e=f;n=k[c+(f<<2)>>2]|0;f=p;break c}if(kg(e,21048,2)|0){f=j+1|0;if((f|0)>=(b|0)){f=75;break b}e=f;m=k[c+(f<<2)>>2]|0;f=p;break c}if(kg(e,21056,7)|0){f=j+1|0;if((f|0)>=(b|0)){f=79;break b}e=yg(k[c+(f<<2)>>2]|0)|0;Ce(a,1145645745,e);if((df(a,1145645745)|0)!=(e|0)){f=81;break b}Zh(a,75,1);e=f;f=p;break c}if(kg(e,21112,7)|0){e=j;o=1;f=p;break c}if(kg(e,21127,1)|0){i[A>>0]=120;e=j+1|0;if((e|0)>=(b|0)){f=86;break b}j=k[c+(e<<2)>>2]|0;k[E>>2]=B;k[E+4>>2]=A;if((fi(j,27465,E)|0)<1){f=88;break b}f=k[B>>2]|0;if(f>>>0>65535){f=90;break b}switch(i[A>>0]|0){case 66:case 98:{k[y>>2]=f;f=0;break}default:{}}k[x>>2]=f;f=p;break c}if(kg(e,21135,3)|0){Ce(a,-376338907,720002228);Kc(a);e=j;f=p;break c}if(kg(e,21142,2)|0){f=j+1|0;if((f|0)>=(b|0)){f=98;break b}e=f;h=k[c+(f<<2)>>2]|0;f=p;break c}if(kg(e,21149,4)|0){f=j+1|0;if((f|0)>=(b|0)){f=102;break b}e=f;f=k[c+(f<<2)>>2]|0;break c}if(kg(e,21155,2)|0){e=j+1|0;if((e|0)>=(b|0)){f=106;break b}j=k[c+(e<<2)>>2]|0;k[G>>2]=B;if((fi(j,21162,G)|0)!=1){f=108;break b}f=k[B>>2]|0;if(f>>>0>100){f=110;break b}k[w>>2]=f;f=p;break c}if(kg(e,21165,1)|0){k[24034]=1;e=j;f=p;break c}if(kg(e,21171,11)|0){ne(a,865946636,0);e=j;f=p;break c}if(kg(e,21184,1)|0){ne(a,-988667853,0);e=j;f=p;break c}if(kg(e,21194,12)|0){e=j+1|0;if((e|0)>=(b|0)){f=120;break b}eg(a,326587475,+Nj(k[c+(e<<2)>>2]|0));f=p;break c}if(kg(e,21264,9)|0){ne(a,865946636,1);e=j;f=p;break c}if(kg(e,21275,6)|0){Ce(a,1145645745,1);eg(a,1533126041,9.0);eg(a,-1178882557,0.0);ne(a,865973855,0);Zh(a,75,1);e=j;f=p;break c}if(kg(e,21285,6)|0){Ce(a,1145645745,1);eg(a,1533126041,11.5);eg(a,-1178882557,12.75);ne(a,865973855,0);Zh(a,75,1);e=j;f=p;break c}if(kg(e,21295,6)|0){Ce(a,1145645745,3);eg(a,1533126041,12.0);eg(a,-1178882557,13.0);ne(a,865973855,1);Zh(a,75,1);e=j;f=p;break c}if(kg(e,21308,6)|0){Ce(a,1145645745,3);eg(a,1533126041,14.75);eg(a,-1178882557,16.5);ne(a,865973855,1);Zh(a,75,1);e=j;f=p;break c}if(!(kg(e,21322,11)|0)){f=134;break b}ne(a,1061927929,0);e=j;f=p;break c}while(0);k[z>>2]=1;e=j;f=p;break}Dc(a,1);e=j;f=p;break}if(!(k[24036]|0)){k[F>>2]=20339;k[F+4>>2]=20347;k[F+8>>2]=20351;ei(R,20313,F)|0;k[H>>2]=20365;ei(R,20360,H)|0;k[C>>2]=25076;ei(R,20740,C)|0;k[24036]=1}e=(k[a>>2]|0)+104|0;k[e>>2]=(k[e>>2]|0)+1;e=j;f=p}else{if((j|0)>=1){S=j;T=o;U=n;V=m;W=l;X=h;Y=p;Z=g;break a}k[24035]=0;e=j;f=p}while(0);e=e+1|0;if((e|0)<(b|0)){j=e;p=f}else{S=e;T=o;U=n;V=m;W=l;X=h;Y=f;Z=g;break a}}switch(f|0){case 12:{k[I>>2]=k[24033];ei(R,17455,I)|0;ze();break}case 19:{k[J>>2]=k[24033];ei(R,20269,J)|0;ze();break}case 26:{k[K>>2]=20339;k[K+4>>2]=20347;k[K+8>>2]=20351;ei(R,20313,K)|0;Ta(0);break}case 36:{ze();break}case 40:{ze();break}case 44:{ze();break}case 46:{ze();break}case 53:{k[L>>2]=k[24033];ei(R,20882,L)|0;ze();break}case 60:{k[M>>2]=k[24033];ei(R,20946,M)|0;ze();break}case 67:{k[N>>2]=k[24033];ei(R,21007,N)|0;ze();break}case 71:{ze();break}case 75:{ze();break}case 79:{ze();break}case 81:{k[P>>2]=k[24033];k[P+4>>2]=e;ei(R,21068,P)|0;ze();break}case 86:{ze();break}case 88:{ze();break}case 90:{ze();break}case 98:{ze();break}case 102:{ze();break}case 106:{ze();break}case 108:{ze();break}case 110:{ze();break}case 120:{k[O>>2]=k[24033];ei(R,21216,O)|0;ze();break}case 134:{k[Q>>2]=k[24033];k[Q+4>>2]=e;ei(R,21334,Q)|0;ze();break}}}else{S=1;T=0;U=0;V=0;W=0;X=0;Y=0;Z=e}while(0);if(!d){r=ba;return S|0}if(W|0?(nd(a,W,T)|0)==0:0){W=k[3856]|0;k[_>>2]=k[24033];ei(W,21359,_)|0;ze()}if(V|0?(Be(a,V,T)|0)==0:0){_=k[3856]|0;k[$>>2]=k[24033];ei(_,21390,$)|0;ze()}if(U|0?(jf(a,U)|0)==0:0)ze();if(X|0?(Je(a,X)|0)==0:0){$=k[3856]|0;k[aa>>2]=k[24033];ei($,21418,aa)|0;ze()}if(Z|0)rb(a);if(!Y){r=ba;return S|0}if(!(ed(a,Y)|0))ze();else{r=ba;return S|0}return 0}function ub(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=r;r=r+2608|0;v=A+2560|0;w=A;y=a+332|0;z=k[y>>2]|0;k[z>>2]=8;k[z+4>>2]=9;k[z+8>>2]=10;k[z+16>>2]=0;k[z+12>>2]=0;q=a+32|0;c=k[q>>2]|0;p=a+28|0;if(!((((c|0)!=0?(k[p>>2]|0)!=0:0)?(k[a+60>>2]|0)>=1:0)?(k[a+36>>2]|0)>=1:0)){c=k[a>>2]|0;k[c+20>>2]=32;$a[k[c>>2]&63](a);c=k[q>>2]|0}if(!((c|0)<=65500?(k[p>>2]|0)<=65500:0)){x=k[a>>2]|0;k[x+20>>2]=41;k[x+24>>2]=65500;$a[k[x>>2]&63](a)}c=k[a+56>>2]|0;if((c|0)!=8){x=k[a>>2]|0;k[x+20>>2]=15;k[x+24>>2]=c;$a[k[x>>2]&63](a)}x=a+60|0;c=k[x>>2]|0;if((c|0)>10){u=k[a>>2]|0;k[u+20>>2]=26;k[u+24>>2]=c;k[u+28>>2]=10;$a[k[u>>2]&63](a);c=k[x>>2]|0}n=a+232|0;k[n>>2]=1;o=a+236|0;k[o>>2]=1;m=a+68|0;if((c|0)>0){d=c;c=1;e=1;i=0;j=k[m>>2]|0;while(1){f=j+8|0;g=k[f>>2]|0;h=j+12|0;if((g+-1|0)>>>0<=3?(l=k[h>>2]|0,(l+-1|0)>>>0<=3):0)f=l;else{e=k[a>>2]|0;k[e+20>>2]=18;$a[k[e>>2]&63](a);e=k[n>>2]|0;g=k[f>>2]|0;c=k[o>>2]|0;f=k[h>>2]|0;d=k[x>>2]|0}e=(e|0)>(g|0)?e:g;k[n>>2]=e;c=(c|0)>(f|0)?c:f;k[o>>2]=c;i=i+1|0;if((i|0)>=(d|0))break;else j=j+84|0}if((d|0)>0){c=0;d=k[m>>2]|0;while(1){k[d+4>>2]=c;k[d+36>>2]=8;t=d+8|0;u=pj(ha(k[t>>2]|0,k[p>>2]|0)|0,e<<3)|0;k[d+28>>2]=u;u=d+12|0;s=ha(k[u>>2]|0,k[q>>2]|0)|0;s=pj(s,k[o>>2]<<3)|0;k[d+32>>2]=s;t=ha(k[t>>2]|0,k[p>>2]|0)|0;t=pj(t,k[n>>2]|0)|0;k[d+40>>2]=t;u=ha(k[u>>2]|0,k[q>>2]|0)|0;u=pj(u,k[o>>2]|0)|0;k[d+44>>2]=u;k[d+48>>2]=1;c=c+1|0;if((c|0)>=(k[x>>2]|0))break;e=k[n>>2]|0;d=d+84|0}c=k[o>>2]|0}}else c=1;c=pj(k[q>>2]|0,c<<3)|0;k[a+240>>2]=c;c=a+172|0;d=k[c>>2]|0;if(d){do if(!(k[(k[y>>2]|0)+20>>2]|0)){u=a+168|0;if((k[u>>2]|0)<1){d=k[a>>2]|0;k[d+20>>2]=19;k[d+24>>2]=0;$a[k[d>>2]&63](a);d=k[c>>2]|0}if((k[d+20>>2]|0)==0?(k[d+24>>2]|0)==63:0){k[a+228>>2]=0;c=k[x>>2]|0;if((c|0)>0){eh(v|0,0,((c|0)>1?c:1)<<2|0)|0;e=0}else e=0}else{k[a+228>>2]=1;c=k[x>>2]|0;if((c|0)>0){eh(w|0,-1,c<<8|0)|0;e=1}else e=1}if((k[u>>2]|0)>=1){s=a+228|0;t=1;while(1){q=k[d>>2]|0;if((q+-1|0)>>>0>3){p=k[a>>2]|0;k[p+20>>2]=26;k[p+24>>2]=q;k[p+28>>2]=4;$a[k[p>>2]&63](a)}f=(q|0)>0;if(f){e=0;do{c=k[d+4+(e<<2)>>2]|0;if(!((c|0)>=0?(c|0)<(k[x>>2]|0):0)){p=k[a>>2]|0;k[p+20>>2]=19;k[p+24>>2]=t;$a[k[p>>2]&63](a)}do if((e|0)>0){if((c|0)>(k[d+4+(e+-1<<2)>>2]|0))break;p=k[a>>2]|0;k[p+20>>2]=19;k[p+24>>2]=t;$a[k[p>>2]&63](a)}while(0);e=e+1|0}while((e|0)!=(q|0))}j=k[d+20>>2]|0;l=k[d+24>>2]|0;o=k[d+28>>2]|0;p=k[d+32>>2]|0;a:do if(!(k[s>>2]|0)){if((l|0)!=63|(o|j|p|0)!=0){p=k[a>>2]|0;k[p+20>>2]=17;k[p+24>>2]=t;$a[k[p>>2]&63](a)}if(f){e=0;do{c=v+(k[d+4+(e<<2)>>2]<<2)|0;if(k[c>>2]|0){p=k[a>>2]|0;k[p+20>>2]=19;k[p+24>>2]=t;$a[k[p>>2]&63](a)}k[c>>2]=1;e=e+1|0}while((e|0)!=(q|0))}}else{if(!(j>>>0<=63?!(p>>>0>10|(o>>>0>10|((l|0)<(j|0)|(l|0)>63))):0)){n=k[a>>2]|0;k[n+20>>2]=17;k[n+24>>2]=t;$a[k[n>>2]&63](a)}c=(j|0)==0;do if(c){if(!l)break;n=k[a>>2]|0;k[n+20>>2]=17;k[n+24>>2]=t;$a[k[n>>2]&63](a)}else{if((q|0)==1)break;n=k[a>>2]|0;k[n+20>>2]=17;k[n+24>>2]=t;$a[k[n>>2]&63](a)}while(0);if(!f)break;m=(o|0)==0;n=(p|0)==(o+-1|0);if(c){j=l+1|0;g=(l|0)<0;i=0;while(1){h=k[d+4+(i<<2)>>2]|0;b:do if(!g){if(!n){if(m)e=0;else{c=0;while(1){l=k[a>>2]|0;k[l+20>>2]=17;k[l+24>>2]=t;$a[k[l>>2]&63](a);k[w+(h<<8)+(c<<2)>>2]=p;c=c+1|0;if((c|0)==(j|0))break b}}while(1){c=w+(h<<8)+(e<<2)|0;if((k[c>>2]|0)>=0){l=k[a>>2]|0;k[l+20>>2]=17;k[l+24>>2]=t;$a[k[l>>2]&63](a)}k[c>>2]=p;e=e+1|0;if((e|0)==(j|0))break b}}if(m){e=0;while(1){c=w+(h<<8)+(e<<2)|0;if((k[c>>2]|0)>=1){l=k[a>>2]|0;k[l+20>>2]=17;k[l+24>>2]=t;$a[k[l>>2]&63](a)}k[c>>2]=p;e=e+1|0;if((e|0)==(j|0))break b}}else f=0;do{c=w+(h<<8)+(f<<2)|0;e=k[c>>2]|0;do if((e|0)<0){l=k[a>>2]|0;k[l+20>>2]=17;k[l+24>>2]=t;$a[k[l>>2]&63](a)}else{if((o|0)==(e|0))break;l=k[a>>2]|0;k[l+20>>2]=17;k[l+24>>2]=t;$a[k[l>>2]&63](a)}while(0);k[c>>2]=p;f=f+1|0}while((f|0)!=(j|0))}while(0);i=i+1|0;if((i|0)==(q|0))break a}}g=(j|0)>(l|0);i=0;do{h=k[d+4+(i<<2)>>2]|0;if((k[w+(h<<8)>>2]|0)<0){f=k[a>>2]|0;k[f+20>>2]=17;k[f+24>>2]=t;$a[k[f>>2]&63](a)}c:do if(!g){if(!n){if(m)e=j;else{c=j;while(1){f=k[a>>2]|0;k[f+20>>2]=17;k[f+24>>2]=t;$a[k[f>>2]&63](a);k[w+(h<<8)+(c<<2)>>2]=p;if((c|0)<(l|0))c=c+1|0;else break c}}while(1){c=w+(h<<8)+(e<<2)|0;if((k[c>>2]|0)>=0){f=k[a>>2]|0;k[f+20>>2]=17;k[f+24>>2]=t;$a[k[f>>2]&63](a)}k[c>>2]=p;if((e|0)<(l|0))e=e+1|0;else break c}}if(m){e=j;while(1){c=w+(h<<8)+(e<<2)|0;if((k[c>>2]|0)>=1){f=k[a>>2]|0;k[f+20>>2]=17;k[f+24>>2]=t;$a[k[f>>2]&63](a)}k[c>>2]=p;if((e|0)<(l|0))e=e+1|0;else break c}}else f=j;while(1){c=w+(h<<8)+(f<<2)|0;e=k[c>>2]|0;do if((e|0)<0){e=k[a>>2]|0;k[e+20>>2]=17;k[e+24>>2]=t;$a[k[e>>2]&63](a)}else{if((o|0)==(e|0))break;e=k[a>>2]|0;k[e+20>>2]=17;k[e+24>>2]=t;$a[k[e>>2]&63](a)}while(0);k[c>>2]=p;if((f|0)<(l|0))f=f+1|0;else break}}while(0);i=i+1|0}while((i|0)!=(q|0))}while(0);if((t|0)<(k[u>>2]|0)){t=t+1|0;d=d+36|0}else break}e=k[s>>2]|0;c=k[x>>2]|0}d=(c|0)>0;if(!e){if(!d)break;d=0;do{if(!(k[v+(d<<2)>>2]|0)){c=k[a>>2]|0;k[c+20>>2]=45;$a[k[c>>2]&63](a);c=k[x>>2]|0}d=d+1|0}while((d|0)<(c|0))}else{if(!d)break;d=0;do{if((k[w+(d<<8)>>2]|0)<0){c=k[a>>2]|0;k[c+20>>2]=45;$a[k[c>>2]&63](a);c=k[x>>2]|0}d=d+1|0}while((d|0)<(c|0))}}else k[a+228>>2]=1;while(0);if(k[a+228>>2]|0?(k[a+180>>2]|0)==0:0)k[a+184>>2]=1}else{k[a+228>>2]=0;k[a+168>>2]=1}do if(b){c=a+184|0;e=k[c>>2]|0;d=z+4208|0;if(!e){k[d>>2]=2;d=0;break}else{k[d>>2]=1;d=e;break}}else{k[z+4208>>2]=0;d=a+184|0;c=d;d=k[d>>2]|0}while(0);k[z+4220>>2]=0;k[z+4212>>2]=0;i=a+168|0;f=k[i>>2]<<((d|0)!=0&1);g=z+4216|0;k[g>>2]=f;h=z+4224|0;k[h>>2]=0;e=k[y>>2]|0;if(k[e+24>>2]|0){d=(k[e+40>>2]|0)!=0;if(!(k[c>>2]|0)){c=ha(k[x>>2]|0,d?2:1)|0;c=(ha(c,k[e+4168>>2]|0)|0)+1|0}else{c=ha(k[x>>2]|0,d?4:2)|0;c=ha(c,k[e+4168>>2]|0)|0}k[h>>2]=c;k[g>>2]=f+c}if(!(k[e+20>>2]|0)){r=A;return}k[z+5012>>2]=0;c=k[i>>2]|0;if((c|0)<=0){r=A;return}eh(z+4228|0,0,((c|0)>1?c:1)<<2|0)|0;r=A;return}function vb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;c=k[a+348>>2]|0;d=a+24|0;b=k[d>>2]|0;f=k[b>>2]|0;k[b>>2]=f+1;i[f>>0]=-1;f=b+4|0;e=(k[f>>2]|0)+-1|0;k[f>>2]=e;if((e|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-40;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}k[c+28>>2]=0;do if(k[a+208>>2]|0){b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-1;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-32;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=16;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=74;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=70;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=73;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=70;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}f=i[a+212>>0]|0;b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=f;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}f=i[a+213>>0]|0;b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=f;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}f=i[a+214>>0]|0;b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=f;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}c=j[a+216>>1]|0;b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=(c&65535)>>>8;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=c;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}c=j[a+218>>1]|0;b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=(c&65535)>>>8;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;do if(!f){if(cb[k[b+12>>2]&15](a)|0)break;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}while(0);b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=c;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;do if(!f){if(cb[k[b+12>>2]&15](a)|0)break;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}while(0);b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;do if(!f){if(cb[k[b+12>>2]&15](a)|0)break;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}while(0);b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if(f|0)break;if(cb[k[b+12>>2]&15](a)|0)break;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}while(0);if(!(k[a+220>>2]|0))return;b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-1;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-18;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=14;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=65;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=100;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=111;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=98;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=101;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=100;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if((f|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;do if(!f){if(cb[k[b+12>>2]&15](a)|0)break;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a)}while(0);switch(k[a+64>>2]|0){case 3:{b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=1;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if(f|0)return;if(cb[k[b+12>>2]&15](a)|0)return;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a);return}case 5:{b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=2;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if(f|0)return;if(cb[k[b+12>>2]&15](a)|0)return;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a);return}default:{b=k[d>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=0;e=b+4|0;f=(k[e>>2]|0)+-1|0;k[e>>2]=f;if(f|0)return;if(cb[k[b+12>>2]&15](a)|0)return;f=k[a>>2]|0;k[f+20>>2]=24;$a[k[f>>2]&63](a);return}}}function wb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;switch(k[a+44>>2]|0){case 6:{d=k[d>>2]|0;q=k[a+452>>2]|0;r=k[a+324>>2]|0;s=k[q+16>>2]|0;t=k[q+20>>2]|0;p=k[q+24>>2]|0;q=k[q+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){u=l[g>>0]|0;w=l[h>>0]|0;x=k[s+(w<<2)>>2]|0;w=(k[p+(w<<2)>>2]|0)+(k[q+(u<<2)>>2]|0)>>16;u=k[t+(u<<2)>>2]|0;v=l[a>>0]|0;i[j>>0]=i[r+(v+x)>>0]|0;i[j+1>>0]=i[r+(v+w)>>0]|0;i[j+2>>0]=i[r+(v+u)>>0]|0;v=l[a+1>>0]|0;i[j+3>>0]=i[r+(v+x)>>0]|0;i[j+4>>0]=i[r+(v+w)>>0]|0;i[j+5>>0]=i[r+(v+u)>>0]|0;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+6|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o*6|0)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[p+(u<<2)>>2]|0)+(k[q+(x<<2)>>2]|0)>>16;x=k[t+(x<<2)>>2]|0;w=l[f>>0]|0;i[d>>0]=i[r+(w+(k[s+(u<<2)>>2]|0))>>0]|0;i[d+1>>0]=i[r+(w+v)>>0]|0;i[d+2>>0]=i[r+(w+x)>>0]|0;return}case 12:case 7:{d=k[d>>2]|0;t=k[a+452>>2]|0;p=k[a+324>>2]|0;q=k[t+16>>2]|0;r=k[t+20>>2]|0;s=k[t+24>>2]|0;t=k[t+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){x=l[g>>0]|0;v=l[h>>0]|0;u=k[q+(v<<2)>>2]|0;v=(k[s+(v<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[a>>0]|0;i[j>>0]=i[p+(w+u)>>0]|0;i[j+1>>0]=i[p+(w+v)>>0]|0;i[j+2>>0]=i[p+(w+x)>>0]|0;i[j+3>>0]=-1;w=l[a+1>>0]|0;i[j+4>>0]=i[p+(w+u)>>0]|0;i[j+5>>0]=i[p+(w+v)>>0]|0;i[j+6>>0]=i[p+(w+x)>>0]|0;i[j+7>>0]=-1;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+8|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o<<3)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[s+(u<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[f>>0]|0;i[d>>0]=i[p+(w+(k[q+(u<<2)>>2]|0))>>0]|0;i[d+1>>0]=i[p+(w+v)>>0]|0;i[d+2>>0]=i[p+(w+x)>>0]|0;i[d+3>>0]=-1;return}case 8:{d=k[d>>2]|0;t=k[a+452>>2]|0;p=k[a+324>>2]|0;q=k[t+16>>2]|0;r=k[t+20>>2]|0;s=k[t+24>>2]|0;t=k[t+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){x=l[g>>0]|0;v=l[h>>0]|0;u=k[q+(v<<2)>>2]|0;v=(k[s+(v<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[a>>0]|0;i[j+2>>0]=i[p+(w+u)>>0]|0;i[j+1>>0]=i[p+(w+v)>>0]|0;i[j>>0]=i[p+(w+x)>>0]|0;w=l[a+1>>0]|0;i[j+5>>0]=i[p+(w+u)>>0]|0;i[j+4>>0]=i[p+(w+v)>>0]|0;i[j+3>>0]=i[p+(w+x)>>0]|0;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+6|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o*6|0)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[s+(u<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[f>>0]|0;i[d+2>>0]=i[p+(w+(k[q+(u<<2)>>2]|0))>>0]|0;i[d+1>>0]=i[p+(w+v)>>0]|0;i[d>>0]=i[p+(w+x)>>0]|0;return}case 13:case 9:{d=k[d>>2]|0;t=k[a+452>>2]|0;p=k[a+324>>2]|0;q=k[t+16>>2]|0;r=k[t+20>>2]|0;s=k[t+24>>2]|0;t=k[t+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){x=l[g>>0]|0;v=l[h>>0]|0;u=k[q+(v<<2)>>2]|0;v=(k[s+(v<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[a>>0]|0;i[j+2>>0]=i[p+(w+u)>>0]|0;i[j+1>>0]=i[p+(w+v)>>0]|0;i[j>>0]=i[p+(w+x)>>0]|0;i[j+3>>0]=-1;w=l[a+1>>0]|0;i[j+6>>0]=i[p+(w+u)>>0]|0;i[j+5>>0]=i[p+(w+v)>>0]|0;i[j+4>>0]=i[p+(w+x)>>0]|0;i[j+7>>0]=-1;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+8|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o<<3)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[s+(u<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[f>>0]|0;i[d+2>>0]=i[p+(w+(k[q+(u<<2)>>2]|0))>>0]|0;i[d+1>>0]=i[p+(w+v)>>0]|0;i[d>>0]=i[p+(w+x)>>0]|0;i[d+3>>0]=-1;return}case 14:case 10:{d=k[d>>2]|0;t=k[a+452>>2]|0;p=k[a+324>>2]|0;q=k[t+16>>2]|0;r=k[t+20>>2]|0;s=k[t+24>>2]|0;t=k[t+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){x=l[g>>0]|0;v=l[h>>0]|0;u=k[q+(v<<2)>>2]|0;v=(k[s+(v<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[a>>0]|0;i[j+3>>0]=i[p+(w+u)>>0]|0;i[j+2>>0]=i[p+(w+v)>>0]|0;i[j+1>>0]=i[p+(w+x)>>0]|0;i[j>>0]=-1;w=l[a+1>>0]|0;i[j+7>>0]=i[p+(w+u)>>0]|0;i[j+6>>0]=i[p+(w+v)>>0]|0;i[j+5>>0]=i[p+(w+x)>>0]|0;i[j+4>>0]=-1;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+8|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o<<3)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[s+(u<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[f>>0]|0;i[d+3>>0]=i[p+(w+(k[q+(u<<2)>>2]|0))>>0]|0;i[d+2>>0]=i[p+(w+v)>>0]|0;i[d+1>>0]=i[p+(w+x)>>0]|0;i[d>>0]=-1;return}case 15:case 11:{d=k[d>>2]|0;t=k[a+452>>2]|0;p=k[a+324>>2]|0;q=k[t+16>>2]|0;r=k[t+20>>2]|0;s=k[t+24>>2]|0;t=k[t+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){x=l[g>>0]|0;v=l[h>>0]|0;u=k[q+(v<<2)>>2]|0;v=(k[s+(v<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[a>>0]|0;i[j+1>>0]=i[p+(w+u)>>0]|0;i[j+2>>0]=i[p+(w+v)>>0]|0;i[j+3>>0]=i[p+(w+x)>>0]|0;i[j>>0]=-1;w=l[a+1>>0]|0;i[j+5>>0]=i[p+(w+u)>>0]|0;i[j+6>>0]=i[p+(w+v)>>0]|0;i[j+7>>0]=i[p+(w+x)>>0]|0;i[j+4>>0]=-1;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+8|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o<<3)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[s+(u<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[f>>0]|0;i[d+1>>0]=i[p+(w+(k[q+(u<<2)>>2]|0))>>0]|0;i[d+2>>0]=i[p+(w+v)>>0]|0;i[d+3>>0]=i[p+(w+x)>>0]|0;i[d>>0]=-1;return}default:{d=k[d>>2]|0;t=k[a+452>>2]|0;p=k[a+324>>2]|0;q=k[t+16>>2]|0;r=k[t+20>>2]|0;s=k[t+24>>2]|0;t=k[t+28>>2]|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;e=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;b=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;m=a+112|0;c=k[m>>2]|0;o=c>>>1;if(o){n=o<<1;c=o;a=f;g=e;h=b;j=d;while(1){x=l[g>>0]|0;v=l[h>>0]|0;u=k[q+(v<<2)>>2]|0;v=(k[s+(v<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[a>>0]|0;i[j>>0]=i[p+(w+u)>>0]|0;i[j+1>>0]=i[p+(w+v)>>0]|0;i[j+2>>0]=i[p+(w+x)>>0]|0;w=l[a+1>>0]|0;i[j+3>>0]=i[p+(w+u)>>0]|0;i[j+4>>0]=i[p+(w+v)>>0]|0;i[j+5>>0]=i[p+(w+x)>>0]|0;c=c+-1|0;if(!c)break;else{a=a+2|0;g=g+1|0;h=h+1|0;j=j+6|0}}c=k[m>>2]|0;f=f+n|0;e=e+o|0;b=b+o|0;d=d+(o*6|0)|0}if(!(c&1))return;x=l[e>>0]|0;u=l[b>>0]|0;v=(k[s+(u<<2)>>2]|0)+(k[t+(x<<2)>>2]|0)>>16;x=k[r+(x<<2)>>2]|0;w=l[f>>0]|0;i[d>>0]=i[p+(w+(k[q+(u<<2)>>2]|0))>>0]|0;i[d+1>>0]=i[p+(w+v)>>0]|0;i[d+2>>0]=i[p+(w+x)>>0]|0;return}}}function xb(a,b,c,d,e,f,g,h,n,q,s,t){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;n=n|0;q=q|0;s=s|0;t=t|0;var u=0,v=0,w=0,x=0.0,y=0,z=0,A=0.0,B=0.0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0.0,$=0,aa=0,ba=0.0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0.0,wa=0.0;ua=r;r=r+1328|0;da=ua+1072|0;ca=ua+816|0;ja=ua+560|0;ra=ua+520|0;ta=ua+484|0;sa=ua+448|0;ia=ua+192|0;ea=ua+128|0;fa=ua+64|0;ga=ua;oa=a+332|0;qa=(60/((m[g>>1]|0)>>>0)|0)+2|1;qa=qa>>>0>9?9:qa;na=k[a+316>>2]|0;pa=k[a+320>>2]|0;na=(na|0)==0?1:na;if((pa|0)<(na|0)){r=ua;return}u=k[oa>>2]|0;if(!(k[u+32>>2]|0)){ma=0;la=0;ka=0;z=0}else{y=f<<2;z=y+4|0;w=kb(z)|0;v=kb(z)|0;y=kb(y)|0;z=kb(z)|0;if(!((w|0)!=0&(v|0)!=0&(y|0)!=0&(z|0)!=0)){u=k[a>>2]|0;k[u+20>>2]=54;$a[k[u>>2]&63](a);u=k[oa>>2]|0}o[w>>2]=0.0;o[v>>2]=0.0;k[z>>2]=0;ma=v;la=w;ka=y}if(!(k[u+28>>2]|0))u=0;else{u=f<<2;v=f<<1;w=0;do{X=kb(u)|0;k[ra+(w<<2)>>2]=X;Z=kb(u)|0;k[ta+(w<<2)>>2]=Z;Y=kb(v)|0;k[sa+(w<<2)>>2]=Y;if(!((X|0)!=0?!((Y|0)==0|(Z|0)==0):0)){Z=k[a>>2]|0;k[Z+20>>2]=54;$a[k[Z>>2]&63](a)}w=w+1|0}while((w|0)<(qa|0));u=0}do{Z=m[g+(u<<1)>>1]|0;Q=1.0/+(ha(Z,Z)|0);o[ia+(u<<2)>>2]=Q;u=u+1|0}while((u|0)!=64);if(!f){u=k[oa>>2]|0;v=k[u+32>>2]|0}else{Q=+o[ia>>2];R=na+-1|0;S=da+(R<<2)|0;T=ca+(R<<2)|0;U=qa>>>1;Z=(s|0)!=0&(t|0)!=0;V=da+(pa<<2)|0;W=c+1024|0;X=c+1264|0;P=0;Y=1;while(1){u=1;x=0.0;do{O=j[e+(P<<7)+(u<<1)>>1]|0;x=x+ +(ha(O,O)|0);u=u+1|0}while((u|0)!=64);u=k[oa>>2]|0;A=+o[u+4200>>2];B=+o[u+4196>>2];if(A>0.0){F=+xf(B);x=F/(x/63.0+ +xf(A))}else x=+xf(B+-12.0);F=x*Q;o[S>>2]=0.0;o[T>>2]=0.0;if(!(k[u+28>>2]|0)){F=0.0;L=na}else{M=e+(P<<7)|0;N=j[M>>1]|0;H=N<<16>>16;N=N<<16>>16>-1?H:0-H|0;G=m[g>>1]|0;E=G<<3;G=(((G<<2)+N|0)/(E|0)|0)-U|0;H=H>>30|1;I=t+(P<<7)|0;J=s+(P<<7)|0;K=(P|0)==0;L=P+-1|0;O=0;do{u=G+O&65535;u=u<<16>>16>1023?1023:u;u=(u<<16>>16<-1023?-1023:u)<<16>>16;D=(ha(u,E)|0)-N|0;A=F*+(ha(D,D)|0);u=ha(u,H)|0;j[(k[sa+(O<<2)>>2]|0)+(P<<1)>>1]=u;if(Z?(_=+o[(k[oa>>2]|0)+4204>>2],_>0.0):0){D=(j[I>>1]|0)-(j[M>>1]|0)-(ha((j[J>>1]|0)-(u<<16>>16)|0,E)|0)|0;A=A+_*(F*+(ha(D,D)|0)-A)}if(K){v=(u<<16>>16)-(j[q>>1]|0)|0;v=(v|0)>-1?v:0-v|0;if(!v)u=0;else{u=0;do{v=v>>1;u=u+1|0}while((v|0)!=0)}o[k[ra+(O<<2)>>2]>>2]=A+ +((i[b+1024+u>>0]|0)+u|0);k[k[ta+(O<<2)>>2]>>2]=-1}else{D=ta+(O<<2)|0;w=u<<16>>16;a=k[ra+(O<<2)>>2]|0;y=a+(P<<2)|0;a=a+(P<<2)|0;C=0;do{v=w-(j[(k[sa+(C<<2)>>2]|0)+(L<<1)>>1]|0)|0;v=(v|0)>-1?v:0-v|0;if(!v)u=0;else{u=0;do{v=v>>1;u=u+1|0}while((v|0)!=0)}B=+o[(k[ra+(C<<2)>>2]|0)+(L<<2)>>2]+(A+ +((i[b+1024+u>>0]|0)+u|0));if(!((C|0)!=0?!(B<+o[a>>2]):0)){o[y>>2]=B;k[(k[D>>2]|0)+(P<<2)>>2]=C}C=C+1|0}while((C|0)<(qa|0))}O=O+1|0}while((O|0)<(qa|0));F=0.0;L=na}while(1){D=k[14344+(L<<2)>>2]|0;u=j[e+(P<<7)+(D<<1)>>1]|0;y=u<<16>>16;I=y>>31;y=u<<16>>16>-1?y:0-y|0;u=m[g+(D<<1)>>1]|0;a=u<<3;B=x*+(ha(y,y)|0);A=+o[ia+(D<<2)>>2];J=L+-1|0;K=da+(J<<2)|0;F=B*A+F;o[da+(L<<2)>>2]=F;u=((u<<2)+y|0)/(a|0)|0;if(u){u=(u|0)>1023?1023:u;C=i[27471+u>>0]|0;H=C&255;C=C<<24>>24==0;if(!C){v=H+-1|0;w=0;do{N=(w|0)<(v|0)?(2<<w)+-1|0:u;k[ea+(w<<2)>>2]=N;N=(ha(N,a)|0)-y|0;O=w;w=w+1|0;k[fa+(O<<2)>>2]=w;B=x*+(ha(N,N)|0)*A;o[ga+(O<<2)>>2]=B}while((w|0)!=(H|0))}G=ca+(L<<2)|0;o[G>>2]=9999999680285692465065626.0e13;if((na|0)<=(L|0)?($=d+(P<<7)+(D<<1)|0,aa=ja+(L<<2)|0,!C):0){A=9999999680285692465065626.0e13;E=R;do{if(!((E|0)!=(R|0)?(j[d+(P<<7)+(k[14344+(E<<2)>>2]<<1)>>1]|0)==0:0)){w=J-E|0;v=w>>4;u=i[X>>0]|0;if(!((v|0)!=0&u<<24>>24==0)){D=ha(u<<24>>24,v)|0;y=w<<4&240;a=da+(E<<2)|0;C=ca+(E<<2)|0;w=0;do{u=k[fa+(w<<2)>>2]|0;v=i[u+y+(c+1024)>>0]|0;do if(v<<24>>24){B=+(u+D+(v<<24>>24)|0)+ +o[ga+(w<<2)>>2]+(+o[K>>2]-+o[a>>2]+ +o[C>>2]);if(!(B<A))break;j[$>>1]=(k[ea+(w<<2)>>2]^I)-I;o[G>>2]=B;k[aa>>2]=E;A=B}while(0);w=w+1|0}while((w|0)!=(H|0))}}E=E+1|0}while((E|0)<(L|0))}}else{j[d+(P<<7)+(D<<1)>>1]=0;o[ca+(L<<2)>>2]=9999999680285692465065626.0e13}if((L|0)>=(pa|0))break;else L=L+1|0}F=+o[V>>2];B=+(i[W>>0]|0);x=F+B;A=F;v=na;u=R;while(1){if(j[d+(P<<7)+(k[14344+(v<<2)>>2]<<1)>>1]|0){va=+o[ca+(v<<2)>>2]+F-+o[da+(v<<2)>>2];wa=(v|0)<(pa|0)?va+B:va;O=wa<x;x=O?wa:x;A=O?va:A;u=O?v:u}if((v|0)<(pa|0))v=v+1|0;else break}y=((u|0)<(pa|0)&1)+((u|0)==(R|0)&1)|0;v=pa;while(1){if((v|0)>(u|0))do{j[d+(P<<7)+(k[14344+(v<<2)>>2]<<1)>>1]=0;v=v+-1|0}while((v|0)>(u|0));else u=v;if((u|0)>(na|0)){v=u+-1|0;u=k[ja+(u<<2)>>2]|0}else break}u=k[oa>>2]|0;v=k[u+32>>2]|0;if(v){E=la+(P<<2)|0;w=P+1|0;o[la+(w<<2)>>2]=F+ +o[E>>2];k[z+(w<<2)>>2]=y;if((y|0)!=2){a=ka+(P<<2)|0;C=ma+(w<<2)|0;x=9999999680285692465065626.0e13;D=0;do{y=k[z+(D<<2)>>2]|0;if((y|0)!=2?(O=l[27471+(P-D+y)>>0]|0,ba=A+ +o[E>>2]-+o[la+(D<<2)>>2]+ +o[ma+(D<<2)>>2]+ +((i[(O<<4)+(c+1024)>>0]|0)+O|0),ba<x):0){k[a>>2]=D;o[C>>2]=ba;x=ba}D=D+1|0}while((D|0)!=(Y|0))}}else w=P+1|0;if((w|0)==(f|0))break;else{P=w;Y=Y+1|0}}}if(v){w=la+(f<<2)|0;x=9999999680285692465065626.0e13;y=0;v=f;while(1){u=k[z+(y<<2)>>2]|0;if((u|0)!=2){t=l[27471+(f-y+u)>>0]|0;wa=+o[w>>2]+0.0-+o[la+(y<<2)>>2]+ +((i[(t<<4)+(c+1024)>>0]|0)+t|0);t=wa<x;x=t?wa:x;v=t?y:v}if((y|0)==(f|0))break;else y=y+1|0}u=f+-1|0;if((u|0)>-1){w=v;while(1){if((u|0)<(w|0))v=u;else while(1){v=na;while(1){j[d+(u<<7)+(k[14344+(v<<2)>>2]<<1)>>1]=0;if((v|0)<(pa|0))v=v+1|0;else break}v=u+-1|0;if((u|0)>(w|0))u=v;else break}u=v+-1|0;if((u|0)<=-1)break;else w=k[ka+(v<<2)>>2]|0}}Ab(la);Ab(ma);Ab(ka);Ab(z);u=k[oa>>2]|0}if((k[u+48>>2]|0)!=0&(f|0)!=0){v=0;do{w=1;do{pa=j[d+(v<<7)+(w<<1)>>1]|0;wa=+(ha(pa,j[e+(v<<7)+(w<<1)>>1]|0)|0);oa=h+(w<<3)|0;p[oa>>3]=+p[oa>>3]+wa;wa=+(ha(pa<<3,pa)|0);pa=n+(w<<3)|0;p[pa>>3]=+p[pa>>3]+wa;w=w+1|0}while((w|0)!=64);v=v+1|0}while((v|0)!=(f|0))}if(!(k[u+28>>2]|0)){r=ua;return}w=f+-1|0;if((qa|0)>1){v=1;u=0;do{u=+o[(k[ra+(v<<2)>>2]|0)+(w<<2)>>2]<+o[(k[ra+(u<<2)>>2]|0)+(w<<2)>>2]?v:u;v=v+1|0}while((v|0)<(qa|0))}else u=0;if((w|0)>-1){v=w;while(1){j[d+(v<<7)>>1]=j[(k[sa+(u<<2)>>2]|0)+(v<<1)>>1]|0;u=k[(k[ta+(u<<2)>>2]|0)+(v<<2)>>2]|0;if((v|0)<=0)break;else v=v+-1|0}}j[q>>1]=j[d+(w<<7)>>1]|0;u=0;do{Ab(k[ra+(u<<2)>>2]|0);Ab(k[ta+(u<<2)>>2]|0);Ab(k[sa+(u<<2)>>2]|0);u=u+1|0}while((u|0)<(qa|0));r=ua;return}function yb(a,b,c,d,e,f,g,h,i,l,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;l=l|0;n=n|0;var q=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0,B=0,C=0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0.0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0;Ca=r;r=r+1296|0;ra=Ca+1040|0;qa=Ca+784|0;va=Ca+528|0;ya=Ca+492|0;Ba=Ca+456|0;za=Ca+420|0;Aa=Ca+384|0;ua=Ca+128|0;sa=Ca+64|0;ta=Ca;v=a+332|0;xa=(60/((m[f>>1]|0)>>>0)|0)+2|1;xa=xa>>>0>9?9:xa;u=k[a+316>>2]|0;oa=k[a+320>>2]|0;na=(u|0)==0?1:u;if((oa|0)<(na|0)){r=Ca;return}if(!(k[(k[v>>2]|0)+28>>2]|0))q=0;else{q=e<<2;s=e<<1;t=0;do{ja=kb(q)|0;k[ya+(t<<2)>>2]=ja;ka=kb(q)|0;k[Ba+(t<<2)>>2]=ka;ma=kb(s)|0;k[za+(t<<2)>>2]=ma;la=kb(q)|0;k[Aa+(t<<2)>>2]=la;if(!(!((ja|0)==0|(ka|0)==0)?!((la|0)==0|(ma|0)==0):0)){ma=k[a>>2]|0;k[ma+20>>2]=54;$a[k[ma>>2]&63](a)}t=t+1|0}while((t|0)<(xa|0));q=0}do{ma=m[f+(q<<1)>>1]|0;$=1.0/+(ha(ma,ma)|0);o[ua+(q<<2)>>2]=$;q=q+1|0}while((q|0)!=64);if(e){$=+o[ua>>2];aa=na+-1|0;ba=ra+(aa<<2)|0;ca=qa+(aa<<2)|0;da=xa>>>1;ma=(l|0)!=0&(n|0)!=0;ea=b+2560|0;fa=b+2564|0;ga=ra+(oa<<2)|0;ia=b+516|0;ja=sa+4|0;ka=ta+4|0;la=b+2568|0;_=u>>>0>1?u:1;q=k[v>>2]|0;V=q+4200|0;W=q+4196|0;X=q+28|0;Y=q+4204|0;Z=0;do{s=1;w=0.0;do{T=j[d+(Z<<7)+(s<<1)>>1]|0;w=w+ +(ha(T,T)|0);s=s+1|0}while((s|0)!=64);x=+o[V>>2];y=+o[W>>2];if(x>0.0){U=+xf(y);w=U/(w/63.0+ +xf(x))}else w=+xf(y+-12.0);z=w*$;o[ba>>2]=0.0;o[ca>>2]=0.0;if(!(k[X>>2]|0))P=_;else{N=d+(Z<<7)|0;O=j[N>>1]|0;R=O<<16>>16;O=O<<16>>16>-1?R:0-R|0;Q=m[f>>1]|0;P=Q<<3;Q=(((Q<<2)+O|0)/(P|0)|0)-da|0;R=R>>30|1;S=n+(Z<<7)|0;I=l+(Z<<7)|0;J=(Z|0)==0;K=J?1:xa;L=Z+-1|0;T=0;do{s=Q+T<<16>>16;M=(ha(s,P)|0)-O|0;x=z*+(ha(M,M)|0);s=ha(s,R)|0;M=s&65535;j[(k[za+(T<<2)>>2]|0)+(Z<<1)>>1]=M;if(ma?(pa=+o[Y>>2],pa>0.0):0){H=(j[S>>1]|0)-(j[N>>1]|0)-(ha((j[I>>1]|0)-(s<<16>>16)|0,P)|0)|0;x=x+pa*(z*+(ha(H,H)|0)-x)}A=s<<16>>16;B=Ba+(T<<2)|0;C=Aa+(T<<2)|0;G=k[ya+(T<<2)>>2]|0;F=G+(Z<<2)|0;G=G+(Z<<2)|0;H=0;do{if(J){s=j[i>>1]|0;a=s;s=s<<16>>16;t=0}else{s=j[(k[za+(H<<2)>>2]|0)+(L<<1)>>1]|0;a=s;s=s<<16>>16;t=k[(k[Aa+(H<<2)>>2]|0)+(L<<2)>>2]|0}s=A-s|0;v=M<<16>>16!=a<<16>>16;y=+o[b+(t<<3)+((v&1)<<2)>>2];if(v){a=s>>>31;y=y+ +o[b+(t+1<<3)+(a<<2)>>2];a=(a|2)+t|0;u=s>>31&4;v=((s|0)>-1?s:0-s|0)+-1|0;if(v){y=y+ +o[b+(a<<3)+4>>2];s=v>>1;if(!s){t=1;a=20}else{t=1;a=20;do{y=y+ +o[b+(a<<3)+4>>2];t=t<<1;a=a+1|0;s=s>>1}while((s|0)!=0)}}else t=0;y=y+ +o[b+(a<<3)>>2];if((t|0)<(1<<k[ea>>2]>>1|0))s=0;else s=((t|0)>(1<<k[fa>>2]>>1|0)?12:4)+u|0;u=a+14|0;a=t>>1;if(a)do{y=y+ +o[b+(u<<3)+(((a&v|0)!=0&1)<<2)>>2];a=a>>1}while((a|0)!=0)}else s=0;y=x+y;if(!J)y=y+ +o[(k[ya+(H<<2)>>2]|0)+(L<<2)>>2];if(!((H|0)!=0?!(y<+o[G>>2]):0)){o[F>>2]=y;k[(k[B>>2]|0)+(Z<<2)>>2]=J?-1:H;k[(k[C>>2]|0)+(Z<<2)>>2]=s}H=H+1|0}while((H|0)<(K|0));T=T+1|0}while((T|0)<(xa|0));P=_}while(1){v=k[14344+(P<<2)>>2]|0;t=j[d+(Z<<7)+(v<<1)>>1]|0;s=t<<16>>16;O=s>>31;s=t<<16>>16>-1?s:0-s|0;t=m[f+(v<<1)>>1]|0;a=t<<3;E=w*+(ha(s,s)|0);x=+o[ua+(v<<2)>>2];u=P+-1|0;U=+o[ra+(u<<2)>>2];o[ra+(P<<2)>>2]=U+x*E;t=((t<<2)+s|0)/(a|0)|0;if(t){k[sa>>2]=t;T=(ha(t,a)|0)-s|0;E=w*+(ha(T,T)|0)*x;o[ta>>2]=E;if((t|0)>1){N=t+-1|0;k[ja>>2]=N;N=(ha(N,a)|0)-s|0;E=w*+(ha(N,N)|0)*x;o[ka>>2]=E;N=2}else N=1;M=qa+(P<<2)|0;o[M>>2]=9999999680285692465065626.0e13;if((na|0)<=(P|0)){K=u*3|0;L=b+512+(K+1<<3)+4|0;K=K+2|0;H=c+(Z<<7)+(v<<1)|0;I=va+(P<<2)|0;J=b+512+(K<<3)+4|0;K=b+512+(K<<3)|0;x=9999999680285692465065626.0e13;s=aa;do if((s|0)!=(aa|0)?(j[c+(Z<<7)+(k[14344+(s<<2)>>2]<<1)>>1]|0)==0:0)s=s+1|0;else{y=+o[b+512+(s*3<<3)>>2];G=s+1|0;if((G|0)<(P|0)){a=s;t=G;while(1){y=y+ +o[b+512+((a*3|0)+1<<3)>>2];a=t+1|0;if((a|0)==(P|0))break;else{T=t;t=a;a=T}}}D=y+ +o[L>>2];E=U-+o[ra+(s<<2)>>2];F=qa+(s<<2)|0;C=0;do{B=k[sa+(C<<2)>>2]|0;A=B+-1|0;do if(A){z=+o[J>>2];y=z+1.0;if(A>>>0<2)wa=58;else{y=z+y;t=(P|0)<=(k[la>>2]|0)?189:217;a=A>>2;if(a){u=2;while(1){y=y+ +o[b+512+(t<<3)+4>>2];u=u<<1;v=t+1|0;a=a>>1;if(!a){a=v;break}else t=v}y=y+ +o[b+512+(a<<3)>>2];a=u>>1;if(!a)break;else u=t+15|0}else{u=t+14|0;a=1;y=y+ +o[b+512+(t<<3)>>2]}do{y=y+ +o[b+512+(u<<3)+(((a&A|0)!=0&1)<<2)>>2];a=a>>1}while((a|0)!=0)}}else{y=1.0;wa=58}while(0);if((wa|0)==58){wa=0;y=y+ +o[K>>2]}y=+(~~(D+y)|0)+ +o[ta+(C<<2)>>2]+(E+ +o[F>>2]);if(y<x){j[H>>1]=(B^O)-O;o[M>>2]=y;k[I>>2]=s;x=y}C=C+1|0}while((C|0)<(N|0));s=G}while((s|0)<(P|0))}}else{j[c+(Z<<7)+(v<<1)>>1]=0;o[qa+(P<<2)>>2]=9999999680285692465065626.0e13}if((P|0)<(oa|0))P=P+1|0;else break}y=+o[ga>>2];x=y+ +o[ia>>2];a=na;s=aa;while(1){if(!(j[c+(Z<<7)+(k[14344+(a<<2)>>2]<<1)>>1]|0))w=x;else{w=+o[qa+(a<<2)>>2]+y-+o[ra+(a<<2)>>2];if((a|0)<(oa|0))w=w+ +o[b+512+((a*3|0)+-3<<3)+4>>2];T=w<x;w=T?w:x;s=T?a:s}if((a|0)<(oa|0)){x=w;a=a+1|0}else{a=oa;break}}while(1){if((a|0)>(s|0))do{j[c+(Z<<7)+(k[14344+(a<<2)>>2]<<1)>>1]=0;a=a+-1|0}while((a|0)>(s|0));else s=a;if((s|0)>(na|0)){a=s+-1|0;s=k[va+(s<<2)>>2]|0}else break}Z=Z+1|0}while((Z|0)!=(e|0));if((k[q+48>>2]|0)!=0&(e|0)!=0){s=0;do{a=1;do{wa=j[c+(s<<7)+(a<<1)>>1]|0;pa=+(ha(wa,j[d+(s<<7)+(a<<1)>>1]|0)|0);n=g+(a<<3)|0;p[n>>3]=+p[n>>3]+pa;pa=+(ha(wa<<3,wa)|0);wa=h+(a<<3)|0;p[wa>>3]=+p[wa>>3]+pa;a=a+1|0}while((a|0)!=64);s=s+1|0}while((s|0)!=(e|0))}}else q=k[v>>2]|0;if(!(k[q+28>>2]|0)){r=Ca;return}a=e+-1|0;if((xa|0)>1){s=1;q=0;do{q=+o[(k[ya+(s<<2)>>2]|0)+(a<<2)>>2]<+o[(k[ya+(q<<2)>>2]|0)+(a<<2)>>2]?s:q;s=s+1|0}while((s|0)<(xa|0))}else q=0;if((a|0)>-1){s=a;while(1){j[c+(s<<7)>>1]=j[(k[za+(q<<2)>>2]|0)+(s<<1)>>1]|0;q=k[(k[Ba+(q<<2)>>2]|0)+(s<<2)>>2]|0;if((s|0)<=0)break;else s=s+-1|0}}j[i>>1]=j[c+(a<<7)>>1]|0;q=0;do{Ab(k[ya+(q<<2)>>2]|0);Ab(k[Ba+(q<<2)>>2]|0);Ab(k[za+(q<<2)>>2]|0);Ab(k[Aa+(q<<2)>>2]|0);q=q+1|0}while((q|0)<(xa|0));r=Ca;return}function zb(a){a=a|0;var b=0,c=0.0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0;u=a+332|0;v=k[u>>2]|0;$a[k[(k[a+364>>2]|0)+8>>2]&63](a);e=v+4208|0;switch(k[e>>2]|0){case 0:{if(k[(k[u>>2]|0)+24>>2]|0){k[e>>2]=3;v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}k[e>>2]=2;if(k[a+184>>2]|0){v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}a=v+4220|0;k[a>>2]=(k[a>>2]|0)+1;v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}case 1:{k[e>>2]=(k[v+4212>>2]|0)<((k[v+4224>>2]|0)+-1|0)?3:2;v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}case 2:{d=a+184|0;if(k[d>>2]|0)k[e>>2]=1;if(k[(k[u>>2]|0)+20>>2]|0){b=a+24|0;$a[k[(k[b>>2]|0)+16>>2]&63](a);k[b>>2]=k[v+5020>>2];b=v+4220|0;m=k[b>>2]|0;f=m+1|0;t=k[u>>2]|0;q=((k[t+4188>>2]|0)*3|0)+(k[t+4176>>2]|0)|0;r=q+2|0;h=k[t+4172>>2]|0;e=k[t+4180>>2]|0;s=h+4+e+((k[t+4192>>2]|0)*6|0)|0;n=k[d>>2]|0?2:1;d=(m|0)>=(r|0);a:do if((f|0)<2|d){if(!((h|0)<=(m|0)|d^1)){if((r|0)==(m|0)){k[t+5e3>>2]=0;k[t+4996>>2]=k[t+4484+(m<<2)>>2];e=0;break}d=f-r|0;if(((d|0)%2|0|0)!=1){e=0;break}f=d>>1;d=(k[t+4484+(m<<2)>>2]|0)+(k[t+4484+(m+-1<<2)>>2]|0)|0;e=t+4996|0;if(d>>>0<(k[e>>2]|0)>>>0){k[e>>2]=d;k[t+5e3>>2]=f}switch(f|0){case 2:{if(k[t+5e3>>2]|0){e=0;break a}break}case 3:{if((k[t+5e3>>2]|0)==2){e=0;break a}break}case 4:{if((k[t+5e3>>2]|0)==4){e=0;break a}break}default:{e=0;break a}}k[t+4220>>2]=h+-1;e=(ha(n,h)|0)+-1|0;e=e+(k[t+4224>>2]|0)|0;k[t+4212>>2]=e;k[t+16>>2]=(e|0)==((k[t+4216>>2]|0)+-1|0)&1;e=0;break}g=k[a+168>>2]|0;if((g|0)>(h|0)){l=e+h|0;if((f|0)==(l|0)){k[t+5016>>2]=(k[t+4484+(h<<2)>>2]|0)>>>0<=((k[t+4484+(h+2<<2)>>2]|0)+(k[t+4484+(h+1<<2)>>2]|0)|0)>>>0&1;e=h;break}d=(m|0)>=(s|0);if(!((m|0)<(l|0)|d)){h=f-l|0;if(((h|0)%6|0|0)!=4){e=l;break}i=(h|0)/6|0;e=(k[t+4484+(m+-2<<2)>>2]|0)+(k[t+4484+(m+-3<<2)>>2]|0)+(k[t+4484+(m+-1<<2)>>2]|0)+(k[t+4484+(m<<2)>>2]|0)|0;if((h|0)>5){f=l+4|0;g=l+5|0;d=0;do{m=d*6|0;e=(k[t+4484+(f+m<<2)>>2]|0)+e+(k[t+4484+(g+m<<2)>>2]|0)|0;d=d+1|0}while((d|0)<(i|0))}d=t+4996|0;if((h+5|0)>>>0>=11?e>>>0>=(k[d>>2]|0)>>>0:0){k[t+4220>>2]=s+-1;e=(ha(n,s)|0)+-1|0;k[t+4212>>2]=e+(k[t+4224>>2]|0);e=l;break}k[d>>2]=e;k[t+5012>>2]=i;e=l;break}if(!((g|0)<=(m|0)|d^1)){if((s+1|0)==(m|0)){k[t+5004>>2]=0;n=k[t+4484+(m+-1<<2)>>2]|0;e=t+4996|0;k[e>>2]=n;k[e>>2]=(k[t+4484+(m<<2)>>2]|0)+n;e=0;break}d=f-s|0;if(((d|0)%4|0|0)==2){f=d>>2;d=(k[t+4484+(m+-2<<2)>>2]|0)+(k[t+4484+(m+-3<<2)>>2]|0)+(k[t+4484+(m+-1<<2)>>2]|0)+(k[t+4484+(m<<2)>>2]|0)|0;e=t+4996|0;if(d>>>0<(k[e>>2]|0)>>>0){k[e>>2]=d;k[t+5004>>2]=f}switch(f|0){case 2:{if(k[t+5004>>2]|0){e=0;break a}break}case 3:{if((k[t+5004>>2]|0)==2){e=0;break a}break}case 4:{if((k[t+5004>>2]|0)==4){e=0;break a}break}default:{e=0;break a}}k[t+4220>>2]=g+-1;e=(ha(g,n)|0)+-1|0;e=e+(k[t+4224>>2]|0)|0;k[t+4212>>2]=e;k[t+16>>2]=(e|0)==((k[t+4216>>2]|0)+-1|0)&1;e=0}else e=0}else e=0}else e=0}else if(((m|0)%3|0|0)==2){f=(m|0)/3|0;d=(k[t+4484+(m<<2)>>2]|0)+(k[t+4484+(m+-1<<2)>>2]|0)|0;if((m|0)>2){e=0;do{d=(k[t+4484+((e*3|0)+3<<2)>>2]|0)+d|0;e=e+1|0}while((e|0)<(f|0))}e=t+4996|0;if((m+2|0)>>>0>=5?d>>>0>=(k[e>>2]|0)>>>0:0){k[t+4220>>2]=q+1;e=(ha(n,r)|0)+-1|0;k[t+4212>>2]=e+(k[t+4224>>2]|0);e=0;break}k[e>>2]=d;k[t+5008>>2]=f;e=0}else e=0;while(0);l=a+168|0;if((k[t+4220>>2]|0)==((k[l>>2]|0)+-1|0)){g=t+5008|0;d=k[g>>2]|0;h=t+5012|0;i=k[h>>2]|0;i=(d|0)<(i|0)?d:i;Od(a,0);d=k[u>>2]|0;f=k[d+4172>>2]|0;do if((k[l>>2]|0)>(f|0)?(o=k[d+4156>>2]|0,(o|0)!=0):0)if((o|0)==1|(k[t+5016>>2]|0)==0){Od(a,f+1|0);Od(a,f+2|0);break}else{Od(a,f);break}else f=e;while(0);d=t+5e3|0;e=k[d>>2]|0;if(!e)Od(a,r);else{Od(a,q+1+(e<<1)|0);Od(a,(k[d>>2]<<1)+r|0)}d=k[g>>2]|0;if((d|0)>(i|0))do{d=d+-1|0;Od(a,(d*3|0)+3|0)}while((d|0)>(i|0));if((k[l>>2]|0)>(k[(k[u>>2]|0)+4172>>2]|0)){d=t+5004|0;e=k[d>>2]|0;if(!e){Od(a,s);Od(a,s+1|0)}else{Od(a,s+-2+(e<<2)|0);Od(a,s+-1+(k[d>>2]<<2)|0);Od(a,(k[d>>2]<<2)+s|0);Od(a,s+1+(k[d>>2]<<2)|0)}f=k[u>>2]|0;f=(k[f+4180>>2]|0)+(k[f+4172>>2]|0)|0;d=k[h>>2]|0;if((d|0)>(i|0))do{d=d+-1|0;s=(d*6|0)+f|0;Od(a,s+4|0);Od(a,s+5|0)}while((d|0)>(i|0))}if((i|0)>0){d=i;do{e=d;d=d+-1|0;Od(a,(d*3|0)+3|0);if((k[l>>2]|0)>(k[(k[u>>2]|0)+4172>>2]|0)){s=(d*6|0)+f|0;Od(a,s+4|0);Od(a,s+5|0)}}while((e|0)>1)}d=k[l>>2]|0;if((d|0)>0){g=t+4228|0;f=0;do{e=k[g+(f<<2)>>2]|0;if(e){Ab(e);d=k[l>>2]|0}f=f+1|0}while((f|0)<(d|0))}}}else b=v+4220|0;k[b>>2]=(k[b>>2]|0)+1;v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}case 3:{d=k[v+4212>>2]|0;if(!(k[a+184>>2]|0))b=(d|0)<((k[v+4224>>2]|0)+-1|0)?3:2;else b=1;k[e>>2]=b;e=k[u>>2]|0;if((d+1|0)%(ha(k[e+40>>2]|0?4:2,k[a+60>>2]|0)|0)|0|0){v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}if(!(k[e+48>>2]|0)){v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}b=a+72|0;d=1;do{c=+p[e+2104+(d<<3)>>3];if(c!=0.0){u=~~(+p[e+56+(d<<3)>>3]/c+.5);u=(u|0)>254?254:u;j[(k[b>>2]|0)+(d<<1)>>1]=(u|0)<1?1:u}d=d+1|0}while((d|0)!=64);b=a+76|0;d=1;do{c=+p[e+2616+(d<<3)>>3];if(c!=0.0){u=~~(+p[e+568+(d<<3)>>3]/c+.5);u=(u|0)>254?254:u;j[(k[b>>2]|0)+(d<<1)>>1]=(u|0)<1?1:u}d=d+1|0}while((d|0)!=64);b=a+80|0;d=1;do{c=+p[e+3128+(d<<3)>>3];if(c!=0.0){u=~~(+p[e+1080+(d<<3)>>3]/c+.5);u=(u|0)>254?254:u;j[(k[b>>2]|0)+(d<<1)>>1]=(u|0)<1?1:u}d=d+1|0}while((d|0)!=64);b=a+84|0;d=1;do{c=+p[e+3640+(d<<3)>>3];if(c!=0.0){a=~~(+p[e+1592+(d<<3)>>3]/c+.5);a=(a|0)>254?254:a;j[(k[b>>2]|0)+(d<<1)>>1]=(a|0)<1?1:a}d=d+1|0}while((d|0)!=64);v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}default:{v=v+4212|0;a=k[v>>2]|0;a=a+1|0;k[v>>2]=a;return}}}function Ab(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;c=a+-8|0;g=k[24055]|0;if(c>>>0<g>>>0)Pa();a=k[a+-4>>2]|0;b=a&3;if((b|0)==1)Pa();d=a&-8;m=c+d|0;do if(!(a&1)){a=k[c>>2]|0;if(!b)return;j=c+(0-a)|0;i=a+d|0;if(j>>>0<g>>>0)Pa();if((j|0)==(k[24056]|0)){a=m+4|0;b=k[a>>2]|0;if((b&3|0)!=3){q=j;f=i;break}k[24053]=i;k[a>>2]=b&-2;k[j+4>>2]=i|1;k[j+i>>2]=i;return}d=a>>>3;if(a>>>0<256){b=k[j+8>>2]|0;c=k[j+12>>2]|0;a=96244+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<g>>>0)Pa();if((k[b+12>>2]|0)!=(j|0))Pa()}if((c|0)==(b|0)){k[24051]=k[24051]&~(1<<d);q=j;f=i;break}if((c|0)!=(a|0)){if(c>>>0<g>>>0)Pa();a=c+8|0;if((k[a>>2]|0)==(j|0))e=a;else Pa()}else e=c+8|0;k[b+12>>2]=c;k[e>>2]=b;q=j;f=i;break}e=k[j+24>>2]|0;c=k[j+12>>2]|0;do if((c|0)==(j|0)){b=j+16|0;c=b+4|0;a=k[c>>2]|0;if(!a){a=k[b>>2]|0;if(!a){h=0;break}}else b=c;while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<g>>>0)Pa();else{k[b>>2]=0;h=a;break}}else{d=k[j+8>>2]|0;if(d>>>0<g>>>0)Pa();a=d+12|0;if((k[a>>2]|0)!=(j|0))Pa();b=c+8|0;if((k[b>>2]|0)==(j|0)){k[a>>2]=c;k[b>>2]=d;h=c;break}else Pa()}while(0);if(e){a=k[j+28>>2]|0;b=96508+(a<<2)|0;if((j|0)==(k[b>>2]|0)){k[b>>2]=h;if(!h){k[24052]=k[24052]&~(1<<a);q=j;f=i;break}}else{if(e>>>0<(k[24055]|0)>>>0)Pa();a=e+16|0;if((k[a>>2]|0)==(j|0))k[a>>2]=h;else k[e+20>>2]=h;if(!h){q=j;f=i;break}}c=k[24055]|0;if(h>>>0<c>>>0)Pa();k[h+24>>2]=e;a=j+16|0;b=k[a>>2]|0;do if(b|0)if(b>>>0<c>>>0)Pa();else{k[h+16>>2]=b;k[b+24>>2]=h;break}while(0);a=k[a+4>>2]|0;if(a)if(a>>>0<(k[24055]|0)>>>0)Pa();else{k[h+20>>2]=a;k[a+24>>2]=h;q=j;f=i;break}else{q=j;f=i}}else{q=j;f=i}}else{q=c;f=d}while(0);if(q>>>0>=m>>>0)Pa();a=m+4|0;b=k[a>>2]|0;if(!(b&1))Pa();if(!(b&2)){if((m|0)==(k[24057]|0)){p=(k[24054]|0)+f|0;k[24054]=p;k[24057]=q;k[q+4>>2]=p|1;if((q|0)!=(k[24056]|0))return;k[24056]=0;k[24053]=0;return}if((m|0)==(k[24056]|0)){p=(k[24053]|0)+f|0;k[24053]=p;k[24056]=q;k[q+4>>2]=p|1;k[q+p>>2]=p;return}f=(b&-8)+f|0;d=b>>>3;do if(b>>>0>=256){e=k[m+24>>2]|0;a=k[m+12>>2]|0;do if((a|0)==(m|0)){b=m+16|0;c=b+4|0;a=k[c>>2]|0;if(!a){a=k[b>>2]|0;if(!a){n=0;break}}else b=c;while(1){c=a+20|0;d=k[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=k[c>>2]|0;if(!d)break;else{a=d;b=c}}if(b>>>0<(k[24055]|0)>>>0)Pa();else{k[b>>2]=0;n=a;break}}else{b=k[m+8>>2]|0;if(b>>>0<(k[24055]|0)>>>0)Pa();c=b+12|0;if((k[c>>2]|0)!=(m|0))Pa();d=a+8|0;if((k[d>>2]|0)==(m|0)){k[c>>2]=a;k[d>>2]=b;n=a;break}else Pa()}while(0);if(e|0){a=k[m+28>>2]|0;b=96508+(a<<2)|0;if((m|0)==(k[b>>2]|0)){k[b>>2]=n;if(!n){k[24052]=k[24052]&~(1<<a);break}}else{if(e>>>0<(k[24055]|0)>>>0)Pa();a=e+16|0;if((k[a>>2]|0)==(m|0))k[a>>2]=n;else k[e+20>>2]=n;if(!n)break}c=k[24055]|0;if(n>>>0<c>>>0)Pa();k[n+24>>2]=e;a=m+16|0;b=k[a>>2]|0;do if(b|0)if(b>>>0<c>>>0)Pa();else{k[n+16>>2]=b;k[b+24>>2]=n;break}while(0);a=k[a+4>>2]|0;if(a|0)if(a>>>0<(k[24055]|0)>>>0)Pa();else{k[n+20>>2]=a;k[a+24>>2]=n;break}}}else{b=k[m+8>>2]|0;c=k[m+12>>2]|0;a=96244+(d<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(k[24055]|0)>>>0)Pa();if((k[b+12>>2]|0)!=(m|0))Pa()}if((c|0)==(b|0)){k[24051]=k[24051]&~(1<<d);break}if((c|0)!=(a|0)){if(c>>>0<(k[24055]|0)>>>0)Pa();a=c+8|0;if((k[a>>2]|0)==(m|0))l=a;else Pa()}else l=c+8|0;k[b+12>>2]=c;k[l>>2]=b}while(0);k[q+4>>2]=f|1;k[q+f>>2]=f;if((q|0)==(k[24056]|0)){k[24053]=f;return}}else{k[a>>2]=b&-2;k[q+4>>2]=f|1;k[q+f>>2]=f}a=f>>>3;if(f>>>0<256){c=96244+(a<<1<<2)|0;b=k[24051]|0;a=1<<a;if(b&a){a=c+8|0;b=k[a>>2]|0;if(b>>>0<(k[24055]|0)>>>0)Pa();else{o=a;p=b}}else{k[24051]=b|a;o=c+8|0;p=c}k[o>>2]=q;k[p+12>>2]=q;k[q+8>>2]=p;k[q+12>>2]=c;return}a=f>>>8;if(a)if(f>>>0>16777215)c=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;c=(p+245760|0)>>>16&2;c=14-(n|o|c)+(p<<c>>>15)|0;c=f>>>(c+7|0)&1|c<<1}else c=0;d=96508+(c<<2)|0;k[q+28>>2]=c;k[q+20>>2]=0;k[q+16>>2]=0;a=k[24052]|0;b=1<<c;do if(a&b){e=f<<((c|0)==31?0:25-(c>>>1)|0);a=k[d>>2]|0;while(1){if((k[a+4>>2]&-8|0)==(f|0)){c=a;d=130;break}b=a+16+(e>>>31<<2)|0;c=k[b>>2]|0;if(!c){d=127;break}else{e=e<<1;a=c}}if((d|0)==127)if(b>>>0<(k[24055]|0)>>>0)Pa();else{k[b>>2]=q;k[q+24>>2]=a;k[q+12>>2]=q;k[q+8>>2]=q;break}else if((d|0)==130){a=c+8|0;b=k[a>>2]|0;p=k[24055]|0;if(b>>>0>=p>>>0&c>>>0>=p>>>0){k[b+12>>2]=q;k[a>>2]=q;k[q+8>>2]=b;k[q+12>>2]=c;k[q+24>>2]=0;break}else Pa()}}else{k[24052]=a|b;k[d>>2]=q;k[q+24>>2]=d;k[q+12>>2]=q;k[q+8>>2]=q}while(0);q=(k[24059]|0)+-1|0;k[24059]=q;if(!q)a=96660;else return;while(1){a=k[a>>2]|0;if(!a)break;else a=a+8|0}k[24059]=-1;return}function Bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;c=k[a+4>>2]|0;do if(!(c&1)){e=k[a>>2]|0;if(!(c&3))return;l=a+(0-e)|0;j=e+b|0;h=k[24055]|0;if(l>>>0<h>>>0)Pa();if((l|0)==(k[24056]|0)){a=o+4|0;c=k[a>>2]|0;if((c&3|0)!=3){r=l;f=j;break}k[24053]=j;k[a>>2]=c&-2;k[l+4>>2]=j|1;k[l+j>>2]=j;return}d=e>>>3;if(e>>>0<256){a=k[l+8>>2]|0;b=k[l+12>>2]|0;c=96244+(d<<1<<2)|0;if((a|0)!=(c|0)){if(a>>>0<h>>>0)Pa();if((k[a+12>>2]|0)!=(l|0))Pa()}if((b|0)==(a|0)){k[24051]=k[24051]&~(1<<d);r=l;f=j;break}if((b|0)!=(c|0)){if(b>>>0<h>>>0)Pa();c=b+8|0;if((k[c>>2]|0)==(l|0))g=c;else Pa()}else g=b+8|0;k[a+12>>2]=b;k[g>>2]=a;r=l;f=j;break}e=k[l+24>>2]|0;b=k[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|0;c=k[b>>2]|0;if(!c){c=k[a>>2]|0;if(!c){i=0;break}}else a=b;while(1){b=c+20|0;d=k[b>>2]|0;if(d|0){c=d;a=b;continue}b=c+16|0;d=k[b>>2]|0;if(!d)break;else{c=d;a=b}}if(a>>>0<h>>>0)Pa();else{k[a>>2]=0;i=c;break}}else{d=k[l+8>>2]|0;if(d>>>0<h>>>0)Pa();c=d+12|0;if((k[c>>2]|0)!=(l|0))Pa();a=b+8|0;if((k[a>>2]|0)==(l|0)){k[c>>2]=b;k[a>>2]=d;i=b;break}else Pa()}while(0);if(e){c=k[l+28>>2]|0;a=96508+(c<<2)|0;if((l|0)==(k[a>>2]|0)){k[a>>2]=i;if(!i){k[24052]=k[24052]&~(1<<c);r=l;f=j;break}}else{if(e>>>0<(k[24055]|0)>>>0)Pa();c=e+16|0;if((k[c>>2]|0)==(l|0))k[c>>2]=i;else k[e+20>>2]=i;if(!i){r=l;f=j;break}}b=k[24055]|0;if(i>>>0<b>>>0)Pa();k[i+24>>2]=e;c=l+16|0;a=k[c>>2]|0;do if(a|0)if(a>>>0<b>>>0)Pa();else{k[i+16>>2]=a;k[a+24>>2]=i;break}while(0);c=k[c+4>>2]|0;if(c)if(c>>>0<(k[24055]|0)>>>0)Pa();else{k[i+20>>2]=c;k[c+24>>2]=i;r=l;f=j;break}else{r=l;f=j}}else{r=l;f=j}}else{r=a;f=b}while(0);g=k[24055]|0;if(o>>>0<g>>>0)Pa();c=o+4|0;a=k[c>>2]|0;if(!(a&2)){if((o|0)==(k[24057]|0)){q=(k[24054]|0)+f|0;k[24054]=q;k[24057]=r;k[r+4>>2]=q|1;if((r|0)!=(k[24056]|0))return;k[24056]=0;k[24053]=0;return}if((o|0)==(k[24056]|0)){q=(k[24053]|0)+f|0;k[24053]=q;k[24056]=r;k[r+4>>2]=q|1;k[r+q>>2]=q;return}f=(a&-8)+f|0;d=a>>>3;do if(a>>>0>=256){e=k[o+24>>2]|0;b=k[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;c=k[b>>2]|0;if(!c){c=k[a>>2]|0;if(!c){n=0;break}}else a=b;while(1){b=c+20|0;d=k[b>>2]|0;if(d|0){c=d;a=b;continue}b=c+16|0;d=k[b>>2]|0;if(!d)break;else{c=d;a=b}}if(a>>>0<g>>>0)Pa();else{k[a>>2]=0;n=c;break}}else{d=k[o+8>>2]|0;if(d>>>0<g>>>0)Pa();c=d+12|0;if((k[c>>2]|0)!=(o|0))Pa();a=b+8|0;if((k[a>>2]|0)==(o|0)){k[c>>2]=b;k[a>>2]=d;n=b;break}else Pa()}while(0);if(e|0){c=k[o+28>>2]|0;a=96508+(c<<2)|0;if((o|0)==(k[a>>2]|0)){k[a>>2]=n;if(!n){k[24052]=k[24052]&~(1<<c);break}}else{if(e>>>0<(k[24055]|0)>>>0)Pa();c=e+16|0;if((k[c>>2]|0)==(o|0))k[c>>2]=n;else k[e+20>>2]=n;if(!n)break}b=k[24055]|0;if(n>>>0<b>>>0)Pa();k[n+24>>2]=e;c=o+16|0;a=k[c>>2]|0;do if(a|0)if(a>>>0<b>>>0)Pa();else{k[n+16>>2]=a;k[a+24>>2]=n;break}while(0);c=k[c+4>>2]|0;if(c|0)if(c>>>0<(k[24055]|0)>>>0)Pa();else{k[n+20>>2]=c;k[c+24>>2]=n;break}}}else{a=k[o+8>>2]|0;b=k[o+12>>2]|0;c=96244+(d<<1<<2)|0;if((a|0)!=(c|0)){if(a>>>0<g>>>0)Pa();if((k[a+12>>2]|0)!=(o|0))Pa()}if((b|0)==(a|0)){k[24051]=k[24051]&~(1<<d);break}if((b|0)!=(c|0)){if(b>>>0<g>>>0)Pa();c=b+8|0;if((k[c>>2]|0)==(o|0))m=c;else Pa()}else m=b+8|0;k[a+12>>2]=b;k[m>>2]=a}while(0);k[r+4>>2]=f|1;k[r+f>>2]=f;if((r|0)==(k[24056]|0)){k[24053]=f;return}}else{k[c>>2]=a&-2;k[r+4>>2]=f|1;k[r+f>>2]=f}c=f>>>3;if(f>>>0<256){b=96244+(c<<1<<2)|0;a=k[24051]|0;c=1<<c;if(a&c){c=b+8|0;a=k[c>>2]|0;if(a>>>0<(k[24055]|0)>>>0)Pa();else{p=c;q=a}}else{k[24051]=a|c;p=b+8|0;q=b}k[p>>2]=r;k[q+12>>2]=r;k[r+8>>2]=q;k[r+12>>2]=b;return}c=f>>>8;if(c)if(f>>>0>16777215)b=31;else{p=(c+1048320|0)>>>16&8;q=c<<p;o=(q+520192|0)>>>16&4;q=q<<o;b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;d=96508+(b<<2)|0;k[r+28>>2]=b;k[r+20>>2]=0;k[r+16>>2]=0;c=k[24052]|0;a=1<<b;if(!(c&a)){k[24052]=c|a;k[d>>2]=r;k[r+24>>2]=d;k[r+12>>2]=r;k[r+8>>2]=r;return}e=f<<((b|0)==31?0:25-(b>>>1)|0);c=k[d>>2]|0;while(1){if((k[c+4>>2]&-8|0)==(f|0)){b=c;d=127;break}a=c+16+(e>>>31<<2)|0;b=k[a>>2]|0;if(!b){d=124;break}else{e=e<<1;c=b}}if((d|0)==124){if(a>>>0<(k[24055]|0)>>>0)Pa();k[a>>2]=r;k[r+24>>2]=c;k[r+12>>2]=r;k[r+8>>2]=r;return}else if((d|0)==127){c=b+8|0;a=k[c>>2]|0;q=k[24055]|0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))Pa();k[a+12>>2]=r;k[c>>2]=r;k[r+8>>2]=a;k[r+12>>2]=b;k[r+24>>2]=0;return}}function Cb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;switch(k[a+40>>2]|0){case 6:{p=k[(k[a+352>>2]|0)+8>>2]|0;n=k[a+28>>2]|0;if((e|0)<=0)return;o=c+4|0;m=c+8|0;if(!n)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[o>>2]|0)+(d<<2)>>2]|0;g=k[(k[m>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j>>0]|0;s=l[j+1>>0]|0;q=l[j+2>>0]|0;i[e+h>>0]=((k[p+((s|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((q|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((s|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((q|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((s|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((q|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(n|0))break;else j=j+3|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 12:case 7:{p=k[(k[a+352>>2]|0)+8>>2]|0;m=k[a+28>>2]|0;if((e|0)<=0)return;n=c+4|0;o=c+8|0;if(!m)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[n>>2]|0)+(d<<2)>>2]|0;g=k[(k[o>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j>>0]|0;q=l[j+1>>0]|0;s=l[j+2>>0]|0;i[e+h>>0]=((k[p+((q|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((s|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((q|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((s|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((q|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((s|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(m|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 8:{p=k[(k[a+352>>2]|0)+8>>2]|0;m=k[a+28>>2]|0;if((e|0)<=0)return;n=c+4|0;o=c+8|0;if(!m)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[n>>2]|0)+(d<<2)>>2]|0;g=k[(k[o>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j+2>>0]|0;q=l[j+1>>0]|0;s=l[j>>0]|0;i[e+h>>0]=((k[p+((q|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((s|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((q|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((s|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((q|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((s|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(m|0))break;else j=j+3|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 13:case 9:{p=k[(k[a+352>>2]|0)+8>>2]|0;m=k[a+28>>2]|0;if((e|0)<=0)return;n=c+4|0;o=c+8|0;if(!m)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[n>>2]|0)+(d<<2)>>2]|0;g=k[(k[o>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j+2>>0]|0;q=l[j+1>>0]|0;s=l[j>>0]|0;i[e+h>>0]=((k[p+((q|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((s|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((q|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((s|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((q|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((s|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(m|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 14:case 10:{p=k[(k[a+352>>2]|0)+8>>2]|0;m=k[a+28>>2]|0;if((e|0)<=0)return;n=c+4|0;o=c+8|0;if(!m)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[n>>2]|0)+(d<<2)>>2]|0;g=k[(k[o>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j+3>>0]|0;q=l[j+2>>0]|0;s=l[j+1>>0]|0;i[e+h>>0]=((k[p+((q|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((s|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((q|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((s|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((q|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((s|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(m|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}case 15:case 11:{p=k[(k[a+352>>2]|0)+8>>2]|0;m=k[a+28>>2]|0;if((e|0)<=0)return;n=c+4|0;o=c+8|0;if(!m)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[n>>2]|0)+(d<<2)>>2]|0;g=k[(k[o>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j+1>>0]|0;q=l[j+2>>0]|0;s=l[j+3>>0]|0;i[e+h>>0]=((k[p+((q|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((s|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((q|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((s|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((q|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((s|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(m|0))break;else j=j+4|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}default:{p=k[(k[a+352>>2]|0)+8>>2]|0;m=k[a+28>>2]|0;if((e|0)<=0)return;n=c+4|0;o=c+8|0;if(!m)return;else a=e;while(1){e=k[(k[c>>2]|0)+(d<<2)>>2]|0;f=k[(k[n>>2]|0)+(d<<2)>>2]|0;g=k[(k[o>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){r=l[j>>0]|0;q=l[j+1>>0]|0;s=l[j+2>>0]|0;i[e+h>>0]=((k[p+((q|256)<<2)>>2]|0)+(k[p+(r<<2)>>2]|0)+(k[p+((s|512)<<2)>>2]|0)|0)>>>16;i[f+h>>0]=((k[p+((q|1024)<<2)>>2]|0)+(k[p+((r|768)<<2)>>2]|0)+(k[p+((s|1280)<<2)>>2]|0)|0)>>>16;i[g+h>>0]=((k[p+((q|1536)<<2)>>2]|0)+(k[p+((r|1280)<<2)>>2]|0)+(k[p+((s|1792)<<2)>>2]|0)|0)>>>16;h=h+1|0;if((h|0)==(m|0))break;else j=j+3|0}if((a|0)>1){d=d+1|0;b=b+4|0;a=a+-1|0}else break}return}}}function Db(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;switch(k[a+44>>2]|0){case 6:{o=k[a+456>>2]|0;t=k[a+112>>2]|0;r=k[a+324>>2]|0;s=k[o+8>>2]|0;m=k[o+12>>2]|0;n=k[o+16>>2]|0;o=k[o+20>>2]|0;if((e|0)<=0)return;p=b+4|0;q=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[p>>2]|0)+(c<<2)>>2]|0;g=k[(k[q>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){u=l[e+h>>0]|0;v=l[f+h>>0]|0;w=l[g+h>>0]|0;i[j>>0]=i[r+((k[s+(w<<2)>>2]|0)+u)>>0]|0;i[j+1>>0]=i[r+(((k[n+(w<<2)>>2]|0)+(k[o+(v<<2)>>2]|0)>>16)+u)>>0]|0;i[j+2>>0]=i[r+((k[m+(v<<2)>>2]|0)+u)>>0]|0;h=h+1|0;if((h|0)==(t|0))break;else j=j+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 12:case 7:{q=k[a+456>>2]|0;t=k[a+112>>2]|0;m=k[a+324>>2]|0;n=k[q+8>>2]|0;o=k[q+12>>2]|0;p=k[q+16>>2]|0;q=k[q+20>>2]|0;if((e|0)<=0)return;r=b+4|0;s=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[r>>2]|0)+(c<<2)>>2]|0;g=k[(k[s>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){w=l[e+h>>0]|0;v=l[f+h>>0]|0;u=l[g+h>>0]|0;i[j>>0]=i[m+((k[n+(u<<2)>>2]|0)+w)>>0]|0;i[j+1>>0]=i[m+(((k[p+(u<<2)>>2]|0)+(k[q+(v<<2)>>2]|0)>>16)+w)>>0]|0;i[j+2>>0]=i[m+((k[o+(v<<2)>>2]|0)+w)>>0]|0;i[j+3>>0]=-1;h=h+1|0;if((h|0)==(t|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 8:{q=k[a+456>>2]|0;t=k[a+112>>2]|0;m=k[a+324>>2]|0;n=k[q+8>>2]|0;o=k[q+12>>2]|0;p=k[q+16>>2]|0;q=k[q+20>>2]|0;if((e|0)<=0)return;r=b+4|0;s=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[r>>2]|0)+(c<<2)>>2]|0;g=k[(k[s>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){w=l[e+h>>0]|0;v=l[f+h>>0]|0;u=l[g+h>>0]|0;i[j+2>>0]=i[m+((k[n+(u<<2)>>2]|0)+w)>>0]|0;i[j+1>>0]=i[m+(((k[p+(u<<2)>>2]|0)+(k[q+(v<<2)>>2]|0)>>16)+w)>>0]|0;i[j>>0]=i[m+((k[o+(v<<2)>>2]|0)+w)>>0]|0;h=h+1|0;if((h|0)==(t|0))break;else j=j+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 13:case 9:{q=k[a+456>>2]|0;t=k[a+112>>2]|0;m=k[a+324>>2]|0;n=k[q+8>>2]|0;o=k[q+12>>2]|0;p=k[q+16>>2]|0;q=k[q+20>>2]|0;if((e|0)<=0)return;r=b+4|0;s=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[r>>2]|0)+(c<<2)>>2]|0;g=k[(k[s>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){w=l[e+h>>0]|0;v=l[f+h>>0]|0;u=l[g+h>>0]|0;i[j+2>>0]=i[m+((k[n+(u<<2)>>2]|0)+w)>>0]|0;i[j+1>>0]=i[m+(((k[p+(u<<2)>>2]|0)+(k[q+(v<<2)>>2]|0)>>16)+w)>>0]|0;i[j>>0]=i[m+((k[o+(v<<2)>>2]|0)+w)>>0]|0;i[j+3>>0]=-1;h=h+1|0;if((h|0)==(t|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 14:case 10:{q=k[a+456>>2]|0;t=k[a+112>>2]|0;m=k[a+324>>2]|0;n=k[q+8>>2]|0;o=k[q+12>>2]|0;p=k[q+16>>2]|0;q=k[q+20>>2]|0;if((e|0)<=0)return;r=b+4|0;s=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[r>>2]|0)+(c<<2)>>2]|0;g=k[(k[s>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){w=l[e+h>>0]|0;v=l[f+h>>0]|0;u=l[g+h>>0]|0;i[j+3>>0]=i[m+((k[n+(u<<2)>>2]|0)+w)>>0]|0;i[j+2>>0]=i[m+(((k[p+(u<<2)>>2]|0)+(k[q+(v<<2)>>2]|0)>>16)+w)>>0]|0;i[j+1>>0]=i[m+((k[o+(v<<2)>>2]|0)+w)>>0]|0;i[j>>0]=-1;h=h+1|0;if((h|0)==(t|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}case 15:case 11:{q=k[a+456>>2]|0;t=k[a+112>>2]|0;m=k[a+324>>2]|0;n=k[q+8>>2]|0;o=k[q+12>>2]|0;p=k[q+16>>2]|0;q=k[q+20>>2]|0;if((e|0)<=0)return;r=b+4|0;s=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[r>>2]|0)+(c<<2)>>2]|0;g=k[(k[s>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){w=l[e+h>>0]|0;v=l[f+h>>0]|0;u=l[g+h>>0]|0;i[j+1>>0]=i[m+((k[n+(u<<2)>>2]|0)+w)>>0]|0;i[j+2>>0]=i[m+(((k[p+(u<<2)>>2]|0)+(k[q+(v<<2)>>2]|0)>>16)+w)>>0]|0;i[j+3>>0]=i[m+((k[o+(v<<2)>>2]|0)+w)>>0]|0;i[j>>0]=-1;h=h+1|0;if((h|0)==(t|0))break;else j=j+4|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}default:{q=k[a+456>>2]|0;t=k[a+112>>2]|0;m=k[a+324>>2]|0;n=k[q+8>>2]|0;o=k[q+12>>2]|0;p=k[q+16>>2]|0;q=k[q+20>>2]|0;if((e|0)<=0)return;r=b+4|0;s=b+8|0;if(!t)return;else a=e;while(1){e=k[(k[b>>2]|0)+(c<<2)>>2]|0;f=k[(k[r>>2]|0)+(c<<2)>>2]|0;g=k[(k[s>>2]|0)+(c<<2)>>2]|0;h=0;j=k[d>>2]|0;while(1){w=l[e+h>>0]|0;v=l[f+h>>0]|0;u=l[g+h>>0]|0;i[j>>0]=i[m+((k[n+(u<<2)>>2]|0)+w)>>0]|0;i[j+1>>0]=i[m+(((k[p+(u<<2)>>2]|0)+(k[q+(v<<2)>>2]|0)>>16)+w)>>0]|0;i[j+2>>0]=i[m+((k[o+(v<<2)>>2]|0)+w)>>0]|0;h=h+1|0;if((h|0)==(t|0))break;else j=j+3|0}if((a|0)>1){d=d+4|0;c=c+1|0;a=a+-1|0}else break}return}}}function Eb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0;s=r;r=r+80|0;c=s+64|0;n=s;q=b+12|0;if((pf(c,1,14,k[q>>2]|0)|0)!=14){p=k[a>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](a)}if(((l[c+1>>0]|0)<<8|(l[c>>0]|0)|0)!=19778){p=k[a>>2]|0;k[p+20>>2]=1008;$a[k[p>>2]&63](a)}o=(l[c+11>>0]|0)<<8|(l[c+10>>0]|0)|(l[c+12>>0]|0)<<16|(l[c+13>>0]|0)<<24;if((pf(n,1,4,k[q>>2]|0)|0)!=4){p=k[a>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](a)}p=(l[n+1>>0]|0)<<8|(l[n>>0]|0)|(l[n+2>>0]|0)<<16|(l[n+3>>0]|0)<<24;if((p+-12|0)>>>0>52){m=k[a>>2]|0;k[m+20>>2]=1003;$a[k[m>>2]&63](a)}c=n+4|0;m=p+-4|0;if((pf(c,1,m,k[q>>2]|0)|0)!=(m|0)){m=k[a>>2]|0;k[m+20>>2]=43;$a[k[m>>2]&63](a)}a:do switch(p|0){case 12:{e=(l[n+5>>0]|0)<<8|(l[c>>0]|0);c=(l[n+7>>0]|0)<<8|(l[n+6>>0]|0);d=(l[n+9>>0]|0)<<8|(l[n+8>>0]|0);n=(l[n+11>>0]|0)<<8|(l[n+10>>0]|0);k[b+48>>2]=n;switch(n|0){case 8:{f=k[a>>2]|0;k[f+20>>2]=1012;k[f+24>>2]=e;k[f+28>>2]=c;ab[k[f+4>>2]&31](a,1);f=0;m=c;n=3;break a}case 24:{f=k[a>>2]|0;k[f+20>>2]=1011;k[f+24>>2]=e;k[f+28>>2]=c;ab[k[f+4>>2]&31](a,1);f=0;m=c;n=0;break a}default:{f=k[a>>2]|0;k[f+20>>2]=1002;$a[k[f>>2]&63](a);f=0;m=c;n=0;break a}}}case 64:case 40:{e=(l[n+5>>0]|0)<<8|(l[c>>0]|0)|(l[n+6>>0]|0)<<16|(l[n+7>>0]|0)<<24;m=(l[n+9>>0]|0)<<8|(l[n+8>>0]|0)|(l[n+10>>0]|0)<<16|(l[n+11>>0]|0)<<24;d=(l[n+13>>0]|0)<<8|(l[n+12>>0]|0);t=(l[n+15>>0]|0)<<8|(l[n+14>>0]|0);k[b+48>>2]=t;f=(l[n+17>>0]|0)<<8|(l[n+16>>0]|0)|(l[n+18>>0]|0)<<16|(l[n+19>>0]|0)<<24;g=(l[n+25>>0]|0)<<8|(l[n+24>>0]|0)|(l[n+26>>0]|0)<<16|(l[n+27>>0]|0)<<24;h=(l[n+29>>0]|0)<<8|(l[n+28>>0]|0)|(l[n+30>>0]|0)<<16|(l[n+31>>0]|0)<<24;c=(l[n+33>>0]|0)<<8|(l[n+32>>0]|0)|(l[n+34>>0]|0)<<16|(l[n+35>>0]|0)<<24;switch(t|0){case 8:{n=k[a>>2]|0;k[n+20>>2]=1010;k[n+24>>2]=e;k[n+28>>2]=m;ab[k[n+4>>2]&31](a,1);n=4;break}case 24:{n=k[a>>2]|0;k[n+20>>2]=1009;k[n+24>>2]=e;k[n+28>>2]=m;ab[k[n+4>>2]&31](a,1);n=0;break}case 32:{n=k[a>>2]|0;k[n+20>>2]=1009;k[n+24>>2]=e;k[n+28>>2]=m;ab[k[n+4>>2]&31](a,1);n=0;break}default:{n=k[a>>2]|0;k[n+20>>2]=1002;$a[k[n>>2]&63](a);n=0}}if(f|0){t=k[a>>2]|0;k[t+20>>2]=1006;$a[k[t>>2]&63](a)}if((g|0)>0&(h|0)>0){j[a+216>>1]=(g|0)/100|0;j[a+218>>1]=(h|0)/100|0;i[a+214>>0]=2;f=c}else f=c;break}default:{t=k[a>>2]|0;k[t+20>>2]=1003;$a[k[t>>2]&63](a);r=s;return}}while(0);if((m|0)<1|(e|0)<1){t=k[a>>2]|0;k[t+20>>2]=1007;$a[k[t>>2]&63](a)}if((d|0)!=1){t=k[a>>2]|0;k[t+20>>2]=1004;$a[k[t>>2]&63](a)}c=o+-14-p|0;if((n|0)>0){if((f|0)>=1)if((f|0)>256){o=k[a>>2]|0;k[o+20>>2]=1001;$a[k[o>>2]&63](a);o=f}else o=f;else o=256;t=fb[k[(k[a+4>>2]|0)+8>>2]&3](a,1,o,3)|0;h=b+32|0;k[h>>2]=t;switch(n|0){case 3:{f=b+28|0;g=0;do{d=Wg(k[q>>2]|0)|0;if((d|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}i[(k[(k[h>>2]|0)+8>>2]|0)+g>>0]=d;d=Wg(k[q>>2]|0)|0;if((d|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}i[(k[(k[h>>2]|0)+4>>2]|0)+g>>0]=d;d=Wg(k[q>>2]|0)|0;if((d|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}i[(k[k[h>>2]>>2]|0)+g>>0]=d;g=g+1|0}while((g|0)!=(o|0));break}case 4:{f=b+28|0;g=0;do{d=Wg(k[q>>2]|0)|0;if((d|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}i[(k[(k[h>>2]|0)+8>>2]|0)+g>>0]=d;d=Wg(k[q>>2]|0)|0;if((d|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}i[(k[(k[h>>2]|0)+4>>2]|0)+g>>0]=d;d=Wg(k[q>>2]|0)|0;if((d|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}i[(k[k[h>>2]>>2]|0)+g>>0]=d;if((Wg(k[q>>2]|0)|0)==-1){t=k[f>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}g=g+1|0}while((g|0)!=(o|0));break}default:{t=k[b+28>>2]|0;p=k[t>>2]|0;k[p+20>>2]=1001;$a[k[p>>2]&63](t)}}c=c-(ha(o,n)|0)|0}if((c|0)>=0){if((c|0)>0){d=b+28|0;while(1){if((Wg(k[q>>2]|0)|0)==-1){t=k[d>>2]|0;p=k[t>>2]|0;k[p+20>>2]=43;$a[k[p>>2]&63](t)}if((c|0)>1)c=c+-1|0;else break}}}else{t=k[a>>2]|0;k[t+20>>2]=1003;$a[k[t>>2]&63](a)}switch(k[b+48>>2]|0){case 24:{c=e*3|0;break}case 32:{c=e<<2;break}default:c=e}while(1)if(!(c&3))break;else c=c+1|0;k[b+44>>2]=c;d=a+4|0;c=bb[k[(k[d>>2]|0)+16>>2]&3](a,1,0,c,m,1)|0;k[b+36>>2]=c;k[b+4>>2]=9;c=k[a+8>>2]|0;if(c|0){t=c+24|0;k[t>>2]=(k[t>>2]|0)+1}t=fb[k[(k[d>>2]|0)+8>>2]&3](a,1,e*3|0,1)|0;k[b+16>>2]=t;k[b+20>>2]=1;k[a+40>>2]=2;k[a+36>>2]=3;k[a+56>>2]=8;k[a+28>>2]=e;k[a+32>>2]=m;r=s;return}function Fb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;e=a+4|0;d=Ya[k[k[e>>2]>>2]&15](a,1,28)|0;f=a+456|0;k[f>>2]=d;k[d>>2]=54;c=a+40|0;switch(k[c>>2]|0){case 1:{if((k[a+36>>2]|0)!=1){g=k[a>>2]|0;k[g+20>>2]=10;$a[k[g>>2]&63](a)}break}case 3:case 2:{if((k[a+36>>2]|0)!=3){g=k[a>>2]|0;k[g+20>>2]=10;$a[k[g>>2]&63](a)}break}case 5:case 4:{if((k[a+36>>2]|0)!=4){g=k[a>>2]|0;k[g+20>>2]=10;$a[k[g>>2]&63](a)}break}default:if((k[a+36>>2]|0)<1){g=k[a>>2]|0;k[g+20>>2]=10;$a[k[g>>2]&63](a)}}b=k[a+44>>2]|0;a:do switch(b|0){case 1:{k[a+120>>2]=1;switch(k[c>>2]|0){case 3:case 1:{k[d+4>>2]=10;b=k[a+36>>2]|0;if((b|0)<=1)break a;c=k[a+216>>2]|0;d=1;do{k[c+(d*84|0)+48>>2]=0;d=d+1|0}while((d|0)<(b|0));break}case 2:{k[d+4>>2]=11;c=k[f>>2]|0;b=Ya[k[k[e>>2]>>2]&15](a,1,3072)|0;k[c+24>>2]=b;c=0;do{k[b+(c<<2)>>2]=c*19595;k[b+(c+256<<2)>>2]=c*38470;k[b+(c+512<<2)>>2]=(c*7471|0)+32768;c=c+1|0}while((c|0)!=256);break}default:{g=k[a>>2]|0;k[g+20>>2]=27;$a[k[g>>2]&63](a);break a}}break}case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 2:{k[a+120>>2]=k[14680+(b<<2)>>2];switch(k[c>>2]|0){case 3:{b=d+4|0;if(Zj()|0){k[b>>2]=12;break a}k[b>>2]=13;g=k[f>>2]|0;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;c=g+8|0;k[c>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;d=g+12|0;k[d>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;f=g+16|0;k[f>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;k[g+20>>2]=b;c=k[c>>2]|0;d=k[d>>2]|0;e=k[f>>2]|0;f=0;g=-128;while(1){k[c+(f<<2)>>2]=(g*91881|0)+32768>>16;k[d+(f<<2)>>2]=(g*116130|0)+32768>>16;h=ha(g,-46802)|0;k[e+(f<<2)>>2]=h;h=(ha(g,-22554)|0)+32768|0;k[b+(f<<2)>>2]=h;f=f+1|0;if((f|0)==256)break;else g=g+1|0}break}case 1:{k[d+4>>2]=14;break a}case 2:{if((4292>>>b&1|0?13252>>>b&1|0:0)?324>>>b&1|0:0){k[d+4>>2]=15;break a}k[d+4>>2]=16;break a}default:{h=k[a>>2]|0;k[h+20>>2]=27;$a[k[h>>2]&63](a);break a}}break}case 16:{k[a+120>>2]=3;b=k[c>>2]|0;c=(b|0)==3;if(k[a+88>>2]|0){if(c){k[d+4>>2]=21;g=k[f>>2]|0;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;c=g+8|0;k[c>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;d=g+12|0;k[d>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;f=g+16|0;k[f>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;k[g+20>>2]=b;c=k[c>>2]|0;d=k[d>>2]|0;e=k[f>>2]|0;f=0;g=-128;while(1){k[c+(f<<2)>>2]=(g*91881|0)+32768>>16;k[d+(f<<2)>>2]=(g*116130|0)+32768>>16;h=ha(g,-46802)|0;k[e+(f<<2)>>2]=h;h=(ha(g,-22554)|0)+32768|0;k[b+(f<<2)>>2]=h;f=f+1|0;if((f|0)==256)break a;else g=g+1|0}}switch(b|0){case 1:{k[d+4>>2]=22;break a}case 2:{k[d+4>>2]=23;break a}default:{h=k[a>>2]|0;k[h+20>>2]=27;$a[k[h>>2]&63](a);break a}}}if(c){b=d+4|0;if(Zj()|0){k[b>>2]=17;break a}k[b>>2]=18;g=k[f>>2]|0;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;c=g+8|0;k[c>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;d=g+12|0;k[d>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;f=g+16|0;k[f>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;k[g+20>>2]=b;c=k[c>>2]|0;d=k[d>>2]|0;e=k[f>>2]|0;f=0;g=-128;while(1){k[c+(f<<2)>>2]=(g*91881|0)+32768>>16;k[d+(f<<2)>>2]=(g*116130|0)+32768>>16;h=ha(g,-46802)|0;k[e+(f<<2)>>2]=h;h=(ha(g,-22554)|0)+32768|0;k[b+(f<<2)>>2]=h;f=f+1|0;if((f|0)==256)break;else g=g+1|0}}else switch(b|0){case 1:{k[d+4>>2]=19;break a}case 2:{k[d+4>>2]=20;break a}default:{h=k[a>>2]|0;k[h+20>>2]=27;$a[k[h>>2]&63](a);break a}}break}case 4:{k[a+120>>2]=4;switch(k[c>>2]|0){case 5:{k[d+4>>2]=24;g=k[f>>2]|0;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;c=g+8|0;k[c>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;d=g+12|0;k[d>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;f=g+16|0;k[f>>2]=b;b=Ya[k[k[e>>2]>>2]&15](a,1,1024)|0;k[g+20>>2]=b;c=k[c>>2]|0;d=k[d>>2]|0;e=k[f>>2]|0;f=0;g=-128;while(1){k[c+(f<<2)>>2]=(g*91881|0)+32768>>16;k[d+(f<<2)>>2]=(g*116130|0)+32768>>16;h=ha(g,-46802)|0;k[e+(f<<2)>>2]=h;h=(ha(g,-22554)|0)+32768|0;k[b+(f<<2)>>2]=h;f=f+1|0;if((f|0)==256)break;else g=g+1|0}break}case 4:{k[d+4>>2]=15;break a}default:{h=k[a>>2]|0;k[h+20>>2]=27;$a[k[h>>2]&63](a);break a}}break}default:if((b|0)==(k[c>>2]|0)){k[a+120>>2]=k[a+36>>2];k[d+4>>2]=15;break a}else{h=k[a>>2]|0;k[h+20>>2]=27;$a[k[h>>2]&63](a);break a}}while(0);if(k[a+84>>2]|0){g=1;h=a+124|0;k[h>>2]=g;return}g=k[a+120>>2]|0;h=a+124|0;k[h>>2]=g;return}
function Jd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=k[a+428>>2]|0;v=a+320|0;w=(k[v>>2]|0)+-1|0;e=a+144|0;f=a+152|0;g=a+436|0;h=a+148|0;x=a+156|0;while(1){c=k[e>>2]|0;d=k[f>>2]|0;if((c|0)>=(d|0)){if((c|0)!=(d|0))break;if((k[h>>2]|0)>>>0>(k[x>>2]|0)>>>0)break}if(!(cb[k[k[g>>2]>>2]&15](a)|0)){c=0;i=21;break}}if((i|0)==21)return c|0;o=a+36|0;if((k[o>>2]|0)>0){p=a+4|0;q=a+448|0;s=0;t=k[a+216>>2]|0;while(1){if(k[t+48>>2]|0){c=t+12|0;r=k[c>>2]|0;n=ha(r,k[x>>2]|0)|0;r=hb[k[(k[p>>2]|0)+32>>2]&3](a,k[u+76+(s<<2)>>2]|0,n,r,0)|0;if((k[x>>2]|0)>>>0<w>>>0)m=k[c>>2]|0;else{n=k[c>>2]|0;m=((k[t+32>>2]|0)>>>0)%(n>>>0)|0;m=(m|0)==0?n:m}h=k[(k[q>>2]|0)+4+(s<<2)>>2]|0;if((m|0)>0){i=t+28|0;j=t+36|0;c=k[i>>2]|0;l=0;n=k[b+(s<<2)>>2]|0;while(1){if(!c){d=k[j>>2]|0;c=0}else{e=0;f=k[r+(l<<2)>>2]|0;g=0;while(1){_a[h&63](a,t,f,n,g);d=k[j>>2]|0;e=e+1|0;c=k[i>>2]|0;if(e>>>0>=c>>>0)break;else{f=f+128|0;g=d+g|0}}}l=l+1|0;if((l|0)==(m|0))break;else n=n+(d<<2)|0}}}s=s+1|0;if((s|0)>=(k[o>>2]|0))break;else t=t+84|0}}b=(k[x>>2]|0)+1|0;k[x>>2]=b;b=b>>>0<(k[v>>2]|0)>>>0?3:4;return b|0}function Kd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;I=k[a+460>>2]|0;J=k[a+120>>2]|0;K=k[a+112>>2]|0;F=k[a+324>>2]|0;if((d|0)<=0)return;G=(J|0)>0;x=I+84|0;y=I+24|0;z=I+16|0;A=(K|0)==0;B=K+-1|0;C=ha(B,J)|0;D=0-J|0;E=K+1|0;H=0;do{u=c+(H<<2)|0;vj(k[u>>2]|0,K);a:do if(G){v=b+(H<<2)|0;if(A){a=(k[x>>2]|0)==0;e=0;while(1){w=k[I+68+(e<<2)>>2]|0;j[(a?w:w+(E<<1)|0)>>1]=0;e=e+1|0;if((e|0)==(J|0))break a}}else w=0;do{e=(k[v>>2]|0)+w|0;f=k[u>>2]|0;a=k[I+68+(w<<2)>>2]|0;if(!(k[x>>2]|0)){r=1;s=J;t=a}else{r=-1;s=D;t=a+(E<<1)|0;e=e+C|0;f=f+B|0}h=k[(k[y>>2]|0)+(w<<2)>>2]|0;m=k[(k[z>>2]|0)+(w<<2)>>2]|0;q=ha(K,r)|0;n=0;a=0;o=K;g=0;p=t;while(1){L=p;p=p+(r<<1)|0;M=l[F+((g+8+(j[p>>1]|0)>>4)+(l[e>>0]|0))>>0]|0;g=l[h+M>>0]|0;i[f>>0]=(l[f>>0]|0)+g;g=M-(l[m+g>>0]|0)|0;j[L>>1]=(g*3|0)+a;a=(g*5|0)+n|0;o=o+-1|0;if(!o)break;else{n=g;g=g*7|0;e=e+s|0;f=f+r|0}}j[t+(q<<1)>>1]=a;w=w+1|0}while((w|0)!=(J|0))}while(0);k[x>>2]=(k[x>>2]|0)==0&1;H=H+1|0}while((H|0)!=(d|0));return}function Ld(a){a=a|0;var b=0,c=0,d=0,e=0.0,f=0.0,g=0,h=0,i=0.0,j=0.0,k=0,l=0.0,m=0.0,n=0,p=0.0,q=0,r=0.0,s=0,t=0.0,u=0.0;b=7;c=a;while(1){m=+o[c>>2];d=c+28|0;l=+o[d>>2];t=m+l;l=m-l;g=c+4|0;m=+o[g>>2];n=c+24|0;f=+o[n>>2];r=m+f;f=m-f;q=c+8|0;m=+o[q>>2];k=c+20|0;j=+o[k>>2];e=m+j;j=m-j;h=c+12|0;m=+o[h>>2];s=c+16|0;i=+o[s>>2];p=m+i;u=t+p;p=t-p;t=r+e;o[c>>2]=t+u;o[s>>2]=u-t;e=(r-e+p)*.7071067690849304;o[q>>2]=p+e;o[n>>2]=p-e;i=j+(m-i);m=l+f;e=(i-m)*.3826834261417389;i=i*.5411961078643799+e;e=m*1.3065630197525024+e;j=(f+j)*.7071067690849304;f=l+j;j=l-j;o[k>>2]=j+i;o[h>>2]=j-i;o[g>>2]=f+e;o[d>>2]=f-e;if((b|0)>0){b=b+-1|0;c=c+32|0}else{b=7;break}}while(1){l=+o[a>>2];s=a+224|0;m=+o[s>>2];f=l+m;m=l-m;q=a+32|0;l=+o[q>>2];h=a+192|0;t=+o[h>>2];i=l+t;t=l-t;g=a+64|0;l=+o[g>>2];k=a+160|0;p=+o[k>>2];u=l+p;p=l-p;n=a+96|0;l=+o[n>>2];d=a+128|0;r=+o[d>>2];j=l+r;e=f+j;j=f-j;f=i+u;o[a>>2]=f+e;o[d>>2]=e-f;u=(i-u+j)*.7071067690849304;o[g>>2]=j+u;o[h>>2]=j-u;r=p+(l-r);l=m+t;u=(r-l)*.3826834261417389;r=r*.5411961078643799+u;u=l*1.3065630197525024+u;p=(t+p)*.7071067690849304;t=m+p;p=m-p;o[k>>2]=p+r;o[n>>2]=p-r;o[q>>2]=t+u;o[s>>2]=t-u;if((b|0)>0){b=b+-1|0;a=a+4|0}else break}return}function Md(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0;q=r;r=r+1296|0;p=q+1028|0;o=q;if(c>>>0>3){n=k[a>>2]|0;k[n+20>>2]=50;k[n+24>>2]=c;$a[k[n>>2]&63](a)}j=(b|0)!=0;n=k[(j?a+88+(c<<2)|0:a+104+(c<<2)|0)>>2]|0;if(!n){m=k[a>>2]|0;k[m+20>>2]=50;k[m+24>>2]=c;$a[k[m>>2]&63](a)}b=k[d>>2]|0;if(!b){b=Ya[k[k[a+4>>2]>>2]&15](a,1,1280)|0;k[d>>2]=b;m=a}else m=a;g=1;f=0;while(1){d=i[n+g>>0]|0;e=d&255;c=e+f|0;if((c|0)>256){h=k[a>>2]|0;k[h+20>>2]=8;$a[k[h>>2]&63](m)}if(!(d<<24>>24))c=f;else eh(p+f|0,g&255|0,e|0)|0;g=g+1|0;if((g|0)==17)break;else f=c}i[p+c>>0]=0;d=i[p>>0]|0;if(d<<24>>24){g=d;e=0;f=0;h=d<<24>>24;while(1){if((g<<24>>24|0)==(h|0)){d=f;while(1){f=d+1|0;k[o+(d<<2)>>2]=e;e=e+1|0;d=i[p+f>>0]|0;if((d<<24>>24|0)==(h|0))d=f;else break}}else d=g;if((e|0)>=(1<<h|0)){g=k[a>>2]|0;k[g+20>>2]=8;$a[k[g>>2]&63](m)}if(!(d<<24>>24))break;else{g=d;e=e<<1;h=h+1|0}}}eh(b+1024|0,0,256)|0;e=j?15:255;if((c|0)>0)g=0;else{r=q;return}do{f=l[n+17+g>>0]|0;d=b+1024+f|0;if(!(f>>>0<=e>>>0?!(i[d>>0]|0):0)){j=k[a>>2]|0;k[j+20>>2]=8;$a[k[j>>2]&63](m)}k[b+(f<<2)>>2]=k[o+(g<<2)>>2];i[d>>0]=i[p+g>>0]|0;g=g+1|0}while((g|0)!=(c|0));r=q;return}function Nd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0,t=0,u=0;l=r;r=r+144|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){p=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;n=ha((k[a+128>>2]|0)*5793|0,j[c+64>>1]|0)|0;u=n+p|0;p=(ha(n,-2)|0)+p>>11;n=ha((k[a+64>>2]|0)*10033|0,j[c+32>>1]|0)|0;s=n+u|0;n=u-n|0;u=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;t=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;o=ha(j[c+80>>1]|0,k[a+160>>2]|0)|0;m=(o+u|0)*2998|0;q=m+(t+u<<13)|0;m=m+(o-t<<13)|0;o=u-t-o<<2;k[b>>2]=q+s>>11;k[b+120>>2]=s-q>>11;k[b+24>>2]=o+p;k[b+96>>2]=p-o;k[b+48>>2]=m+n>>11;k[b+72>>2]=n-m>>11;h=h+1|0;if((h|0)==6)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){u=(k[d+(c<<2)>>2]|0)+e|0;s=(k[f>>2]<<13)+131072|0;p=(k[f+16>>2]|0)*5793|0;h=s+p|0;p=s-p-p|0;s=(k[f+8>>2]|0)*10033|0;n=h+s|0;s=h-s|0;h=k[f+4>>2]|0;m=k[f+12>>2]|0;q=k[f+20>>2]|0;t=(q+h|0)*2998|0;o=t+(m+h<<13)|0;t=t+(q-m<<13)|0;q=h-m-q<<13;i[u>>0]=i[a+((o+n|0)>>>18&1023)>>0]|0;i[u+5>>0]=i[a+((n-o|0)>>>18&1023)>>0]|0;i[u+1>>0]=i[a+((q+p|0)>>>18&1023)>>0]|0;i[u+4>>0]=i[a+((p-q|0)>>>18&1023)>>0]|0;i[u+2>>0]=i[a+((t+s|0)>>>18&1023)>>0]|0;i[u+3>>0]=i[a+((s-t|0)>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==6)break;else f=f+24|0}r=l;return}function Od(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+32|0;m=n+16|0;l=n+8|0;g=n;h=k[a+332>>2]|0;d=k[h+4484+(b<<2)>>2]|0;c=k[h+4228+(b<<2)>>2]|0;if((k[(k[a>>2]|0)+104>>2]|0)>0){i=k[3856]|0;th(21981,5,1,i)|0;j=a+172|0;e=k[j>>2]|0;if((k[e+(b*36|0)>>2]|0)>0){f=0;do{e=k[e+(b*36|0)+4+(f<<2)>>2]|0;k[g>>2]=(f|0)==0?96700:21987;k[g+4>>2]=e;ei(i,21989,g)|0;f=f+1|0;e=k[j>>2]|0}while((f|0)<(k[e+(b*36|0)>>2]|0))}g=k[e+(b*36|0)+24>>2]|0;k[l>>2]=k[e+(b*36|0)+20>>2];k[l+4>>2]=g;ei(i,21994,l)|0;l=k[h+4740+(b<<2)>>2]|0;k[m>>2]=k[(k[j>>2]|0)+(b*36|0)+28>>2];k[m+4>>2]=l;ei(i,22002,m)|0;qg(10,i)|0}g=a+24|0;e=k[g>>2]|0;f=k[e+4>>2]|0;e=k[e>>2]|0;if(d>>>0<f>>>0){l=e;m=d;a=c;_g(l|0,a|0,m|0)|0;a=k[g>>2]|0;l=k[a>>2]|0;l=l+m|0;k[a>>2]=l;a=a+4|0;l=k[a>>2]|0;m=l-m|0;k[a>>2]=m;r=n;return}do{_g(e|0,c|0,f|0)|0;m=k[g>>2]|0;l=m+4|0;b=k[l>>2]|0;c=c+b|0;d=d-b|0;k[m>>2]=(k[m>>2]|0)+b;k[l>>2]=0;if(!(cb[k[m+12>>2]&15](a)|0)){m=k[a>>2]|0;k[m+20>>2]=129;$a[k[m>>2]&63](a)}e=k[g>>2]|0;f=k[e+4>>2]|0;e=k[e>>2]|0}while(d>>>0>=f>>>0);_g(e|0,c|0,d|0)|0;a=k[g>>2]|0;m=k[a>>2]|0;m=m+d|0;k[a>>2]=m;a=a+4|0;m=k[a>>2]|0;m=m-d|0;k[a>>2]=m;r=n;return}function Pd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0;e=k[a>>2]|0;n=a+4|0;f=k[n>>2]|0;m=k[a+16>>2]|0;l=m+416|0;a:do if(!(k[l>>2]|0)){if((c|0)<25){j=m+24|0;g=b;b:while(1){if(!f){if(!(cb[k[(k[j>>2]|0)+12>>2]&15](m)|0)){e=0;o=19;break}e=k[j>>2]|0;f=k[e+4>>2]|0;e=k[e>>2]|0}f=f+-1|0;h=e+1|0;b=i[e>>0]|0;e=b&255;c:do if(b<<24>>24==-1){e=h;while(1){if(!f){if(!(cb[k[(k[j>>2]|0)+12>>2]&15](m)|0)){e=0;o=19;break b}b=k[j>>2]|0;f=k[b+4>>2]|0;b=k[b>>2]|0}else b=e;f=f+-1|0;e=b+1|0;b=i[b>>0]|0;switch(b<<24>>24){case 0:{b=255;break c}case -1:break;default:{o=13;break b}}}}else{b=e;e=h}while(0);b=b|g<<8;c=c+8|0;if((c|0)<25)g=b;else break a}if((o|0)==13){k[l>>2]=b&255;b=g;g=f;o=14;break}else if((o|0)==19)return e|0}}else{g=f;o=14}while(0);if((o|0)==14)if((c|0)<(d|0)){f=m+444|0;if(!(k[(k[f>>2]|0)+8>>2]|0)){o=k[m>>2]|0;k[o+20>>2]=117;ab[k[o+4>>2]&31](m,-1);k[(k[f>>2]|0)+8>>2]=1}b=b<<25-c;c=25;f=g}else f=g;k[a>>2]=e;k[n>>2]=f;k[a+8>>2]=b;k[a+12>>2]=c;o=1;return o|0}function Qd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=a+244|0;b=k[f>>2]|0;a:do if((b|0)!=1){if((b+-1|0)>>>0>3){e=k[a>>2]|0;k[e+20>>2]=26;k[e+24>>2]=b;k[e+28>>2]=4;$a[k[e>>2]&63](a)}e=pj(k[a+28>>2]|0,k[a+232>>2]<<3)|0;k[a+264>>2]=e;e=pj(k[a+32>>2]|0,k[a+236>>2]<<3)|0;k[a+268>>2]=e;e=a+272|0;k[e>>2]=0;if((k[f>>2]|0)>0){d=0;b=0;while(1){g=k[a+248+(b<<2)>>2]|0;j=k[g+8>>2]|0;k[g+52>>2]=j;i=k[g+12>>2]|0;k[g+56>>2]=i;c=ha(i,j)|0;k[g+60>>2]=c;k[g+64>>2]=j<<3;h=((k[g+28>>2]|0)>>>0)%(j>>>0)|0;k[g+68>>2]=(h|0)==0?j:h;h=((k[g+32>>2]|0)>>>0)%(i>>>0)|0;k[g+72>>2]=(h|0)==0?i:h;if((d+c|0)>10){j=k[a>>2]|0;k[j+20>>2]=13;$a[k[j>>2]&63](a)}if((c|0)>0)while(1){j=k[e>>2]|0;k[e>>2]=j+1;k[a+276+(j<<2)>>2]=b;if((c|0)>1)c=c+-1|0;else break}b=b+1|0;if((b|0)>=(k[f>>2]|0))break a;d=k[e>>2]|0}}}else{j=k[a+248>>2]|0;k[a+264>>2]=k[j+28>>2];i=k[j+32>>2]|0;k[a+268>>2]=i;k[j+52>>2]=1;k[j+56>>2]=1;k[j+60>>2]=1;k[j+64>>2]=8;k[j+68>>2]=1;h=k[j+12>>2]|0;i=(i>>>0)%(h>>>0)|0;k[j+72>>2]=(i|0)==0?h:i;k[a+272>>2]=1;k[a+276>>2]=0}while(0);b=k[a+204>>2]|0;if((b|0)<=0)return;j=ha(k[a+264>>2]|0,b)|0;k[a+200>>2]=(j|0)<65535?j:65535;return}function Rd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;d=k[d>>2]|0;q=k[a+452>>2]|0;r=k[a+324>>2]|0;s=k[q+16>>2]|0;t=k[q+20>>2]|0;u=k[q+24>>2]|0;q=k[q+28>>2]|0;e=k[14748+((k[a+140>>2]&3)<<2)>>2]|0;m=k[(k[b>>2]|0)+(c<<2)>>2]|0;o=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;c=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;p=k[a+112>>2]|0;n=p>>>1;if(!n){a=m;b=o}else{i=n<<1;h=n;b=m;a=o;f=c;g=d;while(1){y=l[a>>0]|0;A=l[f>>0]|0;z=k[s+(A<<2)>>2]|0;A=(k[u+(A<<2)>>2]|0)+(k[q+(y<<2)>>2]|0)>>16;y=k[t+(y<<2)>>2]|0;w=l[b>>0]|0;x=e&255;C=e>>>8;v=l[b+1>>0]|0;B=C&255;e=(e<<24|C)>>>8|C<<24;v=(l[r+(A+(B>>>1)+v)>>0]|0)<<3&2016|(l[r+(z+B+v)>>0]|0)<<8&63488|(l[r+(y+B+v)>>0]|0)>>>3;j[g>>1]=(l[r+(A+(x>>>1)+w)>>0]|0)<<3&2016|(l[r+(z+x+w)>>0]|0)<<8&63488|(l[r+(y+x+w)>>0]|0)>>>3;j[g+2>>1]=v;h=h+-1|0;if(!h)break;else{b=b+2|0;a=a+1|0;f=f+1|0;g=g+4|0}}a=m+i|0;b=o+n|0;c=c+n|0;d=d+(n<<2)|0}if(!(p&1))return;A=l[b>>0]|0;z=l[c>>0]|0;C=l[a>>0]|0;B=e&255;j[d>>1]=(l[r+(((k[u+(z<<2)>>2]|0)+(k[q+(A<<2)>>2]|0)>>16)+(B>>>1)+C)>>0]|0)<<3&2016|(l[r+((k[s+(z<<2)>>2]|0)+B+C)>>0]|0)<<8&63488|(l[r+((k[t+(A<<2)>>2]|0)+B+C)>>0]|0)>>>3;return}function Sd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=a+4|0;c=k[g>>2]|0;h=a+100|0;if(c>>>0<(k[h>>2]|0)>>>0){k[g>>2]=c+1;c=l[c>>0]|0}else c=Ff(a)|0;switch(c|0){case 43:case 45:{d=(c|0)==45&1;c=k[g>>2]|0;if(c>>>0<(k[h>>2]|0)>>>0){k[g>>2]=c+1;c=l[c>>0]|0}else c=Ff(a)|0;if((b|0)!=0&(c+-48|0)>>>0>9?(k[h>>2]|0)!=0:0){k[g>>2]=(k[g>>2]|0)+-1;f=d}else f=d;break}default:f=0}if((c+-48|0)>>>0>9)if(!(k[h>>2]|0)){d=-2147483648;c=0}else{k[g>>2]=(k[g>>2]|0)+-1;d=-2147483648;c=0}else{d=0;do{d=c+-48+(d*10|0)|0;c=k[g>>2]|0;if(c>>>0<(k[h>>2]|0)>>>0){k[g>>2]=c+1;c=l[c>>0]|0}else c=Ff(a)|0}while((c+-48|0)>>>0<10&(d|0)<214748364);b=((d|0)<0)<<31>>31;if((c+-48|0)>>>0<10){do{b=Uh(d|0,b|0,10,0)|0;d=L;c=zi(c|0,((c|0)<0)<<31>>31|0,-48,-1)|0;d=zi(c|0,L|0,b|0,d|0)|0;b=L;c=k[g>>2]|0;if(c>>>0<(k[h>>2]|0)>>>0){k[g>>2]=c+1;c=l[c>>0]|0}else c=Ff(a)|0}while((c+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&d>>>0<2061584302));e=d}else e=d;if((c+-48|0)>>>0<10)do{c=k[g>>2]|0;if(c>>>0<(k[h>>2]|0)>>>0){k[g>>2]=c+1;c=l[c>>0]|0}else c=Ff(a)|0}while((c+-48|0)>>>0<10);if(k[h>>2]|0)k[g>>2]=(k[g>>2]|0)+-1;a=(f|0)!=0;c=pi(0,0,e|0,b|0)|0;d=a?L:b;c=a?c:e}L=d;return c|0}function Td(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=k[b+28>>2]<<3;w=(k[a+232>>2]|0)/(k[b+8>>2]|0)|0;f=k[a+236>>2]|0;r=b+12|0;b=k[r>>2]|0;s=(f|0)/(b|0)|0;t=ha(s,w)|0;u=(t|0)/2|0;e=k[a+28>>2]|0;a=ha(w,v)|0;if((f|0)>0&(a-e|0)>0){b=e+~a|0;b=(a|2)-e+((b|0)>-2?b:-2)|0;a=0;do{q=(k[c+(a<<2)>>2]|0)+e|0;eh(q|0,i[q+-1>>0]|0,b|0)|0;a=a+1|0}while((a|0)!=(f|0));b=k[r>>2]|0}if((b|0)<=0)return;m=(v|0)==0;n=(s|0)>0;o=(w|0)>0;p=0;q=0;while(1){b=k[d+(q<<2)>>2]|0;a:do if(!m){if(!n){e=((u|0)/(t|0)|0)&255;if(o){a=0;while(1){i[b>>0]=e;a=a+1|0;if((a|0)==(v|0))break a;else b=b+1|0}}else{a=0;while(1){i[b>>0]=e;a=a+1|0;if((a|0)==(v|0))break a;else b=b+1|0}}}else{h=0;j=0}while(1){if(o){a=0;g=0;do{e=0;f=(k[c+(g+p<<2)>>2]|0)+j|0;while(1){a=(l[f>>0]|0)+a|0;e=e+1|0;if((e|0)==(w|0))break;else f=f+1|0}g=g+1|0}while((g|0)!=(s|0))}else a=0;i[b>>0]=(a+u|0)/(t|0)|0;h=h+1|0;if((h|0)==(v|0))break;else{j=j+w|0;b=b+1|0}}}while(0);q=q+1|0;if((q|0)>=(k[r>>2]|0))break;else p=p+s|0}return}function Ud(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=k[a+324>>2]|0;if((e|0)<=0)return;v=k[b>>2]|0;w=k[b+4>>2]|0;u=k[b+8>>2]|0;g=k[14748+((k[a+140>>2]&3)<<2)>>2]|0;i=k[a+112>>2]|0;do{t=e;e=e+-1|0;b=k[v+(c<<2)>>2]|0;f=k[w+(c<<2)>>2]|0;h=k[u+(c<<2)>>2]|0;c=c+1|0;a=k[d>>2]|0;d=d+4|0;if(a&3){s=g&255;j[a>>1]=(l[x+((l[f>>0]|0)+(s>>>1))>>0]|0)<<3&2016|(l[x+((l[b>>0]|0)+s)>>0]|0)<<8&63488|(l[x+((l[h>>0]|0)+s)>>0]|0)>>>3;b=b+1|0;f=f+1|0;h=h+1|0;i=i+-1|0;a=a+2|0}s=i>>>1;if(s){r=s<<1;q=0;m=b;n=f;o=h;p=a;while(1){z=g&255;A=g>>>8;y=A&255;g=(g<<24|A)>>>8|A<<24;k[p>>2]=(l[x+((l[n>>0]|0)+(z>>>1))>>0]|0)<<3&2016|(l[x+((l[m>>0]|0)+z)>>0]|0)<<8&63488|(l[x+((l[o>>0]|0)+z)>>0]|0)>>>3|((l[x+((l[n+1>>0]|0)+(y>>>1))>>0]|0)<<3&2016|(l[x+((l[m+1>>0]|0)+y)>>0]|0)<<8&63488|(l[x+((l[o+1>>0]|0)+y)>>0]|0)>>>3)<<16;q=q+1|0;if((q|0)==(s|0))break;else{m=m+2|0;n=n+2|0;o=o+2|0;p=p+4|0}}b=b+r|0;f=f+r|0;h=h+r|0;a=a+(s<<2)|0}if(i&1|0){A=g&255;j[a>>1]=(l[x+((l[f>>0]|0)+(A>>>1))>>0]|0)<<3&2016|(l[x+((l[b>>0]|0)+A)>>0]|0)<<8&63488|(l[x+((l[h>>0]|0)+A)>>0]|0)>>>3}}while((t|0)>1);return}function Vd(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,52)|0;k[a+356>>2]=b;k[b>>2]=13;k[b+4>>2]=1;l=b+8|0;k[l>>2]=0;if(k[a+188>>2]|0){n=k[a>>2]|0;k[n+20>>2]=25;$a[k[n>>2]&63](a)}h=a+60|0;if((k[h>>2]|0)<=0)return;i=a+232|0;j=a+236|0;n=a+192|0;e=b+12|0;f=0;g=k[a+68>>2]|0;b=1;while(1){c=k[g+8>>2]|0;d=k[i>>2]|0;do if((c|0)==(d|0)?(k[g+12>>2]|0)==(k[j>>2]|0):0){c=e+(f<<2)|0;if(!(k[n>>2]|0)){k[c>>2]=3;break}else{k[c>>2]=2;k[l>>2]=1;break}}else m=10;while(0);do if((m|0)==10){m=0;if((c<<1|0)==(d|0)){if((k[g+12>>2]|0)==(k[j>>2]|0)){b=e+(f<<2)|0;if(!(Zj()|0)){k[b>>2]=5;b=0;break}else{k[b>>2]=4;b=0;break}}if((k[g+12>>2]<<1|0)==(k[j>>2]|0)){if(k[n>>2]|0){k[e+(f<<2)>>2]=6;k[l>>2]=1;break}c=e+(f<<2)|0;if(!(Zj()|0)){k[c>>2]=8;break}else{k[c>>2]=7;break}}}if(((d|0)%(c|0)|0|0)==0?((k[j>>2]|0)%(k[g+12>>2]|0)|0|0)==0:0){k[e+(f<<2)>>2]=9;b=0;break}d=k[a>>2]|0;k[d+20>>2]=38;$a[k[d>>2]&63](a)}while(0);f=f+1|0;if((f|0)>=(k[h>>2]|0))break;else g=g+84|0}if((b|0)!=0|(k[n>>2]|0)==0)return;n=k[a>>2]|0;k[n+20>>2]=99;ab[k[n+4>>2]&31](a,0);return}function Wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=k[a+452>>2]|0;r=k[d>>2]|0;b=k[b+4>>2]|0;d=i[o+140+b>>0]|0;q=d&255;b=i[o+150+b>>0]|0;o=b&255;p=a+312|0;m=k[p>>2]|0;if((m|0)<=0)return;n=a+112|0;j=o+-1|0;l=d<<24>>24!=0;if((b&255)>1){f=(d<<24>>24==0?~q:-2)+q+2|0;g=0;h=0;while(1){b=k[r+(h<<2)>>2]|0;d=k[n>>2]|0;e=b+d|0;if((d|0)>0){if(!l){d=7;break}a=k[c+(g<<2)>>2]|0;d=b;while(1){eh(d|0,i[a>>0]|0,f|0)|0;b=q;while(1){d=d+1|0;if((b|0)>1)b=b+-1|0;else break}if(d>>>0<e>>>0)a=a+1|0;else break}d=k[n>>2]|0}vh(r,h,r,h+1|0,j,d);h=h+o|0;if((h|0)>=(k[p>>2]|0)){d=24;break}else g=g+1|0}if((d|0)==7)while(1){}else if((d|0)==24)return}if(!l){d=(k[n>>2]|0)>0;b=0;while(1){if(d){d=22;break}b=b+o|0;if((b|0)>=(m|0)){d=24;break}}if((d|0)==22)while(1){}else if((d|0)==24)return}else{s=0;t=0}while(1){d=k[r+(t<<2)>>2]|0;m=k[n>>2]|0;a=d+m|0;if((m|0)>0){e=k[c+(s<<2)>>2]|0;while(1){eh(d|0,i[e>>0]|0,q|0)|0;b=q;while(1){d=d+1|0;if((b|0)>1)b=b+-1|0;else break}if(d>>>0<a>>>0)e=e+1|0;else break}}t=t+o|0;if((t|0)>=(k[p>>2]|0))break;else s=s+1|0}return}function Xd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=k[a+424>>2]|0;switch(b|0){case 0:{b=r+4|0;if(!(k[(k[a+452>>2]|0)+8>>2]|0))k[b>>2]=38;else{k[b>>2]=37;p=k[a+316>>2]|0;j=k[a+36>>2]|0;if((j|0)>0){l=r+56|0;m=r+60|0;n=p+2|0;o=p+-2|0;q=0;i=k[a+216>>2]|0;while(1){g=(ha(k[i+36>>2]|0,k[i+12>>2]|0)|0)/(p|0)|0;h=k[(k[l>>2]|0)+(q<<2)>>2]|0;e=k[(k[m>>2]|0)+(q<<2)>>2]|0;f=k[r+8+(q<<2)>>2]|0;b=ha(g,n)|0;if((b|0)>0){a=0;do{d=k[f+(a<<2)>>2]|0;k[e+(a<<2)>>2]=d;k[h+(a<<2)>>2]=d;a=a+1|0}while((a|0)!=(b|0))}b=g<<1;if((g|0)>0){a=ha(g,p)|0;c=ha(g,o)|0;d=0;do{s=d+a|0;t=d+c|0;k[e+(t<<2)>>2]=k[f+(s<<2)>>2];k[e+(s<<2)>>2]=k[f+(t<<2)>>2];d=d+1|0}while((d|0)<(b|0));b=0;do{k[h+(b-g<<2)>>2]=k[h>>2];b=b+1|0}while((b|0)!=(g|0))}q=q+1|0;if((q|0)==(j|0))break;else i=i+84|0}}k[r+64>>2]=0;k[r+68>>2]=0;k[r+76>>2]=0}k[r+48>>2]=0;k[r+52>>2]=0;return}case 2:{k[r+4>>2]=39;return}default:{t=k[a>>2]|0;k[t+20>>2]=4;$a[k[t>>2]&63](a);return}}}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0;q=k[a+364>>2]|0;d=a+200|0;if(k[d>>2]|0){e=q+68|0;c=k[e>>2]|0;if(!c){p=q+72|0;Gd(a,k[p>>2]|0);c=k[d>>2]|0;k[e>>2]=c;k[p>>2]=(k[p>>2]|0)+1&7}k[e>>2]=c+-1}n=a+272|0;if((k[n>>2]|0)<=0)return 1;o=a+328|0;p=0;do{f=k[a+276+(p<<2)>>2]|0;i=k[(k[a+248+(f<<2)>>2]|0)+20>>2]|0;c=j[k[b+(p<<2)>>2]>>1]>>k[o>>2];g=q+76+(i<<2)|0;m=q+52+(f<<2)|0;e=(k[g>>2]|0)+(k[m>>2]|0)|0;f=q+36+(f<<2)|0;h=k[f>>2]|0;d=c-h|0;if((c|0)!=(h|0)){k[f>>2]=c;Pb(a,e,1);if((d|0)>0){Pb(a,e+1|0,0);c=e+2|0;e=4}else{Pb(a,e+1|0,1);c=e+3|0;e=8;d=0-d|0}k[m>>2]=e;h=d+-1|0;if(h){Pb(a,c,1);e=(k[g>>2]|0)+20|0;c=h>>1;if(!c){f=1;c=e}else{d=1;do{Pb(a,e,1);d=d<<1;e=e+1|0;c=c>>1}while((c|0)!=0);f=d;c=e}}else f=0;Pb(a,c,0);if((f|0)>=(1<<l[a+120+i>>0]>>1|0)){if((f|0)>(1<<l[a+136+i>>0]>>1|0))k[m>>2]=(k[m>>2]|0)+8}else k[m>>2]=0;d=c+14|0;c=f>>1;if(c|0)do{Pb(a,d,(c&h|0)!=0&1);c=c>>1}while((c|0)!=0)}else{Pb(a,e,0);k[m>>2]=0}p=p+1|0}while((p|0)<(k[n>>2]|0));return 1}function Zd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;l=r;r=r+112|0;f=l;g=k[a+324>>2]|0;h=0;a=k[b+80>>2]|0;b=f;while(1){m=ha(k[a>>2]<<13,j[c>>1]|0)|0|1024;n=ha(j[c+32>>1]|0,k[a+64>>2]|0)|0;p=ha(j[c+64>>1]|0,k[a+128>>2]|0)|0;o=(p+n|0)*6476|0;p=n-p|0;n=(p*2896|0)+m|0;q=n+o|0;o=n-o|0;m=(ha(p,-11584)|0)+m|0;p=ha(j[c+16>>1]|0,k[a+32>>2]|0)|0;n=ha(j[c+48>>1]|0,k[a+96>>2]|0)|0;s=(n+p|0)*6810|0;p=s+(p*4209|0)|0;n=s+(ha(n,-17828)|0)|0;k[b>>2]=p+q>>11;k[b+80>>2]=q-p>>11;k[b+20>>2]=n+o>>11;k[b+60>>2]=o-n>>11;k[b+40>>2]=m>>11;h=h+1|0;if((h|0)==5)break;else{c=c+2|0;a=a+4|0;b=b+4|0}}a=g+128|0;c=0;while(1){s=(k[d+(c<<2)>>2]|0)+e|0;q=(k[f>>2]<<13)+131072|0;p=k[f+8>>2]|0;n=k[f+16>>2]|0;o=(n+p|0)*6476|0;n=p-n|0;p=(n*2896|0)+q|0;m=p+o|0;o=p-o|0;q=(ha(n,-11584)|0)+q|0;n=k[f+4>>2]|0;p=k[f+12>>2]|0;h=(p+n|0)*6810|0;n=h+(n*4209|0)|0;p=h+(ha(p,-17828)|0)|0;i[s>>0]=i[a+((n+m|0)>>>18&1023)>>0]|0;i[s+4>>0]=i[a+((m-n|0)>>>18&1023)>>0]|0;i[s+1>>0]=i[a+((p+o|0)>>>18&1023)>>0]|0;i[s+3>>0]=i[a+((o-p|0)>>>18&1023)>>0]|0;i[s+2>>0]=i[a+(q>>>18&1023)>>0]|0;c=c+1|0;if((c|0)==5)break;else f=f+20|0}r=l;return}function _d(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0.0,g=0,h=0,i=0,j=0.0,l=0,n=0.0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;e=0;c=0;d=0;do{p=k[a+(e<<2)>>2]|0;d=p+d|0;c=((p|0)>126&1)+c|0;e=e+1|0}while((e|0)!=64);if((c|64|0)==64)return;b=(m[b>>1]|0)<<1;b=b>>>0>31?31:b;p=(8128-d|0)/(c|0)|0;p=((b|0)<(p|0)?b:p)+127|0;b=0;while(1){l=k[14344+(b<<2)>>2]|0;a:do if((k[a+(l<<2)>>2]|0)>=127){d=b;while(1){c=d+1|0;if((c|0)>=64){i=c;break}if((k[a+(k[14344+(c<<2)>>2]<<2)>>2]|0)>126)d=c;else{i=c;break}}e=k[a+(k[14344+(((b|0)>0?b+-1|0:0)<<2)>>2]<<2)>>2]|0;g=k[a+(k[14344+(((i|0)<63?i:63)<<2)>>2]<<2)>>2]|0;c=d+2|0;h=e-(k[a+(k[14344+(((b|0)>1?b+-2|0:0)<<2)>>2]<<2)>>2]|0)|0;e=127-e|0;q=g-(k[a+(k[14344+(((i|0)<62?c:63)<<2)>>2]<<2)>>2]|0)|0;g=127-g|0;g=(q|0)>(g|0)?q:g;e=(b|0)==0?g:(h|0)>(e|0)?h:e;h=i-b|0;n=1.0/+(h+1|0);if((b|0)<=(d|0)){o=+(ha(e,h)|0);j=+(ha(h,0-((i|0)==64?e:g)|0)|0);g=l;f=n;while(1){t=f*f;u=f*t;s=u*2.0;r=t*3.0;e=~~+ga(+(j*(u-t)+((r-s)*127.0+(o*(f+(u-t*2.0))+(s-r+1.0)*127.0))));k[a+(g<<2)>>2]=(e|0)<(p|0)?e:p;e=b+1|0;if((b|0)>=(d|0))break a;g=k[14344+(e<<2)>>2]|0;b=e;f=n+f}}}else c=b+1|0;while(0);if((c|0)<64)b=c;else break}return}function $d(a){a=a|0;var b=0,c=0,d=0,e=0;c=a+24|0;b=k[c>>2]|0;e=k[b>>2]|0;k[b>>2]=e+1;i[e>>0]=-1;e=b+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=-40;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}if(k[a+72>>2]|0)Mc(a,0)|0;if(k[a+76>>2]|0)Mc(a,1)|0;if(k[a+80>>2]|0)Mc(a,2)|0;if(k[a+84>>2]|0)Mc(a,3)|0;if(!(k[a+180>>2]|0)){if(k[a+88>>2]|0)Pc(a,0,0);if(k[a+104>>2]|0)Pc(a,0,1);if(k[a+92>>2]|0)Pc(a,1,0);if(k[a+108>>2]|0)Pc(a,1,1);if(k[a+96>>2]|0)Pc(a,2,0);if(k[a+112>>2]|0)Pc(a,2,1);if(k[a+100>>2]|0)Pc(a,3,0);if(k[a+116>>2]|0)Pc(a,3,1)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=-1;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if((e|0)==0?(cb[k[b+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}b=k[c>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=-39;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if(e|0)return;if(cb[k[b+12>>2]&15](a)|0)return;e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a);return}function ae(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,n=0,o=0,p=0,q=0,s=0,t=0;t=r;r=r+32|0;q=t;s=k[a+444>>2]|0;l=1<<k[a+412>>2];d=a+276|0;if(k[d>>2]|0?(e=s+40|0,(k[e>>2]|0)==0):0){o=s+16|0;p=k[a+440>>2]|0;n=p+24|0;k[n>>2]=(k[n>>2]|0)+((k[o>>2]|0)/8|0);k[o>>2]=0;if(!(cb[k[p+8>>2]&15](a)|0)){s=0;r=t;return s|0}c=a+328|0;if((k[c>>2]|0)>0){f=0;do{k[s+24+(f<<2)>>2]=0;f=f+1|0}while((f|0)<(k[c>>2]|0))}k[s+20>>2]=0;k[e>>2]=k[d>>2];if(!(k[a+416>>2]|0))k[s+8>>2]=0}k[q+16>>2]=a;i=a+24|0;f=k[i>>2]|0;g=k[f>>2]|0;k[q>>2]=g;e=k[f+4>>2]|0;n=q+4|0;k[n>>2]=e;o=s+12|0;c=k[o>>2]|0;p=s+16|0;d=k[p>>2]|0;h=a+356|0;do if((k[h>>2]|0)>0){g=q+8|0;a=q+12|0;f=0;while(1){e=k[b+(f<<2)>>2]|0;if((d|0)<1){if(!(Pd(q,c,d,1)|0)){c=0;a=18;break}d=k[a>>2]|0;c=k[g>>2]|0}d=d+-1|0;if(1<<d&c|0)j[e>>1]=m[e>>1]|0|l;f=f+1|0;if((f|0)>=(k[h>>2]|0)){a=16;break}}if((a|0)==16){f=k[i>>2]|0;g=k[q>>2]|0;e=k[n>>2]|0;break}else if((a|0)==18){r=t;return c|0}}while(0);k[f>>2]=g;k[f+4>>2]=e;k[o>>2]=c;k[p>>2]=d;s=s+40|0;k[s>>2]=(k[s>>2]|0)+-1;s=1;r=t;return s|0}function be(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;l=a+4|0;i=Ya[k[k[l>>2]>>2]&15](a,1,80)|0;c=a+424|0;k[c>>2]=i;k[i>>2]=25;if(b|0){j=k[a>>2]|0;k[j+20>>2]=4;$a[k[j>>2]&63](a)}j=a+316|0;d=k[j>>2]|0;if(!(k[(k[a+452>>2]|0)+8>>2]|0)){b=a+36|0;h=b;b=k[b>>2]|0;c=d;f=d}else{if((d|0)<2){d=k[a>>2]|0;k[d+20>>2]=47;$a[k[d>>2]&63](a);d=k[j>>2]|0}g=k[c>>2]|0;h=a+36|0;e=Ya[k[k[l>>2]>>2]&15](a,1,k[h>>2]<<3)|0;f=g+56|0;k[f>>2]=e;b=k[h>>2]|0;g=g+60|0;k[g>>2]=e+(b<<2);if((b|0)>0){c=d+4|0;d=0;e=k[a+216>>2]|0;while(1){m=ha(k[e+36>>2]|0,k[e+12>>2]|0)|0;m=(m|0)/(k[j>>2]|0)|0;b=ha(m,c)|0;m=(Ya[k[k[l>>2]>>2]&15](a,1,b<<3)|0)+(m<<2)|0;k[(k[f>>2]|0)+(d<<2)>>2]=m;k[(k[g>>2]|0)+(d<<2)>>2]=m+(b<<2);d=d+1|0;b=k[h>>2]|0;if((d|0)>=(b|0))break;else e=e+84|0}}f=k[j>>2]|0;c=f;f=f+2|0}if((b|0)<=0)return;e=i+8|0;b=0;d=k[a+216>>2]|0;while(1){i=k[d+36>>2]|0;m=(ha(i,k[d+12>>2]|0)|0)/(c|0)|0;i=ha(k[d+28>>2]|0,i)|0;m=ha(m,f)|0;m=fb[k[(k[l>>2]|0)+8>>2]&3](a,1,i,m)|0;k[e+(b<<2)>>2]=m;b=b+1|0;if((b|0)>=(k[h>>2]|0))break;c=k[j>>2]|0;d=d+84|0}return}function ce(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,f=0,g=0,h=0.0,i=0,j=0.0,l=0.0,n=0.0,p=0.0,q=0.0,r=0.0,s=0.0;e=0;c=0;d=0.0;do{n=+o[a+(e<<2)>>2];d=d+n;c=(n>=127.0&1)+c|0;e=e+1|0}while((e|0)!=64);if((c|64|0)==64)return;f=(m[b>>1]|0)<<1;l=f>>>0>31?31.0:+(f|0);n=(8128.0-d)/+(c|0);n=(l<n?l:n)+127.0;f=0;while(1){g=k[14344+(f<<2)>>2]|0;a:do if(!(+o[a+(g<<2)>>2]<127.0)){e=f;while(1){c=e+1|0;if((c|0)>=64){i=c;break}if(!(+o[a+(k[14344+(c<<2)>>2]<<2)>>2]>=127.0)){i=c;break}else e=c}d=+o[a+(k[14344+(((f|0)>0?f+-1|0:0)<<2)>>2]<<2)>>2];h=+o[a+(k[14344+(((i|0)<63?i:63)<<2)>>2]<<2)>>2];c=e+2|0;j=d-+o[a+(k[14344+(((f|0)>1?f+-2|0:0)<<2)>>2]<<2)>>2];d=127.0-d;l=h-+o[a+(k[14344+(((i|0)<62?c:63)<<2)>>2]<<2)>>2];h=127.0-h;h=l>h?l:h;d=(f|0)==0?h:j>d?j:d;b=i-f|0;j=1.0/+(b+1|0);if((f|0)<=(e|0)){l=+(ha(127-~~(127.0-d)|0,b)|0);h=+(ha(~~(127.0-((i|0)==64?d:h))+-127|0,b)|0);d=j;while(1){r=d*d;s=d*r;q=s*2.0;p=r*3.0;p=h*(s-r)+((p-q)*127.0+(l*(d+(s-r*2.0))+(q-p+1.0)*127.0));o[a+(g<<2)>>2]=p<n?p:n;b=f+1|0;if((f|0)>=(e|0))break a;g=k[14344+(b<<2)>>2]|0;f=b;d=j+d}}}else c=f+1|0;while(0);if((c|0)<64)f=c;else break}return}function de(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,l=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0.0;s=k[a+360>>2]|0;l=k[b+16>>2]|0;u=k[s+60+(l<<2)>>2]|0;l=k[a+72+(l<<2)>>2]|0;t=k[s+44>>2]|0;q=k[s+48>>2]|0;i=k[s+52>>2]|0;r=k[s+56>>2]|0;s=k[s+76>>2]|0;m=c+(e<<2)|0;if(!g)return;n=(h|0)==0;if(!i){b=f;a=0;while(1){db[q&15](m,b,s);$a[t&63](s);if(!n){c=0;do{v=+o[s+(c<<2)>>2]/+p[8+(((c|0)%8|0)<<3)>>3]/+p[8+(((c|0)/8|0)<<3)>>3];j[h+(a<<7)+(c<<1)>>1]=~~(v+(v>=0.0?.5:-.5));c=c+1|0}while((c|0)!=64)}db[r&15](d+(a<<7)|0,u,s);a=a+1|0;if((a|0)==(g|0))break;else b=b+8|0}return}else e=0;while(1){db[q&15](m,f,s);ab[i&31](s,l);$a[t&63](s);if(!n){b=0;do{v=+o[s+(b<<2)>>2]/+p[8+(((b|0)%8|0)<<3)>>3]/+p[8+(((b|0)/8|0)<<3)>>3];j[h+(e<<7)+(b<<1)>>1]=~~(v+(v>=0.0?.5:-.5));b=b+1|0}while((b|0)!=64)}db[r&15](d+(e<<7)|0,u,s);c=0;do{b=d+(e<<7)+(c<<1)|0;a=j[b>>1]|0;if(a<<16>>16>=-1023){if(a<<16>>16>1023)j[b>>1]=1023}else j[b>>1]=-1023;c=c+1|0}while((c|0)!=64);e=e+1|0;if((e|0)==(g|0))break;else f=f+8|0}return}function ee(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,l=0,m=0;l=k[a+428>>2]|0;if(!(k[l+16>>2]|0)){a=a+156|0;k[a>>2]=0;return}a:do if((k[a+80>>2]|0?k[a+220>>2]|0:0)?(i=a+160|0,k[i>>2]|0):0){b=l+116|0;c=k[b>>2]|0;if(!c){h=a+36|0;c=Ya[k[k[a+4>>2]>>2]&15](a,1,(k[h>>2]|0)*24|0)|0;k[b>>2]=c}else h=a+36|0;if((k[h>>2]|0)>0){g=0;f=k[a+216>>2]|0;b=0;while(1){d=k[f+76>>2]|0;if(!d)break a;e=k[d>>2]|0;if(e>>>0<65536|(e&65535)<<16>>16==0)break a;e=k[d+16>>2]|0;if(!((e&65535)<<16>>16))break a;if(e>>>0<65536|(j[d+32>>1]|0)==0)break a;if(!(j[d+4>>1]|0))break a;d=k[i>>2]|0;if((k[d+(g<<8)>>2]|0)<0)break a;m=d+(g<<8)+4|0;k[c+4>>2]=k[m>>2];m=k[m>>2]|0;e=d+(g<<8)+8|0;k[c+8>>2]=k[e>>2];m=k[e>>2]|m;e=d+(g<<8)+12|0;k[c+12>>2]=k[e>>2];e=m|k[e>>2];m=d+(g<<8)+16|0;k[c+16>>2]=k[m>>2];m=e|k[m>>2];e=d+(g<<8)+20|0;k[c+20>>2]=k[e>>2];b=(m|k[e>>2]|0)==0?b:1;g=g+1|0;if((g|0)>=(k[h>>2]|0))break;else{c=c+24|0;f=f+84|0}}if(b|0){k[l+12>>2]=46;m=a+156|0;k[m>>2]=0;return}}}while(0);k[l+12>>2]=44;m=a+156|0;k[m>>2]=0;return}function fe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=a+4|0;e=Ya[k[k[d>>2]>>2]&15](a,1,48)|0;f=a+452|0;k[f>>2]=e;k[e>>2]=26;k[e+8>>2]=0;b=ha(k[a+120>>2]|0,k[a+112>>2]|0)|0;c=e+40|0;k[c>>2]=b;b=e+4|0;if((k[a+312>>2]|0)==2){k[b>>2]=3;g=(Zj()|0)==0;b=e+12|0;k[b>>2]=g?11:10;do if((k[a+44>>2]|0)==16)if(!(k[a+88>>2]|0)){k[b>>2]=13;break}else{k[b>>2]=12;break}while(0);g=Ya[k[(k[d>>2]|0)+4>>2]&15](a,1,k[c>>2]|0)|0;k[e+32>>2]=g}else{k[b>>2]=4;g=(Zj()|0)==0;b=e+12|0;k[b>>2]=g?15:14;do if((k[a+44>>2]|0)==16)if(!(k[a+88>>2]|0)){k[b>>2]=17;break}else{k[b>>2]=16;break}while(0);k[e+32>>2]=0}g=k[f>>2]|0;b=Ya[k[k[d>>2]>>2]&15](a,1,1024)|0;c=g+16|0;k[c>>2]=b;b=Ya[k[k[d>>2]>>2]&15](a,1,1024)|0;f=g+20|0;k[f>>2]=b;b=Ya[k[k[d>>2]>>2]&15](a,1,1024)|0;e=g+24|0;k[e>>2]=b;b=Ya[k[k[d>>2]>>2]&15](a,1,1024)|0;k[g+28>>2]=b;c=k[c>>2]|0;d=k[f>>2]|0;e=k[e>>2]|0;f=0;a=-128;while(1){k[c+(f<<2)>>2]=(a*91881|0)+32768>>16;k[d+(f<<2)>>2]=(a*116130|0)+32768>>16;g=ha(a,-46802)|0;k[e+(f<<2)>>2]=g;g=(ha(a,-22554)|0)+32768|0;k[b+(f<<2)>>2]=g;f=f+1|0;if((f|0)==256)break;else a=a+1|0}return}function ge(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=k[a+460>>2]|0;b=(k[a+88>>2]|0)==1;k[l+28>>2]=b&1;m=a+120|0;a=fb[k[(k[a+4>>2]|0)+8>>2]&3](a,1,b?766:256,k[m>>2]|0)|0;j=l+24|0;k[j>>2]=a;c=k[l+20>>2]|0;if((k[m>>2]|0)<=0)return;if(b)b=0;else{b=0;while(1){d=k[l+32+(b<<2)>>2]|0;c=(c|0)/(d|0)|0;e=k[a+(b<<2)>>2]|0;f=d+-1|0;g=f<<1;h=0;d=(d+254|0)/(g|0)|0;a=0;do{if((h|0)>(d|0))do{a=a+1|0;d=(((a<<1|1)*255|0)+f|0)/(g|0)|0}while((h|0)>(d|0));n=(ha(a,c)|0)&255;i[e+h>>0]=n;h=h+1|0}while((h|0)!=256);b=b+1|0;if((b|0)>=(k[m>>2]|0))break;a=k[j>>2]|0}return}while(1){d=k[l+32+(b<<2)>>2]|0;c=(c|0)/(d|0)|0;h=a+(b<<2)|0;k[h>>2]=(k[h>>2]|0)+255;h=k[(k[j>>2]|0)+(b<<2)>>2]|0;e=d+-1|0;f=e<<1;g=0;d=(d+254|0)/(f|0)|0;a=0;do{if((g|0)>(d|0))do{a=a+1|0;d=(((a<<1|1)*255|0)+e|0)/(f|0)|0}while((g|0)>(d|0));n=(ha(a,c)|0)&255;i[h+g>>0]=n;g=g+1|0}while((g|0)!=256);a=h+255|0;d=1;do{i[h+(0-d)>>0]=i[h>>0]|0;i[h+(d+255)>>0]=i[a>>0]|0;d=d+1|0}while((d|0)!=256);b=b+1|0;if((b|0)>=(k[m>>2]|0))break;a=k[j>>2]|0}return}function he(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=a+332|0;g=k[(k[f>>2]|0)+4160>>2]|0;i=a+20|0;d=k[i>>2]|0;if((d|0)!=100){h=k[a>>2]|0;k[h+20>>2]=20;k[h+24>>2]=d;$a[k[h>>2]&63](a)}d=a+72|0;e=k[d>>2]|0;if(!e){e=Di(a)|0;k[d>>2]=e}h=(c|0)==0;if(h){d=0;do{c=((ha(k[8976+(g<<8)+(d<<2)>>2]|0,b)|0)+50|0)/100|0;c=(c|0)<1?1:c;j[e+(d<<1)>>1]=(c|0)>32767?32767:c;d=d+1|0}while((d|0)!=64)}else{d=0;do{c=((ha(k[8976+(g<<8)+(d<<2)>>2]|0,b)|0)+50|0)/100|0;c=(c|0)<1?1:c;j[e+(d<<1)>>1]=(c|0)<255?c:255;d=d+1|0}while((d|0)!=64)}k[e+128>>2]=0;c=k[(k[f>>2]|0)+4160>>2]|0;d=k[i>>2]|0;if((d|0)!=100){i=k[a>>2]|0;k[i+20>>2]=20;k[i+24>>2]=d;$a[k[i>>2]&63](a)}d=a+76|0;e=k[d>>2]|0;if(!e){e=Di(a)|0;k[d>>2]=e}if(h){d=0;do{a=((ha(k[11280+(c<<8)+(d<<2)>>2]|0,b)|0)+50|0)/100|0;a=(a|0)<1?1:a;j[e+(d<<1)>>1]=(a|0)>32767?32767:a;d=d+1|0}while((d|0)!=64);b=e+128|0;k[b>>2]=0;return}else{d=0;do{a=((ha(k[11280+(c<<8)+(d<<2)>>2]|0,b)|0)+50|0)/100|0;a=(a|0)<1?1:a;j[e+(d<<1)>>1]=(a|0)<255?a:255;d=d+1|0}while((d|0)!=64);b=e+128|0;k[b>>2]=0;return}}function ie(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=k[a+364>>2]|0;n=k[a+328>>2]|0;o=a+24|0;h=k[o>>2]|0;p=s+16|0;k[p>>2]=k[h>>2];g=s+20|0;k[g>>2]=k[h+4>>2];h=a+200|0;if(k[h>>2]|0?(k[s+68>>2]|0)==0:0)xd(s,k[s+72>>2]|0);l=a+272|0;if((k[l>>2]|0)>0){m=s+12|0;q=0;do{r=k[a+276+(q<<2)>>2]|0;f=k[a+248+(r<<2)>>2]|0;e=j[k[b+(q<<2)>>2]>>1]>>n;r=s+36+(r<<2)|0;d=e-(k[r>>2]|0)|0;k[r>>2]=e;r=(d>>31)+d|0;d=(d|0)<0?0-d|0:d;if(d){c=0;e=d;while(1){d=c+1|0;e=e>>1;if(!e)break;else c=d}if((c|0)>10){e=k[a>>2]|0;k[e+20>>2]=6;$a[k[e>>2]&63](a)}}else d=0;c=k[f+20>>2]|0;if(!(k[m>>2]|0)){f=k[s+76+(c<<2)>>2]|0;xe(s,k[f+(d<<2)>>2]|0,i[f+1024+d>>0]|0)}else{f=(k[s+92+(c<<2)>>2]|0)+(d<<2)|0;k[f>>2]=(k[f>>2]|0)+1}if(d|0)xe(s,r,d);q=q+1|0}while((q|0)<(k[l>>2]|0))}c=k[o>>2]|0;k[c>>2]=k[p>>2];k[c+4>>2]=k[g>>2];c=k[h>>2]|0;if(!c)return 1;e=s+68|0;d=k[e>>2]|0;if(!d){k[e>>2]=c;s=s+72|0;k[s>>2]=(k[s>>2]|0)+1&7}else c=d;k[e>>2]=c+-1;return 1}function je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;d=k[d>>2]|0;p=k[a+452>>2]|0;q=k[a+324>>2]|0;r=k[p+16>>2]|0;s=k[p+20>>2]|0;t=k[p+24>>2]|0;p=k[p+28>>2]|0;i=k[(k[b>>2]|0)+(c<<2)>>2]|0;n=k[(k[b+4>>2]|0)+(c<<2)>>2]|0;c=k[(k[b+8>>2]|0)+(c<<2)>>2]|0;o=k[a+112>>2]|0;m=o>>>1;if(!m){a=i;b=n}else{b=m<<1;a=m;e=i;f=n;g=c;h=d;while(1){v=l[f>>0]|0;y=l[g>>0]|0;x=k[r+(y<<2)>>2]|0;y=(k[t+(y<<2)>>2]|0)+(k[p+(v<<2)>>2]|0)>>16;v=k[s+(v<<2)>>2]|0;w=l[e>>0]|0;u=l[e+1>>0]|0;u=(l[q+(u+y)>>0]|0)<<3&2016|(l[q+(u+x)>>0]|0)<<8&63488|(l[q+(u+v)>>0]|0)>>>3;j[h>>1]=(l[q+(w+y)>>0]|0)<<3&2016|(l[q+(w+x)>>0]|0)<<8&63488|(l[q+(w+v)>>0]|0)>>>3;j[h+2>>1]=u;a=a+-1|0;if(!a)break;else{e=e+2|0;f=f+1|0;g=g+1|0;h=h+4|0}}a=i+b|0;b=n+m|0;c=c+m|0;d=d+(m<<2)|0}if(!(o&1))return;y=l[b>>0]|0;w=l[c>>0]|0;x=l[a>>0]|0;j[d>>1]=(l[q+(x+((k[t+(w<<2)>>2]|0)+(k[p+(y<<2)>>2]|0)>>16))>>0]|0)<<3&2016|(l[q+(x+(k[r+(w<<2)>>2]|0))>>0]|0)<<8&63488|(l[q+(x+(k[s+(y<<2)>>2]|0))>>0]|0)>>>3;return}function ke(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=k[b+28>>2]<<3;h=c+-4|0;e=k[a+236>>2]|0;j=k[a+28>>2]|0;if((e|0)>-2&(m-j|0)>0){g=j+~m|0;g=(m|2)-j+((g|0)>-2?g:-2)|0;e=e+1|0;f=0;while(1){u=(k[h+(f<<2)>>2]|0)+j|0;eh(u|0,i[u+-1>>0]|0,g|0)|0;if((f|0)==(e|0))break;else f=f+1|0}}u=k[a+192>>2]|0;t=65536-(u<<9)|0;u=u<<6;r=b+12|0;if((k[r>>2]|0)<=0)return;s=m+-2|0;n=m+-1|0;p=0;do{g=k[d+(p<<2)>>2]|0;o=k[c+(p<<2)>>2]|0;q=k[c+(p+-1<<2)>>2]|0;p=p+1|0;a=k[c+(p<<2)>>2]|0;h=q+1|0;j=a+1|0;q=(l[a>>0]|0)+(l[q>>0]|0)|0;a=l[o>>0]|0;m=q+a|0;b=o+1|0;e=(l[j>>0]|0)+(l[h>>0]|0)+(l[b>>0]|0)|0;q=((ha(a,t)|0)+32768+(ha(m+q+e|0,u)|0)|0)>>>16&255;i[g>>0]=q;q=g+n|0;a=s;while(1){g=g+1|0;v=l[b>>0]|0;b=b+1|0;h=h+1|0;j=j+1|0;f=(l[j>>0]|0)+(l[h>>0]|0)+(l[b>>0]|0)|0;m=((ha(v,t)|0)+32768+(ha(m+e-v+f|0,u)|0)|0)>>>16&255;i[g>>0]=m;a=a+-1|0;if(!a)break;else{m=e;e=f}}v=l[o+n>>0]|0;v=((ha(v,t)|0)+32768+(ha((f<<1)+e-v|0,u)|0)|0)>>>16&255;i[q>>0]=v}while((p|0)<(k[r>>2]|0));return}function le(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,p=0,q=0,r=0;q=k[a+444>>2]|0;o=a+276|0;if(k[o>>2]|0){r=q+56|0;c=k[r>>2]|0;if(!c){if(!(cb[k[(k[a+440>>2]|0)+8>>2]&15](a)|0)){n=k[a>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](a)}c=a+328|0;if((k[c>>2]|0)>0){d=a+220|0;e=a+400|0;f=a+408|0;h=0;do{g=k[a+332+(h<<2)>>2]|0;if(k[d>>2]|0)if(!(k[e>>2]|0)){if(!(k[f>>2]|0))p=10}else p=12;else p=10;if((p|0)==10){p=0;l=k[q+60+(k[g+20>>2]<<2)>>2]|0;n=l+64|0;do{i[l>>0]=0;l=l+1|0}while((l|0)<(n|0));k[q+24+(h<<2)>>2]=0;k[q+40+(h<<2)>>2]=0;if(!((k[d>>2]|0)!=0?!(k[e>>2]|0):0))p=12}if((p|0)==12){p=0;eh(k[q+124+(k[g+24>>2]<<2)>>2]|0,0,256)|0}h=h+1|0}while((h|0)<(k[c>>2]|0))}k[q+12>>2]=0;k[q+16>>2]=0;k[q+20>>2]=-16;c=k[o>>2]|0;k[r>>2]=c}k[r>>2]=c+-1}c=q+188|0;d=1<<k[a+412>>2];e=a+356|0;if((k[e>>2]|0)>0)f=0;else return 1;do{if(sd(a,c)|0){r=k[b+(f<<2)>>2]|0;j[r>>1]=m[r>>1]|0|d}f=f+1|0}while((f|0)<(k[e>>2]|0));return 1}function me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=k[b+12>>2]|0;g=k[b+40>>2]|0;h=k[b+44>>2]|0;c=k[a+28>>2]|0;if(!c)return 1;e=k[k[b+16>>2]>>2]|0;while(1){a:while(1){b=Wg(f)|0;b:do if((b|0)==35)while(1){b=Wg(f)|0;switch(b|0){case 10:case -1:break b;default:{}}}while(0);switch(b|0){case 9:case 10:case 13:case 32:break;case -1:{d=7;break a}default:{d=8;break a}}}if((d|0)==7){b=k[a>>2]|0;k[b+20>>2]=43;$a[k[b>>2]&63](a);b=-1;d=9}else if((d|0)==8){d=0;if((b+-48|0)>>>0>9)d=9}if((d|0)==9){d=k[a>>2]|0;k[d+20>>2]=1027;$a[k[d>>2]&63](a)}b=b+-48|0;d=Wg(f)|0;c:do if((d|0)==35)while(1){d=Wg(f)|0;switch(d|0){case 10:case -1:break c;default:{}}}while(0);if((d+-48|0)>>>0<10)do{b=d+-48+(b*10|0)|0;d=Wg(f)|0;d:do if((d|0)==35)while(1){d=Wg(f)|0;switch(d|0){case 10:case -1:break d;default:{}}}while(0)}while((d+-48|0)>>>0<10);if(b>>>0>h>>>0){d=k[a>>2]|0;k[d+20>>2]=1028;$a[k[d>>2]&63](a)}i[e>>0]=i[g+b>>0]|0;c=c+-1|0;if(!c)break;else e=e+1|0}return 1}function ne(a,b,c){a=a|0;b=b|0;c=c|0;a:do if((b|0)<865946636)if((b|0)<-517283223)if((b|0)<-671664256){switch(b|0){case -988667853:break;default:break a}k[(k[a+332>>2]|0)+24>>2]=c;return}else{switch(b|0){case -671664256:break;default:break a}k[(k[a+332>>2]|0)+32>>2]=c;return}else if((b|0)<-41675723){switch(b|0){case -517283223:break;default:break a}k[(k[a+332>>2]|0)+48>>2]=c;return}else{switch(b|0){case -41675723:break;default:break a}k[(k[a+332>>2]|0)+40>>2]=c;return}else if((b|0)<1061927929)if((b|0)<865973855){switch(b|0){case 865946636:break;default:break a}k[(k[a+332>>2]|0)+28>>2]=c;return}else{switch(b|0){case 865973855:break;default:break a}k[(k[a+332>>2]|0)+36>>2]=c;return}else if((b|0)<1745618462){switch(b|0){case 1061927929:break;default:break a}k[(k[a+332>>2]|0)+52>>2]=c;return}else{switch(b|0){case 1745618462:break;default:break a}k[(k[a+332>>2]|0)+20>>2]=c;return}while(0);c=k[a>>2]|0;k[c+20>>2]=127;$a[k[c>>2]&63](a);return}function oe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=k[a+20>>2]|0;switch(b|0){case 102:case 101:{if((k[a+224>>2]|0)>>>0<(k[a+32>>2]|0)>>>0){h=k[a>>2]|0;k[h+20>>2]=67;$a[k[h>>2]&63](a)}$a[k[(k[a+332>>2]|0)+8>>2]&63](a);break}case 103:break;default:{h=k[a>>2]|0;k[h+20>>2]=20;k[h+24>>2]=b;$a[k[h>>2]&63](a)}}e=a+332|0;b=k[e>>2]|0;if(k[b+16>>2]|0){h=a;g=a+348|0;g=k[g>>2]|0;g=g+12|0;g=k[g>>2]|0;$a[g&63](a);g=a+24|0;g=k[g>>2]|0;g=g+16|0;g=k[g>>2]|0;$a[g&63](a);Lh(h);return}f=a+240|0;g=a+8|0;h=a+344|0;do{$a[k[b>>2]&63](a);b=k[f>>2]|0;if(b|0){d=0;do{c=k[g>>2]|0;if(c|0){k[c+4>>2]=d;k[c+8>>2]=b;$a[k[c>>2]&63](a)}if(!(gb[k[(k[h>>2]|0)+4>>2]&63](a,0)|0)){c=k[a>>2]|0;k[c+20>>2]=24;$a[k[c>>2]&63](a)}d=d+1|0;b=k[f>>2]|0}while(d>>>0<b>>>0)}$a[k[(k[e>>2]|0)+8>>2]&63](a);b=k[e>>2]|0}while(!(k[b+16>>2]|0));b=a;h=a+348|0;h=k[h>>2]|0;h=h+12|0;h=k[h>>2]|0;$a[h&63](a);h=a+24|0;h=k[h>>2]|0;h=h+16|0;h=k[h>>2]|0;$a[h&63](a);Lh(b);return}function pe(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;h=k[a+24>>2]|0;j=h+4|0;g=h+12|0;l=a+440|0;b=k[j>>2]|0;c=k[h>>2]|0;a:while(1){if(!b){if(!(cb[k[g>>2]&15](a)|0)){b=0;f=19;break}d=k[h>>2]|0;b=k[j>>2]|0}else d=c;b=b+-1|0;c=d+1|0;if((i[d>>0]|0)!=-1)do{f=(k[l>>2]|0)+24|0;k[f>>2]=(k[f>>2]|0)+1;k[h>>2]=c;k[j>>2]=b;if(!b){if(!(cb[k[g>>2]&15](a)|0)){b=0;f=19;break a}d=k[h>>2]|0;b=k[j>>2]|0}else d=c;b=b+-1|0;c=d+1|0}while((i[d>>0]|0)!=-1);do{if(!b){if(!(cb[k[g>>2]&15](a)|0)){b=0;f=19;break a}b=k[j>>2]|0;d=k[h>>2]|0}else d=c;b=b+-1|0;c=d+1|0;d=i[d>>0]|0}while(d<<24>>24==-1);f=(k[l>>2]|0)+24|0;e=k[f>>2]|0;if(d<<24>>24){f=16;break}k[f>>2]=e+2;k[h>>2]=c;k[j>>2]=b}if((f|0)==16){d=d&255;if(e|0){g=k[a>>2]|0;k[g+20>>2]=116;k[g+24>>2]=e;k[g+28>>2]=d;ab[k[g+4>>2]&31](a,-1);k[(k[l>>2]|0)+24>>2]=0}k[a+416>>2]=d;k[h>>2]=c;k[j>>2]=b;a=1;return a|0}else if((f|0)==19)return b|0;return 0}function qe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0;p=r;r=r+48|0;m=p+16|0;l=p;d=p+32|0;n=a+28|0;e=k[n>>2]|0;k[d>>2]=e;o=a+20|0;e=(k[o>>2]|0)-e|0;k[d+4>>2]=e;k[d+8>>2]=b;k[d+12>>2]=c;i=a+60|0;j=a+44|0;b=2;e=e+c|0;while(1){if(!(k[24038]|0)){k[m>>2]=k[i>>2];k[m+4>>2]=d;k[m+8>>2]=b;g=Fi(Va(146,m|0)|0)|0}else{Da(57,a|0);k[l>>2]=k[i>>2];k[l+4>>2]=d;k[l+8>>2]=b;g=Fi(Va(146,l|0)|0)|0;za(0)}if((e|0)==(g|0)){e=6;break}if((g|0)<0){e=8;break}e=e-g|0;f=k[d+4>>2]|0;if(g>>>0<=f>>>0)if((b|0)==2){k[n>>2]=(k[n>>2]|0)+g;h=f;b=2}else h=f;else{h=k[j>>2]|0;k[n>>2]=h;k[o>>2]=h;h=k[d+12>>2]|0;g=g-f|0;d=d+8|0;b=b+-1|0}k[d>>2]=(k[d>>2]|0)+g;k[d+4>>2]=h-g}if((e|0)==6){m=k[j>>2]|0;k[a+16>>2]=m+(k[a+48>>2]|0);a=m;k[n>>2]=a;k[o>>2]=a}else if((e|0)==8){k[a+16>>2]=0;k[n>>2]=0;k[o>>2]=0;k[a>>2]=k[a>>2]|32;if((b|0)==2)c=0;else c=c-(k[d+4>>2]|0)|0}r=p;return c|0}function re(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;j=k[a+4>>2]|0;l=c+7&-8;g=l+19|0;if(g>>>0>1e9){i=k[a>>2]|0;k[i+20>>2]=54;k[i+24>>2]=1;$a[k[i>>2]&63](a)}if(b>>>0>1){i=k[a>>2]|0;k[i+20>>2]=14;k[i+24>>2]=b;$a[k[i>>2]&63](a)}i=j+52+(b<<2)|0;c=k[i>>2]|0;a:do if(!c){h=0;e=8}else while(1){if((k[c+8>>2]|0)>>>0>=l>>>0)break a;d=k[c>>2]|0;if(!d){h=c;e=8;break}else c=d}while(0);do if((e|0)==8){f=(h|0)==0;d=k[(f?14664:14672)+(b<<2)>>2]|0;b=999999981-l|0;d=d>>>0>b>>>0?b:d;b=d+g|0;c=Dj(a,b)|0;if(!c)while(1){e=d>>>1;if(d>>>0<100){b=k[a>>2]|0;k[b+20>>2]=54;k[b+24>>2]=2;$a[k[b>>2]&63](a)}b=e+g|0;c=Dj(a,b)|0;if(!c)d=e;else{d=e;break}}j=j+76|0;k[j>>2]=(k[j>>2]|0)+b;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=d+l;if(f){k[i>>2]=c;break}else{k[h>>2]=c;break}}while(0);a=c+12|0;i=a&7;h=c+4|0;j=k[h>>2]|0;k[h>>2]=j+l;h=c+8|0;k[h>>2]=(k[h>>2]|0)-l;return ((i|0)==0?a:a+(8-i)|0)+j|0}function se(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=r;r=r+112|0;m=n+40|0;j=n+24|0;h=n+16|0;e=n;l=n+52|0;d=i[b>>0]|0;if(af(95845,d<<24>>24,4)|0){c=kb(1144)|0;if(!c)c=0;else{f=c;g=f+112|0;do{k[f>>2]=0;f=f+4|0}while((f|0)<(g|0));if(!(Ki(b,43)|0))k[c>>2]=d<<24>>24==114?8:4;if(Ki(b,101)|0){k[e>>2]=a;k[e+4>>2]=2;k[e+8>>2]=1;Aa(221,e|0)|0;d=i[b>>0]|0}if(d<<24>>24==97){k[h>>2]=a;k[h+4>>2]=3;d=Aa(221,h|0)|0;if(!(d&1024)){k[j>>2]=a;k[j+4>>2]=4;k[j+8>>2]=d|1024;Aa(221,j|0)|0}b=k[c>>2]|128;k[c>>2]=b}else b=k[c>>2]|0;k[c+60>>2]=a;k[c+44>>2]=c+120;k[c+48>>2]=1024;d=c+75|0;i[d>>0]=-1;if((b&8|0)==0?(k[m>>2]=a,k[m+4>>2]=21505,k[m+8>>2]=l,(La(54,m|0)|0)==0):0)i[d>>0]=10;k[c+32>>2]=4;k[c+36>>2]=1;k[c+40>>2]=2;k[c+12>>2]=1;if(!(k[24039]|0))k[c+76>>2]=-1;Oa(96180);d=k[24044]|0;k[c+56>>2]=d;if(d|0)k[d+52>>2]=c;k[24044]=c;Ma(96180)}}else{c=Ai()|0;k[c>>2]=22;c=0}r=n;return c|0}function te(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;h=k[a+364>>2]|0;b=(b|0)!=0;k[h+4>>2]=b?43:42;k[h+8>>2]=b?51:50;g=a+244|0;a:do if((k[g>>2]|0)>0){f=a+4|0;if(b)e=0;else{b=0;while(1){f=k[a+248+(b<<2)>>2]|0;e=k[f+20>>2]|0;f=k[f+24>>2]|0;Md(a,1,e,h+44+(e<<2)|0);Md(a,0,f,h+60+(f<<2)|0);k[h+20+(b<<2)>>2]=0;b=b+1|0;if((b|0)>=(k[g>>2]|0))break a}}do{d=k[a+248+(e<<2)>>2]|0;b=k[d+20>>2]|0;d=k[d+24>>2]|0;if(b>>>0>3){c=k[a>>2]|0;k[c+20>>2]=50;k[c+24>>2]=b;$a[k[c>>2]&63](a)}if(d>>>0>3){c=k[a>>2]|0;k[c+20>>2]=50;k[c+24>>2]=d;$a[k[c>>2]&63](a)}c=h+76+(b<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[f>>2]>>2]&15](a,1,1028)|0;k[c>>2]=b}eh(b|0,0,1028)|0;c=h+92+(d<<2)|0;b=k[c>>2]|0;if(!b){b=Ya[k[k[f>>2]>>2]&15](a,1,1028)|0;k[c>>2]=b}eh(b|0,0,1028)|0;k[h+20+(e<<2)>>2]=0;e=e+1|0}while((e|0)<(k[g>>2]|0))}while(0);k[h+12>>2]=0;k[h+16>>2]=0;k[h+36>>2]=k[a+200>>2];k[h+40>>2]=0;return}function ue(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;g=a+4|0;h=Ya[k[k[g>>2]>>2]&15](a,1,120)|0;k[a+428>>2]=h;k[h>>2]=52;k[h+8>>2]=53;k[h+116>>2]=0;if(!b){f=Ya[k[(k[g>>2]|0)+4>>2]&15](a,1,1280)|0;k[h+32>>2]=f;k[h+36>>2]=f+128;k[h+40>>2]=f+256;k[h+44>>2]=f+384;k[h+48>>2]=f+512;k[h+52>>2]=f+640;k[h+56>>2]=f+768;k[h+60>>2]=f+896;k[h+64>>2]=f+1024;k[h+68>>2]=f+1152;k[h+4>>2]=12;k[h+12>>2]=45;k[h+16>>2]=0;g=k[g>>2]|0;g=k[g>>2]|0;g=Ya[g&15](a,1,128)|0;a=h+72|0;k[a>>2]=g;return}d=a+36|0;if((k[d>>2]|0)>0){c=a+220|0;b=h+76|0;e=0;f=k[a+216>>2]|0;while(1){j=f+12|0;i=k[j>>2]|0;i=(k[c>>2]|0)==0?i:i*3|0;m=k[(k[g>>2]|0)+20>>2]|0;l=bj(k[f+28>>2]|0,k[f+8>>2]|0)|0;j=bj(k[f+32>>2]|0,k[j>>2]|0)|0;i=bb[m&3](a,1,1,l,j,i)|0;k[b+(e<<2)>>2]=i;e=e+1|0;if((e|0)>=(k[d>>2]|0))break;else f=f+84|0}}else b=h+76|0;k[h+4>>2]=11;k[h+12>>2]=44;k[h+16>>2]=b;l=k[g>>2]|0;l=k[l>>2]|0;l=Ya[l&15](a,1,128)|0;m=h+72|0;k[m>>2]=l;return}function ve(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+420>>2]|0;d=c+8|0;if(!(k[d>>2]|0)){b=a+84|0;do if(k[b>>2]|0?(k[a+136>>2]|0)==0:0){if(k[a+92>>2]|0?k[a+108>>2]|0:0){k[a+460>>2]=k[c+24>>2];k[d>>2]=1;break}if(!(k[a+100>>2]|0)){e=k[a>>2]|0;k[e+20>>2]=46;$a[k[e>>2]&63](a);break}else{k[a+460>>2]=k[c+20>>2];break}}while(0);$a[k[k[a+448>>2]>>2]&63](a);$a[k[(k[a+428>>2]|0)+8>>2]&63](a);if(!(k[a+68>>2]|0)){if(!(k[c+16>>2]|0))$a[k[k[a+456>>2]>>2]&63](a);$a[k[k[a+452>>2]>>2]&63](a);if(k[b>>2]|0)ab[k[k[a+460>>2]>>2]&31](a,k[d>>2]|0);ab[k[k[a+432>>2]>>2]&31](a,k[d>>2]|0?3:0);ab[k[k[a+424>>2]>>2]&31](a,0)}}else{k[d>>2]=0;ab[k[k[a+460>>2]>>2]&31](a,0);ab[k[k[a+432>>2]>>2]&31](a,2);ab[k[k[a+424>>2]>>2]&31](a,2)}b=k[a+8>>2]|0;if(!b)return;c=k[c+12>>2]|0;k[b+12>>2]=c;c=(k[d>>2]|0?2:1)+c|0;b=b+16|0;k[b>>2]=c;if(!(k[a+64>>2]|0))return;if(k[(k[a+436>>2]|0)+20>>2]|0)return;k[b>>2]=c+(k[a+108>>2]|0?2:1);return}function we(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=k[a+444>>2]|0;if(!((((k[a+400>>2]|0)==0?(k[a+404>>2]|0)==63:0)?(k[a+408>>2]|0)==0:0)?!(k[a+412>>2]|0):0)){e=k[a>>2]|0;k[e+20>>2]=122;ab[k[e+4>>2]&31](a,-1)}b=a+328|0;if((k[b>>2]|0)>0){c=0;do{e=k[a+332+(c<<2)>>2]|0;d=k[e+20>>2]|0;e=k[e+24>>2]|0;Xc(a,1,d,f+40+(d<<2)|0);Xc(a,0,e,f+56+(e<<2)|0);k[f+20+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(k[b>>2]|0))}d=a+356|0;if((k[d>>2]|0)>0)e=0;else{e=f+16|0;k[e>>2]=0;e=f+12|0;k[e>>2]=0;e=f+8|0;k[e>>2]=0;e=a+276|0;e=k[e>>2]|0;a=f+36|0;k[a>>2]=e;return}do{b=k[a+332+(k[a+360+(e<<2)>>2]<<2)>>2]|0;k[f+72+(e<<2)>>2]=k[f+40+(k[b+20>>2]<<2)>>2];k[f+112+(e<<2)>>2]=k[f+56+(k[b+24>>2]<<2)>>2];c=f+152+(e<<2)|0;if(!(k[b+48>>2]|0)){k[c>>2]=0;b=0}else{k[c>>2]=1;b=(k[b+36>>2]|0)>1&1}k[f+192+(e<<2)>>2]=b;e=e+1|0}while((e|0)<(k[d>>2]|0));e=f+16|0;k[e>>2]=0;e=f+12|0;k[e>>2]=0;e=f+8|0;k[e>>2]=0;e=a+276|0;e=k[e>>2]|0;a=f+36|0;k[a>>2]=e;return}function xe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;j=a+28|0;e=k[j>>2]|0;if(!c){l=k[a+32>>2]|0;h=k[l>>2]|0;k[h+20>>2]=40;$a[k[h>>2]&63](l)}if(k[a+12>>2]|0)return;d=e+c|0;l=a+24|0;b=k[l>>2]|((1<<c)+-1&b)<<24-d;if((d|0)>7){g=a+16|0;h=a+20|0;f=a+32|0;c=e+c|0;do{m=b>>>16;a=m&255;e=k[g>>2]|0;k[g>>2]=e+1;i[e>>0]=m;e=(k[h>>2]|0)+-1|0;k[h>>2]=e;if(!e){m=k[f>>2]|0;e=k[m+24>>2]|0;if(!(cb[k[e+12>>2]&15](m)|0)){m=k[f>>2]|0;n=k[m>>2]|0;k[n+20>>2]=24;$a[k[n>>2]&63](m)}k[g>>2]=k[e>>2];k[h>>2]=k[e+4>>2]}if((a|0)==255?(n=k[g>>2]|0,k[g>>2]=n+1,i[n>>0]=0,n=(k[h>>2]|0)+-1|0,k[h>>2]=n,(n|0)==0):0){n=k[f>>2]|0;a=k[n+24>>2]|0;if(!(cb[k[a+12>>2]&15](n)|0)){n=k[f>>2]|0;m=k[n>>2]|0;k[m+20>>2]=24;$a[k[m>>2]&63](n)}k[g>>2]=k[a>>2];k[h>>2]=k[a+4>>2]}b=b<<8;d=d+-8|0}while((d|0)>7);d=c&7}k[l>>2]=b;k[j>>2]=d;return}function ye(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=k[a+364>>2]|0;f=a+24|0;e=k[f>>2]|0;g=j+16|0;k[g>>2]=k[e>>2];h=j+20|0;k[h>>2]=k[e+4>>2];e=j+56|0;a=k[e>>2]|0;if(!a){xe(j,127,7);e=j+24|0;k[e>>2]=0;j=j+28|0;k[j>>2]=0;g=k[g>>2]|0;j=k[f>>2]|0;k[j>>2]=g;h=k[h>>2]|0;j=j+4|0;k[j>>2]=h;return}else b=0;while(1){a=a>>1;if(!a)break;else b=b+1|0}if((b|0)>14){d=k[j+32>>2]|0;c=k[d>>2]|0;k[c+20>>2]=40;$a[k[c>>2]&63](d)}a=k[j+52>>2]|0;c=b<<4;d=j+12|0;if(!(k[d>>2]|0)){a=k[j+76+(a<<2)>>2]|0;xe(j,k[a+(c<<2)>>2]|0,i[a+1024+c>>0]|0)}else{c=(k[j+92+(a<<2)>>2]|0)+(c<<2)|0;k[c>>2]=(k[c>>2]|0)+1}if(b|0)xe(j,k[e>>2]|0,b);k[e>>2]=0;c=j+60|0;a=k[c>>2]|0;if((a|0)!=0&(k[d>>2]|0)==0){b=k[j+64>>2]|0;while(1){xe(j,i[b>>0]|0,1);a=a+-1|0;if(!a)break;else b=b+1|0}}k[c>>2]=0;xe(j,127,7);e=j+24|0;k[e>>2]=0;j=j+28|0;k[j>>2]=0;g=k[g>>2]|0;j=k[f>>2]|0;k[j>>2]=g;h=k[h>>2]|0;j=j+4|0;k[j>>2]=h;return}function ze(){var a=0,b=0,c=0,d=0,e=0;e=r;r=r+32|0;b=e+24|0;c=e+16|0;d=e+8|0;a=k[3856]|0;k[e>>2]=k[24033];ei(a,17485,e)|0;th(17507,12,1,a)|0;th(17520,37,1,a)|0;th(17558,72,1,a)|0;th(17631,45,1,a)|0;th(17677,38,1,a)|0;th(17716,97,1,a)|0;th(17814,67,1,a)|0;th(17882,72,1,a)|0;th(17955,65,1,a)|0;th(18021,75,1,a)|0;th(18097,55,1,a)|0;th(18153,43,1,a)|0;th(18197,49,1,a)|0;th(18247,54,1,a)|0;th(18302,97,1,a)|0;th(18400,60,1,a)|0;th(18461,46,1,a)|0;th(18508,74,1,a)|0;th(18583,65,1,a)|0;th(18649,52,1,a)|0;th(18702,66,1,a)|0;th(18769,52,1,a)|0;th(18822,55,1,a)|0;th(18878,29,1,a)|0;th(18908,64,1,a)|0;th(18973,39,1,a)|0;k[d>>2]=19056;ei(a,19013,d)|0;k[c>>2]=96700;ei(a,19067,c)|0;k[b>>2]=96700;ei(a,19124,b)|0;th(19174,87,1,a)|0;th(19262,54,1,a)|0;th(19317,34,1,a)|0;th(19352,26,1,a)|0;th(19379,47,1,a)|0;th(19427,54,1,a)|0;th(19482,48,1,a)|0;th(19531,71,1,a)|0;th(19603,67,1,a)|0;th(19671,62,1,a)|0;th(19734,51,1,a)|0;th(19786,46,1,a)|0;th(19833,78,1,a)|0;th(19912,43,1,a)|0;th(19956,52,1,a)|0;th(20009,22,1,a)|0;th(20032,55,1,a)|0;th(20088,55,1,a)|0;th(20144,52,1,a)|0;th(20197,56,1,a)|0;Ta(1)}function Ae(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0;l=a+416|0;f=k[l>>2]|0;h=k[a>>2]|0;k[h+20>>2]=121;k[h+24>>2]=f;k[h+28>>2]=b;ab[k[h+4>>2]&31](a,-1);h=b+1&7|208;i=b+2&7|208;j=b+7&7|208;g=b+6&7|208;b=f;a:while(1){c=(b|0)==(h|0);d=(b|0)==(i|0);e=(b|0)==(j|0);f=(b|0)==(g|0);b:do if((b|0)<192){f=k[a>>2]|0;k[f+20>>2]=97;k[f+24>>2]=b;k[f+28>>2]=2;ab[k[f+4>>2]&31](a,4)}else{if((b&-8|0)!=208){c=7;break a}c=c|d?3:e|f?2:1;while(1){f=k[a>>2]|0;k[f+20>>2]=97;k[f+24>>2]=b;k[f+28>>2]=c;ab[k[f+4>>2]&31](a,4);switch(c|0){case 1:{c=8;break a}case 3:{b=1;c=11;break a}case 2:break b;default:{}}}}while(0);if(!(pe(a)|0)){b=0;c=11;break}b=k[l>>2]|0}if((c|0)==7){l=k[a>>2]|0;k[l+20>>2]=97;k[l+24>>2]=b;k[l+28>>2]=3;ab[k[l+4>>2]&31](a,4);a=1;return a|0}else if((c|0)==8){k[l>>2]=0;a=1;return a|0}else if((c|0)==11)return b|0;return 0}function Be(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+304|0;m=n+24|0;l=n+16|0;j=n+8|0;d=n;i=n+292|0;g=n+288|0;f=n+32|0;h=Lg(b,21580)|0;if(!h){m=k[3856]|0;k[d>>2]=b;ei(m,21582,d)|0;m=0;r=n;return m|0}a:do if(Tf(h,g,i)|0){e=0;b:while(1){if((e|0)>3){d=6;break}k[f>>2]=k[g>>2];d=1;do{if(!(Tf(h,g,i)|0)){d=9;break b}k[f+(d<<2)>>2]=k[g>>2];d=d+1|0}while((d|0)<64);ef(a,e,f,k[4352+(e<<2)>>2]|0,c);if(!(Tf(h,g,i)|0))break a;else e=e+1|0}if((d|0)==6){m=k[3856]|0;k[j>>2]=b;ei(m,21608,j)|0;ch(h)|0;m=0;r=n;return m|0}else if((d|0)==9){m=k[3856]|0;k[l>>2]=b;ei(m,21636,l)|0;ch(h)|0;m=0;r=n;return m|0}}while(0);if((k[i>>2]|0)==-1){ch(h)|0;m=1;r=n;return m|0}else{l=k[3856]|0;k[m>>2]=b;ei(l,21667,m)|0;ch(h)|0;m=0;r=n;return m|0}return 0}function Ce(a,b,c){a=a|0;b=b|0;c=c|0;a:do if((b|0)<199732540){if((b|0)<-376338907){switch(b|0){case -1237401799:break;default:break a}k[(k[a+332>>2]|0)+4168>>2]=c;return}switch(b|0){case -376338907:break;default:break a}if((c|0)<1560820397)switch(c|0){case 720002228:{b=3;break}default:b=4}else switch(c|0){case 1560820397:{b=3;break}default:b=4}if((b|0)==3){k[(k[a+332>>2]|0)+4152>>2]=c;return}else if((b|0)==4){c=k[a>>2]|0;k[c+20>>2]=128;$a[k[c>>2]&63](a);return}}else{if((b|0)<1145645745){switch(b|0){case 199732540:break;default:break a}k[(k[a+332>>2]|0)+4156>>2]=c;return}if((b|0)>=1873801511){switch(b|0){case 1873801511:break;default:break a}k[(k[a+332>>2]|0)+4164>>2]=c;return}switch(b|0){case 1145645745:break;default:break a}if(c>>>0>=9)return;k[(k[a+332>>2]|0)+4160>>2]=c;return}while(0);c=k[a>>2]|0;k[c+20>>2]=127;$a[k[c>>2]&63](a);return}function De(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if(c>>>0>65533){e=k[a>>2]|0;k[e+20>>2]=11;$a[k[e>>2]&63](a)}e=a+24|0;d=k[e>>2]|0;g=k[d>>2]|0;k[d>>2]=g+1;i[g>>0]=-1;g=d+4|0;f=(k[g>>2]|0)+-1|0;k[g>>2]=f;if((f|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}d=k[e>>2]|0;f=k[d>>2]|0;k[d>>2]=f+1;i[f>>0]=b;f=d+4|0;g=(k[f>>2]|0)+-1|0;k[f>>2]=g;if((g|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}c=c+2|0;d=k[e>>2]|0;f=k[d>>2]|0;k[d>>2]=f+1;i[f>>0]=c>>>8;f=d+4|0;g=(k[f>>2]|0)+-1|0;k[f>>2]=g;if((g|0)==0?(cb[k[d+12>>2]&15](a)|0)==0:0){g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a)}d=k[e>>2]|0;f=k[d>>2]|0;k[d>>2]=f+1;i[f>>0]=c;f=d+4|0;g=(k[f>>2]|0)+-1|0;k[f>>2]=g;if(g|0)return;if(cb[k[d+12>>2]&15](a)|0)return;g=k[a>>2]|0;k[g+20>>2]=24;$a[k[g>>2]&63](a);return}function Ee(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=k[a+4>>2]|0;if(b>>>0<=1){if((b|0)==1){e=f+68|0;c=k[e>>2]|0;if(c|0)do{d=c+40|0;if(k[d>>2]|0){k[d>>2]=0;ab[k[c+56>>2]&31](a,c+48|0)}c=k[c+44>>2]|0}while((c|0)!=0);k[e>>2]=0;e=f+72|0;c=k[e>>2]|0;if(c|0)do{d=c+40|0;if(k[d>>2]|0){k[d>>2]=0;ab[k[c+56>>2]&31](a,c+48|0)}c=k[c+44>>2]|0}while((c|0)!=0);k[e>>2]=0}}else{e=k[a>>2]|0;k[e+20>>2]=14;k[e+24>>2]=b;$a[k[e>>2]&63](a)}e=f+60+(b<<2)|0;c=k[e>>2]|0;k[e>>2]=0;if(c|0){d=f+76|0;do{g=c;c=k[c>>2]|0;e=(k[g+4>>2]|0)+12+(k[g+8>>2]|0)|0;sj(a,g,e);k[d>>2]=(k[d>>2]|0)-e}while((c|0)!=0)}g=f+52+(b<<2)|0;c=k[g>>2]|0;k[g>>2]=0;if(!c)return;d=f+76|0;do{f=c;c=k[c>>2]|0;g=(k[f+4>>2]|0)+12+(k[f+8>>2]|0)|0;sj(a,f,g);k[d>>2]=(k[d>>2]|0)-g}while((c|0)!=0);return}function Fe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0,o=0;g=a+4|0;c=Ya[k[k[g>>2]>>2]&15](a,1,144)|0;k[a+344>>2]=c;k[c>>2]=21;if(!b){a=Ya[k[(k[g>>2]|0)+4>>2]&15](a,1,1280)|0;k[c+24>>2]=a;k[c+28>>2]=a+128;k[c+32>>2]=a+256;k[c+36>>2]=a+384;k[c+40>>2]=a+512;k[c+44>>2]=a+640;k[c+48>>2]=a+768;k[c+52>>2]=a+896;k[c+56>>2]=a+1024;k[c+60>>2]=a+1152;k[c+64>>2]=0;return}f=a+60|0;if((k[f>>2]|0)<=0)return;e=c+64|0;b=c+104|0;c=0;d=k[a+68>>2]|0;while(1){o=k[(k[g>>2]|0)+20>>2]|0;m=d+28|0;j=d+8|0;n=bj(k[m>>2]|0,k[j>>2]|0)|0;i=d+32|0;h=d+12|0;l=bj(k[i>>2]|0,k[h>>2]|0)|0;l=bb[o&3](a,1,0,n,l,k[h>>2]|0)|0;k[e+(c<<2)>>2]=l;l=k[(k[g>>2]|0)+20>>2]|0;j=bj(k[m>>2]|0,k[j>>2]|0)|0;i=bj(k[i>>2]|0,k[h>>2]|0)|0;h=bb[l&3](a,1,0,j,i,k[h>>2]|0)|0;k[b+(c<<2)>>2]=h;c=c+1|0;if((c|0)>=(k[f>>2]|0))break;else d=d+84|0}return}function Ge(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;j=r;r=r+16|0;e=j;g=(d|0)==0?96200:d;d=k[g>>2]|0;a:do if(!b)if(!d)d=0;else h=15;else{f=(a|0)==0?e:a;if(!c)d=-2;else{if(!d){d=i[b>>0]|0;e=d&255;if(d<<24>>24>-1){k[f>>2]=e;d=d<<24>>24!=0&1;break}d=e+-194|0;if(d>>>0>50){h=15;break}d=k[15220+(d<<2)>>2]|0;e=c+-1|0;if(e){b=b+1|0;h=9}}else{e=c;h=9}b:do if((h|0)==9){a=i[b>>0]|0;l=(a&255)>>>3;if((l+-16|l+(d>>26))>>>0>7){h=15;break a}while(1){b=b+1|0;d=(a&255)+-128|d<<6;e=e+-1|0;if((d|0)>=0)break;if(!e)break b;a=i[b>>0]|0;if((a&-64)<<24>>24!=-128){h=15;break a}}k[g>>2]=0;k[f>>2]=d;d=c-e|0;break a}while(0);k[g>>2]=d;d=-2}}while(0);if((h|0)==15){k[g>>2]=0;d=Ai()|0;k[d>>2]=84;d=-1}r=j;return d|0}function He(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if((e|0)<=0)return;u=k[b>>2]|0;v=k[b+4>>2]|0;t=k[b+8>>2]|0;h=k[a+112>>2]|0;do{s=e;e=e+-1|0;b=k[u+(c<<2)>>2]|0;f=k[v+(c<<2)>>2]|0;g=k[t+(c<<2)>>2]|0;c=c+1|0;a=k[d>>2]|0;d=d+4|0;if(a&3){j[a>>1]=(l[f>>0]|0)<<3&2016|(l[b>>0]|0)<<8&63488|(l[g>>0]|0)>>>3;b=b+1|0;f=f+1|0;g=g+1|0;h=h+-1|0;a=a+2|0}r=h>>>1;if(r){q=r<<1;i=0;m=b;n=f;o=g;p=a;while(1){k[p>>2]=(l[n>>0]|0)<<3&2016|(l[m>>0]|0)<<8&63488|(l[o>>0]|0)>>>3|((l[n+1>>0]|0)<<3&2016|(l[m+1>>0]|0)<<8&63488|(l[o+1>>0]|0)>>>3)<<16;i=i+1|0;if((i|0)==(r|0))break;else{m=m+2|0;n=n+2|0;o=o+2|0;p=p+4|0}}b=b+q|0;f=f+q|0;g=g+q|0;a=a+(r<<2)|0}if(h&1|0)j[a>>1]=(l[f>>0]|0)<<3&2016|(l[b>>0]|0)<<8&63488|(l[g>>0]|0)>>>3}while((s|0)>1);return}function Ie(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;e=a+4|0;d=Ya[k[k[e>>2]>>2]&15](a,1,44)|0;k[a+460>>2]=d;k[d>>2]=18;k[d+12>>2]=34;f=d+32|0;k[f>>2]=0;k[d+40>>2]=0;if((k[a+120>>2]|0)!=3){c=k[a>>2]|0;k[c+20>>2]=47;$a[k[c>>2]&63](a)}c=Ya[k[k[e>>2]>>2]&15](a,1,128)|0;b=d+24|0;k[b>>2]=c;c=0;do{g=Ya[k[(k[e>>2]|0)+4>>2]&15](a,1,4096)|0;k[(k[b>>2]|0)+(c<<2)>>2]=g;c=c+1|0}while((c|0)!=32);k[d+28>>2]=1;if(!(k[a+108>>2]|0))k[d+16>>2]=0;else{b=k[a+96>>2]|0;if((b|0)>=8){if((b|0)>256){g=k[a>>2]|0;k[g+20>>2]=57;k[g+24>>2]=256;$a[k[g>>2]&63](a)}}else{g=k[a>>2]|0;k[g+20>>2]=56;k[g+24>>2]=8;$a[k[g>>2]&63](a)}g=fb[k[(k[e>>2]|0)+8>>2]&3](a,1,b,3)|0;k[d+16>>2]=g;k[d+20>>2]=b}b=a+88|0;if(!(k[b>>2]|0))return;k[b>>2]=2;g=Ya[k[(k[e>>2]|0)+4>>2]&15](a,1,((k[a+112>>2]|0)*6|0)+12|0)|0;k[f>>2]=g;Ue(a);return}function Je(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+32|0;j=l;g=l+20|0;h=l+16|0;e=l+25|0;f=l+24|0;d=a+68|0;a=b;c=0;a:while(1){b:do if(!(i[a>>0]|0)){b=k[d>>2]|0;k[b+(c*84|0)+8>>2]=1;k[b+(c*84|0)+12>>2]=1}else{i[f>>0]=44;k[j>>2]=g;k[j+4>>2]=e;k[j+8>>2]=h;k[j+12>>2]=f;if((fi(a,21904,j)|0)<3){a=0;b=13;break a}switch(i[e>>0]|0){case 88:case 120:break;default:{a=0;b=13;break a}}if((i[f>>0]|0)!=44){a=0;b=13;break a}b=k[g>>2]|0;if(((k[h>>2]|0)+-1|b+-1)>>>0>3){b=7;break a}m=k[d>>2]|0;k[m+(c*84|0)+8>>2]=b;k[m+(c*84|0)+12>>2]=k[h>>2];do{b=i[a>>0]|0;if(!(b<<24>>24))break b;a=a+1|0}while(b<<24>>24!=44)}while(0);c=c+1|0;if((c|0)>=10){a=1;b=13;break}}if((b|0)==7){th(21913,35,1,k[3856]|0)|0;m=0;r=l;return m|0}else if((b|0)==13){r=l;return a|0}return 0}function Ke(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0;l=r;r=r+48|0;j=l+8|0;h=l;f=k[a>>2]|0;d=k[f+20>>2]|0;if((d|0)>0?(d|0)<=(k[f+116>>2]|0):0){a=(k[f+112>>2]|0)+(d<<2)|0;e=8}else{a=k[f+120>>2]|0;if(((a|0)!=0?(c=k[f+124>>2]|0,(d|0)>=(c|0)):0)?(d|0)<=(k[f+128>>2]|0):0){a=a+(d-c<<2)|0;e=8}else e=9}if((e|0)==8){a=k[a>>2]|0;if(!a)e=9}if((e|0)==9){k[f+24>>2]=d;a=k[k[f+112>>2]>>2]|0}d=a;a:while(1){c=d+1|0;switch(i[d>>0]|0){case 0:break a;case 37:{g=c;e=12;break a}default:d=c}}if((e|0)==12?(i[g>>0]|0)==115:0){k[h>>2]=f+24;di(b,a,h)|0;r=l;return}n=k[f+28>>2]|0;m=k[f+32>>2]|0;c=k[f+36>>2]|0;d=k[f+40>>2]|0;e=k[f+44>>2]|0;g=k[f+48>>2]|0;h=k[f+52>>2]|0;k[j>>2]=k[f+24>>2];k[j+4>>2]=n;k[j+8>>2]=m;k[j+12>>2]=c;k[j+16>>2]=d;k[j+20>>2]=e;k[j+24>>2]=g;k[j+28>>2]=h;di(b,a,j)|0;r=l;return}function Le(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=k[(k[a+352>>2]|0)+8>>2]|0;o=k[a+28>>2]|0;if((e|0)<=0)return;p=c+4|0;q=c+8|0;r=c+12|0;if(!o)return;while(1){a=e;e=e+-1|0;f=k[(k[c>>2]|0)+(d<<2)>>2]|0;g=k[(k[p>>2]|0)+(d<<2)>>2]|0;h=k[(k[q>>2]|0)+(d<<2)>>2]|0;j=k[(k[r>>2]|0)+(d<<2)>>2]|0;m=0;n=k[b>>2]|0;while(1){u=(l[n>>0]|0)^255;v=(l[n+1>>0]|0)^255;t=(l[n+2>>0]|0)^255;i[j+m>>0]=i[n+3>>0]|0;i[f+m>>0]=((k[s+((v|256)<<2)>>2]|0)+(k[s+(u<<2)>>2]|0)+(k[s+((t|512)<<2)>>2]|0)|0)>>>16;i[g+m>>0]=((k[s+((v|1024)<<2)>>2]|0)+(k[s+((u|768)<<2)>>2]|0)+(k[s+((t|1280)<<2)>>2]|0)|0)>>>16;i[h+m>>0]=((k[s+((v|1536)<<2)>>2]|0)+(k[s+((u|1280)<<2)>>2]|0)+(k[s+((t|1792)<<2)>>2]|0)|0)>>>16;m=m+1|0;if((m|0)==(o|0))break;else n=n+4|0}if((a|0)<=1)break;else{d=d+1|0;b=b+4|0}}return}function Me(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=k[a+324>>2]|0;if((e|0)<=0)return;q=k[b>>2]|0;g=k[14748+((k[a+140>>2]&3)<<2)>>2]|0;f=k[a+112>>2]|0;do{p=e;e=e+-1|0;b=k[q+(c<<2)>>2]|0;c=c+1|0;a=k[d>>2]|0;d=d+4|0;if(a&3){o=l[r+((l[b>>0]|0)+(g&255))>>0]|0;j[a>>1]=o<<3&2016|o>>>3|o<<8&63488;b=b+1|0;f=f+-1|0;a=a+2|0}n=f>>>1;if(n){o=n<<2;m=0;h=b;i=a;while(1){t=l[r+((l[h>>0]|0)+(g&255))>>0]|0;u=g>>>8;s=l[r+((l[h+1>>0]|0)+(u&255))>>0]|0;g=(g<<24|u)>>>8|u<<24;k[i>>2]=t<<3&2016|t>>>3|t<<8&63488|(s<<3&2016|s>>>3|s<<8&63488)<<16;m=m+1|0;if((m|0)==(n|0))break;else{h=h+2|0;i=i+4|0}}b=b+(n<<1)|0;a=a+o|0}if(f&1|0){u=l[r+((l[b>>0]|0)+(g&255))>>0]|0;j[a>>1]=u<<3&2016|u>>>3|u<<8&63488}}while((p|0)>1);return}function Ne(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;p=k[a+456>>2]|0;w=k[a+112>>2]|0;t=k[a+324>>2]|0;u=k[p+8>>2]|0;v=k[p+12>>2]|0;o=k[p+16>>2]|0;p=k[p+20>>2]|0;if((e|0)<=0)return;q=b+4|0;r=b+8|0;s=b+12|0;if(!w)return;while(1){a=e;e=e+-1|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;g=k[(k[q>>2]|0)+(c<<2)>>2]|0;h=k[(k[r>>2]|0)+(c<<2)>>2]|0;j=k[(k[s>>2]|0)+(c<<2)>>2]|0;c=c+1|0;m=0;n=k[d>>2]|0;while(1){x=l[g+m>>0]|0;z=l[h+m>>0]|0;y=(l[f+m>>0]|0)^255;i[n>>0]=i[t+(y-(k[u+(z<<2)>>2]|0))>>0]|0;i[n+1>>0]=i[t+(y-((k[o+(z<<2)>>2]|0)+(k[p+(x<<2)>>2]|0)>>16))>>0]|0;i[n+2>>0]=i[t+(y-(k[v+(x<<2)>>2]|0))>>0]|0;i[n+3>>0]=i[j+m>>0]|0;m=m+1|0;if((m|0)==(w|0))break;else n=n+4|0}if((a|0)<=1)break;else d=d+4|0}return}function Oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,s=0;s=r;r=r+224|0;n=s+120|0;q=s+80|0;p=s;o=s+136|0;d=q;e=d+40|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));k[n>>2]=k[c>>2];if((nb(0,b,n,p,q)|0)<0)c=-1;else{if((k[a+76>>2]|0)>-1)l=Tj(a)|0;else l=0;c=k[a>>2]|0;m=c&32;if((i[a+74>>0]|0)<1)k[a>>2]=c&-33;c=a+48|0;if(!(k[c>>2]|0)){e=a+44|0;f=k[e>>2]|0;k[e>>2]=o;g=a+28|0;k[g>>2]=o;h=a+20|0;k[h>>2]=o;k[c>>2]=80;j=a+16|0;k[j>>2]=o+80;d=nb(a,b,n,p,q)|0;if(f){Ya[k[a+36>>2]&15](a,0,0)|0;d=(k[h>>2]|0)==0?-1:d;k[e>>2]=f;k[c>>2]=0;k[j>>2]=0;k[g>>2]=0;k[h>>2]=0}}else d=nb(a,b,n,p,q)|0;c=k[a>>2]|0;k[a>>2]=c|m;if(l|0)Uj(a);c=(c&32|0)==0?d:-1}r=s;return c|0}function Pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=k[a+460>>2]|0;u=k[a+120>>2]|0;v=k[a+112>>2]|0;if((d|0)<=0)return;w=t+48|0;m=t+24|0;a=(v|0)==0;if((u|0)>0)s=0;else{a=0;do{vj(k[c+(a<<2)>>2]|0,v);k[w>>2]=(k[w>>2]|0)+1&15;a=a+1|0}while((a|0)!=(d|0));return}do{e=c+(s<<2)|0;vj(k[e>>2]|0,v);f=k[w>>2]|0;g=b+(s<<2)|0;if(!a){n=0;do{h=k[(k[m>>2]|0)+(n<<2)>>2]|0;j=k[t+52+(n<<2)>>2]|0;o=v;p=0;q=(k[g>>2]|0)+n|0;r=k[e>>2]|0;while(1){i[r>>0]=(l[r>>0]|0)+(l[h+((l[q>>0]|0)+(k[j+(f<<6)+(p<<2)>>2]|0))>>0]|0);o=o+-1|0;if(!o)break;else{p=p+1&15;q=q+u|0;r=r+1|0}}n=n+1|0}while((n|0)!=(u|0))}k[w>>2]=f+1&15;s=s+1|0}while((s|0)!=(d|0));return}function Qe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;m=k[a+8>>2]|0;i=a+32|0;c=k[i>>2]|0;n=(m|0)!=0;if(c){e=m+4|0;f=m+8|0;j=a+4|0;l=b+36|0;g=b+16|0;h=b+64|0;if(n){d=0;do{k[e>>2]=d;k[f>>2]=c;$a[k[m>>2]&63](a);c=hb[k[(k[j>>2]|0)+28>>2]&3](a,k[l>>2]|0,d,1,1)|0;k[g>>2]=c;gb[k[h>>2]&63](a,b)|0;d=d+1|0;c=k[i>>2]|0}while(d>>>0<c>>>0)}else{d=0;do{c=hb[k[(k[j>>2]|0)+28>>2]&3](a,k[l>>2]|0,d,1,1)|0;k[g>>2]=c;gb[k[h>>2]&63](a,b)|0;d=d+1|0;c=k[i>>2]|0}while(d>>>0<c>>>0)}}else c=0;if(n){n=m+20|0;k[n>>2]=(k[n>>2]|0)+1}k[b+4>>2]=18;n=b+40|0;k[n>>2]=0;a=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[b+36>>2]|0,c+-1|0,1,0)|0;k[b+16>>2]=a;k[n>>2]=(k[n>>2]|0)+1;return 1}function Re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=k[a+460>>2]|0;v=k[e+24>>2]|0;t=k[v>>2]|0;u=k[v+4>>2]|0;v=k[v+8>>2]|0;q=k[a+112>>2]|0;if((d|0)<=0)return;w=e+48|0;r=e+52|0;s=e+56|0;p=e+60|0;a=k[w>>2]|0;if(!q){e=0;do{a=a+1&15;e=e+1|0}while((e|0)!=(d|0));k[w>>2]=a;return}else o=0;do{e=k[r>>2]|0;f=k[s>>2]|0;g=k[p>>2]|0;h=q;j=0;m=k[b+(o<<2)>>2]|0;n=k[c+(o<<2)>>2]|0;while(1){i[n>>0]=(l[u+((l[m+1>>0]|0)+(k[f+(a<<6)+(j<<2)>>2]|0))>>0]|0)+(l[t+((l[m>>0]|0)+(k[e+(a<<6)+(j<<2)>>2]|0))>>0]|0)+(l[v+((l[m+2>>0]|0)+(k[g+(a<<6)+(j<<2)>>2]|0))>>0]|0);h=h+-1|0;if(!h)break;else{j=j+1&15;m=m+3|0;n=n+1|0}}a=a+1&15;k[w>>2]=a;o=o+1|0}while((o|0)!=(d|0));return}function Se(a){a=a|0;var b=0,c=0,d=0;b=a+4|0;d=Ya[k[k[b>>2]>>2]&15](a,1,192)|0;k[a+444>>2]=d;k[d>>2]=40;k[d+60>>2]=0;k[d+124>>2]=0;k[d+64>>2]=0;k[d+128>>2]=0;k[d+68>>2]=0;k[d+132>>2]=0;k[d+72>>2]=0;k[d+136>>2]=0;k[d+76>>2]=0;k[d+140>>2]=0;k[d+80>>2]=0;k[d+144>>2]=0;k[d+84>>2]=0;k[d+148>>2]=0;k[d+88>>2]=0;k[d+152>>2]=0;k[d+92>>2]=0;k[d+156>>2]=0;k[d+96>>2]=0;k[d+160>>2]=0;k[d+100>>2]=0;k[d+164>>2]=0;k[d+104>>2]=0;k[d+168>>2]=0;k[d+108>>2]=0;k[d+172>>2]=0;k[d+112>>2]=0;k[d+176>>2]=0;k[d+116>>2]=0;k[d+180>>2]=0;k[d+120>>2]=0;k[d+184>>2]=0;i[d+188>>0]=113;if(!(k[a+220>>2]|0))return;d=a+36|0;c=Ya[k[k[b>>2]>>2]&15](a,1,k[d>>2]<<8)|0;k[a+160>>2]=c;if((k[d>>2]|0)>0)b=0;else return;do{eh(c+(b<<8)|0,-1,256)|0;b=b+1|0}while((b|0)<(k[d>>2]|0));return}function Te(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;f=h+8|0;e=h+12|0;b=a+4|0;k[b>>2]=0;c=Tj(a)|0;k[f>>2]=c;c=Dj(a,84)|0;if(!c){Uj(a);d=k[a>>2]|0;k[d+20>>2]=54;k[d+24>>2]=0;$a[k[d>>2]&63](a)}k[c>>2]=6;k[c+4>>2]=7;k[c+8>>2]=1;k[c+12>>2]=2;k[c+16>>2]=1;k[c+20>>2]=2;k[c+24>>2]=37;k[c+28>>2]=1;k[c+32>>2]=2;k[c+36>>2]=19;k[c+40>>2]=38;k[c+48>>2]=1e9;d=c+44|0;k[d>>2]=k[f>>2];k[c+56>>2]=0;k[c+64>>2]=0;k[c+52>>2]=0;k[c+60>>2]=0;k[c+68>>2]=0;k[c+72>>2]=0;k[c+76>>2]=84;k[b>>2]=c;a=Ka(27457)|0;if(!a){r=h;return}i[e>>0]=120;k[g>>2]=f;k[g+4>>2]=e;if((fi(a,27465,g)|0)>0){switch(i[e>>0]|0){case 77:case 109:{a=(k[f>>2]|0)*1e3|0;k[f>>2]=a;break}default:a=k[f>>2]|0}k[d>>2]=a*1e3}r=h;return}function Ue(a){a=a|0;var b=0,c=0,d=0;c=k[a+460>>2]|0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,2044)|0;d=b+1020|0;k[c+40>>2]=d;k[d>>2]=0;k[b+1024>>2]=1;k[b+1016>>2]=-1;k[b+1028>>2]=2;k[b+1012>>2]=-2;k[b+1032>>2]=3;k[b+1008>>2]=-3;k[b+1036>>2]=4;k[b+1004>>2]=-4;k[b+1040>>2]=5;k[b+1e3>>2]=-5;k[b+1044>>2]=6;k[b+996>>2]=-6;k[b+1048>>2]=7;k[b+992>>2]=-7;k[b+1052>>2]=8;k[b+988>>2]=-8;k[b+1056>>2]=9;k[b+984>>2]=-9;k[b+1060>>2]=10;k[b+980>>2]=-10;k[b+1064>>2]=11;k[b+976>>2]=-11;k[b+1068>>2]=12;k[b+972>>2]=-12;k[b+1072>>2]=13;k[b+968>>2]=-13;k[b+1076>>2]=14;k[b+964>>2]=-14;k[b+1080>>2]=15;k[b+960>>2]=-15;b=16;a=16;do{k[d+(b<<2)>>2]=a;k[d+(0-b<<2)>>2]=0-a;b=b+1|0;a=(b&1^1)+a|0}while((b|0)!=48);b=0-a|0;c=48;do{k[d+(c<<2)>>2]=a;k[d+(0-c<<2)>>2]=b;c=c+1|0}while((c|0)!=256);return}function Ve(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=uh(b+496|0)|0;e=b+32|0;k[e>>2]=d;Jf(e,62,464);Zg(e,k[b+12>>2]|0);ag(e,254,65535);ag(e,224,65535);ag(e,225,65535);ag(e,226,65535);ag(e,227,65535);ag(e,228,65535);ag(e,229,65535);ag(e,230,65535);ag(e,231,65535);ag(e,232,65535);ag(e,233,65535);ag(e,234,65535);ag(e,235,65535);ag(e,236,65535);ag(e,237,65535);ag(e,238,65535);ag(e,239,65535);Vg(e,1)|0;k[b+24>>2]=k[e+304>>2];k[e+68>>2]=0;wd(e)|0;k[a+40>>2]=k[e+44>>2];d=k[e+124>>2]|0;k[a+36>>2]=d;k[a+56>>2]=k[e+212>>2];c=k[e+28>>2]|0;k[a+28>>2]=c;k[a+32>>2]=k[e+32>>2];k[a+176>>2]=0;c=ha(d,c)|0;a=fb[k[(k[a+4>>2]|0)+8>>2]&3](a,1,c,1)|0;k[b+16>>2]=a;k[b+20>>2]=1;k[b+4>>2]=8;return}function We(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+344>>2]|0;k[c+8>>2]=0;do if((k[a+244>>2]|0)<=1){d=k[a+248>>2]|0;if((k[a+240>>2]|0)==1){k[c+20>>2]=k[d+72>>2];break}else{k[c+20>>2]=k[d+12>>2];break}}else k[c+20>>2]=1;while(0);k[c+12>>2]=0;k[c+16>>2]=0;switch(b|0){case 0:{if(k[c+64>>2]|0){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+4>>2]=38;return}case 3:{if(!(k[c+64>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+4>>2]=39;return}case 2:{if(!(k[c+64>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+4>>2]=40;return}case 4:{if(!(k[c+64>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+4>>2]=41;return}default:{b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a);return}}}function Xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[a+460>>2]|0;f=k[e+24>>2]|0;d=a+88|0;if(!(k[d>>2]|0))c=0;else{k[d>>2]=2;c=2}if(!b){k[e+4>>2]=(c|0)==2?36:35;k[e+8>>2]=36;c=k[a+132>>2]|0;if((c|0)>=1){if((c|0)>256){b=k[a>>2]|0;k[b+20>>2]=57;k[b+24>>2]=256;$a[k[b>>2]&63](a)}}else{b=k[a>>2]|0;k[b+20>>2]=56;k[b+24>>2]=1;$a[k[b>>2]&63](a)}if((k[d>>2]|0)==2){d=((k[a+112>>2]|0)*6|0)+12|0;b=e+32|0;c=k[b>>2]|0;if(!c){c=Ya[k[(k[a+4>>2]|0)+4>>2]&15](a,1,d)|0;k[b>>2]=c}vj(c,d);if(!(k[e+40>>2]|0))Ue(a);k[e+36>>2]=0}}else{k[e+4>>2]=34;k[e+8>>2]=35;k[e+28>>2]=1}c=e+28|0;if(!(k[c>>2]|0))return;else b=0;do{vj(k[f+(b<<2)>>2]|0,4096);b=b+1|0}while((b|0)!=32);k[c>>2]=0;return}function Ye(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0,m=0,n=0;j=k[a+452>>2]|0;l=j+92|0;h=k[l>>2]|0;m=a+312|0;d=k[m>>2]|0;if((h|0)>=(d|0)){i=a+36|0;if((k[i>>2]|0)>0){d=0;h=k[a+216>>2]|0;while(1){n=(k[b+(d<<2)>>2]|0)+((ha(k[j+100+(d<<2)>>2]|0,k[c>>2]|0)|0)<<2)|0;ib[k[j+52+(d<<2)>>2]&63](a,h,n,j+12+(d<<2)|0);d=d+1|0;if((d|0)>=(k[i>>2]|0))break;else h=h+84|0}d=k[m>>2]|0}k[l>>2]=0;h=0}n=d-h|0;b=j+96|0;i=k[b>>2]|0;n=n>>>0>i>>>0?i:n;i=k[f>>2]|0;g=g-i|0;n=n>>>0>g>>>0?g:n;_a[k[(k[a+456>>2]|0)+4>>2]&63](a,j+12|0,h,e+(i<<2)|0,n);k[f>>2]=(k[f>>2]|0)+n;k[b>>2]=(k[b>>2]|0)-n;n=(k[l>>2]|0)+n|0;k[l>>2]=n;if((n|0)<(k[m>>2]|0))return;k[c>>2]=(k[c>>2]|0)+1;return}function Ze(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0;m=k[b+28>>2]|0;n=m<<3;g=k[a+236>>2]|0;f=k[a+28>>2]|0;a=m<<4;if((g|0)>0&(a-f|0)>0){e=f+~a|0;a=(a|2)-f+((e|0)>-2?e:-2)|0;e=0;do{m=(k[c+(e<<2)>>2]|0)+f|0;eh(m|0,i[m+-1>>0]|0,a|0)|0;e=e+1|0}while((e|0)!=(g|0))}m=b+12|0;e=k[m>>2]|0;if((e|0)<=0)return;if(!n){a=0;do a=a+1|0;while((a|0)<(e|0));return}else{g=0;j=0}while(1){a=1;e=k[c+(g<<2)>>2]|0;f=k[c+((g|1)<<2)>>2]|0;b=0;h=k[d+(j<<2)>>2]|0;while(1){i[h>>0]=((l[e>>0]|0)+a+(l[e+1>>0]|0)+(l[f>>0]|0)+(l[f+1>>0]|0)|0)>>>2;b=b+1|0;if((b|0)==(n|0))break;else{a=a^3;e=e+2|0;f=f+2|0;h=h+1|0}}j=j+1|0;if((j|0)>=(k[m>>2]|0))break;else g=g+2|0}return}function _e(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0;m=r;r=r+32|0;l=m+16|0;j=m;f=k[a+364>>2]|0;k[l>>2]=0;k[l+4>>2]=0;k[l+8>>2]=0;k[l+12>>2]=0;k[j>>2]=0;k[j+4>>2]=0;k[j+8>>2]=0;k[j+12>>2]=0;h=a+244|0;if((k[h>>2]|0)<=0){r=m;return}i=0;do{g=k[a+248+(i<<2)>>2]|0;e=k[g+20>>2]|0;g=k[g+24>>2]|0;d=l+(e<<2)|0;if(!(k[d>>2]|0)){c=a+88+(e<<2)|0;b=k[c>>2]|0;if(!b){b=Ei(a)|0;k[c>>2]=b}Wc(a,b,k[f+76+(e<<2)>>2]|0);k[d>>2]=1}d=j+(g<<2)|0;if(!(k[d>>2]|0)){c=a+104+(g<<2)|0;b=k[c>>2]|0;if(!b){b=Ei(a)|0;k[c>>2]=b}Wc(a,b,k[f+92+(g<<2)>>2]|0);k[d>>2]=1}i=i+1|0}while((i|0)<(k[h>>2]|0));r=m;return}function $e(a){a=a|0;var b=0,c=0;c=Ya[k[k[a+4>>2]>>2]&15](a,0,172)|0;b=a+440|0;k[b>>2]=c;k[c>>2]=23;k[c+4>>2]=6;k[c+8>>2]=7;k[c+28>>2]=8;k[c+96>>2]=0;k[c+100>>2]=0;k[c+36>>2]=8;k[c+104>>2]=0;k[c+40>>2]=8;k[c+108>>2]=0;k[c+44>>2]=8;k[c+112>>2]=0;k[c+48>>2]=8;k[c+116>>2]=0;k[c+52>>2]=8;k[c+120>>2]=0;k[c+56>>2]=8;k[c+124>>2]=0;k[c+60>>2]=8;k[c+128>>2]=0;k[c+64>>2]=8;k[c+132>>2]=0;k[c+68>>2]=8;k[c+136>>2]=0;k[c+72>>2]=8;k[c+140>>2]=0;k[c+76>>2]=8;k[c+144>>2]=0;k[c+80>>2]=8;k[c+148>>2]=0;k[c+84>>2]=8;k[c+152>>2]=0;k[c+156>>2]=0;k[c+92>>2]=8;k[c+160>>2]=0;k[c+32>>2]=9;k[c+88>>2]=9;b=k[b>>2]|0;k[a+216>>2]=0;k[a+144>>2]=0;k[a+416>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+24>>2]=0;k[b+164>>2]=0;return}function af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=b&255;d=(c|0)!=0;a:do if(d&(a&3|0)!=0){e=b&255;while(1){if((i[a>>0]|0)==e<<24>>24){g=6;break a}a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){g=5;break}}}else g=5;while(0);if((g|0)==5)if(d)g=6;else c=0;b:do if((g|0)==6){e=b&255;if((i[a>>0]|0)!=e<<24>>24){d=ha(f,16843009)|0;c:do if(c>>>0>3)while(1){f=k[a>>2]^d;if((f&-2139062144^-2139062144)&f+-16843009|0)break;a=a+4|0;c=c+-4|0;if(c>>>0<=3){g=11;break c}}else g=11;while(0);if((g|0)==11)if(!c){c=0;break}while(1){if((i[a>>0]|0)==e<<24>>24)break b;a=a+1|0;c=c+-1|0;if(!c){c=0;break}}}}while(0);return (c|0?a:0)|0}function bf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0,r=0;q=k[d>>2]|0;p=a+312|0;if((k[p>>2]|0)<=0)return;n=b+40|0;o=0;do{b=k[c+(o<<2)>>2]|0;m=k[q+(o<<2)>>2]|0;a=b+1|0;h=i[b>>0]|0;i[m>>0]=h;i[m+1>>0]=(((h&255)*3|0)+2+(l[a>>0]|0)|0)>>>2;h=k[n>>2]|0;e=h+-2|0;d=m+2|0;if(!e)b=m;else{j=h<<1;g=b+-1|0;f=m+-4|0;b=m;while(1){r=(l[a>>0]|0)*3|0;i[d>>0]=((l[a+-1>>0]|0)+1+r|0)>>>2;a=a+1|0;i[b+3>>0]=(r+2+(l[a>>0]|0)|0)>>>2;e=e+-1|0;if(!e)break;else{b=d;d=d+2|0}}b=f+j|0;a=g+h|0;d=m+-2+j|0}r=i[a>>0]|0;i[d>>0]=((l[a+-1>>0]|0)+1+((r&255)*3|0)|0)>>>2;i[b+3>>0]=r;o=o+1|0}while((o|0)<(k[p>>2]|0));return}function cf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,l=0,m=0;l=r;r=r+48|0;f=l+16|0;e=l;d=l+32|0;k[d>>2]=b;g=d+4|0;j=a+48|0;m=k[j>>2]|0;k[g>>2]=c-((m|0)!=0&1);h=a+44|0;k[d+8>>2]=k[h>>2];k[d+12>>2]=m;if(!(k[24038]|0)){k[f>>2]=k[a+60>>2];k[f+4>>2]=d;k[f+8>>2]=2;d=Fi(Ua(145,f|0)|0)|0}else{Da(58,a|0);k[e>>2]=k[a+60>>2];k[e+4>>2]=d;k[e+8>>2]=2;d=Fi(Ua(145,e|0)|0)|0;za(0)}if((d|0)>=1){g=k[g>>2]|0;if(d>>>0>g>>>0){e=k[h>>2]|0;f=a+4|0;k[f>>2]=e;k[a+8>>2]=e+(d-g);if(!(k[j>>2]|0))d=c;else{k[f>>2]=e+1;i[b+(c+-1)>>0]=i[e>>0]|0;d=c}}}else{k[a>>2]=k[a>>2]|d&48^16;k[a+8>>2]=0;k[a+4>>2]=0}r=l;return d|0}function df(a,b){a=a|0;b=b|0;a:do if((b|0)<199732540)if((b|0)<-376338907){switch(b|0){case -1237401799:break;default:break a}b=k[(k[a+332>>2]|0)+4168>>2]|0;return b|0}else{switch(b|0){case -376338907:break;default:break a}b=k[(k[a+332>>2]|0)+4152>>2]|0;return b|0}else{if((b|0)<1145645745){switch(b|0){case 199732540:break;default:break a}b=k[(k[a+332>>2]|0)+4156>>2]|0;return b|0}if((b|0)<1873801511){switch(b|0){case 1145645745:break;default:break a}b=k[(k[a+332>>2]|0)+4160>>2]|0;return b|0}else{switch(b|0){case 1873801511:break;default:break a}b=k[(k[a+332>>2]|0)+4164>>2]|0;return b|0}}while(0);b=k[a>>2]|0;k[b+20>>2]=127;$a[k[b>>2]&63](a);b=-1;return b|0}function ef(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;f=k[a+20>>2]|0;if((f|0)!=100){g=k[a>>2]|0;k[g+20>>2]=20;k[g+24>>2]=f;$a[k[g>>2]&63](a)}if(b>>>0>3){g=k[a>>2]|0;k[g+20>>2]=31;k[g+24>>2]=b;$a[k[g>>2]&63](a)}g=a+72+(b<<2)|0;f=k[g>>2]|0;if(!f){b=Di(a)|0;k[g>>2]=b}else b=f;if(!e){f=0;do{e=((ha(k[c+(f<<2)>>2]|0,d)|0)+50|0)/100|0;e=(e|0)<1?1:e;j[b+(f<<1)>>1]=(e|0)>32767?32767:e;f=f+1|0}while((f|0)!=64);d=k[g>>2]|0;d=d+128|0;k[d>>2]=0;return}else{f=0;do{e=((ha(k[c+(f<<2)>>2]|0,d)|0)+50|0)/100|0;e=(e|0)<1?1:e;j[b+(f<<1)>>1]=(e|0)<255?e:255;f=f+1|0}while((f|0)!=64);d=k[g>>2]|0;d=d+128|0;k[d>>2]=0;return}}function ff(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;do if((c|0)<(e|0))if(!(Pd(a,b,c,e)|0)){a=-1;return a|0}else{b=k[a+8>>2]|0;c=k[a+12>>2]|0;break}while(0);c=c-e|0;f=b>>c&(1<<e)+-1;g=a+8|0;h=a+12|0;a:do if((f|0)>(k[d+(e<<2)>>2]|0)){while(1){f=f<<1;if((c|0)<1){if(!(Pd(a,b,c,1)|0)){c=-1;break}b=k[g>>2]|0;c=k[h>>2]|0}c=c+-1|0;f=b>>>c&1|f;e=e+1|0;if((f|0)<=(k[d+(e<<2)>>2]|0))break a}return c|0}while(0);k[g>>2]=b;k[h>>2]=c;if((e|0)>16){a=k[a+16>>2]|0;d=k[a>>2]|0;k[d+20>>2]=118;ab[k[d+4>>2]&31](a,-1);a=0;return a|0}else{a=l[(k[d+72+(e<<2)>>2]|0)+f+((k[d+144>>2]|0)+17)>>0]|0;return a|0}return 0}function gf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;if((b|0)==0|(c|0)==0){f=k[a>>2]|0;k[f+20>>2]=23;$a[k[f>>2]&63](a)}d=a+24|0;e=k[d>>2]|0;if(!e){e=Ya[k[k[a+4>>2]>>2]&15](a,0,40)|0;k[d>>2]=e}k[e+8>>2]=16;k[e+12>>2]=3;k[e+16>>2]=17;k[e+20>>2]=b;k[e+24>>2]=c;d=e+28|0;k[d>>2]=0;f=k[b>>2]|0;if(f|0?(g=k[c>>2]|0,g|0):0){c=f;b=g;a=e+32|0;k[a>>2]=c;k[e>>2]=c;c=e+36|0;k[c>>2]=b;c=e+4|0;k[c>>2]=b;return}g=kb(4096)|0;k[b>>2]=g;k[d>>2]=g;if(!g){g=k[a>>2]|0;k[g+20>>2]=54;k[g+24>>2]=10;$a[k[g>>2]&63](a)}k[c>>2]=4096;c=k[b>>2]|0;b=4096;a=e+32|0;k[a>>2]=c;k[e>>2]=c;c=e+36|0;k[c>>2]=b;c=e+4|0;k[c>>2]=b;return}function hf(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0,m=0,n=0;n=r;r=r+16|0;j=n;l=k[a+452>>2]|0;m=l+36|0;if(!(k[m>>2]|0)){h=l+44|0;d=k[h>>2]|0;d=d>>>0<2?d:2;i=k[f>>2]|0;g=g-i|0;d=d>>>0>g>>>0?g:d;k[j>>2]=k[e+(i<<2)>>2];if(d>>>0>1)k[j+4>>2]=k[e+(i+1<<2)>>2];else{k[j+4>>2]=k[l+32>>2];k[m>>2]=1}ib[k[l+12>>2]&63](a,b,k[c>>2]|0,j)}else{if((k[a+44>>2]|0)==16)d=k[a+112>>2]<<1;else d=k[l+40>>2]|0;vh(l+32|0,0,e+(k[f>>2]<<2)|0,0,1,d);k[m>>2]=0;h=l+44|0;d=1}k[f>>2]=(k[f>>2]|0)+d;k[h>>2]=(k[h>>2]|0)-d;if(k[m>>2]|0){r=n;return}k[c>>2]=(k[c>>2]|0)+1;r=n;return}function jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+32|0;h=j+8|0;g=j;f=j+12|0;e=j+16|0;k[f>>2]=0;d=a+68|0;a=b;c=0;a:while(1){b:do if(!(i[a>>0]|0))k[(k[d>>2]|0)+(c*84|0)+16>>2]=k[f>>2];else{i[e>>0]=44;k[g>>2]=f;k[g+4>>2]=e;b=(fi(a,21854,g)|0)>0;if(!(b&(i[e>>0]|0)==44)){a=0;b=11;break a}b=k[f>>2]|0;if(b>>>0>3){b=5;break a}k[(k[d>>2]|0)+(c*84|0)+16>>2]=b;do{b=i[a>>0]|0;if(!(b<<24>>24))break b;a=a+1|0}while(b<<24>>24!=44)}while(0);c=c+1|0;if((c|0)>=10){a=1;b=11;break}}if((b|0)==5){g=k[3856]|0;k[h>>2]=3;ei(g,21859,h)|0;h=0;r=j;return h|0}else if((b|0)==11){r=j;return a|0}return 0}function kf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,m=0,n=0,o=0,p=0,q=0,r=0;if((e|0)<=0)return;p=k[b>>2]|0;f=k[a+112>>2]|0;do{o=e;e=e+-1|0;b=k[p+(c<<2)>>2]|0;c=c+1|0;a=k[d>>2]|0;d=d+4|0;if(a&3){n=l[b>>0]|0;j[a>>1]=n<<3&2016|n>>>3|n<<8&63488;b=b+1|0;f=f+-1|0;a=a+2|0}g=f>>>1;if(g){n=g<<2;h=0;i=b;m=a;while(1){r=l[i>>0]|0;q=l[i+1>>0]|0;k[m>>2]=r<<3&2016|r>>>3|r<<8&63488|(q<<3&2016|q>>>3|q<<8&63488)<<16;h=h+1|0;if((h|0)==(g|0))break;else{i=i+2|0;m=m+4|0}}b=b+(g<<1)|0;a=a+n|0}if(f&1|0){r=l[b>>0]|0;j[a>>1]=r<<3&2016|r>>>3|r<<8&63488}}while((o|0)>1);return}function lf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0,m=0,n=0;e=k[a+336>>2]|0;i=e+8|0;j=a+240|0;if((k[i>>2]|0)>>>0>=(k[j>>2]|0)>>>0)return;l=e+12|0;m=a+340|0;n=e+24|0;g=a+344|0;h=e+16|0;e=k[l>>2]|0;while(1){if(e>>>0<8){Za[k[(k[m>>2]|0)+4>>2]&15](a,b,c,d,n,l,8);e=k[l>>2]|0}if((e|0)!=8){e=12;break}e=(gb[k[(k[g>>2]|0)+4>>2]&63](a,n)|0)==0;f=(k[h>>2]|0)!=0;if(e){e=7;break}if(f){k[c>>2]=(k[c>>2]|0)+1;k[h>>2]=0}k[l>>2]=0;f=(k[i>>2]|0)+1|0;k[i>>2]=f;if(f>>>0<(k[j>>2]|0)>>>0)e=0;else{e=12;break}}if((e|0)==7){if(f)return;k[c>>2]=(k[c>>2]|0)+-1;k[h>>2]=1;return}else if((e|0)==12)return}function mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=k[b+28>>2]|0;j=h<<3;g=k[a+236>>2]|0;f=k[a+28>>2]|0;a=h<<4;if((g|0)>0&(a-f|0)>0){e=f+~a|0;a=(a|2)-f+((e|0)>-2?e:-2)|0;e=0;do{h=(k[c+(e<<2)>>2]|0)+f|0;eh(h|0,i[h+-1>>0]|0,a|0)|0;e=e+1|0}while((e|0)!=(g|0))}h=b+12|0;e=k[h>>2]|0;if((e|0)<=0)return;if(!j){a=0;do a=a+1|0;while((a|0)<(e|0));return}else b=0;do{a=0;e=k[c+(b<<2)>>2]|0;f=0;g=k[d+(b<<2)>>2]|0;while(1){i[g>>0]=((l[e>>0]|0)+a+(l[e+1>>0]|0)|0)>>>1;f=f+1|0;if((f|0)==(j|0))break;else{a=a^1;e=e+2|0;g=g+1|0}}b=b+1|0}while((b|0)<(k[h>>2]|0));return}function nf(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0;d=k[a+432>>2]|0;i=d+24|0;c=k[i>>2]|0;if(!c){h=d+20|0;b=d+16|0;j=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[d+8>>2]|0,k[h>>2]|0,k[b>>2]|0,0)|0;k[d+12>>2]=j;c=k[i>>2]|0;d=j}else{h=d+20|0;b=d+16|0;d=k[d+12>>2]|0}j=(k[b>>2]|0)-c|0;l=k[f>>2]|0;g=g-l|0;j=j>>>0>g>>>0?g:j;g=(k[a+116>>2]|0)-(k[h>>2]|0)|0;j=j>>>0>g>>>0?g:j;ib[k[(k[a+460>>2]|0)+4>>2]&63](a,d+(c<<2)|0,e+(l<<2)|0,j);k[f>>2]=(k[f>>2]|0)+j;j=(k[i>>2]|0)+j|0;k[i>>2]=j;c=k[b>>2]|0;if(j>>>0<c>>>0)return;k[h>>2]=(k[h>>2]|0)+c;k[i>>2]=0;return}function of(a){a=a|0;var b=0,c=0,d=0;b=a+20|0;c=k[b>>2]|0;if((c+-205|0)>>>0<2?(k[a+64>>2]|0)==0:0){if((k[a+140>>2]|0)>>>0<(k[a+116>>2]|0)>>>0){c=k[a>>2]|0;k[c+20>>2]=67;$a[k[c>>2]&63](a)}$a[k[(k[a+420>>2]|0)+4>>2]&63](a);k[b>>2]=210}else d=6;a:do if((d|0)==6)switch(c|0){case 210:break a;case 207:{k[b>>2]=210;break a}default:{b=k[a>>2]|0;k[b+20>>2]=20;k[b+24>>2]=c;$a[k[b>>2]&63](a);break a}}while(0);b=a+436|0;while(1){c=k[b>>2]|0;if(k[c+20>>2]|0)break;if(!(cb[k[c>>2]&15](a)|0)){b=0;d=13;break}}if((d|0)==13)return b|0;$a[k[(k[a+24>>2]|0)+24>>2]&63](a);Lh(a);d=1;return d|0}function pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;h=ha(c,b)|0;if((k[d+76>>2]|0)>-1)j=Tj(d)|0;else j=0;e=d+74|0;g=i[e>>0]|0;i[e>>0]=g+255|g;e=d+4|0;g=k[e>>2]|0;f=(k[d+8>>2]|0)-g|0;if((f|0)>0){f=f>>>0<h>>>0?f:h;_g(a|0,g|0,f|0)|0;k[e>>2]=g+f;a=a+f|0;e=h-f|0}else e=h;a:do if(!e)l=13;else{g=d+32|0;f=e;while(1){if(Tg(d)|0){c=f;break}e=Ya[k[g>>2]&15](d,a,f)|0;if((e+1|0)>>>0<2){c=f;break}if((f|0)==(e|0)){l=13;break a}else{a=a+e|0;f=f-e|0}}if(j|0)Uj(d);c=((h-c|0)>>>0)/(b>>>0)|0}while(0);if((l|0)==13)if(j)Uj(d);return c|0}function qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=a+4|0;k[f>>2]=0;if((b|0)!=62){e=k[a>>2]|0;k[e+20>>2]=12;k[e+24>>2]=62;k[e+28>>2]=b;$a[k[e>>2]&63](a)}if((c|0)==376)c=a;else{e=k[a>>2]|0;k[e+20>>2]=21;k[e+24>>2]=376;k[e+28>>2]=c;$a[k[e>>2]&63](a);c=a}e=k[a>>2]|0;b=a+12|0;d=k[b>>2]|0;eh(a|0,0,376)|0;k[a>>2]=e;k[b>>2]=d;k[a+16>>2]=0;Te(c);k[a+8>>2]=0;k[a+24>>2]=0;k[a+368>>2]=0;b=a+48|0;d=a+68|0;e=d+52|0;do{k[d>>2]=0;d=d+4|0}while((d|0)<(e|0));p[b>>3]=1.0;k[a+20>>2]=100;f=Ya[k[k[f>>2]>>2]&15](c,0,5024)|0;a=a+332|0;k[a>>2]=f;eh(f|0,0,5024)|0;k[(k[a>>2]|0)+4152>>2]=1560820397;return}function rf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0.0,g=0.0,h=0;e=k[a+364>>2]|0;k[d+2560>>2]=l[a+120+b>>0];k[d+2564>>2]=l[a+136+b>>0];k[d+2568>>2]=l[a+152+c>>0];a=k[e+76+(b<<2)>>2]|0;b=0;do{h=l[a+b>>0]|0;f=+(k[14764+((h&127)<<2)>>2]>>16|0)/46340.95;f=h&128|0?f:1.0-f;g=-+fa(+f)/.6931471805599453;o[d+(b<<3)>>2]=g;f=-+fa(+(1.0-f))/.6931471805599453;o[d+(b<<3)+4>>2]=f;b=b+1|0}while((b|0)!=64);a=k[e+140+(c<<2)>>2]|0;b=0;do{h=l[a+b>>0]|0;g=+(k[14764+((h&127)<<2)>>2]>>16|0)/46340.95;g=h&128|0?g:1.0-g;f=-+fa(+g)/.6931471805599453;o[d+512+(b<<3)>>2]=f;g=-+fa(+(1.0-g))/.6931471805599453;o[d+512+(b<<3)+4>>2]=g;b=b+1|0}while((b|0)!=256);return}function sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=c+16|0;e=k[d>>2]|0;if(!e)if(!(kh(c)|0)){e=k[d>>2]|0;f=5}else d=0;else f=5;a:do if((f|0)==5){g=c+20|0;d=k[g>>2]|0;f=d;if((e-d|0)>>>0<b>>>0){d=Ya[k[c+36>>2]&15](c,a,b)|0;break}b:do if((i[c+75>>0]|0)>-1){d=b;while(1){if(!d){e=f;d=0;break b}e=d+-1|0;if((i[a+e>>0]|0)==10)break;else d=e}if((Ya[k[c+36>>2]&15](c,a,d)|0)>>>0<d>>>0)break a;b=b-d|0;a=a+d|0;e=k[g>>2]|0}else{e=f;d=0}while(0);_g(e|0,a|0,b|0)|0;k[g>>2]=(k[g>>2]|0)+b;d=d+b|0}while(0);return d|0}function tf(a,b){a=a|0;b=b|0;var c=0;c=k[a+432>>2]|0;a:do switch(b|0){case 0:{if(!(k[a+84>>2]|0)){k[c+4>>2]=k[(k[a+452>>2]|0)+4>>2];break a}k[c+4>>2]=5;b=c+12|0;if(!(k[b>>2]|0)){a=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[c+8>>2]|0,0,k[c+16>>2]|0,1)|0;k[b>>2]=a}break}case 3:{if(!(k[c+8>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+4>>2]=6;break}case 2:{if(!(k[c+8>>2]|0)){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+4>>2]=7;break}default:{b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}}while(0);k[c+24>>2]=0;k[c+20>>2]=0;return}function uf(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0;j=k[a+432>>2]|0;l=j+24|0;g=k[l>>2]|0;if(!g){i=j+16|0;e=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[j+8>>2]|0,k[j+20>>2]|0,k[i>>2]|0,1)|0;h=j+12|0;k[h>>2]=e;g=k[l>>2]|0}else{e=j+12|0;i=j+16|0;h=e;e=k[e>>2]|0}Za[k[(k[a+452>>2]|0)+4>>2]&15](a,b,c,d,e,l,k[i>>2]|0);e=k[l>>2]|0;if(e>>>0>g>>>0){e=e-g|0;ib[k[(k[a+460>>2]|0)+4>>2]&63](a,(k[h>>2]|0)+(g<<2)|0,0,e);k[f>>2]=(k[f>>2]|0)+e;e=k[l>>2]|0}g=k[i>>2]|0;if(e>>>0<g>>>0)return;f=j+20|0;k[f>>2]=(k[f>>2]|0)+g;k[l>>2]=0;return}function vf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=a+24|0;g=k[f>>2]|0;h=g+4|0;b=k[h>>2]|0;do if(!b)if(!(cb[k[g+12>>2]&15](a)|0)){a=0;return a|0}else{b=k[h>>2]|0;break}while(0);e=k[g>>2]|0;b=b+-1|0;c=e+1|0;e=(l[e>>0]|0)<<8;do if(!b)if(!(cb[k[g+12>>2]&15](a)|0)){a=0;return a|0}else{b=k[h>>2]|0;d=k[g>>2]|0;break}else d=c;while(0);e=l[d>>0]|0|e;c=e+-2|0;i=k[a>>2]|0;k[i+20>>2]=91;k[i+24>>2]=k[a+416>>2];k[i+28>>2]=c;ab[k[i+4>>2]&31](a,1);k[g>>2]=d+1;k[h>>2]=b+-1;if(e>>>0<=2){i=1;return i|0}ab[k[(k[f>>2]|0)+16>>2]&31](a,c);i=1;return i|0}function wf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=r;r=r+16|0;g=h;d=k[a+20>>2]|0;if((d|0)!=101){f=k[a>>2]|0;k[f+20>>2]=20;k[f+24>>2]=d;$a[k[f>>2]&63](a)}e=a+224|0;f=a+32|0;if((k[e>>2]|0)>>>0>=(k[f>>2]|0)>>>0){d=k[a>>2]|0;k[d+20>>2]=123;ab[k[d+4>>2]&31](a,-1)}d=k[a+8>>2]|0;if(d|0){k[d+4>>2]=k[e>>2];k[d+8>>2]=k[f>>2];$a[k[d>>2]&63](a)}d=k[a+332>>2]|0;if(k[d+12>>2]|0)$a[k[d+4>>2]&63](a);f=(k[f>>2]|0)-(k[e>>2]|0)|0;k[g>>2]=0;ib[k[(k[a+336>>2]|0)+4>>2]&63](a,b,g,f>>>0<c>>>0?f:c);b=k[g>>2]|0;k[e>>2]=(k[e>>2]|0)+b;r=h;return b|0}function xf(a){a=+a;var b=0,c=0,d=0,e=0.0,f=0.0;p[t>>3]=a;b=k[t+4>>2]|0;c=b&2147483647;do if(c>>>0>1083174911){b=(b|0)>-1|(b|0)==-1&(k[t>>2]|0)>>>0>4294967295;if(b&c>>>0>1083179007){a=a*8988465674311579538646525.0e283;break}if(c>>>0<=2146435071)if(!(a<=-1075.0)|b){d=9;break}else{a=0.0;break}else{a=-1.0/a;break}}else if(c>>>0<1016070144)a=a+1.0;else d=9;while(0);if((d|0)==9){f=a+26388279066624.0;p[t>>3]=f;d=(k[t>>2]|0)+128|0;c=d<<1&510;e=+p[72+(c<<3)>>3];a=a-(f+-26388279066624.0)-+p[72+((c|1)<<3)>>3];a=+Ag(e+e*a*(a*(a*(a*(a*1.3333559164630223e-03+.009618129842126066)+.0555041086648214)+.2402265069591)+.6931471805599453),(d&-256|0)/256|0)}return +a}function yf(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,208)|0;k[a+364>>2]=b;k[b>>2]=20;k[b+8>>2]=39;k[b+76>>2]=0;k[b+140>>2]=0;k[b+80>>2]=0;k[b+144>>2]=0;k[b+84>>2]=0;k[b+148>>2]=0;k[b+88>>2]=0;k[b+152>>2]=0;k[b+92>>2]=0;k[b+156>>2]=0;k[b+96>>2]=0;k[b+160>>2]=0;k[b+100>>2]=0;k[b+164>>2]=0;k[b+104>>2]=0;k[b+168>>2]=0;k[b+108>>2]=0;k[b+172>>2]=0;k[b+112>>2]=0;k[b+176>>2]=0;k[b+116>>2]=0;k[b+180>>2]=0;k[b+120>>2]=0;k[b+184>>2]=0;k[b+124>>2]=0;k[b+188>>2]=0;k[b+128>>2]=0;k[b+192>>2]=0;k[b+132>>2]=0;k[b+196>>2]=0;k[b+136>>2]=0;k[b+200>>2]=0;i[b+204>>0]=113;return}function zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b&255;a:do if(!d)a=a+(Cg(a)|0)|0;else{if(a&3){c=b&255;do{e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}d=ha(d,16843009)|0;c=k[a>>2]|0;b:do if(!((c&-2139062144^-2139062144)&c+-16843009))do{e=c^d;if((e&-2139062144^-2139062144)&e+-16843009|0)break b;a=a+4|0;c=k[a>>2]|0}while(!((c&-2139062144^-2139062144)&c+-16843009|0));while(0);c=b&255;while(1){e=i[a>>0]|0;if(e<<24>>24==0?1:e<<24>>24==c<<24>>24)break;else a=a+1|0}}while(0);return a|0}function Af(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(k[b>>2]|0)return;e=Ei(a)|0;k[b>>2]=e;f=c;g=e+17|0;do{i[e>>0]=i[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));c=(l[c+16>>0]|0)+((l[c+15>>0]|0)+((l[c+14>>0]|0)+((l[c+13>>0]|0)+((l[c+12>>0]|0)+((l[c+11>>0]|0)+((l[c+10>>0]|0)+((l[c+9>>0]|0)+((l[c+8>>0]|0)+((l[c+7>>0]|0)+((l[c+6>>0]|0)+((l[c+5>>0]|0)+((l[c+4>>0]|0)+((l[c+3>>0]|0)+((l[c+2>>0]|0)+(l[c+1>>0]|0)))))))))))))))|0;if((c+-1|0)>>>0>255){g=k[a>>2]|0;k[g+20>>2]=8;$a[k[g>>2]&63](a)}_g((k[b>>2]|0)+17|0,d|0,c|0)|0;k[(k[b>>2]|0)+276>>2]=0;return}function Bf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;i=k[a+364>>2]|0;f=k[a+328>>2]|0;g=a+24|0;e=k[g>>2]|0;h=i+16|0;k[h>>2]=k[e>>2];d=i+20|0;k[d>>2]=k[e+4>>2];e=a+200|0;if(k[e>>2]|0?(k[i+68>>2]|0)==0:0)xd(i,k[i+72>>2]|0);a=a+272|0;if((k[a>>2]|0)>0){c=0;do{xe(i,j[k[b+(c<<2)>>2]>>1]>>f,1);c=c+1|0}while((c|0)<(k[a>>2]|0))}a=k[g>>2]|0;k[a>>2]=k[h>>2];k[a+4>>2]=k[d>>2];a=k[e>>2]|0;if(!a)return 1;d=i+68|0;c=k[d>>2]|0;if(!c){k[d>>2]=a;i=i+72|0;k[i>>2]=(k[i>>2]|0)+1&7}else a=c;k[d>>2]=a+-1;return 1}function Cf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0;p=k[(k[a+460>>2]|0)+24>>2]|0;q=k[a+112>>2]|0;j=k[a+120>>2]|0;if((d|0)<=0)return;h=(j|0)>0;if(!q)return;else o=0;do{a=k[c+(o<<2)>>2]|0;if(h){m=q;n=k[b+(o<<2)>>2]|0;while(1){f=0;e=0;g=n;while(1){e=(l[(k[p+(f<<2)>>2]|0)+(l[g>>0]|0)>>0]|0)+e|0;f=f+1|0;if((f|0)==(j|0))break;else g=g+1|0}i[a>>0]=e;m=m+-1|0;if(!m)break;else{n=n+j|0;a=a+1|0}}}else eh(a|0,0,q|0)|0;o=o+1|0}while((o|0)!=(d|0));return}function Df(a,b){a=a|0;b=b|0;var c=0;a:do if((b|0)<199732540)if((b|0)<-376338907)switch(b|0){case -1237401799:{a=1;break a}default:{c=2;break a}}else switch(b|0){case -376338907:{a=1;break a}default:{c=2;break a}}else{if((b|0)<1145645745)switch(b|0){case 199732540:{a=1;break a}default:{c=2;break a}}if((b|0)<1873801511)switch(b|0){case 1145645745:{a=1;break a}default:{c=2;break a}}else switch(b|0){case 1873801511:{a=1;break a}default:{c=2;break a}}}while(0);if((c|0)==2)a=0;return a|0}function Ef(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,m=0,n=0,o=0,p=0,q=0;q=k[(k[a+456>>2]|0)+24>>2]|0;n=k[a+112>>2]|0;if((e|0)<=0)return;o=b+4|0;p=b+8|0;if(!n)return;while(1){a=e;e=e+-1|0;f=k[(k[b>>2]|0)+(c<<2)>>2]|0;g=k[(k[o>>2]|0)+(c<<2)>>2]|0;h=k[(k[p>>2]|0)+(c<<2)>>2]|0;c=c+1|0;j=k[d>>2]|0;m=0;do{i[j+m>>0]=((k[q+((l[g+m>>0]|0|256)<<2)>>2]|0)+(k[q+((l[f+m>>0]|0)<<2)>>2]|0)+(k[q+((l[h+m>>0]|0|512)<<2)>>2]|0)|0)>>>16;m=m+1|0}while((m|0)!=(n|0));if((a|0)<=1)break;else d=d+4|0}return}function Ff(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;c=a+104|0;f=k[c>>2]|0;if((f|0)!=0?(k[a+108>>2]|0)>=(f|0):0)g=4;else{b=Dh(a)|0;if((b|0)>=0){c=k[c>>2]|0;f=k[a+8>>2]|0;if(c){e=k[a+4>>2]|0;c=c-(k[a+108>>2]|0)|0;d=f;if((f-e|0)<(c|0))g=9;else k[a+100>>2]=e+(c+-1)}else{d=f;g=9}if((g|0)==9)k[a+100>>2]=f;c=a+4|0;if(!d)c=k[c>>2]|0;else{c=k[c>>2]|0;a=a+108|0;k[a>>2]=d+1-c+(k[a>>2]|0)}c=c+-1|0;if((l[c>>0]|0|0)!=(b|0))i[c>>0]=b}else g=4}if((g|0)==4){k[a+100>>2]=0;b=-1}return b|0}function Gf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0,m=0;m=r;r=r+128|0;e=m+112|0;l=m;f=l;g=15776;h=f+112|0;do{k[f>>2]=k[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if((b+-1|0)>>>0>2147483646)if(!b){b=1;j=4}else{b=Ai()|0;k[b>>2]=75;b=-1}else{e=a;j=4}if((j|0)==4){j=-2-e|0;j=b>>>0>j>>>0?j:b;k[l+48>>2]=j;a=l+20|0;k[a>>2]=e;k[l+44>>2]=e;b=e+j|0;e=l+16|0;k[e>>2]=b;k[l+28>>2]=b;b=Oe(l,c,d)|0;if(j){c=k[a>>2]|0;i[c+(((c|0)==(k[e>>2]|0))<<31>>31)>>0]=0}}r=m;return b|0}function Hf(a,b){a=a|0;b=b|0;var c=0;c=k[a+72>>2]|0;if(c|0)k[c+128>>2]=b;c=k[a+76>>2]|0;if(c|0)k[c+128>>2]=b;c=k[a+80>>2]|0;if(c|0)k[c+128>>2]=b;c=k[a+84>>2]|0;if(c|0)k[c+128>>2]=b;c=k[a+88>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+104>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+92>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+108>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+96>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+112>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+100>>2]|0;if(c|0)k[c+276>>2]=b;c=k[a+116>>2]|0;if(!c)return;k[c+276>>2]=b;return}function If(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;n=k[(k[a+460>>2]|0)+24>>2]|0;o=k[a+112>>2]|0;if((d|0)<1|(o|0)==0)return;else s=0;do{p=o;q=k[b+(s<<2)>>2]|0;r=k[c+(s<<2)>>2]|0;while(1){f=(l[q>>0]|0)>>>3;g=(l[q+1>>0]|0)>>>2;h=(l[q+2>>0]|0)>>>3;m=(k[n+(f<<2)>>2]|0)+(g<<6)+(h<<1)|0;e=j[m>>1]|0;if(!(e<<16>>16)){Gb(a,f,g,h);e=j[m>>1]|0}i[r>>0]=(e&65535)+255;p=p+-1|0;if(!p)break;else{q=q+3|0;r=r+1|0}}s=s+1|0}while((s|0)!=(d|0));return}function Jf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;k[a+4>>2]=0;if((b|0)!=62){d=k[a>>2]|0;k[d+20>>2]=12;k[d+24>>2]=62;k[d+28>>2]=b;$a[k[d>>2]&63](a)}if((c|0)==464)c=a;else{d=k[a>>2]|0;k[d+20>>2]=21;k[d+24>>2]=464;k[d+28>>2]=c;$a[k[d>>2]&63](a);c=a}e=k[a>>2]|0;b=a+12|0;d=k[b>>2]|0;eh(a|0,0,464)|0;k[a>>2]=e;k[b>>2]=d;k[a+16>>2]=1;Te(c);k[a+8>>2]=0;k[a+24>>2]=0;k[a+304>>2]=0;c=a+164|0;b=c+48|0;do{k[c>>2]=0;c=c+4|0}while((c|0)<(b|0));$e(a);Fh(a);k[a+20>>2]=200;return}function Kf(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Tf(a,b,c)|0)){c=0;return c|0}b=k[c>>2]|0;a:do if((b|0)!=-1){while(1){if(!(xj(b)|0))break;b=Wg(a)|0;b:do if((b|0)==35)while(1){b=Wg(a)|0;switch(b|0){case 10:case -1:break b;default:{}}}while(0);if((b|0)==-1){b=-1;break a}}if((b+-48|0)>>>0<10){if((sg(b,a)|0)==-1)b=0;else{b=32;break}return b|0}else{switch(b|0){case 58:case 59:case -1:break a;default:{}}b=32;break}}else b=-1;while(0);k[c>>2]=b;c=1;return c|0}function Lf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=r;r=r+16|0;h=i;d=k[a+20>>2]|0;if((d|0)!=205){g=k[a>>2]|0;k[g+20>>2]=20;k[g+24>>2]=d;$a[k[g>>2]&63](a)}f=a+140|0;g=k[f>>2]|0;d=k[a+116>>2]|0;if(g>>>0>=d>>>0){b=k[a>>2]|0;k[b+20>>2]=123;ab[k[b+4>>2]&31](a,-1);b=0;r=i;return b|0}e=k[a+8>>2]|0;if(e|0){k[e+4>>2]=g;k[e+8>>2]=d;$a[k[e>>2]&63](a)}k[h>>2]=0;ib[k[(k[a+424>>2]|0)+4>>2]&63](a,b,h,c);b=k[h>>2]|0;k[f>>2]=(k[f>>2]|0)+b;r=i;return b|0}function Mf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[b+40>>2]|0;c=b+28|0;d=b+36|0;f=pf(k[c>>2]|0,1,k[d>>2]|0,k[b+12>>2]|0)|0;if((f|0)!=(k[d>>2]|0)){f=k[a>>2]|0;k[f+20>>2]=43;$a[k[f>>2]&63](a)}a=k[a+28>>2]|0;if(!a)return 1;d=k[c>>2]|0;c=a;a=k[k[b+16>>2]>>2]|0;while(1){i[a>>0]=i[e+((l[d>>0]|0)<<8|(l[d+1>>0]|0))>>0]|0;i[a+1>>0]=i[e+((l[d+2>>0]|0)<<8|(l[d+3>>0]|0))>>0]|0;i[a+2>>0]=i[e+((l[d+4>>0]|0)<<8|(l[d+5>>0]|0))>>0]|0;c=c+-1|0;if(!c)break;else{d=d+6|0;a=a+3|0}}return 1}function Nf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,l=0;f=k[a+4>>2]|0;l=c<<7;e=999999988/(l>>>0)|0;if(!e){j=k[a>>2]|0;k[j+20>>2]=70;$a[k[j>>2]&63](a)}g=(e|0)<(d|0)?e:d;k[f+80>>2]=g;j=re(a,b,d<<2)|0;if(!d)return j|0;else e=0;do{f=d-e|0;g=g>>>0<f>>>0?g:f;f=Pf(a,b,ha(l,g)|0)|0;if(g){h=e;i=g;while(1){e=h+1|0;k[j+(h<<2)>>2]=f;i=i+-1|0;if(!i)break;else{h=e;f=f+(c<<7)|0}}}}while(e>>>0<d>>>0);return j|0}function Of(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;d=a+4|0;c=Ya[k[k[d>>2]>>2]&15](a,1,28)|0;k[a+432>>2]=c;k[c>>2]=14;h=c+8|0;k[h>>2]=0;i=c+12|0;k[i>>2]=0;if(!(k[a+84>>2]|0))return;g=k[a+312>>2]|0;f=c+16|0;k[f>>2]=g;c=k[d>>2]|0;d=k[a+112>>2]|0;e=k[a+120>>2]|0;if(!b){b=ha(e,d)|0;b=fb[k[c+8>>2]&3](a,1,b,g)|0;k[i>>2]=b;return}else{c=k[c+16>>2]|0;i=ha(e,d)|0;b=bj(k[a+116>>2]|0,g)|0;b=bb[c&3](a,1,0,i,b,k[f>>2]|0)|0;k[h>>2]=b;return}}function Pf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=k[a+4>>2]|0;d=c+7&-8;e=d+19|0;if(e>>>0>1e9){c=k[a>>2]|0;k[c+20>>2]=54;k[c+24>>2]=3;$a[k[c>>2]&63](a)}if(b>>>0>1){c=k[a>>2]|0;k[c+20>>2]=14;k[c+24>>2]=b;$a[k[c>>2]&63](a)}c=Dj(a,e)|0;if(!c){g=k[a>>2]|0;k[g+20>>2]=54;k[g+24>>2]=4;$a[k[g>>2]&63](a)}g=f+76|0;k[g>>2]=(k[g>>2]|0)+e;b=f+60+(b<<2)|0;k[c>>2]=k[b>>2];k[c+4>>2]=d;k[c+8>>2]=0;k[b>>2]=c;b=c+12|0;g=b&7;return ((g|0)==0?b:b+(8-g)|0)|0}function Qf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=k[a+4>>2]|0;j=c+15&-16;c=999999988/(j>>>0)|0;if(!c){i=k[a>>2]|0;k[i+20>>2]=70;$a[k[i>>2]&63](a)}e=(c|0)<(d|0)?c:d;k[f+80>>2]=e;i=re(a,b,d<<2)|0;if(!d)return i|0;else c=0;do{f=d-c|0;e=e>>>0<f>>>0?e:f;f=Pf(a,b,ha(e,j)|0)|0;if(e){g=c;h=e;while(1){c=g+1|0;k[i+(g<<2)>>2]=f;h=h+-1|0;if(!h)break;else{g=c;f=f+j|0}}}}while(c>>>0<d>>>0);return i|0}function Rf(a){a=a|0;var b=0;ub(a,0);if(!(k[a+176>>2]|0)){xc(a);Vd(a);Cd(a,0)}Ad(a);do if(!(k[a+180>>2]|0))if(!(k[a+228>>2]|0)){ah(a);break}else{oh(a);break}else yf(a);while(0);if(((k[a+168>>2]|0)<=1?(k[a+184>>2]|0)==0:0)?(b=k[a+332>>2]|0,(k[b+20>>2]|0)==0):0)b=(k[b+24>>2]|0)!=0;else b=1;Fe(a,b&1);fg(a,0);Ah(a);$a[k[(k[a+4>>2]|0)+24>>2]&63](a);$a[k[k[a+348>>2]>>2]&63](a);return}function Sf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;f=k[a+12>>2]|0;e=a+60|0;b=k[e>>2]|0;if((b|0)>0){k[e>>2]=b+-1;return}d=a+56|0;c=k[d>>2]|0;k[d>>2]=c+-1;do if((c|0)<1){c=Wg(f)|0;if((c|0)!=-1){b=c&127;if(!(c&128)){k[d>>2]=b;break}}else{b=k[a+28>>2]|0;c=k[b>>2]|0;k[c+20>>2]=43;$a[k[c>>2]&63](b);b=127}k[e>>2]=b;k[d>>2]=0}while(0);b=a+52|0;if((k[b>>2]|0)>0)c=0;else return;do{e=(Wg(f)|0)&255;i[a+48+c>>0]=e;c=c+1|0}while((c|0)<(k[b>>2]|0));return}function Tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;while(1){d=Wg(a)|0;a:do if((d|0)==35)while(1){d=Wg(a)|0;switch(d|0){case 10:case -1:break a;default:{}}}while(0);if((d|0)==-1){f=5;break}if(!(xj(d)|0)){e=d;break}}if((f|0)==5){k[c>>2]=-1;c=0;return c|0}d=e+-48|0;if(d>>>0>=10){k[c>>2]=e;c=0;return c|0}e=Sh(a)|0;if((e|0)!=-1&(e+-48|0)>>>0<10)do{d=e+-48+(d*10|0)|0;e=Sh(a)|0}while((e|0)!=-1&(e+-48|0)>>>0<10);k[b>>2]=d;k[c>>2]=e;c=1;return c|0}function Uf(a){a=a|0;var b=0,c=0;do if(a){if((k[a+76>>2]|0)<=-1){b=Ng(a)|0;break}c=(Tj(a)|0)==0;b=Ng(a)|0;if(!c)Uj(a)}else{if(!(k[3914]|0))b=0;else b=Uf(k[3914]|0)|0;Oa(96180);a=k[24044]|0;if(a)do{if((k[a+76>>2]|0)>-1)c=Tj(a)|0;else c=0;if((k[a+20>>2]|0)>>>0>(k[a+28>>2]|0)>>>0)b=Ng(a)|0|b;if(c|0)Uj(a);a=k[a+56>>2]|0}while((a|0)!=0);Ma(96180)}while(0);return b|0}function Vf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=k[a+36>>2]|0;l=k[a+112>>2]|0;if((e|0)<=0)return;m=(l|0)==0;if((n|0)<=0)return;while(1){a=e;e=e+-1|0;if(!m){f=0;do{g=l;h=k[(k[b+(f<<2)>>2]|0)+(c<<2)>>2]|0;j=(k[d>>2]|0)+f|0;while(1){i[j>>0]=i[h>>0]|0;g=g+-1|0;if(!g)break;else{h=h+1|0;j=j+n|0}}f=f+1|0}while((f|0)!=(n|0))}if((a|0)<=1)break;else{c=c+1|0;d=d+4|0}}return}function Wf(a,b,c){a=a|0;b=b|0;c=c|0;do if(a){if(b>>>0<128){i[a>>0]=b;a=1;break}if(b>>>0<2048){i[a>>0]=b>>>6|192;i[a+1>>0]=b&63|128;a=2;break}if(b>>>0<55296|(b&-8192|0)==57344){i[a>>0]=b>>>12|224;i[a+1>>0]=b>>>6&63|128;i[a+2>>0]=b&63|128;a=3;break}if((b+-65536|0)>>>0<1048576){i[a>>0]=b>>>18|240;i[a+1>>0]=b>>>12&63|128;i[a+2>>0]=b>>>6&63|128;i[a+3>>0]=b&63|128;a=4;break}else{a=Ai()|0;k[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function Xf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0,m=0,n=0;n=k[a+60>>2]|0;l=k[a+28>>2]|0;if((e|0)<=0)return;m=(l|0)==0;if((n|0)<=0)return;while(1){a=e;e=e+-1|0;if(!m){g=0;do{f=k[(k[c+(g<<2)>>2]|0)+(d<<2)>>2]|0;h=0;j=k[b>>2]|0;while(1){i[f+h>>0]=i[j+g>>0]|0;h=h+1|0;if((h|0)==(l|0))break;else j=j+n|0}g=g+1|0}while((g|0)!=(n|0))}if((a|0)<=1)break;else{d=d+1|0;b=b+4|0}}return}function Yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[b+40>>2]|0;c=b+28|0;d=b+36|0;f=pf(k[c>>2]|0,1,k[d>>2]|0,k[b+12>>2]|0)|0;if((f|0)!=(k[d>>2]|0)){f=k[a>>2]|0;k[f+20>>2]=43;$a[k[f>>2]&63](a)}a=k[a+28>>2]|0;if(!a)return 1;d=k[c>>2]|0;c=a;a=k[k[b+16>>2]>>2]|0;while(1){i[a>>0]=i[e+(l[d>>0]|0)>>0]|0;i[a+1>>0]=i[e+(l[d+1>>0]|0)>>0]|0;i[a+2>>0]=i[e+(l[d+2>>0]|0)>>0]|0;c=c+-1|0;if(!c)break;else{d=d+3|0;a=a+3|0}}return 1}function Zf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,m=0,n=0;n=k[(k[a+460>>2]|0)+24>>2]|0;j=k[n>>2]|0;m=k[n+4>>2]|0;n=k[n+8>>2]|0;a=k[a+112>>2]|0;if((d|0)<1|(a|0)==0)return;else h=0;do{e=a;f=k[b+(h<<2)>>2]|0;g=k[c+(h<<2)>>2]|0;while(1){i[g>>0]=(l[m+(l[f+1>>0]|0)>>0]|0)+(l[j+(l[f>>0]|0)>>0]|0)+(l[n+(l[f+2>>0]|0)>>0]|0);e=e+-1|0;if(!e)break;else{f=f+3|0;g=g+1|0}}h=h+1|0}while((h|0)!=(d|0));return}function _f(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=0;while(1){e=(k[a+(d<<2)>>2]|0)+b|0;f=e+1|0;o[c>>2]=+((l[e>>0]|0)+-128|0);e=f+1|0;o[c+4>>2]=+((l[f>>0]|0)+-128|0);f=e+1|0;o[c+8>>2]=+((l[e>>0]|0)+-128|0);e=f+1|0;o[c+12>>2]=+((l[f>>0]|0)+-128|0);f=e+1|0;o[c+16>>2]=+((l[e>>0]|0)+-128|0);e=f+1|0;o[c+20>>2]=+((l[f>>0]|0)+-128|0);o[c+24>>2]=+((l[e>>0]|0)+-128|0);o[c+28>>2]=+((l[e+1>>0]|0)+-128|0);d=d+1|0;if((d|0)==8)break;else c=c+32|0}return}function $f(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+20|0;c=k[d>>2]|0;if((c|0)!=100){e=k[a>>2]|0;k[e+20>>2]=20;k[e+24>>2]=c;$a[k[e>>2]&63](a)}if(b|0)Hf(a,0);c=a+332|0;b=k[c>>2]|0;if(!(((k[b+4172>>2]|0)!=0?(k[a+172>>2]|0)!=0:0)?(k[a+168>>2]|0)!=0:0))k[b+20>>2]=0;$a[k[(k[a>>2]|0)+16>>2]&63](a);$a[k[(k[a+24>>2]|0)+8>>2]&63](a);Rf(a);$a[k[k[c>>2]>>2]&63](a);k[a+224>>2]=0;k[d>>2]=k[a+176>>2]|0?102:101;return}function ag(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=k[a+440>>2]|0;e=(k[(k[a+4>>2]|0)+48>>2]|0)+-20|0;c=(e|0)<(c|0)?e:c;e=(b|0)==224;if(c)if(e&c>>>0<14){d=14;c=10}else{d=(b|0)==238&c>>>0<12?12:c;c=10}else{d=0;c=e|(b|0)==238?9:8}if((b|0)==254){k[f+28>>2]=c;k[f+96>>2]=d;return}if((b&-16|0)==224){b=b+-224|0;k[f+32+(b<<2)>>2]=c;k[f+100+(b<<2)>>2]=d;return}else{f=k[a>>2]|0;k[f+20>>2]=68;k[f+24>>2]=b;$a[k[f>>2]&63](a);return}}function bg(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+24|0;c=k[b>>2]|0;e=k[c>>2]|0;k[c>>2]=e+1;i[e>>0]=-1;e=c+4|0;d=(k[e>>2]|0)+-1|0;k[e>>2]=d;if((d|0)==0?(cb[k[c+12>>2]&15](a)|0)==0:0){e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a)}b=k[b>>2]|0;d=k[b>>2]|0;k[b>>2]=d+1;i[d>>0]=-39;d=b+4|0;e=(k[d>>2]|0)+-1|0;k[d>>2]=e;if(e|0)return;if(cb[k[b+12>>2]&15](a)|0)return;e=k[a>>2]|0;k[e+20>>2]=24;$a[k[e>>2]&63](a);return}function cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;g=k[b+32>>2]|0;f=b+40|0;c=(k[f>>2]|0)+-1|0;k[f>>2]=c;c=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[b+36>>2]|0,c,1,0)|0;a=k[a+28>>2]|0;if(!a)return 1;e=g+4|0;f=g+8|0;d=k[c>>2]|0;c=k[k[b+16>>2]>>2]|0;while(1){b=l[d>>0]|0;i[c>>0]=i[(k[g>>2]|0)+b>>0]|0;i[c+1>>0]=i[(k[e>>2]|0)+b>>0]|0;i[c+2>>0]=i[(k[f>>2]|0)+b>>0]|0;a=a+-1|0;if(!a)break;else{d=d+1|0;c=c+3|0}}return 1}function dg(a){a=a|0;var b=0,c=0,d=0,e=0;c=k[a+24>>2]|0;d=c+32|0;b=pf(k[d>>2]|0,1,4096,k[c+28>>2]|0)|0;e=c+36|0;if(b|0){a=k[d>>2]|0;k[c>>2]=a;a=c+4|0;k[a>>2]=b;k[e>>2]=0;return 1}if(!(k[e>>2]|0))b=a;else{b=k[a>>2]|0;k[b+20>>2]=42;$a[k[b>>2]&63](a);b=a}a=k[a>>2]|0;k[a+20>>2]=120;ab[k[a+4>>2]&31](b,-1);i[k[d>>2]>>0]=-1;i[(k[d>>2]|0)+1>>0]=-39;b=2;a=k[d>>2]|0;k[c>>2]=a;a=c+4|0;k[a>>2]=b;k[e>>2]=0;return 1}function eg(a,b,c){a=a|0;b=b|0;c=+c;a:do if((b|0)>=326587475)if((b|0)<1533126041){switch(b|0){case 326587475:break;default:break a}o[(k[a+332>>2]|0)+4204>>2]=c;return}else{switch(b|0){case 1533126041:break;default:break a}o[(k[a+332>>2]|0)+4196>>2]=c;return}else{switch(b|0){case -1178882557:break;default:break a}o[(k[a+332>>2]|0)+4200>>2]=c;return}while(0);b=k[a>>2]|0;k[b+20>>2]=127;$a[k[b>>2]&63](a);return}function fg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;f=a+4|0;c=Ya[k[k[f>>2]>>2]&15](a,1,64)|0;k[a+336>>2]=c;k[c>>2]=9;if(k[a+176>>2]|0)return;if(b|0){f=k[a>>2]|0;k[f+20>>2]=4;$a[k[f>>2]&63](a);return}e=a+60|0;if((k[e>>2]|0)<=0)return;b=c+24|0;c=0;d=k[a+68>>2]|0;while(1){g=fb[k[(k[f>>2]|0)+8>>2]&3](a,1,k[d+28>>2]<<3,k[d+12>>2]<<3)|0;k[b+(c<<2)>>2]=g;c=c+1|0;if((c|0)>=(k[e>>2]|0))break;else d=d+84|0}return}function gg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,l=0;j=k[d>>2]|0;l=a+312|0;if((k[l>>2]|0)<=0)return;f=a+112|0;g=0;h=0;while(1){d=k[j+(h<<2)>>2]|0;b=k[f>>2]|0;e=d+b|0;if((b|0)>0){a=k[c+(g<<2)>>2]|0;b=d;while(1){d=i[a>>0]|0;i[b>>0]=d;i[b+1>>0]=d;b=b+2|0;if(b>>>0>=e>>>0)break;else a=a+1|0}b=k[f>>2]|0}vh(j,h,j,h|1,1,b);h=h+2|0;if((h|0)>=(k[l>>2]|0))break;else g=g+1|0}return}function hg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=r;r=r+256|0;g=h;do if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;eh(g|0,b|0,(e>>>0>256?256:e)|0)|0;b=k[a>>2]|0;f=(b&32|0)==0;if(e>>>0>255){d=c-d|0;do{if(f){sf(g,256,a)|0;b=k[a>>2]|0}e=e+-256|0;f=(b&32|0)==0}while(e>>>0>255);if(f)e=d&255;else break}else if(!f)break;sf(g,e,a)|0}while(0);r=h;return}function ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;j=r;r=r+16|0;h=j;g=b&255;i[h>>0]=g;d=a+16|0;e=k[d>>2]|0;if(!e)if(!(kh(a)|0)){e=k[d>>2]|0;f=4}else c=-1;else f=4;do if((f|0)==4){d=a+20|0;f=k[d>>2]|0;if(f>>>0<e>>>0?(c=b&255,(c|0)!=(i[a+75>>0]|0)):0){k[d>>2]=f+1;i[f>>0]=g;break}if((Ya[k[a+36>>2]&15](a,h,1)|0)==1)c=l[h>>0]|0;else c=-1}while(0);r=j;return c|0}function jg(a){a=a|0;var b=0,c=0,d=0,e=0;e=a+416|0;b=k[e>>2]|0;do if(!b)if(!(pe(a)|0)){a=0;return a|0}else{b=k[e>>2]|0;break}while(0);c=a+440|0;d=k[(k[c>>2]|0)+20>>2]|0;if((b|0)!=(d+208|0)){if(!(gb[k[(k[a+24>>2]|0)+20>>2]&63](a,d)|0)){a=0;return a|0}}else{b=k[a>>2]|0;k[b+20>>2]=98;k[b+24>>2]=d;ab[k[b+4>>2]&31](a,3);k[e>>2]=0}a=(k[c>>2]|0)+20|0;k[a>>2]=(k[a>>2]|0)+1&7;a=1;return a|0}function kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=i[a>>0]|0;a:do if(d<<24>>24){f=b;e=a;a=d<<24>>24;b=0;while(1){e=e+1|0;d=i[f>>0]|0;if(!(d<<24>>24)){b=0;a=9;break}if(Jj(a)|0)a=kj(a)|0;if((a|0)!=(d<<24>>24|0)){b=0;a=9;break}b=b+1|0;a=i[e>>0]|0;if(!(a<<24>>24))break a;else{f=f+1|0;a=a<<24>>24}}if((a|0)==9)return b|0}else b=0;while(0);c=(b|0)>=(c|0)&1;return c|0}function lg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,m=0;g=k[(k[a+460>>2]|0)+24>>2]|0;c=k[a+112>>2]|0;if((d|0)<1|(c|0)==0)return;else f=0;do{a=c;e=k[b+(f<<2)>>2]|0;while(1){h=(k[g+((l[e>>0]|0)>>>3<<2)>>2]|0)+((l[e+1>>0]|0)>>>2<<6)+((l[e+2>>0]|0)>>>3<<1)|0;m=j[h>>1]|0;i=m+1<<16>>16;j[h>>1]=i<<16>>16==0?m:i;a=a+-1|0;if(!a)break;else e=e+3|0}f=f+1|0}while((f|0)!=(d|0));return}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=0;while(1){e=(k[a+(d<<2)>>2]|0)+b|0;f=e+1|0;k[c>>2]=(l[e>>0]|0)+-128;e=f+1|0;k[c+4>>2]=(l[f>>0]|0)+-128;f=e+1|0;k[c+8>>2]=(l[e>>0]|0)+-128;e=f+1|0;k[c+12>>2]=(l[f>>0]|0)+-128;f=e+1|0;k[c+16>>2]=(l[e>>0]|0)+-128;e=f+1|0;k[c+20>>2]=(l[f>>0]|0)+-128;k[c+24>>2]=(l[e>>0]|0)+-128;k[c+28>>2]=(l[e+1>>0]|0)+-128;d=d+1|0;if((d|0)==8)break;else c=c+32|0}return}function ng(a){a=a|0;var b=0,c=0;b=k[a+352>>2]|0;a=Ya[k[k[a+4>>2]>>2]&15](a,1,8192)|0;k[b+8>>2]=a;b=0;do{k[a+(b<<2)>>2]=b*19595;k[a+(b+256<<2)>>2]=b*38470;k[a+(b+512<<2)>>2]=(b*7471|0)+32768;c=ha(b,-11059)|0;k[a+(b+768<<2)>>2]=c;c=ha(b,-21709)|0;k[a+(b+1024<<2)>>2]=c;k[a+(b+1280<<2)>>2]=(b<<15)+8421375;c=ha(b,-27439)|0;k[a+(b+1536<<2)>>2]=c;c=ha(b,-5329)|0;k[a+(b+1792<<2)>>2]=c;b=b+1|0}while((b|0)!=256);return}function og(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=k[a+364>>2]|0;d=a+200|0;if(k[d>>2]|0){f=e+68|0;c=k[f>>2]|0;if(!c){g=e+72|0;Gd(a,k[g>>2]|0);c=k[d>>2]|0;k[f>>2]=c;k[g>>2]=(k[g>>2]|0)+1&7}k[f>>2]=c+-1}c=e+204|0;d=k[a+328>>2]|0;e=a+272|0;if((k[e>>2]|0)>0)f=0;else return 1;do{Pb(a,c,(j[k[b+(f<<2)>>2]>>1]|0)>>>d&1);f=f+1|0}while((f|0)<(k[e>>2]|0));return 1}function pg(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,l=0,m=0;h=r;r=r+16|0;i=h;m=k[a+432>>2]|0;j=g-(k[f>>2]|0)|0;l=k[m+16>>2]|0;k[i>>2]=0;g=m+12|0;Za[k[(k[a+452>>2]|0)+4>>2]&15](a,b,c,d,k[g>>2]|0,i,j>>>0>l>>>0?l:j);ib[k[(k[a+460>>2]|0)+4>>2]&63](a,k[g>>2]|0,e+(k[f>>2]<<2)|0,k[i>>2]|0);k[f>>2]=(k[f>>2]|0)+(k[i>>2]|0);r=h;return}function qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;if((k[b+76>>2]|0)>=0?(Tj(b)|0)!=0:0){if((i[b+75>>0]|0)!=(a|0)?(d=b+20|0,e=k[d>>2]|0,e>>>0<(k[b+16>>2]|0)>>>0):0){k[d>>2]=e+1;i[e>>0]=a;c=a&255}else c=ig(b,a)|0;Uj(b)}else g=3;do if((g|0)==3){if((i[b+75>>0]|0)!=(a|0)?(f=b+20|0,c=k[f>>2]|0,c>>>0<(k[b+16>>2]|0)>>>0):0){k[f>>2]=c+1;i[c>>0]=a;c=a&255;break}c=ig(b,a)|0}while(0);return c|0}function rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[b+40>>2]|0;c=b+28|0;d=b+36|0;f=pf(k[c>>2]|0,1,k[d>>2]|0,k[b+12>>2]|0)|0;if((f|0)!=(k[d>>2]|0)){f=k[a>>2]|0;k[f+20>>2]=43;$a[k[f>>2]&63](a)}a=k[a+28>>2]|0;if(!a)return 1;d=k[c>>2]|0;c=a;a=k[k[b+16>>2]>>2]|0;while(1){i[a>>0]=i[e+((l[d>>0]|0)<<8|(l[d+1>>0]|0))>>0]|0;c=c+-1|0;if(!c)break;else{d=d+2|0;a=a+1|0}}return 1}function sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;do if((a|0)!=-1){if((k[b+76>>2]|0)>-1)e=Tj(b)|0;else e=0;if(!((k[b+8>>2]|0)==0?(Tg(b)|0)!=0:0))f=6;if((f|0)==6?(c=b+4|0,d=k[c>>2]|0,d>>>0>((k[b+44>>2]|0)+-8|0)>>>0):0){f=d+-1|0;k[c>>2]=f;i[f>>0]=a;k[b>>2]=k[b>>2]&-17;if(!e)break;Uj(b);break}if(e){Uj(b);a=-1}else a=-1}else a=-1;while(0);return a|0}function tg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=r;r=r+16|0;h=e|0;g=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;j=d>>31|((d|0)<0?-1:0)<<1;i=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=pi(g^a|0,f^b|0,g|0,f|0)|0;b=L;Gc(a,b,pi(j^c|0,i^d|0,j|0,i|0)|0,L,h)|0;d=pi(k[h>>2]^g|0,k[h+4>>2]^f|0,g|0,f|0)|0;c=L;r=e;return (L=c,d)|0}function ug(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=k[d>>2]|0;j=a+312|0;b=k[j>>2]|0;if((b|0)<=0)return;g=a+112|0;f=0;do{d=k[h+(f<<2)>>2]|0;a=k[g>>2]|0;e=d+a|0;if((a|0)>0){a=k[c+(f<<2)>>2]|0;b=d;while(1){d=i[a>>0]|0;i[b>>0]=d;i[b+1>>0]=d;b=b+2|0;if(b>>>0>=e>>>0)break;else a=a+1|0}b=k[j>>2]|0}f=f+1|0}while((f|0)<(b|0));return}function vg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=k[a+424>>2]|0;h=g+48|0;do if(!(k[h>>2]|0)){e=g+8|0;if(!(gb[k[(k[a+428>>2]|0)+12>>2]&63](a,e)|0))return;else{k[h>>2]=1;f=e;break}}else f=g+8|0;while(0);i=k[a+316>>2]|0;e=g+52|0;Za[k[(k[a+432>>2]|0)+4>>2]&15](a,f,e,i,b,c,d);if((k[e>>2]|0)>>>0<i>>>0)return;k[h>>2]=0;k[e>>2]=0;return}function wg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[b+40>>2]|0;c=b+28|0;d=b+36|0;f=pf(k[c>>2]|0,1,k[d>>2]|0,k[b+12>>2]|0)|0;if((f|0)!=(k[d>>2]|0)){f=k[a>>2]|0;k[f+20>>2]=43;$a[k[f>>2]&63](a)}a=k[a+28>>2]|0;if(!a)return 1;d=k[c>>2]|0;c=a;a=k[k[b+16>>2]>>2]|0;while(1){i[a>>0]=i[e+(l[d>>0]|0)>>0]|0;c=c+-1|0;if(!c)break;else{d=d+1|0;a=a+1|0}}return 1}function xg(a){a=a|0;var b=0,c=0;b=(k[a+16>>2]|0)==0;c=b?a+88|0:a+180|0;b=b?a+104|0:a+196|0;Af(a,c,93007,93024);Af(a,b,93036,93053);Af(a,c+4|0,93215,93232);Af(a,b+4|0,93244,93261);b=Ya[k[k[a+4>>2]>>2]&15](a,1,232)|0;k[a+444>>2]=b;k[b>>2]=56;k[b+4>>2]=47;k[b+56>>2]=0;k[b+40>>2]=0;k[b+60>>2]=0;k[b+44>>2]=0;k[b+64>>2]=0;k[b+48>>2]=0;k[b+68>>2]=0;k[b+52>>2]=0;return}function yg(a){a=a|0;var b=0,c=0,d=0,e=0;while(1){b=a+1|0;if(!(xj(i[a>>0]|0)|0))break;else a=b}c=i[a>>0]|0;switch(c<<24>>24|0){case 45:{d=1;e=5;break}case 43:{d=0;e=5;break}default:d=0}if((e|0)==5){a=b;c=i[b>>0]|0}b=(c<<24>>24)+-48|0;if(b>>>0<10){c=a;a=0;do{c=c+1|0;a=(a*10|0)-b|0;b=(i[c>>0]|0)+-48|0}while(b>>>0<10)}else a=0;return (d|0?a:0-a|0)|0}function zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;h=k[b+32>>2]|0;a=k[a+28>>2]|0;if(!a)return 1;f=b+44|0;g=b+48|0;d=h+4|0;e=h+8|0;c=k[k[b+16>>2]>>2]|0;while(1){$a[k[f>>2]&63](b);j=l[g>>0]|0;i[c>>0]=i[(k[h>>2]|0)+j>>0]|0;i[c+1>>0]=i[(k[d>>2]|0)+j>>0]|0;i[c+2>>0]=i[(k[e>>2]|0)+j>>0]|0;a=a+-1|0;if(!a)break;else c=c+3|0}return 1}function Ag(a,b){a=+a;b=b|0;var c=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;c=b+-1023|0;if((c|0)>1023){c=b+-2046|0;c=(c|0)>1023?1023:c;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;c=b+1022|0;if((c|0)<-1022){c=b+2044|0;c=(c|0)<-1022?-1022:c;a=a*2.2250738585072014e-308}}else c=b;c=mi(c+1023|0,0,52)|0;b=L;k[t>>2]=c;k[t+4>>2]=b;return +(a*+p[t>>3])}function Bg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=k[a+20>>2]|0;if(!((k[a+224>>2]|0)==0&(e+-101|0)>>>0<3)){f=k[a>>2]|0;k[f+20>>2]=20;k[f+24>>2]=e;$a[k[f>>2]&63](a)}e=a+348|0;db[k[(k[e>>2]|0)+20>>2]&15](a,b,d);e=k[(k[e>>2]|0)+24>>2]|0;if(!d)return;while(1){d=d+-1|0;ab[e&31](a,l[c>>0]|0);if(!d)break;else c=c+1|0}return}function Cg(a){a=a|0;var b=0,c=0,d=0;d=a;a:do if(!(d&3))c=4;else{b=a;a=d;while(1){if(!(i[b>>0]|0))break a;b=b+1|0;a=b;if(!(a&3)){a=b;c=4;break}}}while(0);if((c|0)==4){while(1){b=k[a>>2]|0;if(!((b&-2139062144^-2139062144)&b+-16843009))a=a+4|0;else break}if((b&255)<<24>>24)do a=a+1|0;while((i[a>>0]|0)!=0)}return a-d|0}function Dg(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[t>>3]=a;c=k[t>>2]|0;d=k[t+4>>2]|0;e=ni(c|0,d|0,52)|0;e=e&2047;switch(e|0){case 0:{if(a!=0.0){a=+Dg(a*18446744073709551616.0,b);c=(k[b>>2]|0)+-64|0}else c=0;k[b>>2]=c;break}case 2047:break;default:{k[b>>2]=e+-1022;k[t>>2]=c;k[t+4>>2]=d&-2146435073|1071644672;a=+p[t>>3]}}return +a}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;h=0;do{d=k[c+(h<<2)>>2]|0;e=k[b+(h<<2)>>2]|0;f=k[b+(h+64<<2)>>2]|0;g=k[b+(h+192<<2)>>2]|0;if((d|0)<0){d=Uh(f-d|0,0,e|0,0)|0;d=ni(d|0,L|0,g+32|0)|0;d=0-d|0}else{d=Uh(f+d|0,0,e|0,0)|0;d=ni(d|0,L|0,g+32|0)|0}j[a+(h<<1)>>1]=d;h=h+1|0}while((h|0)!=64);return}function Fg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a=k[a+28>>2]|0;if(!a)return 1;d=b+44|0;e=b+48|0;c=k[k[b+16>>2]>>2]|0;while(1){$a[k[d>>2]&63](b);f=j[e>>1]|0;g=f&65535;f=(f&65535)>>>8&65535;i[c+2>>0]=i[21949+(g&31)>>0]|0;i[c+1>>0]=i[21949+((f<<8|g&224)>>>5&31)>>0]|0;i[c>>0]=i[21949+(f>>>2&31)>>0]|0;a=a+-1|0;if(!a)break;else c=c+3|0}return 1}function Gg(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+40|0;c=(k[d>>2]|0)+-1|0;k[d>>2]=c;c=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[b+36>>2]|0,c,1,0)|0;a=k[a+28>>2]|0;if(!a)return 1;d=k[c>>2]|0;c=k[k[b+16>>2]>>2]|0;while(1){i[c+2>>0]=i[d>>0]|0;i[c+1>>0]=i[d+1>>0]|0;i[c>>0]=i[d+2>>0]|0;a=a+-1|0;if(!a)break;else{d=d+4|0;c=c+3|0}}return 1}function Hg(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+40|0;c=(k[d>>2]|0)+-1|0;k[d>>2]=c;c=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[b+36>>2]|0,c,1,0)|0;a=k[a+28>>2]|0;if(!a)return 1;d=k[c>>2]|0;c=k[k[b+16>>2]>>2]|0;while(1){i[c+2>>0]=i[d>>0]|0;i[c+1>>0]=i[d+1>>0]|0;i[c>>0]=i[d+2>>0]|0;a=a+-1|0;if(!a)break;else{d=d+3|0;c=c+3|0}}return 1}function Ig(a){a=a|0;var b=0,c=0;b=a+4|0;c=Ya[k[k[b>>2]>>2]&15](a,1,64)|0;k[a+444>>2]=c;k[c>>2]=27;c=c+44|0;k[c>>2]=0;k[c+4>>2]=0;k[c+8>>2]=0;k[c+12>>2]=0;c=a+36|0;b=Ya[k[k[b>>2]>>2]&15](a,1,k[c>>2]<<8)|0;k[a+160>>2]=b;if((k[c>>2]|0)>0)a=0;else return;do{eh(b+(a<<8)|0,-1,256)|0;a=a+1|0}while((a|0)<(k[c>>2]|0));return}function Jg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;d=k[a+24>>2]|0;e=d+36|0;f=k[e>>2]<<1;g=kb(f)|0;if(!g){c=k[a>>2]|0;k[c+20>>2]=54;k[c+24>>2]=10;$a[k[c>>2]&63](a)}a=d+32|0;_g(g|0,k[a>>2]|0,k[e>>2]|0)|0;b=d+28|0;c=k[b>>2]|0;if(c|0)Ab(c);k[b>>2]=g;c=k[e>>2]|0;k[d>>2]=g+c;k[d+4>>2]=c;k[a>>2]=g;k[e>>2]=f;return 1}function Kg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,l=0;l=k[a+28>>2]|0;j=k[a+36>>2]|0;if((e|0)<1|(l|0)==0)return;while(1){a=e;e=e+-1|0;f=k[(k[c>>2]|0)+(d<<2)>>2]|0;g=0;h=k[b>>2]|0;while(1){i[f+g>>0]=i[h>>0]|0;g=g+1|0;if((g|0)==(l|0))break;else h=h+j|0}if((a|0)<=1)break;else{d=d+1|0;b=b+4|0}}return}function Lg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=r;r=r+32|0;d=e+16|0;c=e;if(af(95845,i[b>>0]|0,4)|0){f=rh(b)|0|32768;k[c>>2]=a;k[c+4>>2]=f;k[c+8>>2]=438;c=Fi(Qa(5,c|0)|0)|0;if((c|0)>=0){a=se(c,b)|0;if(!a){k[d>>2]=c;Ba(6,d|0)|0;a=0}}else a=0}else{a=Ai()|0;k[a>>2]=22;a=0}r=e;return a|0}function Mg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;e=a+4|0;b=Ya[k[k[e>>2]>>2]&15](a,1,84)|0;k[a+448>>2]=b;k[b>>2]=55;f=a+36|0;if((k[f>>2]|0)<=0)return;b=b+44|0;c=0;d=k[a+216>>2]|0;while(1){g=Ya[k[k[e>>2]>>2]&15](a,1,256)|0;k[d+80>>2]=g;eh(g|0,0,256)|0;k[b+(c<<2)>>2]=-1;c=c+1|0;if((c|0)>=(k[f>>2]|0))break;else d=d+84|0}return}function Ng(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=a+20|0;f=a+28|0;if((k[b>>2]|0)>>>0>(k[f>>2]|0)>>>0?(Ya[k[a+36>>2]&15](a,0,0)|0,(k[b>>2]|0)==0):0)b=-1;else{g=a+4|0;c=k[g>>2]|0;d=a+8|0;e=k[d>>2]|0;if(c>>>0<e>>>0)Ya[k[a+40>>2]&15](a,c-e|0,1)|0;k[a+16>>2]=0;k[f>>2]=0;k[b>>2]=0;k[d>>2]=0;k[g>>2]=0;b=0}return b|0}function Og(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=k[a+356>>2]|0;g=a+60|0;if((k[g>>2]|0)<=0)return;h=0;i=k[a+68>>2]|0;while(1){j=(k[d+(h<<2)>>2]|0)+((ha(k[i+12>>2]|0,e)|0)<<2)|0;ib[k[f+12+(h<<2)>>2]&63](a,i,(k[b+(h<<2)>>2]|0)+(c<<2)|0,j);h=h+1|0;if((h|0)>=(k[g>>2]|0))break;else i=i+84|0}return}function Pg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=pi(j^a|0,i^b|0,j|0,i|0)|0;g=L;a=f^j;b=e^i;return pi((Gc(h,g,pi(f^c|0,e^d|0,f|0,e|0)|0,L,0)|0)^a|0,L^b|0,a|0,b|0)|0}function Qg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a+236|0;f=a+28|0;vh(c,0,d,0,k[e>>2]|0,k[f>>2]|0);e=k[e>>2]|0;f=k[f>>2]|0;a=k[b+28>>2]<<3;if(!((e|0)>0&(a-f|0)>0))return;c=f+-1-a|0;a=2-f+a+((c|0)>-2?c:-2)|0;c=0;do{b=(k[d+(c<<2)>>2]|0)+f|0;eh(b|0,i[b+-1>>0]|0,a|0)|0;c=c+1|0}while((c|0)!=(e|0));return}function Rg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,f=0,g=0,h=0;h=r;r=r+112|0;g=h;e=g;f=e+112|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=g+4|0;k[e>>2]=a;f=g+8|0;k[f>>2]=-1;k[g+44>>2]=a;k[g+76>>2]=-1;Kh(g,0);d=+lb(g,c,1);c=(k[e>>2]|0)-(k[f>>2]|0)+(k[g+108>>2]|0)|0;if(b|0)k[b>>2]=c|0?a+c|0:a;r=h;return +d}function Sg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b>>>0>0|(b|0)==0&a>>>0>4294967295)while(1){d=Qh(a|0,b|0,10,0)|0;c=c+-1|0;i[c>>0]=d|48;d=Ti(a|0,b|0,10,0)|0;if(b>>>0>9|(b|0)==9&a>>>0>4294967295){a=d;b=L}else{a=d;break}}if(a)while(1){c=c+-1|0;i[c>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return c|0}function Tg(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=a+20|0;c=a+44|0;if((k[b>>2]|0)>>>0>(k[c>>2]|0)>>>0)Ya[k[a+36>>2]&15](a,0,0)|0;k[a+16>>2]=0;k[a+28>>2]=0;k[b>>2]=0;b=k[a>>2]|0;if(b&20)if(!(b&4))b=-1;else{k[a>>2]=b|32;b=-1}else{b=k[c>>2]|0;k[a+8>>2]=b;k[a+4>>2]=b;b=0}return b|0}function Ug(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){a=kb(b)|0;return a|0}if(b>>>0>4294967231){a=Ai()|0;k[a>>2]=12;a=0;return a|0}c=ic(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c|0){a=c+8|0;return a|0}c=kb(b)|0;if(!c){a=0;return a|0}d=k[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;_g(c|0,a|0,(d>>>0<b>>>0?d:b)|0)|0;Ab(a);a=c;return a|0}function Vg(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+20>>2]|0;if((c&-2|0)!=200){d=k[a>>2]|0;k[d+20>>2]=20;k[d+24>>2]=c;$a[k[d>>2]&63](a)}c=ad(a)|0;switch(c|0){case 1:{d=1;return d|0}case 2:{if(b){d=k[a>>2]|0;k[d+20>>2]=51;$a[k[d>>2]&63](a)}Lh(a);d=2;return d|0}default:{d=c;return d|0}}return 0}function Wg(a){a=a|0;var b=0,c=0,d=0;if((k[a+76>>2]|0)>=0?(Tj(a)|0)!=0:0){b=a+4|0;c=k[b>>2]|0;if(c>>>0<(k[a+8>>2]|0)>>>0){k[b>>2]=c+1;b=l[c>>0]|0}else b=Dh(a)|0}else d=3;do if((d|0)==3){b=a+4|0;c=k[b>>2]|0;if(c>>>0<(k[a+8>>2]|0)>>>0){k[b>>2]=c+1;b=l[c>>0]|0;break}else{b=Dh(a)|0;break}}while(0);return b|0}function Xg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=k[a+4>>2]|0;if((b|0)!=1){h=k[a>>2]|0;k[h+20>>2]=14;k[h+24>>2]=b;$a[k[h>>2]&63](a)}h=re(a,b,128)|0;k[h>>2]=0;k[h+4>>2]=e;k[h+8>>2]=d;k[h+12>>2]=f;k[h+32>>2]=c;k[h+40>>2]=0;d=g+68|0;k[h+44>>2]=k[d>>2];k[d>>2]=h;return h|0}function Yg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=k[a+4>>2]|0;if((b|0)!=1){h=k[a>>2]|0;k[h+20>>2]=14;k[h+24>>2]=b;$a[k[h>>2]&63](a)}h=re(a,b,128)|0;k[h>>2]=0;k[h+4>>2]=e;k[h+8>>2]=d;k[h+12>>2]=f;k[h+32>>2]=c;k[h+40>>2]=0;c=g+72|0;k[h+44>>2]=k[c>>2];k[c>>2]=h;return h|0}function Zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+24|0;c=k[d>>2]|0;if(!c){e=a+4|0;c=Ya[k[k[e>>2]>>2]&15](a,0,40)|0;k[d>>2]=c;a=Ya[k[k[e>>2]>>2]&15](a,0,4096)|0;k[c+32>>2]=a;c=k[d>>2]|0}k[c+8>>2]=18;k[c+12>>2]=4;k[c+16>>2]=13;k[c+20>>2]=23;k[c+24>>2]=19;k[c+28>>2]=b;k[c+4>>2]=0;k[c>>2]=0;return}function _g(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)>=4096)return Ha(a|0,b|0,c|0)|0;d=a|0;if((a&3)==(b&3)){while(a&3){if(!c)return d|0;i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}while((c|0)>=4){k[a>>2]=k[b>>2];a=a+4|0;b=b+4|0;c=c-4|0}}while((c|0)>0){i[a>>0]=i[b>>0]|0;a=a+1|0;b=b+1|0;c=c-1|0}return d|0}function $g(a){a=a|0;var b=0,c=0;b=0;while(1){if((l[93423+b>>0]|0)==(a|0)){c=2;break}b=b+1|0;if((b|0)==87){b=87;a=93511;c=5;break}}if((c|0)==2)if(!b)a=93511;else{a=93511;c=5}if((c|0)==5)while(1){c=a;while(1){a=c+1|0;if(!(i[c>>0]|0))break;else c=a}b=b+-1|0;if(!b)break;else c=5}return a|0}function ah(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,108)|0;k[a+364>>2]=b;k[b>>2]=24;k[b+60>>2]=0;k[b+44>>2]=0;k[b+92>>2]=0;k[b+76>>2]=0;k[b+64>>2]=0;k[b+48>>2]=0;k[b+96>>2]=0;k[b+80>>2]=0;k[b+68>>2]=0;k[b+52>>2]=0;k[b+100>>2]=0;k[b+84>>2]=0;k[b+72>>2]=0;k[b+56>>2]=0;k[b+104>>2]=0;k[b+88>>2]=0;return}function bh(a){a=a|0;var b=0,c=0,d=0;c=k[a+24>>2]|0;d=4096-(k[c+4>>2]|0)|0;if(d){b=c+20|0;if((th(k[c+24>>2]|0,1,d,k[b>>2]|0)|0)!=(d|0)){d=k[a>>2]|0;k[d+20>>2]=37;$a[k[d>>2]&63](a)}}else b=c+20|0;Uf(k[b>>2]|0)|0;if(!(hi(k[b>>2]|0)|0))return;d=k[a>>2]|0;k[d+20>>2]=37;$a[k[d>>2]&63](a);return}function ch(a){a=a|0;var b=0,c=0,d=0;d=(k[a>>2]&1|0)!=0;if(!d){Oa(96180);c=k[a+52>>2]|0;b=a+56|0;if(c|0)k[c+56>>2]=k[b>>2];b=k[b>>2]|0;if(b|0)k[b+52>>2]=c;if((k[24044]|0)==(a|0))k[24044]=b;Ma(96180)}b=Uf(a)|0;b=cb[k[a+12>>2]&15](a)|0|b;c=k[a+92>>2]|0;if(c|0)Ab(c);if(!d)Ab(a);return b|0}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;a=k[a+28>>2]|0;if(!a)return 1;d=b+44|0;e=b+48|0;f=e+2|0;g=e+1|0;c=k[k[b+16>>2]>>2]|0;while(1){$a[k[d>>2]&63](b);i[c>>0]=i[f>>0]|0;i[c+1>>0]=i[g>>0]|0;i[c+2>>0]=i[e>>0]|0;a=a+-1|0;if(!a)break;else c=c+3|0}return 1}function eh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+c|0;if((c|0)>=20){b=b&255;f=a&3;g=b|b<<8|b<<16|b<<24;e=d&~3;if(f){f=a+4-f|0;while((a|0)<(f|0)){i[a>>0]=b;a=a+1|0}}while((a|0)<(e|0)){k[a>>2]=g;a=a+4|0}}while((a|0)<(d|0)){i[a>>0]=b;a=a+1|0}return a-c|0}function fh(a){a=a|0;var b=0,c=0;k[a+148>>2]=0;c=k[a+428>>2]|0;do if((k[a+328>>2]|0)<=1){b=k[a+332>>2]|0;if((k[a+320>>2]|0)==1){k[c+28>>2]=k[b+72>>2];break}else{k[c+28>>2]=k[b+12>>2];break}}else k[c+28>>2]=1;while(0);k[c+20>>2]=0;k[c+24>>2]=0;return}function gh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=k[a+24>>2]|0;if((b|0)<=0)return;f=e+4|0;c=k[f>>2]|0;if((c|0)<(b|0)){d=e+12|0;do{b=b-c|0;cb[k[d>>2]&15](a)|0;c=k[f>>2]|0}while((b|0)>(c|0))}k[e>>2]=(k[e>>2]|0)+b;k[f>>2]=c-b;return}function hh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=r;r=r+32|0;f=e;d=e+20|0;k[f>>2]=k[a+60>>2];k[f+4>>2]=0;k[f+8>>2]=b;k[f+12>>2]=d;k[f+16>>2]=c;if((Fi(Sa(140,f|0)|0)|0)<0){k[d>>2]=-1;a=-1}else a=k[d>>2]|0;r=e;return a|0}function ih(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a>>2]|0;if((b|0)>=0){if((k[c+104>>2]|0)<(b|0))return;$a[k[c+8>>2]&63](a);return}d=c+108|0;b=k[d>>2]|0;if(!((b|0)!=0?(k[c+104>>2]|0)<=2:0)){$a[k[c+8>>2]&63](a);b=k[d>>2]|0}k[d>>2]=b+1;return}function jh(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+24>>2]|0;d=k[c>>2]|0;k[c>>2]=d+1;i[d>>0]=b;d=c+4|0;b=(k[d>>2]|0)+-1|0;k[d>>2]=b;if(b|0)return;if(cb[k[c+12>>2]&15](a)|0)return;d=k[a>>2]|0;k[d+20>>2]=24;$a[k[d>>2]&63](a);return}function kh(a){a=a|0;var b=0,c=0;b=a+74|0;c=i[b>>0]|0;i[b>>0]=c+255|c;b=k[a>>2]|0;if(!(b&8)){k[a+8>>2]=0;k[a+4>>2]=0;b=k[a+44>>2]|0;k[a+28>>2]=b;k[a+20>>2]=b;k[a+16>>2]=b+(k[a+48>>2]|0);b=0}else{k[a>>2]=b|32;b=-1}return b|0}function lh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=r;r=r+80|0;d=e;k[a+36>>2]=1;if((k[a>>2]&64|0)==0?(k[d>>2]=k[a+60>>2],k[d+4>>2]=21505,k[d+8>>2]=e+12,La(54,d|0)|0):0)i[a+75>>0]=-1;d=qe(a,b,c)|0;r=e;return d|0}function mh(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0];i[t+4>>0]=i[a+4>>0];i[t+5>>0]=i[a+5>>0];i[t+6>>0]=i[a+6>>0];i[t+7>>0]=i[a+7>>0]}function nh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;f=r;r=r+112|0;d=f;e=d;g=e+112|0;do{k[e>>2]=0;e=e+4|0}while((e|0)<(g|0));k[d+32>>2]=8;k[d+44>>2]=a;k[d+76>>2]=-1;k[d+84>>2]=a;g=qb(d,b,c)|0;r=f;return g|0}function oh(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,108)|0;k[a+364>>2]=b;k[b>>2]=11;k[b+76>>2]=0;k[b+92>>2]=0;k[b+80>>2]=0;k[b+96>>2]=0;k[b+84>>2]=0;k[b+100>>2]=0;k[b+88>>2]=0;k[b+104>>2]=0;k[b+64>>2]=0;return}function ph(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a=k[a+28>>2]|0;if(!a)return 1;d=b+44|0;e=b+48|0;c=k[k[b+16>>2]>>2]|0;while(1){$a[k[d>>2]&63](b);i[c>>0]=i[e>>0]|0;a=a+-1|0;if(!a)break;else c=c+1|0}return 1}function qh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+84|0;f=k[d>>2]|0;g=c+256|0;e=af(f,0,g)|0;e=(e|0)==0?g:e-f|0;c=e>>>0<c>>>0?e:c;_g(b|0,f|0,c|0)|0;k[a+4>>2]=f+c;b=f+e|0;k[a+8>>2]=b;k[d>>2]=b;return c|0}function rh(a){a=a|0;var b=0,c=0,d=0;c=(Ki(a,43)|0)==0;b=i[a>>0]|0;c=c?b<<24>>24!=114&1:2;d=(Ki(a,120)|0)==0;c=d?c:c|128;a=(Ki(a,101)|0)==0;a=a?c:c|524288;a=b<<24>>24==114?a:a|64;a=b<<24>>24==119?a|512:a;return (b<<24>>24==97?a|1024:a)|0}function sh(a,b){a=a|0;b=b|0;var c=0,d=0;c=k[a+336>>2]|0;if(k[a+176>>2]|0)return;if(b|0){d=k[a>>2]|0;k[d+20>>2]=4;$a[k[d>>2]&63](a)}k[c+8>>2]=0;k[c+12>>2]=0;k[c+16>>2]=0;k[c+20>>2]=b;k[c+4>>2]=1;return}function th(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=ha(c,b)|0;if((k[d+76>>2]|0)>-1){f=(Tj(d)|0)==0;a=sf(a,e,d)|0;if(!f)Uj(d)}else a=sf(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function uh(a){a=a|0;k[a>>2]=29;k[a+4>>2]=15;k[a+8>>2]=30;k[a+12>>2]=16;k[a+16>>2]=31;k[a+104>>2]=0;k[a+108>>2]=0;k[a+20>>2]=0;k[a+112>>2]=13604;k[a+116>>2]=129;k[a+120>>2]=0;k[a+124>>2]=0;k[a+128>>2]=0;return a|0}function vh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if((e|0)<=0)return;c=c+(d<<2)|0;d=a+(b<<2)|0;while(1){_g(k[c>>2]|0,k[d>>2]|0,f|0)|0;if((e|0)>1){c=c+4|0;d=d+4|0;e=e+-1|0}else break}return}function wh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=ha(e,f)|0;d=a>>>16;a=(c>>>16)+(ha(e,d)|0)|0;e=b>>>16;b=ha(e,f)|0;return (L=(a>>>16)+(ha(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function xh(a){a=a|0;var b=0,c=0,d=0;b=k[a+24>>2]|0;c=b+24|0;if((th(k[c>>2]|0,1,4096,k[b+20>>2]|0)|0)!=4096){d=k[a>>2]|0;k[d+20>>2]=37;$a[k[d>>2]&63](a)}k[b>>2]=k[c>>2];k[b+4>>2]=4096;return 1}function yh(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;ib[k[(k[a+452>>2]|0)+12>>2]&63](a,b,k[c>>2]|0,e+(k[f>>2]<<2)|0);k[f>>2]=(k[f>>2]|0)+1;k[c>>2]=(k[c>>2]|0)+1;return}function zh(a,b){a=a|0;b=b|0;var c=0;c=k[a+340>>2]|0;if(b|0){b=k[a>>2]|0;k[b+20>>2]=4;$a[k[b>>2]&63](a)}k[c+48>>2]=k[a+32>>2];k[c+52>>2]=0;k[c+56>>2]=0;k[c+60>>2]=k[a+236>>2]<<1;return}function Ah(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,32)|0;k[a+348>>2]=b;k[b>>2]=3;k[b+4>>2]=4;k[b+8>>2]=5;k[b+12>>2]=6;k[b+16>>2]=7;k[b+20>>2]=1;k[b+24>>2]=10;k[b+28>>2]=0;return}function Bh(a,b){a=+a;b=+b;var c=0;p[t>>3]=b;c=k[t+4>>2]|0;b=+W(+a);p[t>>3]=b;c=c&-2147483648|k[t+4>>2];k[t>>2]=k[t>>2];k[t+4>>2]=c;return +(+p[t>>3])}function Ch(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+24|0;c=k[d>>2]|0;if(!c){c=Ya[k[k[a+4>>2]>>2]&15](a,0,28)|0;k[d>>2]=c}k[c+8>>2]=14;k[c+12>>2]=2;k[c+16>>2]=15;k[c+20>>2]=b;return}function Dh(a){a=a|0;var b=0,c=0;c=r;r=r+16|0;b=c;if((k[a+8>>2]|0)==0?(Tg(a)|0)!=0:0)b=-1;else if((Ya[k[a+32>>2]&15](a,b,1)|0)==1)b=l[b>>0]|0;else b=-1;r=c;return b|0}function Eh(a){a=a|0;var b=0;b=k[a+436>>2]|0;k[b>>2]=5;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=1;$a[k[(k[a>>2]|0)+16>>2]&63](a);$a[k[k[a+440>>2]>>2]&63](a);k[a+160>>2]=0;return}function Fh(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,0,28)|0;k[a+436>>2]=b;k[b>>2]=5;k[b+4>>2]=20;k[b+8>>2]=21;k[b+12>>2]=22;k[b+16>>2]=0;k[b+20>>2]=0;k[b+24>>2]=1;return}function Gh(a){a=a|0;var b=0;b=i[v+(a&255)>>0]|0;if((b|0)<8)return b|0;b=i[v+(a>>8&255)>>0]|0;if((b|0)<8)return b+8|0;b=i[v+(a>>16&255)>>0]|0;if((b|0)<8)return b+16|0;return (i[v+(a>>>24)>>0]|0)+24|0}function Hh(a){a=a|0;var b=0,c=0,d=0,e=0;b=k[a+12>>2]|0;c=a+52|0;if((k[c>>2]|0)>0)d=0;else return;do{e=(Wg(b)|0)&255;i[a+48+d>>0]=e;d=d+1|0}while((d|0)<(k[c>>2]|0));return}function Ih(a,b){a=a|0;b=b|0;var c=0;c=b+40|0;a=hb[k[(k[a+4>>2]|0)+28>>2]&3](a,k[b+36>>2]|0,(k[a+32>>2]|0)+-1-(k[c>>2]|0)|0,1,0)|0;k[b+16>>2]=a;k[c>>2]=(k[c>>2]|0)+1;return 1}function Jh(a,b){a=a|0;b=b|0;var c=0;c=b+36|0;b=pf(k[b+28>>2]|0,1,k[c>>2]|0,k[b+12>>2]|0)|0;if((b|0)==(k[c>>2]|0))return 1;c=k[a>>2]|0;k[c+20>>2]=43;$a[k[c>>2]&63](a);return 1}function Kh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;k[a+104>>2]=b;c=k[a+8>>2]|0;d=k[a+4>>2]|0;e=c-d|0;k[a+108>>2]=e;if((b|0)!=0&(e|0)>(b|0))k[a+100>>2]=d+b;else k[a+100>>2]=c;return}function Lh(a){a=a|0;var b=0;b=k[a+4>>2]|0;if(!b)return;ab[k[b+36>>2]&31](a,1);b=a+20|0;if(!(k[a+16>>2]|0)){k[b>>2]=100;return}else{k[b>>2]=200;k[a+304>>2]=0;return}}function Mh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b=(k[a+324>>2]|0)+128+(((ha(j[c>>1]|0,k[k[b+80>>2]>>2]|0)|0)+4|0)>>>3&1023)|0;i[(k[d>>2]|0)+e>>0]=i[b>>0]|0;return}function Nh(a){a=a|0;var b=0,c=0,d=0;b=r;r=r+208|0;c=b;d=b+8|0;ab[k[(k[a>>2]|0)+12>>2]&31](a,d);a=k[3856]|0;k[c>>2]=d;ei(a,27197,c)|0;r=b;return}function Oh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=k[d>>2]|0;a=(k[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;_g(e|0,b|0,a|0)|0;k[d>>2]=(k[d>>2]|0)+a;return c|0}function Ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=0;do{j[a+(d<<1)>>1]=~~(+o[c+(d<<2)>>2]*+o[b+(d<<2)>>2]+16384.5)+49152;d=d+1|0}while((d|0)!=64);return}function Qh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=r;r=r+16|0;e=f|0;Gc(a,b,c,d,e)|0;r=f;return (L=k[e+4>>2]|0,k[e>>2]|0)|0}function Rh(a){a=a|0;var b=0;b=k[a+440>>2]|0;k[a+216>>2]=0;k[a+144>>2]=0;k[a+416>>2]=0;k[b+12>>2]=0;k[b+16>>2]=0;k[b+24>>2]=0;k[b+164>>2]=0;return}function Sh(a){a=a|0;var b=0;b=Wg(a)|0;a:do if((b|0)==35)while(1){b=Wg(a)|0;switch(b|0){case 10:case -1:break a;default:{}}}while(0);return b|0}function Th(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;eb[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function Uh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=wh(e,f)|0;a=L;return (L=(ha(b,f)|0)+(ha(d,e)|0)+a|a&0,c|0|0)|0}function Vh(a){a=a|0;var b=0;b=k[a+420>>2]|0;if(k[a+84>>2]|0)$a[k[(k[a+460>>2]|0)+8>>2]&63](a);a=b+12|0;k[a>>2]=(k[a>>2]|0)+1;return}function Wh(a){a=a|0;var b=0;k[(k[a+332>>2]|0)+12>>2]=0;b=a+348|0;$a[k[(k[b>>2]|0)+4>>2]&63](a);$a[k[(k[b>>2]|0)+8>>2]&63](a);return}function Xh(a){a=a|0;var b=0;b=k[a+24>>2]|0;a=Ya[k[k[a+4>>2]>>2]&15](a,1,4096)|0;k[b+24>>2]=a;k[b>>2]=a;k[b+4>>2]=4096;return}function Yh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Za[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(b|0)>0?+(b|0):1.0;d=d>100.0?100.0:d;he(a,~~(d<50.0?5.0e3/d:200.0-d*2.0),c);return}function _h(a){a=a|0;var b=0,c=0;b=r;r=r+16|0;c=b;k[c>>2]=k[a+60>>2];a=Fi(Ba(6,c|0)|0)|0;r=b;return a|0}function $h(a){a=a|0;i[t>>0]=i[a>>0];i[t+1>>0]=i[a+1>>0];i[t+2>>0]=i[a+2>>0];i[t+3>>0]=i[a+3>>0]}function ai(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return bb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function bi(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=(b|0)<0?-1:0;return b>>c-32|0}function ci(a){a=a|0;a=k[a+24>>2]|0;k[k[a+20>>2]>>2]=k[a+32>>2];k[k[a+24>>2]>>2]=(k[a+36>>2]|0)-(k[a+4>>2]|0);return}function di(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=fj(a,b,e)|0;r=d;return c|0}function ei(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=Oe(a,b,e)|0;r=d;return c|0}function fi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=r;r=r+16|0;e=d;k[e>>2]=c;c=nh(a,b,e)|0;r=d;return c|0}function gi(a){a=a|0;var b=0,c=0;b=a+4|0;c=k[b>>2]|0;if(c|0)$a[k[c+40>>2]&63](a);k[b>>2]=0;k[a+20>>2]=0;return}function hi(a){a=a|0;var b=0;if((k[a+76>>2]|0)>-1){b=(Tj(a)|0)==0;a=(k[a>>2]|0)>>>5&1}else a=(k[a>>2]|0)>>>5&1;return a|0}function ii(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,68)|0;k[b+28>>2]=a;k[b>>2]=7;k[b+8>>2]=8;return b|0}function ji(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,632)|0;k[b+28>>2]=a;k[b>>2]=3;k[b+8>>2]=4;return b|0}function ki(a){a=a|0;var b=0;if((k[a+76>>2]|0)>-1){b=(Tj(a)|0)==0;a=(k[a>>2]|0)>>>4&1}else a=(k[a>>2]|0)>>>4&1;return a|0}function li(a){a=a|0;var b=0;b=Ya[k[k[a+4>>2]>>2]&15](a,1,52)|0;k[b+28>>2]=a;k[b>>2]=5;k[b+8>>2]=6;return b|0}function mi(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}L=a<<c-32;return 0}function ni(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){L=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}L=0;return b>>>c-32|0}function oi(){}function pi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (L=d,a-c>>>0|0)|0}function qi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Za[k[(k[a+432>>2]|0)+4>>2]&15](a,0,0,0,b,c,d);return}function ri(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return hb[a&3](b|0,c|0,d|0,e|0,f|0)|0}function si(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vh(k[b>>2]|0,c,d,0,e,k[a+112>>2]|0);return}function ti(a){a=a|0;var b=0;Ee(a,1);Ee(a,0);b=a+4|0;sj(a,k[b>>2]|0,84);k[b>>2]=0;Uj(a);return}function ui(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;_a[a&63](b|0,c|0,d|0,e|0,f|0)}function vi(a,b,c){a=a|0;b=b|0;c=c|0;c=k[a>>2]|0;k[c+20>>2]=49;$a[k[c>>2]&63](a);return}function wi(a){a=a|0;var b=0;b=k[a+452>>2]|0;k[b+92>>2]=k[a+312>>2];k[b+96>>2]=k[a+116>>2];return}function xi(a){a=a|0;a=Ya[k[k[a+4>>2]>>2]&15](a,1,48)|0;k[a>>2]=1;k[a+8>>2]=2;return a|0}function yi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return fb[a&3](b|0,c|0,d|0,e|0)|0}function zi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (L=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function Ai(){var a=0;if(!(k[24038]|0))a=96196;else{a=(Ja()|0)+64|0;a=k[a>>2]|0}return a|0}function Bi(a){a=a|0;var b=0;b=k[a+452>>2]|0;k[b+36>>2]=0;k[b+44>>2]=k[a+116>>2];return}function Ci(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ib[a&63](b|0,c|0,d|0,e|0)}function Di(a){a=a|0;a=Ya[k[k[a+4>>2]>>2]&15](a,0,132)|0;k[a+128>>2]=0;return a|0}function Ei(a){a=a|0;a=Ya[k[k[a+4>>2]>>2]&15](a,0,280)|0;k[a+276>>2]=0;return a|0}function Fi(a){a=a|0;var b=0;if(a>>>0>4294963200){b=Ai()|0;k[b>>2]=0-a;a=-1}return a|0}function Gi(a){a=a|0;var b=0;b=k[a>>2]|0;k[b+20>>2]=46;$a[k[b>>2]&63](a);return}function Hi(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;ka(8)}function Ii(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ya[a&15](b|0,c|0,d|0)|0}function Ji(a){a=+a;a=!(a<=0.0)?a:1.0;a=a>100.0?100.0:a;return +(a<50.0?5.0e3/a:200.0-a*2.0)}function Ki(a,b){a=a|0;b=b|0;a=zf(a,b)|0;return ((i[a>>0]|0)==(b&255)<<24>>24?a:0)|0}function Li(a,b){a=a|0;b=b|0;b=b+32|0;of(b)|0;Gj(b);return}function Mi(a,b){a=a|0;b=b|0;return Lf(b+32|0,k[b+16>>2]|0,k[b+20>>2]|0)|0}function Ni(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;db[a&15](b|0,c|0,d|0)}function Oi(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;ka(1)}function Pi(a){a=a|0;var b=0;b=r;r=r+a|0;r=r+15&-16;return b|0}function Qi(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Wf(a,b,0)|0;return a|0}function Ri(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ka(5);return 0}function Si(a){a=a|0;$a[k[(k[a>>2]|0)+8>>2]&63](a);gi(a);Ta(1)}function Ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gc(a,b,c,d,0)|0}function Ui(a){a=a|0;if(!a)a=1;else a=(k[a>>2]|0)==0;return a&1|0}function Vi(a){a=a|0;a=k[a>>2]|0;k[a+108>>2]=0;k[a+20>>2]=0;return}function Wi(a,b,c){a=a|0;b=b|0;c=c|0;return gb[a&63](b|0,c|0)|0}function Xi(a,b,c){a=a|0;b=b|0;c=c|0;_g(b|0,a|0,c<<7|0)|0;return}function Yi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[d>>2]=c;return}function Zi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function _i(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function $i(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;k[d>>2]=0;return}function aj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(11);return 0}function bj(a,b){a=a|0;b=b|0;a=a+-1+b|0;return a-((a|0)%(b|0)|0)|0}function cj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function dj(a,b){a=a|0;b=b|0;if(!w){w=a;x=b}}function ej(a,b,c){a=a|0;b=b|0;c=c|0;ab[a&31](b|0,c|0)}function fj(a,b,c){a=a|0;b=b|0;c=c|0;return Gf(a,2147483647,b,c)|0}function gj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return c|0}function ij(a,b,c){a=a|0;b=b|0;c=c|0;return qh(a,b,c)|0}function jj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ka(2)}function kj(a){a=a|0;var b=0;b=(Jj(a)|0)==0;return (b?a:a|32)|0}function lj(a){a=a|0;if(!(k[a+68>>2]|0))Uj(a);return}function mj(a){a=a|0;k[(k[a+460>>2]|0)+28>>2]=1;return}function nj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function oj(a){a=a|0;th(21527,52,1,k[3856]|0)|0;Ta(1);return 0}function pj(a,b){a=a|0;b=b|0;return (a+-1+b|0)/(b|0)|0|0}function qj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(9);return 0}function rj(a,b){a=a|0;b=b|0;return cb[a&15](b|0)|0}function sj(a,b,c){a=a|0;b=b|0;c=c|0;Ab(b);return}function tj(a){a=a|0;k[(k[a+24>>2]|0)+36>>2]=1;return}function uj(a,b){a=a|0;b=b|0;r=a;s=b}function vj(a,b){a=a|0;b=b|0;eh(a|0,0,b|0)|0;return}function wj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ka(12)}function xj(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function yj(a){a=a|0;k[k[a+436>>2]>>2]=5;return}function zj(a,b){a=a|0;b=b|0;$a[a&63](b|0)}function Aj(a,b){a=a|0;b=b|0;return +(+Rg(a,b,1))}function Bj(a,b,c){a=a|0;b=b|0;c=c|0;ka(0);return 0}function Cj(a,b,c){a=a|0;b=b|0;c=c|0;return}function Dj(a,b){a=a|0;b=b|0;return kb(b)|0}function Ej(a,b){a=+a;b=+b;return +(+Bh(a,b))}function Fj(a,b){a=+a;b=b|0;return +(+Ag(a,b))}function Gj(a){a=a|0;gi(a);return}function Hj(a,b){a=+a;b=b|0;return +(+Dg(a,b))}function Ij(a,b,c){a=a|0;b=b|0;c=c|0;ka(7)}function Jj(a){a=a|0;return (a+-65|0)>>>0<26|0}function Kj(a,b){a=+a;b=+b;return +(+Vc(a,b))}function Lj(a,b){a=a|0;b=b|0;ka(10);return 0}function Mj(a,b){a=a|0;b=b|0;return}function Nj(a){a=a|0;return +(+Aj(a,0))}function Oj(a,b){a=a|0;b=b|0;ka(4)}function Pj(a){a=a|0;r=a}function Qj(a){a=a|0;L=a}function Rj(a){a=a|0;ka(6);return 0}function Sj(){return k[3885]|0}function Tj(a){a=a|0;return 0}function Uj(a){a=a|0;return}function Vj(){return k[3915]|0}function Wj(){return L|0}function Xj(){return r|0}function Yj(a){a=a|0;ka(3)}function Zj(){return 0}
var Ya=[Bj,qe,hh,lh,cf,Oh,re,Pf,ij,Bj,Bj,Bj,Bj,Bj,Bj,Bj];var Za=[Oi,fd,qd,hf,yh,pg,uf,nf,Ye,Oi,Oi,Oi,Oi,Oi,Oi,Oi];var _a=[jj,Og,Kg,_i,fc,Xf,Ub,_i,Cb,Le,si,Ef,Zi,Db,uc,Vf,Sb,Zi,md,kf,He,cd,Me,Ud,Ne,cj,rd,cj,_c,cj,mc,cj,Bc,cj,Nc,Mh,zd,Zd,Nd,dd,Uc,Jc,oc,tc,ec,hc,$b,Rb,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj,jj];var $a=[Yj,Sf,Hh,vb,Kb,ob,bg,$d,Ec,Wh,zb,ye,Dd,Uj,Xh,bh,Uj,ci,tj,Uj,Eh,Lc,yj,Rh,ve,Vh,Bi,yc,wi,Si,Nh,Vi,Uj,Gi,mj,dc,Uj,Tb,ti,Mb,gc,Uj,ng,Wb,Uj,jd,Uj,Hd,Uj,Ld,Ed,_e,fh,ee,Uj,Ac,we,lj,lj,Yj,Yj,Yj,Yj,Yj];var ab=[Oj,Hb,Mj,Ve,Li,Eb,Mj,Vb,Mj,sh,jh,pc,zh,gh,tf,ih,Ke,hd,Xe,Ee,Oc,We,_d,ce,te,Xd,Oj,Oj,Oj,Oj,Oj,Oj];var bb=[Ri,Xg,Yg,Ri];var cb=[Rj,_h,xh,Jg,dg,Cc,mb,jg,vf,ud,vc,Zc,Tj,Rj,Rj,Rj];var db=[Ij,De,Cj,mg,Cj,Eg,Cj,_f,Cj,Ph,Ij,Ij,Ij,Ij,Ij,Ij];var eb=[Hi,td,de,Hi];var fb=[qj,Qf,Nf,qj];var gb=[Lj,me,bc,rg,Jh,wg,Mf,Yf,Mi,vd,cg,Hg,Gg,zg,Fg,dh,ph,Qe,Ih,ie,lc,Bf,Nb,Ae,Hc,Fc,ae,Ob,Yd,ld,og,id,wc,Rc,Qc,le,Tc,cc,Qb,Sc,$c,Xb,kc,Fd,Jd,zc,Lb,sb,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj,Lj];var hb=[aj,rc,qc,aj];var ib=[wj,lf,ke,Qg,nj,mf,pd,nj,Ze,Td,gj,pb,Yc,od,gj,wb,Rd,je,$i,Yi,nj,bf,nj,ug,nj,yd,nj,gg,Wd,Zf,Cf,Pe,Re,Kd,lg,If,kd,Ic,vg,qi,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj,wj];return{_i64Subtract:pi,_free:Ab,_main:jc,_i64Add:zi,_memset:eh,_malloc:kb,_memcpy:_g,_bitshift64Lshr:ni,_fflush:Uf,___errno_location:Ai,_bitshift64Shl:mi,runPostSets:oi,_emscripten_replace_memory:Xa,stackAlloc:Pi,stackSave:Xj,stackRestore:Pj,establishStackSpace:uj,setThrew:dj,setTempRet0:Qj,getTempRet0:Wj,dynCall_iiii:Ii,dynCall_viiiiiii:Yh,dynCall_viiiii:ui,dynCall_vi:zj,dynCall_vii:ej,dynCall_iiiiiii:ai,dynCall_ii:rj,dynCall_viii:Ni,dynCall_viiiiiiii:Th,dynCall_iiiii:yi,dynCall_iii:Wi,dynCall_iiiiii:ri,dynCall_viiii:Ci}})
(e.Pb,e.Qb,F),ra=e._i64Subtract=q._i64Subtract,fa=e._free=q._free;e._main=q._main;var sa=e._i64Add=
q._i64Add,Xa=e._memset=q._memset;e.runPostSets=q.runPostSets;var X=e._malloc=q._malloc,ab=e._memcpy=q._memcpy,Wa=e._emscripten_replace_memory=q._emscripten_replace_memory,Ya=e._bitshift64Lshr=q._bitshift64Lshr;e._fflush=q._fflush;e.___errno_location=q.___errno_location;var Za=e._bitshift64Shl=q._bitshift64Shl;e.dynCall_iiii=q.dynCall_iiii;e.dynCall_viiiiiii=q.dynCall_viiiiiii;e.dynCall_viiiii=q.dynCall_viiiii;e.dynCall_vi=q.dynCall_vi;e.dynCall_vii=q.dynCall_vii;e.dynCall_iiiiiii=q.dynCall_iiiiiii;
e.dynCall_ii=q.dynCall_ii;e.dynCall_viii=q.dynCall_viii;e.dynCall_viiiiiiii=q.dynCall_viiiiiiii;e.dynCall_iiiii=q.dynCall_iiiii;e.dynCall_iii=q.dynCall_iii;e.dynCall_iiiiii=q.dynCall_iiiiii;e.dynCall_viiii=q.dynCall_viiii;m.Cb=q.stackAlloc;m.Kc=q.stackSave;m.Jc=q.stackRestore;m.ff=q.establishStackSpace;m.Ic=q.setTempRet0;m.oc=q.getTempRet0;ba.prototype=Error();ba.prototype.constructor=ba;var Va,Ka=null,Z=function b(){e.calledRun||qa();e.calledRun||(Z=b)};e.callMain=e.Se=function(b){function c(){for(var b=
0;3>b;b++)f.push(0)}b=b||[];ja||(ja=!0,S(ca));var g=b.length+1,f=[B(T(e.thisProgram),"i8",0)];c();for(var k=0;k<g-1;k+=1)f.push(B(T(b[k]),"i8",0)),c();f.push(0);f=B(f,"i32",0);try{var l=e._main(g,f,0);La(l,!0)}catch(m){if(!(m instanceof ba))if("SimulateInfiniteLoop"==m)e.noExitRuntime=!0;else throw m&&"object"===typeof m&&m.stack&&e.Wa("exception thrown: "+[m,m.stack]),m;}finally{}};e.run=e.run=qa;e.exit=e.exit=La;var Ma=[];e.abort=e.abort=G;if(e.preInit)for("function"==typeof e.preInit&&(e.preInit=
[e.preInit]);0<e.preInit.length;)e.preInit.pop()();var Ia=!0;e.noInitialRun&&(Ia=!1);qa();try{ma=c.readFile("/output.jpg")}catch(cb){return Error("No output: "+ka)}c.unlink("/output.jpg");c.unlink("/input");return{data:ma,stderr:ka}};
});var encode = interopDefault(cjpeg);return encode;
}));if (location.protocol != 'https:'){location.href = 'https:' + window.location.href.substring(window.location.protocol.length);}function g(d){return document.getElementById(d);}
var hst=btoa(window.location.hostname)=='d3d3LnBpY2RpZXQuY29t'?1:0;var s=g('compare').getBoundingClientRect();g('compare').addEventListener('mousemove',function(e){g('img_compressed').style.width=(e.pageX-s.left)+'px';g('separator').style.marginLeft=(e.pageX-s.left)+'px';});g('q_value').addEventListener('input',function(){g('quality').innerHTML=this.value+'%';})
var[readAsText,readAsArrayBuffer,readAsDataURL]=['readAsText','readAsArrayBuffer','readAsDataURL'].map(read=>file=>new Promise(resolve=>{var reader=new FileReader();reader[read](file);reader.onload=e=>{resolve(e.target.result)}}));function getImageData(file){return readAsArrayBuffer(file).then(buffer=>new Uint8Array(buffer));}
function getDataUrl(file){return readAsDataURL(file).then(function(url){return url;})}
function bytesToSize(a,b){if(0==a)return"0 Bytes";var c=1024,d=b||2,e=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],f=Math.floor(Math.log(a)/Math.log(c));return parseFloat((a/Math.pow(c,f)).toFixed(d))+" "+e[f]}
var len=0;var dataUrl;var zip=new JSZip();var imgfolder=zip.folder("picdiet");var i=0;var blob;var fname;g('up_txt').addEventListener('click',function(){location.reload()})
input.onchange=e=>{len=input.files.length*hst;g('single_spinner').classList.add('show');input.style.display='none'
if(typeof ver!=='undefined'&&ver>=12){g('spinner').style.display='none';g('pgs_percent').innerHTML='compressing'}
if(len==1){var picReader=new FileReader();picReader.addEventListener("load",function(event){dataUrl=event.target.result;});picReader.readAsDataURL(input.files[0]);setTimeout(function(){var file=input.files[0];getImageData(file).then(data=>{var now=performance.now();var result=picdiet(data,{quality:g('q_value').value},console.info);blob=new Blob([result.data],{type:'image/jpeg'});g('after').src=URL.createObjectURL(blob);fname=file.name;g('before').src=dataUrl;g('before').onload=function(){var wd=Math.min(this.naturalWidth,970);var ht=this.naturalHeight/this.naturalWidth*wd;g('compare').style.width=wd+'px';g('compare').style.height=ht+'px';g('separator').style.height=ht+'px';g('img_compressed').style.width=wd/2+'px';g('separator').style.marginLeft=wd/2+'px';g('o_title').style.marginRight=(30-wd/2)+'px';s=g('compare').getBoundingClientRect();}
g('single_spinner').classList.remove('show');var pre_size=bytesToSize(file.size);var after_size=bytesToSize(blob.size);g('p_title').innerHTML='Picdiet: '+after_size;g('pre_filesize').innerHTML=pre_size;g('bar_pre').innerHTML=pre_size;g('o_title').innerHTML='Original: '+pre_size;g('aft_filesize').innerHTML=after_size;g('bar_after').innerHTML=after_size;g('duration').innerHTML=(performance.now()-now).toFixed()+' ms';var rd=((1-blob.size/file.size)*100).toFixed();g('reduction_percent').innerHTML=rd+'%';g('bar_reduction').innerHTML=rd+'%';g('bar_blue').style.width=450*(1-rd/100)+'px';g('compress_info').classList.add('show');g('up_txt').innerHTML=g('recompress').value;g('dld').style.width='120px';g('dld_original').style.display='none';})},100)}else{setTimeout(function(){compress_loop();},100)}}
g('dld').addEventListener('click',function(){if(len>1){zip.generateAsync({type:"blob"}).then(function(content){saveAs(content,"picdiet.zip");});}else{saveAs(blob,fname)}})
var ini_filesize=0;var ini_opt_filesize=0;var starttime;function compress_loop(){if(i<len){if(i==0){starttime=new Date().getTime();g('q_value').disabled=true;g('pgs_percent').innerHTML='0%';}
var file=input.files[i];getImageData(file).then(data=>{var result=picdiet(data,{quality:g('q_value').value});var blob=new Blob([result.data],{type:'image/jpeg'});imgfolder.file(file.name,blob);i++;ini_filesize=ini_filesize+file.size;ini_opt_filesize=ini_opt_filesize+blob.size;g('pgs_percent').innerHTML=Math.ceil(i*100/len)+'%'
compress_loop();});}else{g('pre_filesize').innerHTML=bytesToSize(ini_filesize);g('aft_filesize').innerHTML=bytesToSize(ini_opt_filesize);g('duration').innerHTML=(new Date().getTime()-starttime).toFixed()+' ms';var rd=((1-ini_opt_filesize/ini_filesize)*100).toFixed();g('reduction_percent').innerHTML=rd+'%';g('compress_info').classList.add('show')
g('single_spinner').classList.remove('show');g('up_txt').innerHTML=g('recompress').value;g('pgs_percent').innerHTML='';g('q_value').disabled=false;g('dld').style.width='120px';g('dld_original').style.display='none';}}