2017-09-25 20:21:11 +08:00
var Module ; if ( ! Module ) Module = ( typeof Module !== "undefined" ? Module : null ) || { } ; var moduleOverrides = { } ; for ( var key in Module ) { if ( Module . hasOwnProperty ( key ) ) { moduleOverrides [ key ] = Module [ key ] } } var ENVIRONMENT _IS _WEB = false ; var ENVIRONMENT _IS _WORKER = false ; var ENVIRONMENT _IS _NODE = false ; var ENVIRONMENT _IS _SHELL = false ; if ( Module [ "ENVIRONMENT" ] ) { if ( Module [ "ENVIRONMENT" ] === "WEB" ) { ENVIRONMENT _IS _WEB = true } else if ( Module [ "ENVIRONMENT" ] === "WORKER" ) { ENVIRONMENT _IS _WORKER = true } else if ( Module [ "ENVIRONMENT" ] === "NODE" ) { ENVIRONMENT _IS _NODE = true } else if ( Module [ "ENVIRONMENT" ] === "SHELL" ) { ENVIRONMENT _IS _SHELL = true } else { throw new Error ( "The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL." ) } } else { ENVIRONMENT _IS _WEB = typeof window === "object" ; ENVIRONMENT _IS _WORKER = typeof importScripts === "function" ; ENVIRONMENT _IS _NODE = typeof process === "object" && typeof require === "function" && ! ENVIRONMENT _IS _WEB && ! ENVIRONMENT _IS _WORKER ; ENVIRONMENT _IS _SHELL = ! ENVIRONMENT _IS _WEB && ! ENVIRONMENT _IS _NODE && ! ENVIRONMENT _IS _WORKER } if ( ENVIRONMENT _IS _NODE ) { if ( ! Module [ "print" ] ) Module [ "print" ] = console . log ; if ( ! Module [ "printErr" ] ) Module [ "printErr" ] = console . warn ; var nodeFS ; var nodePath ; Module [ "read" ] = function shell _read ( filename , binary ) { if ( ! nodeFS ) nodeFS = require ( "fs" ) ; if ( ! nodePath ) nodePath = require ( "path" ) ; filename = nodePath [ "normalize" ] ( filename ) ; var ret = nodeFS [ "readFileSync" ] ( filename ) ; return binary ? ret : ret . toString ( ) } ; Module [ "readBinary" ] = function readBinary ( filename ) { var ret = Module [ "read" ] ( filename , true ) ; if ( ! ret . buffer ) { ret = new Uint8Array ( ret ) } assert ( ret . buffer ) ; return ret } ; Module [ "load" ] = function load ( f ) { globalEval ( read ( f ) ) } ; if ( ! Module [ "thisProgram" ] ) { if ( process [ "argv" ] . length > 1 ) { Module [ "thisProgram" ] = process [ "argv" ] [ 1 ] . replace ( /\\/g , "/" ) } else { Module [ "thisProgram" ] = "unknown-program" } } Module [ "arguments" ] = process [ "argv" ] . slice ( 2 ) ; if ( typeof module !== "undefined" ) { module [ "exports" ] = Module } process [ "on" ] ( "uncaughtException" , ( function ( ex ) { if ( ! ( ex instanceof ExitStatus ) ) { throw ex } } ) ) ; Module [ "inspect" ] = ( function ( ) { return "[Emscripten Module object]" } ) } else if ( ENVIRONMENT _IS _SHELL ) { if ( ! Module [ "print" ] ) Module [ "print" ] = print ; if ( typeof printErr != "undefined" ) Module [ "printErr" ] = printErr ; if ( typeof read != "undefined" ) { Module [ "read" ] = read } else { Module [ "read" ] = function shell _read ( ) { throw "no read() available" } } Module [ "readBinary" ] = function readBinary ( f ) { if ( typeof readbuffer === "function" ) { return new Uint8Array ( readbuffer ( f ) ) } var data = read ( f , "binary" ) ; assert ( typeof data === "object" ) ; return data } ; if ( typeof scriptArgs != "undefined" ) { Module [ "arguments" ] = scriptArgs } else if ( typeof arguments != "undefined" ) { Module [ "arguments" ] = arguments } if ( typeof quit === "function" ) { Module [ "quit" ] = ( function ( status , toThrow ) { quit ( status ) } ) } } else if ( ENVIRONMENT _IS _WEB || ENVIRONMENT _IS _WORKER ) { Module [ "read" ] = function shell _read ( url ) { var xhr = new XMLHttpRequest ; xhr . open ( "GET" , url , false ) ; xhr . send ( null ) ; return xhr . responseText } ; if ( ENVIRONMENT _IS _WORKER ) { Module [ "readBinary" ] = function readBinary ( url ) { var xhr = new XMLHttpRequest ; xhr . open ( "GET" , url , false ) ; xhr . responseType = "arraybuffer" ; xhr . send ( null ) ; return new Uint8Array ( xhr . response ) } } Module [ "readAsync" ] = function readAsync ( url , onload , onerror ) { var xhr = new XMLHttpRequest ; xhr . open ( "GET" , url , true ) ; xhr . responseType = "arraybuffer" ; xhr . onload = function xhr _onload ( ) { if ( xhr . status == 200 || xhr . status == 0 && xhr . response ) { onload ( xhr . response ) } else { onerror ( ) } } ; xhr . onerror = onerror ; xhr . send ( null ) } ; if ( typeof arguments != "undefined" ) { Module [ "arguments" ] = arguments } if ( typeof console !== "undefined" ) { if ( ! Module [ "print" ] ) Module [ "print" ] = function shell _print ( x ) { console . log ( x ) } ; if ( ! Module [ "printErr" ] ) Module [ "printErr" ] = function shell _printErr ( x ) { console . warn ( x ) } } else { var TRY _USE _DUMP = false ; if ( ! Module [ "print" ] ) Module [ "print" ] = TRY _USE _DUMP && typeof dump !== "undefined" ? ( function ( x ) { dump ( x ) } ) : ( function ( x ) { } ) } if ( ENVIRONMENT _IS _WORKER ) { Module [ "load" ] = importScripts } if ( typeof Module [ "setWindowTitle" ] === "undefined" ) { Module [ "setWindowTitle" ] = ( function ( title ) { document . title = title } ) } } else { throw "Unknown runtime environment. Where are we?" } function globalEval ( x ) { eval . call ( null , x ) } if ( ! Module [ "load" ] && Modul
2015-09-27 16:34:43 +08:00
var asm = ( function ( global , env , buffer ) {
2017-08-14 19:03:23 +08:00
"almost asm" ; var a = global . Int8Array ; var b = new a ( buffer ) ; var c = global . Int16Array ; var d = new c ( buffer ) ; var e = global . Int32Array ; var f = new e ( buffer ) ; var g = global . Uint8Array ; var h = new g ( buffer ) ; var i = global . Uint16Array ; var j = new i ( buffer ) ; var k = global . Uint32Array ; var l = new k ( buffer ) ; var m = global . Float32Array ; var n = new m ( buffer ) ; var o = global . Float64Array ; var p = new o ( buffer ) ; var q = global . byteLength ; var r = env . DYNAMICTOP _PTR | 0 ; var s = env . tempDoublePtr | 0 ; var t = env . ABORT | 0 ; var u = env . STACKTOP | 0 ; var v = env . STACK _MAX | 0 ; var w = env . cttz _i8 | 0 ; var x = 0 ; var y = 0 ; var z = 0 ; var A = 0 ; var B = global . NaN , C = global . Infinity ; var D = 0 , E = 0 , F = 0 , G = 0 , H = 0.0 ; var I = 0 ; var J = global . Math . floor ; var K = global . Math . abs ; var L = global . Math . sqrt ; var M = global . Math . pow ; var N = global . Math . cos ; var O = global . Math . sin ; var P = global . Math . tan ; var Q = global . Math . acos ; var R = global . Math . asin ; var S = global . Math . atan ; var T = global . Math . atan2 ; var U = global . Math . exp ; var V = global . Math . log ; var W = global . Math . ceil ; var X = global . Math . imul ; var Y = global . Math . min ; var Z = global . Math . max ; var _ = global . Math . clz32 ; var $ = env . abort ; var aa = env . assert ; var ba = env . enlargeMemory ; var ca = env . getTotalMemory ; var da = env . abortOnCannotGrowMemory ; var ea = env . invoke _ii ; var fa = env . invoke _iiii ; var ga = env . invoke _iii ; var ha = env . _llvm _exp2 _f64 ; var ia = env . _llvm _pow _f64 ; var ja = env . _ _ _lock ; var ka = env . _llvm _exp2 _f32 ; var la = env . _abort ; var ma = env . _ _ _setErrNo ; var na = env . _ _ _syscall6 ; var oa = env . _ _ _syscall140 ; var pa = env . _emscripten _memcpy _big ; var qa = env . _ _ _syscall54 ; var ra = env . _ _ _unlock ; var sa = env . _exit ; var ta = env . _ _exit ; var ua = env . _ _ _syscall146 ; var va = 0.0 ; function wa ( newBuffer ) { if ( q ( newBuffer ) & 16777215 || q ( newBuffer ) <= 16777215 || q ( newBuffer ) > 2147483648 ) return false ; b = new a ( newBuffer ) ; d = new c ( newBuffer ) ; f = new e ( newBuffer ) ; h = new g ( newBuffer ) ; j = new i ( newBuffer ) ; l = new k ( newBuffer ) ; n = new m ( newBuffer ) ; p = new o ( newBuffer ) ; buffer = newBuffer ; return true }
2015-09-27 16:34:43 +08:00
// EMSCRIPTEN_START_FUNCS
2017-09-25 20:21:11 +08:00
function Aa ( a ) { a = a | 0 ; var b = 0 ; b = u ; u = u + a | 0 ; u = u + 15 & - 16 ; return b | 0 } function Ba ( ) { return u | 0 } function Ca ( a ) { a = a | 0 ; u = a } function Da ( a , b ) { a = a | 0 ; b = b | 0 ; u = a ; v = b } function Ea ( a , b ) { a = a | 0 ; b = b | 0 ; if ( ! x ) { x = a ; y = b } } function Fa ( a ) { a = a | 0 ; I = a } function Ga ( ) { return I | 0 } function Ha ( a , b ) { a = a | 0 ; b = b | 0 ; var c = 0 , d = 0 , e = 0 , g = 0 , h = 0 , i = 0 , j = 0 , k = 0 , l = 0 , m = 0 , n = 0.0 , o = 0 , q = 0 , r = 0 , s = 0 , t = 0 , u = 0 , v = 0 , w = 0.0 , x = 0.0 , y = 0 , z = 0 , A = 0 , B = 0 , C = 0 , D = 0 , E = 0 , F = 0 , G = 0 ; if ( ( Ia ( a ) | 0 ) == 1 ) { c = Vc ( ( a << 4 ) + 272 | 0 ) | 0 ; d = c + 8 | 0 ; e = Ja ( a , d ) | 0 ; f [ c + 264 >> 2 ] = e ; g = c + 272 | 0 ; if ( ( e | 0 ) > 0 ) { h = e + - 1 | 0 ; i = 0 ; j = 0 ; k = 1 ; while ( 1 ) { l = f [ d + ( h - j << 2 ) >> 2 ] | 0 ; m = k ; k = X ( l , k ) | 0 ; n = - 6.283185307179586 / + ( k | 0 ) ; if ( ( m | 0 ) > 0 & ( l | 0 ) > 1 ) { o = l + - 1 | 0 ; q = i + - 1 | 0 ; r = X ( m + - 1 | 0 , o ) | 0 ; s = 0 ; t = i ; while ( 1 ) { u = 0 ; v = t ; while ( 1 ) { u = u + 1 | 0 ; w = n * + ( X ( u , s ) | 0 ) ; x = + N ( + w ) ; p [ g + ( v << 4 ) >> 3 ] = x ; x = + O ( + w ) ; p [ g + ( v << 4 ) + 8 >> 3 ] = x ; if ( ( u | 0 ) == ( o | 0 ) ) break ; else v = v + 1 | 0 } s = s + 1 | 0 ; if ( ( s | 0 ) == ( m | 0 ) ) break ; else t = o + t | 0 } y = q + l + r | 0 } else y = i ; j = j + 1 | 0 ; if ( ( j | 0 ) == ( e | 0 ) ) { z = a ; A = 0 ; B = c ; break } else i = y } } else { z = a ; A = 0 ; B = c } } else { c = ~ ~ + ha ( + ( + W ( + ( + Fc ( + ( a | 0 ) ) / . 3010299956639812 ) ) ) ) ; y = c << ( ( c | 0 ) < ( ( a << 1 ) + - 2 | 0 ) & 1 ) ; c = Vc ( ( y << 4 ) + 272 | 0 ) | 0 ; i = c + 8 | 0 ; e = Ja ( y , i ) | 0 ; f [ c + 264 >> 2 ] = e ; j = c + 272 | 0 ; if ( ( e | 0 ) > 0 ) { g = e + - 1 | 0 ; k = 0 ; h = 0 ; d = 1 ; while ( 1 ) { t = f [ i + ( g - h << 2 ) >> 2 ] | 0 ; o = d ; d = X ( t , d ) | 0 ; n = - 6.283185307179586 / + ( d | 0 ) ; if ( ( o | 0 ) > 0 & ( t | 0 ) > 1 ) { m = t + - 1 | 0 ; s = k + - 1 | 0 ; v = X ( o + - 1 | 0 , m ) | 0 ; u = 0 ; C = k ; while ( 1 ) { D = 0 ; E = C ; while ( 1 ) { D = D + 1 | 0 ; x = n * + ( X ( D , u ) | 0 ) ; w = + N ( + x ) ; p [ j + ( E << 4 ) >> 3 ] = w ; w = + O ( + x ) ; p [ j + ( E << 4 ) + 8 >> 3 ] = w ; if ( ( D | 0 ) == ( m | 0 ) ) break ; else E = E + 1 | 0 } u = u + 1 | 0 ; if ( ( u | 0 ) == ( o | 0 ) ) break ; else C = m + C | 0 } F = s + t + v | 0 } else F = k ; h = h + 1 | 0 ; if ( ( h | 0 ) == ( e | 0 ) ) { z = y ; A = 1 ; B = c ; break } else k = F } } else { z = y ; A = 1 ; B = c } } f [ B + 268 >> 2 ] = A ; f [ B >> 2 ] = a ; f [ B + 4 >> 2 ] = b ; if ( ( b | 0 ) == - 1 & ( z | 0 ) > 0 ) G = 0 ; else return B | 0 ; do { b = B + 272 + ( G << 4 ) + 8 | 0 ; p [ b >> 3 ] = - + p [ b >> 3 ] ; G = G + 1 | 0 } while ( ( G | 0 ) != ( z | 0 ) ) ; return B | 0 } function Ia ( a ) { a = a | 0 ; var 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 ; if ( ! ( ( a | 0 ) % 53 | 0 ) ) { b = a ; while ( 1 ) { c = ( b | 0 ) / 53 | 0 ; if ( ! ( ( c | 0 ) % 53 | 0 ) ) b = c ; else { d = c ; break } } } else d = a ; if ( ! ( ( d | 0 ) % 47 | 0 ) ) { a = d ; while ( 1 ) { b = ( a | 0 ) / 47 | 0 ; if ( ! ( ( b | 0 ) % 47 | 0 ) ) a = b ; else { e = b ; break } } } else e = d ; if ( ! ( ( e | 0 ) % 43 | 0 ) ) { d = e ; while ( 1 ) { a = ( d | 0 ) / 43 | 0 ; if ( ! ( ( a | 0 ) % 43 | 0 ) ) d = a ; else { f = a ; break } } } else f = e ; if ( ! ( ( f | 0 ) % 41 | 0 ) ) { e = f ; while ( 1 ) { d = ( e | 0 ) / 41 | 0 ; if ( ! ( ( d | 0 ) % 41 | 0 ) ) e = d ; else { g = d ; break } } } else g = f ; if ( ! ( ( g | 0 ) % 37 | 0 ) ) { f = g ; while ( 1 ) { e = ( f | 0 ) / 37 | 0 ; if ( ! ( ( e | 0 ) % 37 | 0 ) ) f = e ; else { h = e ; break } } } else h = g ; if ( ! ( ( h | 0 ) % 31 | 0 ) ) { g = h ; while ( 1 ) { f = ( g | 0 ) / 31 | 0 ; if ( ! ( ( f | 0 ) % 31 | 0 ) ) g = f ; else { i = f ; break } } } else i = h ; if ( ! ( ( i | 0 ) % 29 | 0 ) ) { h = i ; while ( 1 ) { g = ( h | 0 ) / 29 | 0 ; if ( ! ( ( g | 0 ) % 29 | 0 ) ) h = g ; else { j = g ; break } } } else j = i ; if ( ! ( ( j | 0 ) % 23 | 0 ) ) { i = j ; while ( 1 ) { h = ( i | 0 ) / 23 | 0 ; if ( ! ( ( h | 0 ) % 23 | 0 ) ) i = h ; else { k = h ; break } } } else k = j ; if ( ! ( ( k | 0 ) % 17 | 0 ) ) { j = k ; while ( 1 ) { i = ( j | 0 ) / 17 | 0 ; if ( ! ( ( i | 0 ) % 17 | 0 ) ) j = i ; else { l = i ; break } } } else l = k ; if ( ! ( ( l | 0 ) % 13 | 0 ) ) { k = l ; while ( 1 ) { j = ( k | 0 ) / 13 | 0 ; if ( ! ( ( j | 0 ) % 13 | 0 ) ) k = j ; else { m = j ; break } } } else m = l ; if ( ! ( ( m | 0 ) % 11 | 0 ) ) { l = m ; while ( 1 ) { k = ( l | 0 ) / 11 | 0 ; if ( ! ( ( k | 0 ) % 11 | 0 ) ) l = k ; else { n = k ; break } } } else n = m ; if ( ! ( n & 7 ) ) { m = n ; while ( 1 ) { l = ( m | 0 ) / 8 | 0 ; if ( ! ( l & 7 ) ) m = l ; else { o = l ; break } } } else o = n ; if ( ! ( ( o | 0 ) % 7 | 0 ) ) { n = o ; while ( 1 ) { m = ( n | 0 ) / 7 | 0 ; if ( ! ( ( m | 0 ) % 7 | 0 ) ) n = m ; else { p = m ; break } } } else p = o ; if ( ! ( ( p | 0 ) % 5 | 0 ) ) { o = p ; while ( 1 ) { n = ( o | 0 ) / 5 | 0 ; if ( ! ( ( n | 0 ) % 5 | 0 ) ) o = n ; else { q = n ; break } } } else q = p ; if ( ! ( q & 3 ) ) { p = q ; while ( 1 ) { o = ( p | 0 ) / 4 | 0 ; if ( ! ( o & 3 ) ) p = o ; else { r = o ; break } } } else r = q ; if ( ! ( ( r | 0 ) % 3 | 0 ) ) { q = r ; while ( 1 ) { p = ( q | 0 ) / 3 | 0 ; if ( ! ( ( p | 0 ) % 3 | 0 ) ) q = p ; else { s = p ; break } } } else s = r ; if ( ! ( s & 1 ) ) t = s ; else { u = s ; v = ( u | 0 ) == 1 ; w = v & 1 ; return w | 0 } while ( 1 ) { s = ( t | 0 ) / 2 | 0 ; if ( ! ( s & 1 ) ) t = s ; else { u = s ; break } } v = ( u | 0 ) == 1 ; w = v & 1 ; return w | 0 } function Ja ( a , b ) { a = a | 0 ; b = b | 0 ; var c = 0 , d = 0 , e = 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 , 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 ; if ( ! ( ( a | 0 ) % 53 | 0 ) ) { c = a ; d = 0 ; while ( 1 ) { e = ( c | 0 ) / 53 | 0 ; f [ b + ( d << 2 ) >> 2 ] = 53 ; g = d + 1 | 0 ; if ( ! ( ( e | 0 ) % 53 | 0 ) ) { c = e ; d = g } else { h = g ; i = e ; break } } } else { h = 0 ; i = a } if ( ! ( ( i | 0 ) % 47 | 0 ) ) { a = i ; d = h ; while ( 1 ) { c = ( a | 0 ) / 47 | 0 ; f [ b + ( d << 2 ) >> 2 ] = 47 ; e = d + 1 | 0 ; if ( ! ( ( c | 0 ) % 47 | 0 ) ) { a = c ; d = e } else { j = e ; k = c ; break } } } else { j = h ; k = i } if ( ! ( ( k | 0 ) % 43 | 0 ) ) { i = k ; h = j ; while ( 1 ) { d = ( i | 0 ) / 43 | 0 ; f [ b + ( h << 2 ) >> 2 ] = 43 ; a = h + 1 | 0 ; if ( ! ( ( d | 0 ) % 43 | 0 ) ) { i = d ; h = a } else { l = a ; m = d ; break } } } else { l = j ; m = k } if ( ! ( ( m | 0 ) % 41 | 0 ) ) { k = m ; j = l ; while ( 1 ) { h = ( k | 0 ) / 41 | 0 ; f [ b + ( j << 2 ) >> 2 ] = 41 ; i = j + 1 | 0 ; if ( ! ( ( h | 0 ) % 41 | 0 ) ) { k = h ; j = i } else { n = i ; o = h ; break } } } else { n = l ; o = m } if ( ! ( ( o |
function ib ( a , b ) { a = a | 0 ; b = b | 0 ; var c = 0 , d = 0 , e = 0 , g = 0 , h = 0 , i = 0 , j = 0 , k = 0 , l = 0 , m = 0 , n = 0 , o = 0 , q = 0 , r = 0 , s = 0 , t = 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.0 , H = 0.0 , I = 0 , J = 0 , K = 0 , L = 0 , M = 0 , N = 0.0 , O = 0.0 , P = 0.0 , Q = 0.0 , R = 0.0 , S = 0 , T = 0 , U = 0 , V = 0 , X = 0.0 , Y = 0.0 , Z = 0.0 , _ = 0.0 ; c = u ; u = u + 16 | 0 ; d = c ; e = a + 20 | 0 ; g = f [ e >> 2 ] | 0 ; h = f [ a + 32 >> 2 ] | 0 ; i = a + 76 | 0 ; f [ a + 76 + ( h + 1 << 2 ) >> 2 ] = g ; j = a + 24 | 0 ; f [ j >> 2 ] = 0 ; f [ a + 72 >> 2 ] = 0 ; k = g << 3 ; l = Vc ( k ) | 0 ; m = Vc ( k ) | 0 ; k = f [ e >> 2 ] | 0 ; if ( ( k | 0 ) > 0 ) gd ( l | 0 , b | 0 , k << 3 | 0 ) | 0 ; k = f [ ( f [ a >> 2 ] | 0 ) + 56 >> 2 ] | 0 ; b = a + 44 | 0 ; if ( Ob ( b , 26695 ) | 0 ) { if ( Ob ( b , 26699 ) | 0 ) { Sc ( 26397 , d ) | 0 ; sa ( - 1 ) } d = ( h | 0 ) > 0 ; if ( ! d ) { b = f [ a + 80 >> 2 ] | 0 ; f [ i >> 2 ] = b ; f [ j >> 2 ] = b ; Wc ( l ) ; Wc ( m ) ; u = c ; return } b = k + - 2 | 0 ; k = g ; e = h ; while ( 1 ) { k = ~ ~ + W ( + ( + ( b + k | 0 ) * . 5 ) ) ; f [ a + 76 + ( e << 2 ) >> 2 ] = k ; n = ( f [ j >> 2 ] | 0 ) + k | 0 ; f [ j >> 2 ] = n ; if ( ( e | 0 ) <= 1 ) break ; else e = e + - 1 | 0 } e = f [ a + 80 >> 2 ] | 0 ; f [ i >> 2 ] = e ; k = n + e | 0 ; f [ j >> 2 ] = k ; if ( ! d ) { Wc ( l ) ; Wc ( m ) ; u = c ; return } d = a + 54 | 0 ; e = h + - 1 | 0 ; n = a + 488 | 0 ; b = g ; o = 0 ; q = k ; do { k = a + 76 + ( h - o << 2 ) | 0 ; r = f [ k >> 2 ] | 0 ; s = q ; q = q - r | 0 ; do if ( ( Ob ( d , 26240 ) | 0 ) != 0 ? ( Ob ( d , 26244 ) | 0 ) != 0 : 0 ) { t = a + 488 + ( q << 3 ) | 0 ; v = f [ a >> 2 ] | 0 ; w = f [ v + 56 >> 2 ] | 0 ; if ( ( r | 0 ) > 0 ) { x = v + 72 | 0 ; y = v + 76 | 0 ; v = ( b << 1 ) + - 1 | 0 ; if ( ( w | 0 ) > 0 ) z = 0 ; else { A = r << 3 ; _c ( m | 0 , 0 , A | 0 ) | 0 ; _c ( n + ( ( s << 3 ) - A ) | 0 , 0 , A | 0 ) | 0 ; break } do { A = z << 1 ; B = A | 1 ; C = m + ( z << 3 ) | 0 ; p [ C >> 3 ] = 0.0 ; D = t + ( z << 3 ) | 0 ; p [ D >> 3 ] = 0.0 ; E = A ^ - 2 ; A = v - B | 0 ; F = 0 ; G = 0.0 ; H = 0.0 ; while ( 1 ) { I = B - F | 0 ; J = ( I | 0 ) < ( b | 0 ) ; do if ( ! ( ( I | 0 ) > - 1 & J ) ) { if ( ( I | 0 ) < 0 ) { K = F + E | 0 ; L = ( f [ x >> 2 ] | 0 ) + ( F << 3 ) | 0 ; M = 60 ; break } if ( J ) { N = H ; O = G } else { K = A + F | 0 ; L = ( f [ x >> 2 ] | 0 ) + ( F << 3 ) | 0 ; M = 60 } } else { K = I ; L = ( f [ x >> 2 ] | 0 ) + ( F << 3 ) | 0 ; M = 60 } while ( 0 ) ; if ( ( M | 0 ) == 60 ) { M = 0 ; P = + p [ l + ( K << 3 ) >> 3 ] ; Q = G + + p [ L >> 3 ] * P ; p [ C >> 3 ] = Q ; R = H + + p [ ( f [ y >> 2 ] | 0 ) + ( F << 3 ) >> 3 ] * P ; p [ D >> 3 ] = R ; N = R ; O = Q } F = F + 1 | 0 ; if ( ( F | 0 ) == ( w | 0 ) ) break ; else { G = O ; H = N } } z = z + 1 | 0 } while ( ( z | 0 ) != ( r | 0 ) ) } } else M = 49 ; while ( 0 ) ; if ( ( M | 0 ) == 49 ) { M = 0 ; jb ( a , l , b , m , a + 488 + ( q << 3 ) | 0 ) } b = f [ k >> 2 ] | 0 ; s = ( r | 0 ) > 0 ; if ( ( o | 0 ) == ( e | 0 ) ) { if ( s ) gd ( n | 0 , m | 0 , r << 3 | 0 ) | 0 } else if ( s ) gd ( l | 0 , m | 0 , r << 3 | 0 ) | 0 ; o = o + 1 | 0 } while ( ( o | 0 ) != ( h | 0 ) ) ; Wc ( l ) ; Wc ( m ) ; u = c ; return } o = ( h | 0 ) > 0 ; if ( o ) { S = g ; T = h } else { n = f [ a + 80 >> 2 ] | 0 ; f [ i >> 2 ] = n ; f [ j >> 2 ] = n ; Wc ( l ) ; Wc ( m ) ; u = c ; return } while ( 1 ) { S = ~ ~ + W ( + ( + ( S | 0 ) * . 5 ) ) ; f [ a + 76 + ( T << 2 ) >> 2 ] = S ; U = ( f [ j >> 2 ] | 0 ) + S | 0 ; f [ j >> 2 ] = U ; if ( ( T | 0 ) <= 1 ) break ; else T = T + - 1 | 0 } T = f [ a + 80 >> 2 ] | 0 ; f [ i >> 2 ] = T ; i = U + T | 0 ; f [ j >> 2 ] = i ; if ( ! o ) { Wc ( l ) ; Wc ( m ) ; u = c ; return } o = a + 54 | 0 ; j = h + - 1 | 0 ; T = a + 488 | 0 ; U = g ; g = 0 ; S = i ; do { i = a + 76 + ( h - g << 2 ) | 0 ; n = f [ i >> 2 ] | 0 ; S = S - n | 0 ; if ( ( Ob ( o , 26240 ) | 0 ) != 0 ? ( Ob ( o , 26244 ) | 0 ) != 0 : 0 ) { e = a + 488 + ( S << 3 ) | 0 ; b = f [ a >> 2 ] | 0 ; q = f [ b + 56 >> 2 ] | 0 ; z = ( q | 0 ) / 2 | 0 ; L = ( U | 0 ) % 2 | 0 ; if ( ( n | 0 ) > 0 ) { K = ( q | 0 ) > 0 ; d = b + 72 | 0 ; s = b + 76 | 0 ; b = ( L | 0 ) == 0 ; w = ( L | 0 ) == 1 ; L = l + ( U + - 1 << 3 ) | 0 ; y = U + 1 | 0 ; x = ~ U ; v = 0 ; do { t = ( v << 1 ) + z | 0 ; F = m + ( v << 3 ) | 0 ; p [ F >> 3 ] = 0.0 ; D = e + ( v << 3 ) | 0 ; p [ D >> 3 ] = 0.0 ; if ( K ) { C = 0 ; N = 0.0 ; O = 0.0 ; while ( 1 ) { A = t - C | 0 ; do if ( ! ( ( A | 0 ) >= ( z | 0 ) & ( A | 0 ) < ( U | 0 ) ) ) { if ( ( A | 0 ) < ( z | 0 ) & ( A | 0 ) > - 1 ) { H = + p [ l + ( A << 3 ) >> 3 ] ; G = O + + p [ ( f [ d >> 2 ] | 0 ) + ( C << 3 ) >> 3 ] * H ; p [ F >> 3 ] = G ; V = f [ s >> 2 ] | 0 ; X = H ; Y = G ; M = 31 ; break } E = ( A | 0 ) < 0 ; if ( b & E ) { G = + p [ l + ( A + U << 3 ) >> 3 ] ; H = O + + p [ ( f [ d >> 2 ] | 0 ) + ( C << 3 ) >> 3 ] * G ; p [ F >> 3 ] = H ; V = f [ s >> 2 ] | 0 ; X = G ; Y = H ; M = 31 ; break } if ( w & E ) { H = + p [ ( f [ d >> 2 ] | 0 ) + ( C << 3 ) >> 3 ] ; E = f [ s >> 2 ] | 0 ; if ( ( A | 0 ) == - 1 ) { G = + p [ L >> 3 ] ; Q = O + H * G ; p [ F >> 3 ] = Q ; V = E ; X = G ; Y = Q ; M = 31 ; break } else { Q = + p [ l + ( y + A << 3 ) >> 3 ] ; G = O + H * Q ; p [ F >> 3 ] = G ; V = E ; X = Q ; Y = G ; M = 31 ; break } } E = ( A | 0 ) >= ( U | 0 ) ; if ( b & E ) { G = + p [ l + ( A - U << 3 ) >> 3 ] ; Q = O + + p [ ( f [ d >> 2 ] | 0 ) + ( C << 3 ) >> 3 ] * G ; p [ F >> 3 ] = Q ; V = f [ s >> 2 ] | 0 ; X = G ; Y = Q ; M = 31 ; break } if ( w & E ) { Q = + p [ ( f [ d >> 2 ] | 0 ) + ( C << 3 ) >> 3 ] ; E = f [ s >> 2 ] | 0 ; if ( ( A | 0 ) == ( U | 0 ) ) { G = + p [ L >> 3 ] ; H = O + Q * G ; p [ F >> 3 ] = H ; V = E ; X = G ; Y = H ; M = 31 ; break } else { H = + p [ l + ( A + x << 3 ) >> 3 ] ; G = O + Q * H ; p [ F >> 3 ] = G ; V = E ; X = H ; Y = G ; M = 31 ; break } } else { Z = N ; _ = O } } else { G = + p [ l + ( A << 3 ) >> 3 ] ; H = O + + p [ ( f [ d >> 2 ] | 0 ) + ( C << 3 ) >> 3 ] * G ; p [ F >> 3 ] = H ; V = f [ s >> 2 ] | 0 ; X = G ; Y = H ; M = 31 } while ( 0 ) ; if ( ( M | 0 ) == 31 ) { M = 0 ; H = N + + p [ V + ( C << 3 ) >> 3 ] * X ; p [ D >> 3 ] = H ; Z = H ; _ = Y } C = C + 1 | 0 ; if ( ( C | 0 ) == ( q | 0 ) ) break ; else { N = Z ; O = _ } } } v = v + 1 | 0 } while ( ( v | 0 ) != ( n | 0 ) ) } } else jb ( a , l , U , m , a + 488 + ( S << 3 ) | 0 ) ; U = f [ i >> 2 ] | 0 ; v = ( n | 0 ) > 0 ; if ( ( g | 0 ) == ( j | 0 ) ) { if ( v ) gd ( T | 0 , m | 0 , n << 3 | 0 ) | 0 } else if ( v ) gd ( l | 0 , m | 0 , n << 3 | 0 ) | 0 ; g = g + 1 | 0 } while ( ( g | 0 ) != ( h | 0 ) ) ; Wc ( l ) ; Wc ( m ) ; u = c ; return } function jb ( a , b , c , d , e ) { a = a | 0 ; b = b | 0 ; c = c | 0 ; d = d | 0 ; e = e | 0 ; var 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 , v = 0 , w = 0 , x = 0 , y = 0 , z = 0 , A = 0 , B = 0 ; g = u ; u = u + 32 | 0 ; h = g + 16 | 0 ; i = g + 8 | 0 ; j = g ; k = f [ a >> 2 ] | 0 ; l = f [ k + 56 >> 2 ] | 0 ; m = ( f [ k + 60 >> 2 ] | 0 ) + l | 0 ; k = ( m | 0 ) / 2 | 0 ; n = a + 44 | 0 ; if ( ! ( Ob ( n , 26695 ) | 0 ) ) { o = Vc ( ( ( c | 0 ) % 2 | 0 ) + c + k << 3 ) | 0 ; p = $a ( b , c , ( m | 0 ) / 4 | 0 , o ) | 0 ; m = p + k | 0 ; q = f [ a >> 2 ] | 0 ; r = q + 56 | 0 ; s = Vc ( ( ( f [ r >> 2 ] | 0 ) + m << 3 ) + - 8 | 0 ) | 0 ; t = f [ r >> 2 ] | 0 ; if ( ( t | 0 ) != ( f [ q + 60 >> 2 ] | 0 ) ) { Sc ( 26248 , j ) | 0 ; sa ( - 1 ) } j = a + 54 | 0 ; if ( ( Ob ( j , 26240 ) | 0 ) !
2015-09-27 16:34:43 +08:00
// EMSCRIPTEN_END_FUNCS
2017-09-25 20:21:11 +08:00
var xa = [ ld , Eb ] ; var ya = [ md , Mb , Gb , Fb ] ; var za = [ nd , vb ] ; return { stackSave : Ba , _i64Subtract : Yc , _memset : _c , _cwave _transform : Ab , getTempRet0 : Ga , _bitshift64Lshr : $c , _wreccoeff : Cb , _fflush : Lc , _wave _transform : yb , _llvm _cttz _i32 : bd , _sbrk : ed , _memcpy : gd , _llvm _bswap _i32 : hd , _wdenoise : Bb , _bitshift64Shl : ad , _ _ _uremdi3 : fd , stackAlloc : Aa , _wtoutputlength : xb , _ _ _udivmoddi4 : cd , setTempRet0 : Fa , _i64Add : Zc , _emscripten _get _global _libc : Db , _inv _wave _transform : zb , _ _ _udivdi3 : dd , _ _ _errno _location : Ib , _filtcoef : Xa , _free : Wc , runPostSets : Xc , setThrew : Ea , establishStackSpace : Da , stackRestore : Ca , _malloc : Vc , _emscripten _replace _memory : wa , _filtlength : Wa , stackAlloc : Aa , stackSave : Ba , stackRestore : Ca , establishStackSpace : Da , setThrew : Ea , setTempRet0 : Fa , getTempRet0 : Ga , dynCall _ii : id , dynCall _iiii : jd , dynCall _iii : kd } } )
2015-09-27 16:34:43 +08:00
// EMSCRIPTEN_END_ASM
2017-09-25 20:21:11 +08:00
( Module . asmGlobalArg , Module . asmLibraryArg , buffer ) ; var stackSave = Module [ "stackSave" ] = asm [ "stackSave" ] ; var _i64Subtract = Module [ "_i64Subtract" ] = asm [ "_i64Subtract" ] ; var _memset = Module [ "_memset" ] = asm [ "_memset" ] ; var _cwave _transform = Module [ "_cwave_transform" ] = asm [ "_cwave_transform" ] ; var getTempRet0 = Module [ "getTempRet0" ] = asm [ "getTempRet0" ] ; var _bitshift64Lshr = Module [ "_bitshift64Lshr" ] = asm [ "_bitshift64Lshr" ] ; var _wreccoeff = Module [ "_wreccoeff" ] = asm [ "_wreccoeff" ] ; var _fflush = Module [ "_fflush" ] = asm [ "_fflush" ] ; var _wave _transform = Module [ "_wave_transform" ] = asm [ "_wave_transform" ] ; var _llvm _cttz _i32 = Module [ "_llvm_cttz_i32" ] = asm [ "_llvm_cttz_i32" ] ; var _sbrk = Module [ "_sbrk" ] = asm [ "_sbrk" ] ; var _memcpy = Module [ "_memcpy" ] = asm [ "_memcpy" ] ; var _llvm _bswap _i32 = Module [ "_llvm_bswap_i32" ] = asm [ "_llvm_bswap_i32" ] ; var _wdenoise = Module [ "_wdenoise" ] = asm [ "_wdenoise" ] ; var _bitshift64Shl = Module [ "_bitshift64Shl" ] = asm [ "_bitshift64Shl" ] ; var _ _ _uremdi3 = Module [ "___uremdi3" ] = asm [ "___uremdi3" ] ; var stackAlloc = Module [ "stackAlloc" ] = asm [ "stackAlloc" ] ; var _wtoutputlength = Module [ "_wtoutputlength" ] = asm [ "_wtoutputlength" ] ; var _ _ _udivmoddi4 = Module [ "___udivmoddi4" ] = asm [ "___udivmoddi4" ] ; var setTempRet0 = Module [ "setTempRet0" ] = asm [ "setTempRet0" ] ; var _i64Add = Module [ "_i64Add" ] = asm [ "_i64Add" ] ; var _emscripten _get _global _libc = Module [ "_emscripten_get_global_libc" ] = asm [ "_emscripten_get_global_libc" ] ; var _inv _wave _transform = Module [ "_inv_wave_transform" ] = asm [ "_inv_wave_transform" ] ; var _ _ _udivdi3 = Module [ "___udivdi3" ] = asm [ "___udivdi3" ] ; var _ _ _errno _location = Module [ "___errno_location" ] = asm [ "___errno_location" ] ; var _filtcoef = Module [ "_filtcoef" ] = asm [ "_filtcoef" ] ; var _free = Module [ "_free" ] = asm [ "_free" ] ; var runPostSets = Module [ "runPostSets" ] = asm [ "runPostSets" ] ; var setThrew = Module [ "setThrew" ] = asm [ "setThrew" ] ; var establishStackSpace = Module [ "establishStackSpace" ] = asm [ "establishStackSpace" ] ; var stackRestore = Module [ "stackRestore" ] = asm [ "stackRestore" ] ; var _malloc = Module [ "_malloc" ] = asm [ "_malloc" ] ; var _emscripten _replace _memory = Module [ "_emscripten_replace_memory" ] = asm [ "_emscripten_replace_memory" ] ; var _filtlength = Module [ "_filtlength" ] = asm [ "_filtlength" ] ; var dynCall _ii = Module [ "dynCall_ii" ] = asm [ "dynCall_ii" ] ; var dynCall _iiii = Module [ "dynCall_iiii" ] = asm [ "dynCall_iiii" ] ; var dynCall _iii = Module [ "dynCall_iii" ] = asm [ "dynCall_iii" ] ; Runtime . stackAlloc = Module [ "stackAlloc" ] ; Runtime . stackSave = Module [ "stackSave" ] ; Runtime . stackRestore = Module [ "stackRestore" ] ; Runtime . establishStackSpace = Module [ "establishStackSpace" ] ; Runtime . setTempRet0 = Module [ "setTempRet0" ] ; Runtime . getTempRet0 = Module [ "getTempRet0" ] ; Module [ "asm" ] = asm ; function ExitStatus ( status ) { this . name = "ExitStatus" ; this . message = "Program terminated with exit(" + status + ")" ; this . status = status } ExitStatus . prototype = new Error ; ExitStatus . prototype . constructor = ExitStatus ; var initialStackTop ; var preloadStartTime = null ; var calledMain = false ; dependenciesFulfilled = function runCaller ( ) { if ( ! Module [ "calledRun" ] ) run ( ) ; if ( ! Module [ "calledRun" ] ) dependenciesFulfilled = runCaller } ; Module [ "callMain" ] = Module . callMain = function callMain ( args ) { args = args || [ ] ; ensureInitRuntime ( ) ; var argc = args . length + 1 ; function pad ( ) { for ( var i = 0 ; i < 4 - 1 ; i ++ ) { argv . push ( 0 ) } } var argv = [ allocate ( intArrayFromString ( Module [ "thisProgram" ] ) , "i8" , ALLOC _NORMAL ) ] ; pad ( ) ; for ( var i = 0 ; i < argc - 1 ; i = i + 1 ) { argv . push ( allocate ( intArrayFromString ( args [ i ] ) , "i8" , ALLOC _NORMAL ) ) ; pad ( ) } argv . push ( 0 ) ; argv = allocate ( argv , "i32" , ALLOC _NORMAL ) ; try { var ret = Module [ "_main" ] ( argc , argv , 0 ) ; exit ( ret , true ) } catch ( e ) { if ( e instanceof ExitStatus ) { return } else if ( e == "SimulateInfiniteLoop" ) { Module [ "noExitRuntime" ] = true ; return } else { var toLog = e ; if ( e && typeof e === "object" && e . stack ) { toLog = [ e , e . stack ] } Module . printErr ( "exception thrown: " + toLog ) ; Module [ "quit" ] ( 1 , e ) } } finally { calledMain = true } } ; function run ( args ) { args = args || Module [ "arguments" ] ; if ( preloadStartTime === null ) preloadStartTime = Date . now ( ) ; if ( runDependencies > 0 ) { return } preRun ( ) ; if ( runDependencies > 0 ) return ; if ( Module [ "calledRun" ] ) return ; function doRun ( ) { if ( Module [ "calledRun" ] ) return ; Module [ "calledRun" ] = true ; if ( ABORT ) return ; ensureInitRuntime ( ) ; preMain ( ) ; if ( Module [ "onRuntimeInitialized" ] ) Module [ "onRuntimeInitialized" ] ( ) ; if ( Module [ " _
2015-09-27 16:34:43 +08:00