'Programming'에 해당되는 글 1762건

  1. 2022.02.17 go hello world build static / shared
  2. 2022.02.11 go lang rest
  3. 2022.02.08 openCV + openGL
  4. 2022.01.25 virtual mouse
  5. 2021.12.08 qt 변수 초기화 문법, cpp 초기화 리스트
  6. 2021.11.25 wasm interfacing example
  7. 2021.11.10 ::open()
  8. 2021.10.26 winform udp 소켓 여러개
  9. 2021.10.26 wasm text format
  10. 2021.10.26 wasm text 와 binary 상호변환
Programming/golang2022. 2. 17. 18:26

 

$ vi hello.go
$ go build hello.go 
$ go run hello.go 
hello world

$ file hello
hello: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, with debug_info, not stripped

$ ldd hello
동적 실행 파일이 아닙니다

$ ls -alh
-rwxrwxr-x 1 minimonk minimonk 2.0M  2월 17 18:25 hello
-rw-rw-r-- 1 minimonk minimonk   73  2월 17 18:25 hello.go

[링크 : https://gobyexample.com/hello-world]

 

+

go install 부분을 sudo로 해서 그런가 go build도 sudo를 하지 않으면 안된다.

퍼미션 문제는 어떻게 해결할 수 있으려나...

 

$ go install -buildmode=shared std
$ sudo go build -linkshared hello.go
ls -alh
$ ls -alh
합계 32K
-rwxr-xr-x 1 root     root      20K  2월 17 18:28 hello
-rw-rw-r-- 1 minimonk minimonk   73  2월 17 18:25 hello.go

$ ldd hello
linux-vdso.so.1 (0x00007ffcfb5a4000)
libstd.so => /usr/lib/go-1.10/pkg/linux_amd64_dynlink/libstd.so (0x00007f2647852000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2647461000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f264725d000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f264703e000)
/lib64/ld-linux-x86-64.so.2 (0x00007f2649ee5000)

[링크 : https://stackoverflow.com/questions/19431296/building-and-linking-dynamically-from-a-go-binary]

 

+

2022.02.18

$ ls -alh /usr/lib/go-1.10/pkg/linux_amd64_dynlink/*so
-rw-r--r-- 1 root root 31M  2월 17 18:28 /usr/lib/go-1.10/pkg/linux_amd64_dynlink/libstd.so

$ ldd libstd.so 
linux-vdso.so.1 (0x00007ffcbe083000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f379ff4e000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f379fd2f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f379f93e000)
/lib64/ld-linux-x86-64.so.2 (0x00007f37a25e1000)

'Programming > golang' 카테고리의 다른 글

golang gore(repl), delve  (0) 2022.03.31
go build 옵션  (0) 2022.03.31
go lang static http server  (0) 2022.03.10
go lang rest  (0) 2022.02.11
golang  (0) 2020.05.18
Posted by 구차니
Programming/golang2022. 2. 11. 19:38

node.js 처럼 go mod init 명령을 통해 모듈을 설치할 수 있는 것 같다.

 

go 1.10은 지원도 끊어졌고 해당 명령어 지원하지 않으니

g0 1.11은 가야 할 것 같다.

[링크 : https://stackoverflow.com/questions/60410729/unknown-subcommand-mod-error-while-running-go-mod-init]

 

아래껀 천천히 테스트 해봐야겠네..

(우분투 20.04로 가야하나...)

go mod init noah.io/ark/rest
$ vi main.go
package main

import (
"encoding/json"
"net/http"
)

var users = map[string]*User{}

type User struct {
Nickname string `json:"nickname"`
Email    string `json:"email"`
}

func main() {
http.HandleFunc("/users", func(wr http.ResponseWriter, r *http.Request) {
switch r.Method {
case http.MethodGet: // 조회
json.NewEncoder(wr).Encode(users) // 인코딩
case http.MethodPost: // 등록
var user User
json.NewDecoder(r.Body).Decode(&user) // 디코딩

users[user.Email] = &user

json.NewEncoder(wr).Encode(user) // 인코딩
}
})
http.ListenAndServe(":8080", nil)
}

[링크 : https://woony-sik.tistory.com/m/12]

 

$ go get github.com/julienschmidt/httprouter
$ vi rest.go
package main

import (
    "fmt"
    "github.com/julienschmidt/httprouter"
    "net/http"
    "log"
)

func Index(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
    fmt.Fprint(w, "Welcome!\n")
}

func Hello(w http.ResponseWriter, r *http.Request, ps httprouter.Params) {
    fmt.Fprintf(w, "hello, %s!\n", ps.ByName("name"))
}

func main() {
    router := httprouter.New()
    router.GET("/", Index)
    router.GET("/hello/:name", Hello)

    log.Fatal(http.ListenAndServe(":8080", router))
}

[링크 : https://okky.kr/article/386116]

 

+

backport를 깔아주면 된다고는 한다.

$ sudo add-apt-repository ppa:longsleep/golang-backports
$ sudo apt-get install software-properties-common
$ sudo apt-get update 
$ sudo apt-get install golang-1.11

[링크 : https://www.gophp.io/install-go-1-11-on-ubuntu-18-04/]

 

추가해보니 1.18까지도 나왔나 보다.

$ sudo add-apt-repository ppa:longsleep/golang-backports
Golang 1.8, 1.9, 1.10, 1.11, 1.12, 1.13, 1.14, 1.15, 1.16, 1.17 and 1.18 PPA for Ubuntu
 더 많은 정보: https://launchpad.net/~longsleep/+archive/ubuntu/golang-backports
[ENTER]을 눌러 진행하거나 Ctrl-c를 눌러 추가하는것을 취소합니다.

 

그래도 1.17을 기준으로 설치 되는 듯.

$ sudo apt-get install golang
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
다음 패키지가 자동으로 설치되었지만 더 이상 필요하지 않습니다:
  golang-1.10-go golang-1.10-race-detector-runtime golang-1.10-src
  golang-1.11-doc golang-1.11-go golang-1.11-race-detector-runtime
  golang-1.11-src golang-race-detector-runtime
Use 'sudo apt autoremove' to remove them.
다음의 추가 패키지가 설치될 것입니다 :
  golang-1.17 golang-1.17-doc golang-1.17-go golang-1.17-src golang-doc
  golang-go golang-src
제안하는 패키지:
  bzr | brz mercurial subversion
다음 새 패키지를 설치할 것입니다:
  golang golang-1.17 golang-1.17-doc golang-1.17-go golang-1.17-src golang-doc
다음 패키지를 업그레이드할 것입니다:
  golang-go golang-src
2개 업그레이드, 6개 새로 설치, 0개 제거 및 1개 업그레이드 안 함.
72.0 M바이트 아카이브를 받아야 합니다.
이 작업 후 424 M바이트의 디스크 공간을 더 사용하게 됩니다.

'Programming > golang' 카테고리의 다른 글

golang gore(repl), delve  (0) 2022.03.31
go build 옵션  (0) 2022.03.31
go lang static http server  (0) 2022.03.10
go hello world build static / shared  (0) 2022.02.17
golang  (0) 2020.05.18
Posted by 구차니
Programming/openGL2022. 2. 8. 12:47

mat 변수가 나오는걸 봐서는 구버전이라.. 요즘꺼에 돌려보려면 조금 고생할 듯.

openGL은 텍스쳐까진 보질 못해서 코드를 이해 못하겠네..

 

[링크 : https://webnautes.tistory.com/1098]

'Programming > openGL' 카테고리의 다른 글

opengl glortho gluperspective  (0) 2023.08.28
glReadPixels() 와 glUseProgram()  (0) 2022.11.17
glMatrixMode()  (0) 2020.04.14
opengl superbible 3rd 리눅스 빌드 패키지  (0) 2020.04.08
opengl super bible 3rd - 4,5 chapter  (0) 2020.04.06
Posted by 구차니
Programming/openCV2022. 1. 25. 18:11

키즈카페에 있는 빔 프로젝터 + 카메라 식으로

카메라를 통해 사람을 인식하고 사람의 영역을 인식해 마우스 이벤트로 혹은

영역을 선택해 해당 영역의 객체를 터트리는 식으로 구현해볼까 고민중..

 

[링크 : https://pythonrepo.com/repo/HxnDev-Virtual-Mouse-using-OpenCV-python-computer-vision]

[링크 : https://thecodacus.com/posts/2021-12-14-gesture-recognition-virtual-mouse-using-opencv/]

'Programming > openCV' 카테고리의 다른 글

opencv를 이용한 다중 템플릿 추적  (0) 2024.01.15
cv2.imshow cv2.waitKey  (0) 2022.03.14
opencv-3.4.0 어플리케이션 빌드  (0) 2021.01.14
opencv face detect  (0) 2019.05.10
vscode python3 opencv lint  (0) 2019.05.10
Posted by 구차니
Programming/qt2021. 12. 8. 16:52

cpp는 친하지 않아서 읽는법도 모르겠네 -_ㅠ

 

MainWindow::MainWindow(QWidget *parent) :  
    QMainWindow(parent),  
    ui(new Ui::MainWindow)  
{  
    ui->setupUi(this);  
}

[링크 : https://stackoverflow.com/questions/4847110/a-newbie-question-in-qt]

  [링크 : https://www.cprogramming.com/tutorial/initialization-lists-c++.html]

[링크 : https://cakel.tistory.com/entry/0031-GUI-프로그래밍-소개]

'Programming > qt' 카테고리의 다른 글

qt5 fb reset  (0) 2021.02.23
qt framebuffer에 출력하기  (0) 2021.02.09
qt - ts / qm  (0) 2015.02.24
qt 5.3 cross compile 조사  (0) 2015.01.21
qt 4.x/5.x INSTALL_PATH  (0) 2015.01.20
Posted by 구차니
Programming/wasm2021. 11. 25. 19:07

웹 어셈블리에서

인자로 입력 받아 결과를 웹에서 받는 예제를 찾아봄.

 

wasm으로 변환될 코드는 int 형을 받아서 int 형으로 출력할 것이고

#include <math.h>

extern "C" {

int int_sqrt(int x) {
  return sqrt(x);
}

}

 

빌드는 아래와 같이 emcc를 통해 ccall과 cwrap 방식으로 _int_sqrt 함수를 내보내라 인것 같은데

int_sqrt가 아니라 _int_sqrt는 calling convention때문인가?

$ emcc tests/hello_function.cpp -o function.html -s EXPORTED_FUNCTIONS='["_int_sqrt"]' -s EXPORTED_RUNTIME_METHODS='["ccall","cwrap"]'

 

웹에서 받는 법이 두가지라는데 cwrap으로 하면 int_sqrt 객체를 만들어서 한다는데 리턴이 되는진 모르겠고

ccall로 하면 인자를 던지는게 조금 귀찮아 지지만 var result에 결과가 들어가는 듯.

int_sqrt = Module.cwrap('int_sqrt', 'number', ['number'])
int_sqrt(12)
int_sqrt(28)

// Call C from JavaScript
var result = Module.ccall('int_sqrt', // name of C function
  'number', // return type
  ['number'], // argument types
  [28]); // arguments

// result is 5

[링크 : https://emscripten.org/docs/porting/connecting_cpp_and_javascript/Interacting-with-code.html]

 

 

[링크 : https://m.blog.daum.net/junek69/88]

[링크 : https://developer.mozilla.org/ko/docs/WebAssembly/C_to_wasm]

 

'Programming > wasm' 카테고리의 다른 글

wasm 배열 예제  (0) 2023.01.31
wasm text format  (0) 2021.10.26
wasm text 와 binary 상호변환  (0) 2021.10.26
emcc wasm 빌드  (0) 2021.10.25
wasm from c, cpp  (0) 2021.10.24
Posted by 구차니
Programming/C++ STL2021. 11. 10. 18:10

QT에서 QSeialPort.open() 이 있고

QSerialPort를 상속받은 클래스에서

open()을 하면 자동으로 부모인 QSeialPort.open() 를 호출하게 되는데

CPP가 아닌 C의 fnctl.h의 open()을 열고 싶으면

::open()을 하면 되...나?

 

[링크 : https://stackoverflow.com/questions/10772169/calling-same-name-function]

'Programming > C++ STL' 카테고리의 다른 글

cpp lambda  (0) 2024.11.22
cpp static_cast<type>  (0) 2023.02.09
vector 값 비우기  (0) 2021.10.02
cpp 부모타입으로 업 캐스팅 된 객체의 원래 클래스 알기  (0) 2021.09.30
cpp string 관련  (0) 2019.06.10
Posted by 구차니
Programming/c# & winform2021. 10. 26. 18:07

'Programming > c# & winform' 카테고리의 다른 글

window USB VID,PID enumeration  (0) 2022.04.27
c# postgresql 패키지  (0) 2022.04.27
c# thread  (0) 2021.10.20
Dispatcher / Control BeginInvoke()  (0) 2021.10.20
this.BeginInvoke()가 느려!  (0) 2021.10.20
Posted by 구차니
Programming/wasm2021. 10. 26. 11:08

wasm 파일은 바이너리라 열어봐도 내용이 안보이는데, 크롬으로 실행하고 디버거로 보면 텍스트로 변환(?) 된다.

 

단순한(?!) hello world 하나 출력할 뿐인데 드럽게 기네

(module
  (func $wasi_snapshot_preview1.fd_write (;0;) (import "wasi_snapshot_preview1" "fd_write") (param i32 i32 i32 i32) (result i32))
  (func $env.emscripten_memcpy_big (;1;) (import "env" "emscripten_memcpy_big") (param i32 i32 i32) (result i32))
  (func $env.setTempRet0 (;2;) (import "env" "setTempRet0") (param i32))
  (table $__indirect_function_table (;0;) (export "__indirect_function_table") 6 6 funcref)
  (memory $memory (;0;) (export "memory") 256 256)
  (global $global0 (mut i32) (i32.const 5245984))
  (global $global1 (mut i32) (i32.const 0))
  (global $global2 (mut i32) (i32.const 0))
  (elem $elem0 (i32.const 1) funcref (ref.func $func9) (ref.func $func8) (ref.func $func10) (ref.func $func41) (ref.func $func42))
  (func $__wasm_call_ctors (;3;) (export "__wasm_call_ctors")
    call $emscripten_stack_init
    call $func24
  )
  (func $func4 (result i32)
    (local $var0 i32) (local $var1 i32) (local $var2 i32) (local $var3 i32) (local $var4 i32) (local $var5 i32) (local $var6 i32) (local $var7 i32) (local $var8 i32)
    global.get $global0
    local.set $var0
    i32.const 16
    local.set $var1
    local.get $var0
    local.get $var1
    i32.sub
    local.set $var2
    local.get $var2
    global.set $global0
    i32.const 0
    local.set $var3
    local.get $var2
    local.get $var3
    i32.store offset=12
    i32.const 1078
    local.set $var4
    i32.const 0
    local.set $var5
    local.get $var4
    local.get $var5
    call $func44
    drop
    i32.const 0
    local.set $var6
    i32.const 16
    local.set $var7
    local.get $var2
    local.get $var7
    i32.add
    local.set $var8
    local.get $var8
    global.set $global0
    local.get $var6
    return
  )
  (func $main (;5;) (export "main") (param $var0 i32) (param $var1 i32) (result i32)
    (local $var2 i32)
    call $func4
    local.set $var2
    local.get $var2
    return
  )
  (func $__errno_location (;6;) (export "__errno_location") (result i32)
    i32.const 1744
  )
  (func $func7 (param $var0 i32) (result i32)
    block $label0
      local.get $var0
      br_if $label0
      i32.const 0
      return
    end $label0
    call $__errno_location
    local.get $var0
    i32.store
    i32.const -1
  )
  (func $func8 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32) (local $var4 i32) (local $var5 i32) (local $var6 i32) (local $var7 i32) (local $var8 i32) (local $var9 i32)
    global.get $global0
    i32.const 32
    i32.sub
    local.tee $var3
    global.set $global0
    local.get $var3
    local.get $var0
    i32.load offset=28
    local.tee $var4
    i32.store offset=16
    local.get $var0
    i32.load offset=20
    local.set $var5
    local.get $var3
    local.get $var2
    i32.store offset=28
    local.get $var3
    local.get $var1
    i32.store offset=24
    local.get $var3
    local.get $var5
    local.get $var4
    i32.sub
    local.tee $var1
    i32.store offset=20
    local.get $var1
    local.get $var2
    i32.add
    local.set $var6
    i32.const 2
    local.set $var7
    local.get $var3
    i32.const 16
    i32.add
    local.set $var1
    block $label4
      block $label2
        block $label1
          block $label0
            local.get $var0
            i32.load offset=60
            local.get $var3
            i32.const 16
            i32.add
            i32.const 2
            local.get $var3
            i32.const 12
            i32.add
            call $wasi_snapshot_preview1.fd_write
            call $func7
            br_if $label0
            loop $label3
              local.get $var6
              local.get $var3
              i32.load offset=12
              local.tee $var4
              i32.eq
              br_if $label1
              local.get $var4
              i32.const -1
              i32.le_s
              br_if $label2
              local.get $var1
              local.get $var4
              local.get $var1
              i32.load offset=4
              local.tee $var8
              i32.gt_u
              local.tee $var5
              i32.const 3
              i32.shl
              i32.add
              local.tee $var9
              local.get $var9
              i32.load
              local.get $var4
              local.get $var8
              i32.const 0
              local.get $var5
              select
              i32.sub
              local.tee $var8
              i32.add
              i32.store
              local.get $var1
              i32.const 12
              i32.const 4
              local.get $var5
              select
              i32.add
              local.tee $var9
              local.get $var9
              i32.load
              local.get $var8
              i32.sub
              i32.store
              local.get $var6
              local.get $var4
              i32.sub
              local.set $var6
              local.get $var0
              i32.load offset=60
              local.get $var1
              i32.const 8
              i32.add
              local.get $var1
              local.get $var5
              select
              local.tee $var1
              local.get $var7
              local.get $var5
              i32.sub
              local.tee $var7
              local.get $var3
              i32.const 12
              i32.add
              call $wasi_snapshot_preview1.fd_write
              call $func7
              i32.eqz
              br_if $label3
            end $label3
          end $label0
          local.get $var6
          i32.const -1
          i32.ne
          br_if $label2
        end $label1
        local.get $var0
        local.get $var0
        i32.load offset=44
        local.tee $var1
        i32.store offset=28
        local.get $var0
        local.get $var1
        i32.store offset=20
        local.get $var0
        local.get $var1
        local.get $var0
        i32.load offset=48
        i32.add
        i32.store offset=16
        local.get $var2
        local.set $var4
        br $label4
      end $label2
      i32.const 0
      local.set $var4
      local.get $var0
      i32.const 0
      i32.store offset=28
      local.get $var0
      i64.const 0
      i64.store offset=16
      local.get $var0
      local.get $var0
      i32.load
      i32.const 32
      i32.or
      i32.store
      local.get $var7
      i32.const 2
      i32.eq
      br_if $label4
      local.get $var2
      local.get $var1
      i32.load offset=4
      i32.sub
      local.set $var4
    end $label4
    local.get $var3
    i32.const 32
    i32.add
    global.set $global0
    local.get $var4
  )
  (func $func9 (param $var0 i32) (result i32)
    i32.const 0
  )
  (func $func10 (param $var0 i32) (param $var1 i64) (param $var2 i32) (result i64)
    i64.const 0
  )
  (func $func11 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32) (local $var4 i32) (local $var5 i32) (local $var6 i64)
    block $label0
      local.get $var2
      i32.eqz
      br_if $label0
      local.get $var2
      local.get $var0
      i32.add
      local.tee $var3
      i32.const -1
      i32.add
      local.get $var1
      i32.store8
      local.get $var0
      local.get $var1
      i32.store8
      local.get $var2
      i32.const 3
      i32.lt_u
      br_if $label0
      local.get $var3
      i32.const -2
      i32.add
      local.get $var1
      i32.store8
      local.get $var0
      local.get $var1
      i32.store8 offset=1
      local.get $var3
      i32.const -3
      i32.add
      local.get $var1
      i32.store8
      local.get $var0
      local.get $var1
      i32.store8 offset=2
      local.get $var2
      i32.const 7
      i32.lt_u
      br_if $label0
      local.get $var3
      i32.const -4
      i32.add
      local.get $var1
      i32.store8
      local.get $var0
      local.get $var1
      i32.store8 offset=3
      local.get $var2
      i32.const 9
      i32.lt_u
      br_if $label0
      local.get $var0
      i32.const 0
      local.get $var0
      i32.sub
      i32.const 3
      i32.and
      local.tee $var4
      i32.add
      local.tee $var3
      local.get $var1
      i32.const 255
      i32.and
      i32.const 16843009
      i32.mul
      local.tee $var1
      i32.store
      local.get $var3
      local.get $var2
      local.get $var4
      i32.sub
      i32.const -4
      i32.and
      local.tee $var4
      i32.add
      local.tee $var2
      i32.const -4
      i32.add
      local.get $var1
      i32.store
      local.get $var4
      i32.const 9
      i32.lt_u
      br_if $label0
      local.get $var3
      local.get $var1
      i32.store offset=8
      local.get $var3
      local.get $var1
      i32.store offset=4
      local.get $var2
      i32.const -8
      i32.add
      local.get $var1
      i32.store
      local.get $var2
      i32.const -12
      i32.add
      local.get $var1
      i32.store
      local.get $var4
      i32.const 25
      i32.lt_u
      br_if $label0
      local.get $var3
      local.get $var1
      i32.store offset=24
      local.get $var3
      local.get $var1
      i32.store offset=20
      local.get $var3
      local.get $var1
      i32.store offset=16
      local.get $var3
      local.get $var1
      i32.store offset=12
      local.get $var2
      i32.const -16
      i32.add
      local.get $var1
      i32.store
      local.get $var2
      i32.const -20
      i32.add
      local.get $var1
      i32.store
      local.get $var2
      i32.const -24
      i32.add
      local.get $var1
      i32.store
      local.get $var2
      i32.const -28
      i32.add
      local.get $var1
      i32.store
      local.get $var4
      local.get $var3
      i32.const 4
      i32.and
      i32.const 24
      i32.or
      local.tee $var5
      i32.sub
      local.tee $var2
      i32.const 32
      i32.lt_u
      br_if $label0
      local.get $var1
      i64.extend_i32_u
      i64.const 4294967297
      i64.mul
      local.set $var6
      local.get $var3
      local.get $var5
      i32.add
      local.set $var1
      loop $label1
        local.get $var1
        local.get $var6
        i64.store offset=24
        local.get $var1
        local.get $var6
        i64.store offset=16
        local.get $var1
        local.get $var6
        i64.store offset=8
        local.get $var1
        local.get $var6
        i64.store
        local.get $var1
        i32.const 32
        i32.add
        local.set $var1
        local.get $var2
        i32.const -32
        i32.add
        local.tee $var2
        i32.const 31
        i32.gt_u
        br_if $label1
      end $label1
    end $label0
    local.get $var0
  )
  (func $func12 (param $var0 i32) (result i32)
    local.get $var0
    i32.const -48
    i32.add
    i32.const 10
    i32.lt_u
  )
  (func $func13 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32) (local $var4 i32)
    local.get $var2
    i32.const 0
    i32.ne
    local.set $var3
    block $label3
      block $label1
        block $label0
          local.get $var0
          i32.const 3
          i32.and
          i32.eqz
          br_if $label0
          local.get $var2
          i32.eqz
          br_if $label0
          local.get $var1
          i32.const 255
          i32.and
          local.set $var4
          loop $label2
            local.get $var0
            i32.load8_u
            local.get $var4
            i32.eq
            br_if $label1
            local.get $var2
            i32.const -1
            i32.add
            local.tee $var2
            i32.const 0
            i32.ne
            local.set $var3
            local.get $var0
            i32.const 1
            i32.add
            local.tee $var0
            i32.const 3
            i32.and
            i32.eqz
            br_if $label0
            local.get $var2
            br_if $label2
          end $label2
        end $label0
        local.get $var3
        i32.eqz
        br_if $label3
      end $label1
      block $label4
        local.get $var0
        i32.load8_u
        local.get $var1
        i32.const 255
        i32.and
        i32.eq
        br_if $label4
        local.get $var2
        i32.const 4
        i32.lt_u
        br_if $label4
        local.get $var1
        i32.const 255
        i32.and
        i32.const 16843009
        i32.mul
        local.set $var4
        loop $label5
          local.get $var0
          i32.load
          local.get $var4
          i32.xor
          local.tee $var3
          i32.const -1
          i32.xor
          local.get $var3
          i32.const -16843009
          i32.add
          i32.and
          i32.const -2139062144
          i32.and
          br_if $label4
          local.get $var0
          i32.const 4
          i32.add
          local.set $var0
          local.get $var2
          i32.const -4
          i32.add
          local.tee $var2
          i32.const 3
          i32.gt_u
          br_if $label5
        end $label5
      end $label4
      local.get $var2
      i32.eqz
      br_if $label3
      local.get $var1
      i32.const 255
      i32.and
      local.set $var3
      loop $label7
        block $label6
          local.get $var0
          i32.load8_u
          local.get $var3
          i32.ne
          br_if $label6
          local.get $var0
          return
        end $label6
        local.get $var0
        i32.const 1
        i32.add
        local.set $var0
        local.get $var2
        i32.const -1
        i32.add
        local.tee $var2
        br_if $label7
      end $label7
    end $label3
    i32.const 0
  )
  (func $func14 (param $var0 i32)
  )
  (func $func15 (param $var0 i32)
  )
  (func $func16 (result i32)
    i32.const 2856
    call $func14
    i32.const 2864
  )
  (func $func17
    i32.const 2856
    call $func15
  )
  (func $func18 (param $var0 i32) (result i32)
    (local $var1 i32)
    local.get $var0
    local.get $var0
    i32.load8_u offset=74
    local.tee $var1
    i32.const -1
    i32.add
    local.get $var1
    i32.or
    i32.store8 offset=74
    block $label0
      local.get $var0
      i32.load
      local.tee $var1
      i32.const 8
      i32.and
      i32.eqz
      br_if $label0
      local.get $var0
      local.get $var1
      i32.const 32
      i32.or
      i32.store
      i32.const -1
      return
    end $label0
    local.get $var0
    i64.const 0
    i64.store offset=4 align=4
    local.get $var0
    local.get $var0
    i32.load offset=44
    local.tee $var1
    i32.store offset=28
    local.get $var0
    local.get $var1
    i32.store offset=20
    local.get $var0
    local.get $var1
    local.get $var0
    i32.load offset=48
    i32.add
    i32.store offset=16
    i32.const 0
  )
  (func $func19 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32) (local $var4 i32) (local $var5 i32)
    block $label0
      local.get $var2
      i32.const 512
      i32.lt_u
      br_if $label0
      local.get $var0
      local.get $var1
      local.get $var2
      call $env.emscripten_memcpy_big
      drop
      local.get $var0
      return
    end $label0
    local.get $var0
    local.get $var2
    i32.add
    local.set $var3
    block $label8
      block $label1
        local.get $var1
        local.get $var0
        i32.xor
        i32.const 3
        i32.and
        br_if $label1
        block $label3
          block $label2
            local.get $var0
            i32.const 3
            i32.and
            br_if $label2
            local.get $var0
            local.set $var2
            br $label3
          end $label2
          block $label4
            local.get $var2
            i32.const 1
            i32.ge_s
            br_if $label4
            local.get $var0
            local.set $var2
            br $label3
          end $label4
          local.get $var0
          local.set $var2
          loop $label5
            local.get $var2
            local.get $var1
            i32.load8_u
            i32.store8
            local.get $var1
            i32.const 1
            i32.add
            local.set $var1
            local.get $var2
            i32.const 1
            i32.add
            local.tee $var2
            i32.const 3
            i32.and
            i32.eqz
            br_if $label3
            local.get $var2
            local.get $var3
            i32.lt_u
            br_if $label5
          end $label5
        end $label3
        block $label6
          local.get $var3
          i32.const -4
          i32.and
          local.tee $var4
          i32.const 64
          i32.lt_u
          br_if $label6
          local.get $var2
          local.get $var4
          i32.const -64
          i32.add
          local.tee $var5
          i32.gt_u
          br_if $label6
          loop $label7
            local.get $var2
            local.get $var1
            i32.load
            i32.store
            local.get $var2
            local.get $var1
            i32.load offset=4
            i32.store offset=4
            local.get $var2
            local.get $var1
            i32.load offset=8
            i32.store offset=8
            local.get $var2
            local.get $var1
            i32.load offset=12
            i32.store offset=12
            local.get $var2
            local.get $var1
            i32.load offset=16
            i32.store offset=16
            local.get $var2
            local.get $var1
            i32.load offset=20
            i32.store offset=20
            local.get $var2
            local.get $var1
            i32.load offset=24
            i32.store offset=24
            local.get $var2
            local.get $var1
            i32.load offset=28
            i32.store offset=28
            local.get $var2
            local.get $var1
            i32.load offset=32
            i32.store offset=32
            local.get $var2
            local.get $var1
            i32.load offset=36
            i32.store offset=36
            local.get $var2
            local.get $var1
            i32.load offset=40
            i32.store offset=40
            local.get $var2
            local.get $var1
            i32.load offset=44
            i32.store offset=44
            local.get $var2
            local.get $var1
            i32.load offset=48
            i32.store offset=48
            local.get $var2
            local.get $var1
            i32.load offset=52
            i32.store offset=52
            local.get $var2
            local.get $var1
            i32.load offset=56
            i32.store offset=56
            local.get $var2
            local.get $var1
            i32.load offset=60
            i32.store offset=60
            local.get $var1
            i32.const 64
            i32.add
            local.set $var1
            local.get $var2
            i32.const 64
            i32.add
            local.tee $var2
            local.get $var5
            i32.le_u
            br_if $label7
          end $label7
        end $label6
        local.get $var2
        local.get $var4
        i32.ge_u
        br_if $label8
        loop $label9
          local.get $var2
          local.get $var1
          i32.load
          i32.store
          local.get $var1
          i32.const 4
          i32.add
          local.set $var1
          local.get $var2
          i32.const 4
          i32.add
          local.tee $var2
          local.get $var4
          i32.lt_u
          br_if $label9
          br $label8
        end $label9
        unreachable
      end $label1
      block $label10
        local.get $var3
        i32.const 4
        i32.ge_u
        br_if $label10
        local.get $var0
        local.set $var2
        br $label8
      end $label10
      block $label11
        local.get $var3
        i32.const -4
        i32.add
        local.tee $var4
        local.get $var0
        i32.ge_u
        br_if $label11
        local.get $var0
        local.set $var2
        br $label8
      end $label11
      local.get $var0
      local.set $var2
      loop $label12
        local.get $var2
        local.get $var1
        i32.load8_u
        i32.store8
        local.get $var2
        local.get $var1
        i32.load8_u offset=1
        i32.store8 offset=1
        local.get $var2
        local.get $var1
        i32.load8_u offset=2
        i32.store8 offset=2
        local.get $var2
        local.get $var1
        i32.load8_u offset=3
        i32.store8 offset=3
        local.get $var1
        i32.const 4
        i32.add
        local.set $var1
        local.get $var2
        i32.const 4
        i32.add
        local.tee $var2
        local.get $var4
        i32.le_u
        br_if $label12
      end $label12
    end $label8
    block $label13
      local.get $var2
      local.get $var3
      i32.ge_u
      br_if $label13
      loop $label14
        local.get $var2
        local.get $var1
        i32.load8_u
        i32.store8
        local.get $var1
        i32.const 1
        i32.add
        local.set $var1
        local.get $var2
        i32.const 1
        i32.add
        local.tee $var2
        local.get $var3
        i32.ne
        br_if $label14
      end $label14
    end $label13
    local.get $var0
  )
  (func $func20 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32) (local $var4 i32) (local $var5 i32)
    block $label1
      block $label0
        local.get $var2
        i32.load offset=16
        local.tee $var3
        br_if $label0
        i32.const 0
        local.set $var4
        local.get $var2
        call $func18
        br_if $label1
        local.get $var2
        i32.load offset=16
        local.set $var3
      end $label0
      block $label2
        local.get $var3
        local.get $var2
        i32.load offset=20
        local.tee $var5
        i32.sub
        local.get $var1
        i32.ge_u
        br_if $label2
        local.get $var2
        local.get $var0
        local.get $var1
        local.get $var2
        i32.load offset=36
        call_indirect (param i32 i32 i32) (result i32)
        return
      end $label2
      block $label4
        block $label3
          local.get $var2
          i32.load8_s offset=75
          i32.const 0
          i32.ge_s
          br_if $label3
          i32.const 0
          local.set $var3
          br $label4
        end $label3
        local.get $var1
        local.set $var4
        loop $label6
          block $label5
            local.get $var4
            local.tee $var3
            br_if $label5
            i32.const 0
            local.set $var3
            br $label4
          end $label5
          local.get $var0
          local.get $var3
          i32.const -1
          i32.add
          local.tee $var4
          i32.add
          i32.load8_u
          i32.const 10
          i32.ne
          br_if $label6
        end $label6
        local.get $var2
        local.get $var0
        local.get $var3
        local.get $var2
        i32.load offset=36
        call_indirect (param i32 i32 i32) (result i32)
        local.tee $var4
        local.get $var3
        i32.lt_u
        br_if $label1
        local.get $var0
        local.get $var3
        i32.add
        local.set $var0
        local.get $var1
        local.get $var3
        i32.sub
        local.set $var1
        local.get $var2
        i32.load offset=20
        local.set $var5
      end $label4
      local.get $var5
      local.get $var0
      local.get $var1
      call $func19
      drop
      local.get $var2
      local.get $var2
      i32.load offset=20
      local.get $var1
      i32.add
      i32.store offset=20
      local.get $var3
      local.get $var1
      i32.add
      local.set $var4
    end $label1
    local.get $var4
  )
  (func $func21 (result i32)
    i32.const 42
  )
  (func $func22 (result i32)
    call $func21
  )
  (func $func23 (result i32)
    i32.const 2868
  )
  (func $func24
    i32.const 0
    i32.const 2792
    i32.const 40
    i32.add
    i32.store offset=3036
    i32.const 0
    call $func22
    i32.store offset=2904
  )
  (func $func25 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32)
    i32.const 1
    local.set $var3
    block $label1
      block $label0
        local.get $var0
        i32.eqz
        br_if $label0
        local.get $var1
        i32.const 127
        i32.le_u
        br_if $label1
        block $label3
          block $label2
            call $func23
            i32.load offset=168
            i32.load
            br_if $label2
            local.get $var1
            i32.const -128
            i32.and
            i32.const 57216
            i32.eq
            br_if $label1
            call $__errno_location
            i32.const 25
            i32.store
            br $label3
          end $label2
          block $label4
            local.get $var1
            i32.const 2047
            i32.gt_u
            br_if $label4
            local.get $var0
            local.get $var1
            i32.const 63
            i32.and
            i32.const 128
            i32.or
            i32.store8 offset=1
            local.get $var0
            local.get $var1
            i32.const 6
            i32.shr_u
            i32.const 192
            i32.or
            i32.store8
            i32.const 2
            return
          end $label4
          block $label6
            block $label5
              local.get $var1
              i32.const 55296
              i32.lt_u
              br_if $label5
              local.get $var1
              i32.const -8192
              i32.and
              i32.const 57344
              i32.ne
              br_if $label6
            end $label5
            local.get $var0
            local.get $var1
            i32.const 63
            i32.and
            i32.const 128
            i32.or
            i32.store8 offset=2
            local.get $var0
            local.get $var1
            i32.const 12
            i32.shr_u
            i32.const 224
            i32.or
            i32.store8
            local.get $var0
            local.get $var1
            i32.const 6
            i32.shr_u
            i32.const 63
            i32.and
            i32.const 128
            i32.or
            i32.store8 offset=1
            i32.const 3
            return
          end $label6
          block $label7
            local.get $var1
            i32.const -65536
            i32.add
            i32.const 1048575
            i32.gt_u
            br_if $label7
            local.get $var0
            local.get $var1
            i32.const 63
            i32.and
            i32.const 128
            i32.or
            i32.store8 offset=3
            local.get $var0
            local.get $var1
            i32.const 18
            i32.shr_u
            i32.const 240
            i32.or
            i32.store8
            local.get $var0
            local.get $var1
            i32.const 6
            i32.shr_u
            i32.const 63
            i32.and
            i32.const 128
            i32.or
            i32.store8 offset=2
            local.get $var0
            local.get $var1
            i32.const 12
            i32.shr_u
            i32.const 63
            i32.and
            i32.const 128
            i32.or
            i32.store8 offset=1
            i32.const 4
            return
          end $label7
          call $__errno_location
          i32.const 25
          i32.store
        end $label3
        i32.const -1
        local.set $var3
      end $label0
      local.get $var3
      return
    end $label1
    local.get $var0
    local.get $var1
    i32.store8
    i32.const 1
  )
  (func $func26 (param $var0 i32) (param $var1 i32) (result i32)
    block $label0
      local.get $var0
      br_if $label0
      i32.const 0
      return
    end $label0
    local.get $var0
    local.get $var1
    i32.const 0
    call $func25
  )
  (func $func27 (param $var0 f64) (param $var1 i32) (result f64)
    (local $var2 i64) (local $var3 i32)
    block $label0
      local.get $var0
      i64.reinterpret_f64
      local.tee $var2
      i64.const 52
      i64.shr_u
      i32.wrap_i64
      i32.const 2047
      i32.and
      local.tee $var3
      i32.const 2047
      i32.eq
      br_if $label0
      block $label1
        local.get $var3
        br_if $label1
        block $label3
          block $label2
            local.get $var0
            f64.const 0.0
            f64.ne
            br_if $label2
            i32.const 0
            local.set $var3
            br $label3
          end $label2
          local.get $var0
          f64.const 18446744073709552000
          f64.mul
          local.get $var1
          call $func27
          local.set $var0
          local.get $var1
          i32.load
          i32.const -64
          i32.add
          local.set $var3
        end $label3
        local.get $var1
        local.get $var3
        i32.store
        local.get $var0
        return
      end $label1
      local.get $var1
      local.get $var3
      i32.const -1022
      i32.add
      i32.store
      local.get $var2
      i64.const -9218868437227405313
      i64.and
      i64.const 4602678819172646912
      i64.or
      f64.reinterpret_i64
      local.set $var0
    end $label0
    local.get $var0
  )
  (func $func28 (param $var0 i32) (param $var1 i64) (param $var2 i64) (param $var3 i32)
    (local $var4 i64)
    block $label1
      block $label0
        local.get $var3
        i32.const 64
        i32.and
        i32.eqz
        br_if $label0
        local.get $var1
        local.get $var3
        i32.const -64
        i32.add
        i64.extend_i32_u
        i64.shl
        local.set $var2
        i64.const 0
        local.set $var1
        br $label1
      end $label0
      local.get $var3
      i32.eqz
      br_if $label1
      local.get $var1
      i32.const 64
      local.get $var3
      i32.sub
      i64.extend_i32_u
      i64.shr_u
      local.get $var2
      local.get $var3
      i64.extend_i32_u
      local.tee $var4
      i64.shl
      i64.or
      local.set $var2
      local.get $var1
      local.get $var4
      i64.shl
      local.set $var1
    end $label1
    local.get $var0
    local.get $var1
    i64.store
    local.get $var0
    local.get $var2
    i64.store offset=8
  )
  (func $func29 (param $var0 i32) (param $var1 i64) (param $var2 i64) (param $var3 i32)
    (local $var4 i64)
    block $label1
      block $label0
        local.get $var3
        i32.const 64
        i32.and
        i32.eqz
        br_if $label0
        local.get $var2
        local.get $var3
        i32.const -64
        i32.add
        i64.extend_i32_u
        i64.shr_u
        local.set $var1
        i64.const 0
        local.set $var2
        br $label1
      end $label0
      local.get $var3
      i32.eqz
      br_if $label1
      local.get $var2
      i32.const 64
      local.get $var3
      i32.sub
      i64.extend_i32_u
      i64.shl
      local.get $var1
      local.get $var3
      i64.extend_i32_u
      local.tee $var4
      i64.shr_u
      i64.or
      local.set $var1
      local.get $var2
      local.get $var4
      i64.shr_u
      local.set $var2
    end $label1
    local.get $var0
    local.get $var1
    i64.store
    local.get $var0
    local.get $var2
    i64.store offset=8
  )
  (func $func30 (param $var0 i64) (param $var1 i64) (result f64)
    (local $var2 i32) (local $var3 i32) (local $var4 i64) (local $var5 i64)
    global.get $global0
    i32.const 32
    i32.sub
    local.tee $var2
    global.set $global0
    block $label2
      block $label0
        local.get $var1
        i64.const 9223372036854775807
        i64.and
        local.tee $var4
        i64.const -4323737117252386816
        i64.add
        local.get $var4
        i64.const -4899634919602388992
        i64.add
        i64.ge_u
        br_if $label0
        local.get $var0
        i64.const 60
        i64.shr_u
        local.get $var1
        i64.const 4
        i64.shl
        i64.or
        local.set $var4
        block $label1
          local.get $var0
          i64.const 1152921504606846975
          i64.and
          local.tee $var0
          i64.const 576460752303423489
          i64.lt_u
          br_if $label1
          local.get $var4
          i64.const 4611686018427387905
          i64.add
          local.set $var5
          br $label2
        end $label1
        local.get $var4
        i64.const 4611686018427387904
        i64.add
        local.set $var5
        local.get $var0
        i64.const 576460752303423488
        i64.xor
        i64.const 0
        i64.ne
        br_if $label2
        local.get $var5
        local.get $var4
        i64.const 1
        i64.and
        i64.add
        local.set $var5
        br $label2
      end $label0
      block $label3
        local.get $var0
        i64.eqz
        local.get $var4
        i64.const 9223090561878065152
        i64.lt_u
        local.get $var4
        i64.const 9223090561878065152
        i64.eq
        select
        br_if $label3
        local.get $var0
        i64.const 60
        i64.shr_u
        local.get $var1
        i64.const 4
        i64.shl
        i64.or
        i64.const 2251799813685247
        i64.and
        i64.const 9221120237041090560
        i64.or
        local.set $var5
        br $label2
      end $label3
      i64.const 9218868437227405312
      local.set $var5
      local.get $var4
      i64.const 4899634919602388991
      i64.gt_u
      br_if $label2
      i64.const 0
      local.set $var5
      local.get $var4
      i64.const 48
      i64.shr_u
      i32.wrap_i64
      local.tee $var3
      i32.const 15249
      i32.lt_u
      br_if $label2
      local.get $var2
      i32.const 16
      i32.add
      local.get $var0
      local.get $var1
      i64.const 281474976710655
      i64.and
      i64.const 281474976710656
      i64.or
      local.tee $var4
      local.get $var3
      i32.const -15233
      i32.add
      call $func28
      local.get $var2
      local.get $var0
      local.get $var4
      i32.const 15361
      local.get $var3
      i32.sub
      call $func29
      local.get $var2
      i64.load
      local.tee $var4
      i64.const 60
      i64.shr_u
      local.get $var2
      i32.const 8
      i32.add
      i64.load
      i64.const 4
      i64.shl
      i64.or
      local.set $var5
      block $label4
        local.get $var4
        i64.const 1152921504606846975
        i64.and
        local.get $var2
        i64.load offset=16
        local.get $var2
        i32.const 16
        i32.add
        i32.const 8
        i32.add
        i64.load
        i64.or
        i64.const 0
        i64.ne
        i64.extend_i32_u
        i64.or
        local.tee $var4
        i64.const 576460752303423489
        i64.lt_u
        br_if $label4
        local.get $var5
        i64.const 1
        i64.add
        local.set $var5
        br $label2
      end $label4
      local.get $var4
      i64.const 576460752303423488
      i64.xor
      i64.const 0
      i64.ne
      br_if $label2
      local.get $var5
      i64.const 1
      i64.and
      local.get $var5
      i64.add
      local.set $var5
    end $label2
    local.get $var2
    i32.const 32
    i32.add
    global.set $global0
    local.get $var5
    local.get $var1
    i64.const -9223372036854775808
    i64.and
    i64.or
    f64.reinterpret_i64
  )
  (func $func31 (param $var0 i32) (param $var1 i32) (param $var2 i32) (param $var3 i32) (param $var4 i32) (result i32)
    (local $var5 i32) (local $var6 i32) (local $var7 i32)
    global.get $global0
    i32.const 208
    i32.sub
    local.tee $var5
    global.set $global0
    local.get $var5
    local.get $var2
    i32.store offset=204
    i32.const 0
    local.set $var2
    local.get $var5
    i32.const 160
    i32.add
    i32.const 0
    i32.const 40
    call $func11
    drop
    local.get $var5
    local.get $var5
    i32.load offset=204
    i32.store offset=200
    block $label1
      block $label0
        i32.const 0
        local.get $var1
        local.get $var5
        i32.const 200
        i32.add
        local.get $var5
        i32.const 80
        i32.add
        local.get $var5
        i32.const 160
        i32.add
        local.get $var3
        local.get $var4
        call $func32
        i32.const 0
        i32.ge_s
        br_if $label0
        i32.const -1
        local.set $var1
        br $label1
      end $label0
      block $label2
        local.get $var0
        i32.load offset=76
        i32.const 0
        i32.lt_s
        br_if $label2
        local.get $var0
        call $func45
        local.set $var2
      end $label2
      local.get $var0
      i32.load
      local.set $var6
      block $label3
        local.get $var0
        i32.load8_s offset=74
        i32.const 0
        i32.gt_s
        br_if $label3
        local.get $var0
        local.get $var6
        i32.const -33
        i32.and
        i32.store
      end $label3
      local.get $var6
      i32.const 32
      i32.and
      local.set $var6
      block $label5
        block $label4
          local.get $var0
          i32.load offset=48
          i32.eqz
          br_if $label4
          local.get $var0
          local.get $var1
          local.get $var5
          i32.const 200
          i32.add
          local.get $var5
          i32.const 80
          i32.add
          local.get $var5
          i32.const 160
          i32.add
          local.get $var3
          local.get $var4
          call $func32
          local.set $var1
          br $label5
        end $label4
        local.get $var0
        i32.const 80
        i32.store offset=48
        local.get $var0
        local.get $var5
        i32.const 80
        i32.add
        i32.store offset=16
        local.get $var0
        local.get $var5
        i32.store offset=28
        local.get $var0
        local.get $var5
        i32.store offset=20
        local.get $var0
        i32.load offset=44
        local.set $var7
        local.get $var0
        local.get $var5
        i32.store offset=44
        local.get $var0
        local.get $var1
        local.get $var5
        i32.const 200
        i32.add
        local.get $var5
        i32.const 80
        i32.add
        local.get $var5
        i32.const 160
        i32.add
        local.get $var3
        local.get $var4
        call $func32
        local.set $var1
        local.get $var7
        i32.eqz
        br_if $label5
        local.get $var0
        i32.const 0
        i32.const 0
        local.get $var0
        i32.load offset=36
        call_indirect (param i32 i32 i32) (result i32)
        drop
        local.get $var0
        i32.const 0
        i32.store offset=48
        local.get $var0
        local.get $var7
        i32.store offset=44
        local.get $var0
        i32.const 0
        i32.store offset=28
        local.get $var0
        i32.const 0
        i32.store offset=16
        local.get $var0
        i32.load offset=20
        local.set $var3
        local.get $var0
        i32.const 0
        i32.store offset=20
        local.get $var1
        i32.const -1
        local.get $var3
        select
        local.set $var1
      end $label5
      local.get $var0
      local.get $var0
      i32.load
      local.tee $var3
      local.get $var6
      i32.or
      i32.store
      i32.const -1
      local.get $var1
      local.get $var3
      i32.const 32
      i32.and
      select
      local.set $var1
      local.get $var2
      i32.eqz
      br_if $label1
      local.get $var0
      call $func46
    end $label1
    local.get $var5
    i32.const 208
    i32.add
    global.set $global0
    local.get $var1
  )
  (func $func32 (param $var0 i32) (param $var1 i32) (param $var2 i32) (param $var3 i32) (param $var4 i32) (param $var5 i32) (param $var6 i32) (result i32)
    (local $var7 i32) (local $var8 i32) (local $var9 i32) (local $var10 i32) (local $var11 i32) (local $var12 i32) (local $var13 i32) (local $var14 i32) (local $var15 i32) (local $var16 i32) (local $var17 i32) (local $var18 i32) (local $var19 i32) (local $var20 i32) (local $var21 i32) (local $var22 i64)
    global.get $global0
    i32.const 80
    i32.sub
    local.tee $var7
    global.set $global0
    local.get $var7
    local.get $var1
    i32.store offset=76
    local.get $var7
    i32.const 55
    i32.add
    local.set $var8
    local.get $var7
    i32.const 56
    i32.add
    local.set $var9
    i32.const 0
    local.set $var10
    i32.const 0
    local.set $var11
    i32.const 0
    local.set $var1
    block $label24
      loop $label8
        block $label0
          local.get $var11
          i32.const 0
          i32.lt_s
          br_if $label0
          block $label1
            local.get $var1
            i32.const 2147483647
            local.get $var11
            i32.sub
            i32.le_s
            br_if $label1
            call $__errno_location
            i32.const 61
            i32.store
            i32.const -1
            local.set $var11
            br $label0
          end $label1
          local.get $var1
          local.get $var11
          i32.add
          local.set $var11
        end $label0
        local.get $var7
        i32.load offset=76
        local.tee $var12
        local.set $var1
        block $label29
          block $label32
            block $label45
              block $label16
                block $label2
                  local.get $var12
                  i32.load8_u
                  local.tee $var13
                  i32.eqz
                  br_if $label2
                  loop $label66
                    block $label5
                      block $label4
                        block $label3
                          local.get $var13
                          i32.const 255
                          i32.and
                          local.tee $var13
                          br_if $label3
                          local.get $var1
                          local.set $var13
                          br $label4
                        end $label3
                        local.get $var13
                        i32.const 37
                        i32.ne
                        br_if $label5
                        local.get $var1
                        local.set $var13
                        loop $label6
                          local.get $var1
                          i32.load8_u offset=1
                          i32.const 37
                          i32.ne
                          br_if $label4
                          local.get $var7
                          local.get $var1
                          i32.const 2
                          i32.add
                          local.tee $var14
                          i32.store offset=76
                          local.get $var13
                          i32.const 1
                          i32.add
                          local.set $var13
                          local.get $var1
                          i32.load8_u offset=2
                          local.set $var15
                          local.get $var14
                          local.set $var1
                          local.get $var15
                          i32.const 37
                          i32.eq
                          br_if $label6
                        end $label6
                      end $label4
                      local.get $var13
                      local.get $var12
                      i32.sub
                      local.set $var1
                      block $label7
                        local.get $var0
                        i32.eqz
                        br_if $label7
                        local.get $var0
                        local.get $var12
                        local.get $var1
                        call $func33
                      end $label7
                      local.get $var1
                      br_if $label8
                      i32.const -1
                      local.set $var16
                      i32.const 1
                      local.set $var13
                      local.get $var7
                      i32.load offset=76
                      i32.load8_s offset=1
                      call $func12
                      local.set $var14
                      local.get $var7
                      i32.load offset=76
                      local.set $var1
                      block $label9
                        local.get $var14
                        i32.eqz
                        br_if $label9
                        local.get $var1
                        i32.load8_u offset=2
                        i32.const 36
                        i32.ne
                        br_if $label9
                        local.get $var1
                        i32.load8_s offset=1
                        i32.const -48
                        i32.add
                        local.set $var16
                        i32.const 1
                        local.set $var10
                        i32.const 3
                        local.set $var13
                      end $label9
                      local.get $var7
                      local.get $var1
                      local.get $var13
                      i32.add
                      local.tee $var1
                      i32.store offset=76
                      i32.const 0
                      local.set $var17
                      block $label11
                        block $label10
                          local.get $var1
                          i32.load8_s
                          local.tee $var15
                          i32.const -32
                          i32.add
                          local.tee $var14
                          i32.const 31
                          i32.le_u
                          br_if $label10
                          local.get $var1
                          local.set $var13
                          br $label11
                        end $label10
                        i32.const 0
                        local.set $var17
                        local.get $var1
                        local.set $var13
                        i32.const 1
                        local.get $var14
                        i32.shl
                        local.tee $var14
                        i32.const 75913
                        i32.and
                        i32.eqz
                        br_if $label11
                        loop $label12
                          local.get $var7
                          local.get $var1
                          i32.const 1
                          i32.add
                          local.tee $var13
                          i32.store offset=76
                          local.get $var14
                          local.get $var17
                          i32.or
                          local.set $var17
                          local.get $var1
                          i32.load8_s offset=1
                          local.tee $var15
                          i32.const -32
                          i32.add
                          local.tee $var14
                          i32.const 32
                          i32.ge_u
                          br_if $label11
                          local.get $var13
                          local.set $var1
                          i32.const 1
                          local.get $var14
                          i32.shl
                          local.tee $var14
                          i32.const 75913
                          i32.and
                          br_if $label12
                        end $label12
                      end $label11
                      block $label18
                        block $label13
                          local.get $var15
                          i32.const 42
                          i32.ne
                          br_if $label13
                          block $label15
                            block $label14
                              local.get $var13
                              i32.load8_s offset=1
                              call $func12
                              i32.eqz
                              br_if $label14
                              local.get $var7
                              i32.load offset=76
                              local.tee $var13
                              i32.load8_u offset=2
                              i32.const 36
                              i32.ne
                              br_if $label14
                              local.get $var13
                              i32.load8_s offset=1
                              i32.const 2
                              i32.shl
                              local.get $var4
                              i32.add
                              i32.const -192
                              i32.add
                              i32.const 10
                              i32.store
                              local.get $var13
                              i32.const 3
                              i32.add
                              local.set $var1
                              local.get $var13
                              i32.load8_s offset=1
                              i32.const 3
                              i32.shl
                              local.get $var3
                              i32.add
                              i32.const -384
                              i32.add
                              i32.load
                              local.set $var18
                              i32.const 1
                              local.set $var10
                              br $label15
                            end $label14
                            local.get $var10
                            br_if $label16
                            i32.const 0
                            local.set $var10
                            i32.const 0
                            local.set $var18
                            block $label17
                              local.get $var0
                              i32.eqz
                              br_if $label17
                              local.get $var2
                              local.get $var2
                              i32.load
                              local.tee $var1
                              i32.const 4
                              i32.add
                              i32.store
                              local.get $var1
                              i32.load
                              local.set $var18
                            end $label17
                            local.get $var7
                            i32.load offset=76
                            i32.const 1
                            i32.add
                            local.set $var1
                          end $label15
                          local.get $var7
                          local.get $var1
                          i32.store offset=76
                          local.get $var18
                          i32.const -1
                          i32.gt_s
                          br_if $label18
                          i32.const 0
                          local.get $var18
                          i32.sub
                          local.set $var18
                          local.get $var17
                          i32.const 8192
                          i32.or
                          local.set $var17
                          br $label18
                        end $label13
                        local.get $var7
                        i32.const 76
                        i32.add
                        call $func34
                        local.tee $var18
                        i32.const 0
                        i32.lt_s
                        br_if $label16
                        local.get $var7
                        i32.load offset=76
                        local.set $var1
                      end $label18
                      i32.const -1
                      local.set $var19
                      block $label19
                        local.get $var1
                        i32.load8_u
                        i32.const 46
                        i32.ne
                        br_if $label19
                        block $label20
                          local.get $var1
                          i32.load8_u offset=1
                          i32.const 42
                          i32.ne
                          br_if $label20
                          block $label21
                            local.get $var1
                            i32.load8_s offset=2
                            call $func12
                            i32.eqz
                            br_if $label21
                            local.get $var7
                            i32.load offset=76
                            local.tee $var1
                            i32.load8_u offset=3
                            i32.const 36
                            i32.ne
                            br_if $label21
                            local.get $var1
                            i32.load8_s offset=2
                            i32.const 2
                            i32.shl
                            local.get $var4
                            i32.add
                            i32.const -192
                            i32.add
                            i32.const 10
                            i32.store
                            local.get $var1
                            i32.load8_s offset=2
                            i32.const 3
                            i32.shl
                            local.get $var3
                            i32.add
                            i32.const -384
                            i32.add
                            i32.load
                            local.set $var19
                            local.get $var7
                            local.get $var1
                            i32.const 4
                            i32.add
                            local.tee $var1
                            i32.store offset=76
                            br $label19
                          end $label21
                          local.get $var10
                          br_if $label16
                          block $label23
                            block $label22
                              local.get $var0
                              br_if $label22
                              i32.const 0
                              local.set $var19
                              br $label23
                            end $label22
                            local.get $var2
                            local.get $var2
                            i32.load
                            local.tee $var1
                            i32.const 4
                            i32.add
                            i32.store
                            local.get $var1
                            i32.load
                            local.set $var19
                          end $label23
                          local.get $var7
                          local.get $var7
                          i32.load offset=76
                          i32.const 2
                          i32.add
                          local.tee $var1
                          i32.store offset=76
                          br $label19
                        end $label20
                        local.get $var7
                        local.get $var1
                        i32.const 1
                        i32.add
                        i32.store offset=76
                        local.get $var7
                        i32.const 76
                        i32.add
                        call $func34
                        local.set $var19
                        local.get $var7
                        i32.load offset=76
                        local.set $var1
                      end $label19
                      i32.const 0
                      local.set $var13
                      loop $label25
                        local.get $var13
                        local.set $var14
                        i32.const -1
                        local.set $var20
                        local.get $var1
                        i32.load8_s
                        i32.const -65
                        i32.add
                        i32.const 57
                        i32.gt_u
                        br_if $label24
                        local.get $var7
                        local.get $var1
                        i32.const 1
                        i32.add
                        local.tee $var15
                        i32.store offset=76
                        local.get $var1
                        i32.load8_s
                        local.set $var13
                        local.get $var15
                        local.set $var1
                        local.get $var13
                        local.get $var14
                        i32.const 58
                        i32.mul
                        i32.add
                        i32.const 1039
                        i32.add
                        i32.load8_u
                        local.tee $var13
                        i32.const -1
                        i32.add
                        i32.const 8
                        i32.lt_u
                        br_if $label25
                      end $label25
                      block $label30
                        block $label28
                          block $label26
                            local.get $var13
                            i32.const 19
                            i32.eq
                            br_if $label26
                            local.get $var13
                            i32.eqz
                            br_if $label24
                            block $label27
                              local.get $var16
                              i32.const 0
                              i32.lt_s
                              br_if $label27
                              local.get $var4
                              local.get $var16
                              i32.const 2
                              i32.shl
                              i32.add
                              local.get $var13
                              i32.store
                              local.get $var7
                              local.get $var3
                              local.get $var16
                              i32.const 3
                              i32.shl
                              i32.add
                              i64.load
                              i64.store offset=64
                              br $label28
                            end $label27
                            local.get $var0
                            i32.eqz
                            br_if $label29
                            local.get $var7
                            i32.const 64
                            i32.add
                            local.get $var13
                            local.get $var2
                            local.get $var6
                            call $func35
                            local.get $var7
                            i32.load offset=76
                            local.set $var15
                            br $label30
                          end $label26
                          i32.const -1
                          local.set $var20
                          local.get $var16
                          i32.const -1
                          i32.gt_s
                          br_if $label24
                        end $label28
                        i32.const 0
                        local.set $var1
                        local.get $var0
                        i32.eqz
                        br_if $label8
                      end $label30
                      local.get $var17
                      i32.const -65537
                      i32.and
                      local.tee $var21
                      local.get $var17
                      local.get $var17
                      i32.const 8192
                      i32.and
                      select
                      local.set $var13
                      i32.const 0
                      local.set $var20
                      i32.const 1024
                      local.set $var16
                      local.get $var9
                      local.set $var17
                      block $label34
                        block $label33
                          block $label60
                            block $label59
                              block $label42
                                block $label44
                                  block $label39
                                    block $label54
                                      block $label46
                                        block $label35
                                          block $label37
                                            block $label31
                                              block $label38
                                                block $label36
                                                  block $label40
                                                    block $label41
                                                      local.get $var15
                                                      i32.const -1
                                                      i32.add
                                                      i32.load8_s
                                                      local.tee $var1
                                                      i32.const -33
                                                      i32.and
                                                      local.get $var1
                                                      local.get $var1
                                                      i32.const 15
                                                      i32.and
                                                      i32.const 3
                                                      i32.eq
                                                      select
                                                      local.get $var1
                                                      local.get $var14
                                                      select
                                                      local.tee $var1
                                                      i32.const -88
                                                      i32.add
                                                      br_table $label31 $label32 $label32 $label32 $label32 $label32 $label32 $label32 $label32 $label33 $label32 $label34 $label35 $label33 $label33 $label33 $label32 $label35 $label32 $label32 $label32 $label32 $label36 $label37 $label38 $label32 $label32 $label39 $label32 $label40 $label32 $label32 $label31 $label41
                                                    end $label41
                                                    local.get $var9
                                                    local.set $var17
                                                    block $label43
                                                      local.get $var1
                                                      i32.const -65
                                                      i32.add
                                                      br_table $label33 $label32 $label42 $label32 $label33 $label33 $label33 $label43
                                                    end $label43
                                                    local.get $var1
                                                    i32.const 83
                                                    i32.eq
                                                    br_if $label44
                                                    br $label45
                                                  end $label40
                                                  i32.const 0
                                                  local.set $var20
                                                  i32.const 1024
                                                  local.set $var16
                                                  local.get $var7
                                                  i64.load offset=64
                                                  local.set $var22
                                                  br $label46
                                                end $label36
                                                i32.const 0
                                                local.set $var1
                                                block $label53
                                                  block $label52
                                                    block $label51
                                                      block $label50
                                                        block $label49
                                                          block $label48
                                                            block $label47
                                                              local.get $var14
                                                              i32.const 255
                                                              i32.and
                                                              br_table $label47 $label48 $label49 $label50 $label51 $label8 $label52 $label53 $label8
                                                            end $label47
                                                            local.get $var7
                                                            i32.load offset=64
                                                            local.get $var11
                                                            i32.store
                                                            br $label8
                                                          end $label48
                                                          local.get $var7
                                                          i32.load offset=64
                                                          local.get $var11
                                                          i32.store
                                                          br $label8
                                                        end $label49
                                                        local.get $var7
                                                        i32.load offset=64
                                                        local.get $var11
                                                        i64.extend_i32_s
                                                        i64.store
                                                        br $label8
                                                      end $label50
                                                      local.get $var7
                                                      i32.load offset=64
                                                      local.get $var11
                                                      i32.store16
                                                      br $label8
                                                    end $label51
                                                    local.get $var7
                                                    i32.load offset=64
                                                    local.get $var11
                                                    i32.store8
                                                    br $label8
                                                  end $label52
                                                  local.get $var7
                                                  i32.load offset=64
                                                  local.get $var11
                                                  i32.store
                                                  br $label8
                                                end $label53
                                                local.get $var7
                                                i32.load offset=64
                                                local.get $var11
                                                i64.extend_i32_s
                                                i64.store
                                                br $label8
                                              end $label38
                                              local.get $var19
                                              i32.const 8
                                              local.get $var19
                                              i32.const 8
                                              i32.gt_u
                                              select
                                              local.set $var19
                                              local.get $var13
                                              i32.const 8
                                              i32.or
                                              local.set $var13
                                              i32.const 120
                                              local.set $var1
                                            end $label31
                                            local.get $var7
                                            i64.load offset=64
                                            local.get $var9
                                            local.get $var1
                                            i32.const 32
                                            i32.and
                                            call $func36
                                            local.set $var12
                                            i32.const 0
                                            local.set $var20
                                            i32.const 1024
                                            local.set $var16
                                            local.get $var7
                                            i64.load offset=64
                                            i64.eqz
                                            br_if $label54
                                            local.get $var13
                                            i32.const 8
                                            i32.and
                                            i32.eqz
                                            br_if $label54
                                            local.get $var1
                                            i32.const 4
                                            i32.shr_u
                                            i32.const 1024
                                            i32.add
                                            local.set $var16
                                            i32.const 2
                                            local.set $var20
                                            br $label54
                                          end $label37
                                          i32.const 0
                                          local.set $var20
                                          i32.const 1024
                                          local.set $var16
                                          local.get $var7
                                          i64.load offset=64
                                          local.get $var9
                                          call $func37
                                          local.set $var12
                                          local.get $var13
                                          i32.const 8
                                          i32.and
                                          i32.eqz
                                          br_if $label54
                                          local.get $var19
                                          local.get $var9
                                          local.get $var12
                                          i32.sub
                                          local.tee $var1
                                          i32.const 1
                                          i32.add
                                          local.get $var19
                                          local.get $var1
                                          i32.gt_s
                                          select
                                          local.set $var19
                                          br $label54
                                        end $label35
                                        block $label55
                                          local.get $var7
                                          i64.load offset=64
                                          local.tee $var22
                                          i64.const -1
                                          i64.gt_s
                                          br_if $label55
                                          local.get $var7
                                          i64.const 0
                                          local.get $var22
                                          i64.sub
                                          local.tee $var22
                                          i64.store offset=64
                                          i32.const 1
                                          local.set $var20
                                          i32.const 1024
                                          local.set $var16
                                          br $label46
                                        end $label55
                                        block $label56
                                          local.get $var13
                                          i32.const 2048
                                          i32.and
                                          i32.eqz
                                          br_if $label56
                                          i32.const 1
                                          local.set $var20
                                          i32.const 1025
                                          local.set $var16
                                          br $label46
                                        end $label56
                                        i32.const 1026
                                        i32.const 1024
                                        local.get $var13
                                        i32.const 1
                                        i32.and
                                        local.tee $var20
                                        select
                                        local.set $var16
                                      end $label46
                                      local.get $var22
                                      local.get $var9
                                      call $func38
                                      local.set $var12
                                    end $label54
                                    local.get $var13
                                    i32.const -65537
                                    i32.and
                                    local.get $var13
                                    local.get $var19
                                    i32.const -1
                                    i32.gt_s
                                    select
                                    local.set $var13
                                    block $label57
                                      local.get $var7
                                      i64.load offset=64
                                      local.tee $var22
                                      i64.const 0
                                      i64.ne
                                      br_if $label57
                                      local.get $var19
                                      br_if $label57
                                      i32.const 0
                                      local.set $var19
                                      local.get $var9
                                      local.set $var12
                                      br $label45
                                    end $label57
                                    local.get $var19
                                    local.get $var9
                                    local.get $var12
                                    i32.sub
                                    local.get $var22
                                    i64.eqz
                                    i32.add
                                    local.tee $var1
                                    local.get $var19
                                    local.get $var1
                                    i32.gt_s
                                    select
                                    local.set $var19
                                    br $label45
                                  end $label39
                                  i32.const 0
                                  local.set $var20
                                  local.get $var7
                                  i32.load offset=64
                                  local.tee $var1
                                  i32.const 1071
                                  local.get $var1
                                  select
                                  local.tee $var12
                                  i32.const 0
                                  local.get $var19
                                  call $func13
                                  local.tee $var1
                                  local.get $var12
                                  local.get $var19
                                  i32.add
                                  local.get $var1
                                  select
                                  local.set $var17
                                  local.get $var21
                                  local.set $var13
                                  local.get $var1
                                  local.get $var12
                                  i32.sub
                                  local.get $var19
                                  local.get $var1
                                  select
                                  local.set $var19
                                  br $label32
                                end $label44
                                block $label58
                                  local.get $var19
                                  i32.eqz
                                  br_if $label58
                                  local.get $var7
                                  i32.load offset=64
                                  local.set $var14
                                  br $label59
                                end $label58
                                i32.const 0
                                local.set $var1
                                local.get $var0
                                i32.const 32
                                local.get $var18
                                i32.const 0
                                local.get $var13
                                call $func39
                                br $label60
                              end $label42
                              local.get $var7
                              i32.const 0
                              i32.store offset=12
                              local.get $var7
                              local.get $var7
                              i64.load offset=64
                              i64.store32 offset=8
                              local.get $var7
                              local.get $var7
                              i32.const 8
                              i32.add
                              i32.store offset=64
                              i32.const -1
                              local.set $var19
                              local.get $var7
                              i32.const 8
                              i32.add
                              local.set $var14
                            end $label59
                            i32.const 0
                            local.set $var1
                            block $label61
                              loop $label63
                                local.get $var14
                                i32.load
                                local.tee $var15
                                i32.eqz
                                br_if $label61
                                block $label62
                                  local.get $var7
                                  i32.const 4
                                  i32.add
                                  local.get $var15
                                  call $func26
                                  local.tee $var15
                                  i32.const 0
                                  i32.lt_s
                                  local.tee $var12
                                  br_if $label62
                                  local.get $var15
                                  local.get $var19
                                  local.get $var1
                                  i32.sub
                                  i32.gt_u
                                  br_if $label62
                                  local.get $var14
                                  i32.const 4
                                  i32.add
                                  local.set $var14
                                  local.get $var19
                                  local.get $var15
                                  local.get $var1
                                  i32.add
                                  local.tee $var1
                                  i32.gt_u
                                  br_if $label63
                                  br $label61
                                end $label62
                              end $label63
                              i32.const -1
                              local.set $var20
                              local.get $var12
                              br_if $label24
                            end $label61
                            local.get $var0
                            i32.const 32
                            local.get $var18
                            local.get $var1
                            local.get $var13
                            call $func39
                            block $label64
                              local.get $var1
                              br_if $label64
                              i32.const 0
                              local.set $var1
                              br $label60
                            end $label64
                            i32.const 0
                            local.set $var14
                            local.get $var7
                            i32.load offset=64
                            local.set $var15
                            loop $label65
                              local.get $var15
                              i32.load
                              local.tee $var12
                              i32.eqz
                              br_if $label60
                              local.get $var7
                              i32.const 4
                              i32.add
                              local.get $var12
                              call $func26
                              local.tee $var12
                              local.get $var14
                              i32.add
                              local.tee $var14
                              local.get $var1
                              i32.gt_s
                              br_if $label60
                              local.get $var0
                              local.get $var7
                              i32.const 4
                              i32.add
                              local.get $var12
                              call $func33
                              local.get $var15
                              i32.const 4
                              i32.add
                              local.set $var15
                              local.get $var14
                              local.get $var1
                              i32.lt_u
                              br_if $label65
                            end $label65
                          end $label60
                          local.get $var0
                          i32.const 32
                          local.get $var18
                          local.get $var1
                          local.get $var13
                          i32.const 8192
                          i32.xor
                          call $func39
                          local.get $var18
                          local.get $var1
                          local.get $var18
                          local.get $var1
                          i32.gt_s
                          select
                          local.set $var1
                          br $label8
                        end $label33
                        local.get $var0
                        local.get $var7
                        f64.load offset=64
                        local.get $var18
                        local.get $var19
                        local.get $var13
                        local.get $var1
                        local.get $var5
                        call_indirect (param i32 f64 i32 i32 i32 i32) (result i32)
                        local.set $var1
                        br $label8
                      end $label34
                      local.get $var7
                      local.get $var7
                      i64.load offset=64
                      i64.store8 offset=55
                      i32.const 1
                      local.set $var19
                      local.get $var8
                      local.set $var12
                      local.get $var9
                      local.set $var17
                      local.get $var21
                      local.set $var13
                      br $label32
                    end $label5
                    local.get $var7
                    local.get $var1
                    i32.const 1
                    i32.add
                    local.tee $var14
                    i32.store offset=76
                    local.get $var1
                    i32.load8_u offset=1
                    local.set $var13
                    local.get $var14
                    local.set $var1
                    br $label66
                  end $label66
                  unreachable
                end $label2
                local.get $var11
                local.set $var20
                local.get $var0
                br_if $label24
                local.get $var10
                i32.eqz
                br_if $label29
                i32.const 1
                local.set $var1
                block $label67
                  loop $label68
                    local.get $var4
                    local.get $var1
                    i32.const 2
                    i32.shl
                    i32.add
                    i32.load
                    local.tee $var13
                    i32.eqz
                    br_if $label67
                    local.get $var3
                    local.get $var1
                    i32.const 3
                    i32.shl
                    i32.add
                    local.get $var13
                    local.get $var2
                    local.get $var6
                    call $func35
                    i32.const 1
                    local.set $var20
                    local.get $var1
                    i32.const 1
                    i32.add
                    local.tee $var1
                    i32.const 10
                    i32.ne
                    br_if $label68
                    br $label24
                  end $label68
                  unreachable
                end $label67
                i32.const 1
                local.set $var20
                local.get $var1
                i32.const 10
                i32.ge_u
                br_if $label24
                loop $label69
                  local.get $var4
                  local.get $var1
                  i32.const 2
                  i32.shl
                  i32.add
                  i32.load
                  br_if $label16
                  i32.const 1
                  local.set $var20
                  local.get $var1
                  i32.const 1
                  i32.add
                  local.tee $var1
                  i32.const 10
                  i32.eq
                  br_if $label24
                  br $label69
                end $label69
                unreachable
              end $label16
              i32.const -1
              local.set $var20
              br $label24
            end $label45
            local.get $var9
            local.set $var17
          end $label32
          local.get $var0
          i32.const 32
          local.get $var20
          local.get $var17
          local.get $var12
          i32.sub
          local.tee $var15
          local.get $var19
          local.get $var19
          local.get $var15
          i32.lt_s
          select
          local.tee $var17
          i32.add
          local.tee $var14
          local.get $var18
          local.get $var18
          local.get $var14
          i32.lt_s
          select
          local.tee $var1
          local.get $var14
          local.get $var13
          call $func39
          local.get $var0
          local.get $var16
          local.get $var20
          call $func33
          local.get $var0
          i32.const 48
          local.get $var1
          local.get $var14
          local.get $var13
          i32.const 65536
          i32.xor
          call $func39
          local.get $var0
          i32.const 48
          local.get $var17
          local.get $var15
          i32.const 0
          call $func39
          local.get $var0
          local.get $var12
          local.get $var15
          call $func33
          local.get $var0
          i32.const 32
          local.get $var1
          local.get $var14
          local.get $var13
          i32.const 8192
          i32.xor
          call $func39
          br $label8
        end $label29
      end $label8
      i32.const 0
      local.set $var20
    end $label24
    local.get $var7
    i32.const 80
    i32.add
    global.set $global0
    local.get $var20
  )
  (func $func33 (param $var0 i32) (param $var1 i32) (param $var2 i32)
    block $label0
      local.get $var0
      i32.load8_u
      i32.const 32
      i32.and
      br_if $label0
      local.get $var1
      local.get $var2
      local.get $var0
      call $func20
      drop
    end $label0
  )
  (func $func34 (param $var0 i32) (result i32)
    (local $var1 i32) (local $var2 i32) (local $var3 i32)
    i32.const 0
    local.set $var1
    block $label0
      local.get $var0
      i32.load
      i32.load8_s
      call $func12
      i32.eqz
      br_if $label0
      loop $label1
        local.get $var0
        i32.load
        local.tee $var2
        i32.load8_s
        local.set $var3
        local.get $var0
        local.get $var2
        i32.const 1
        i32.add
        i32.store
        local.get $var3
        local.get $var1
        i32.const 10
        i32.mul
        i32.add
        i32.const -48
        i32.add
        local.set $var1
        local.get $var2
        i32.load8_s offset=1
        call $func12
        br_if $label1
      end $label1
    end $label0
    local.get $var1
  )
  (func $func35 (param $var0 i32) (param $var1 i32) (param $var2 i32) (param $var3 i32)
    block $label0
      local.get $var1
      i32.const 20
      i32.gt_u
      br_if $label0
      block $label10
        block $label9
          block $label8
            block $label7
              block $label6
                block $label5
                  block $label4
                    block $label3
                      block $label2
                        block $label1
                          local.get $var1
                          i32.const -9
                          i32.add
                          br_table $label1 $label2 $label3 $label4 $label5 $label6 $label7 $label8 $label9 $label10 $label0
                        end $label1
                        local.get $var2
                        local.get $var2
                        i32.load
                        local.tee $var1
                        i32.const 4
                        i32.add
                        i32.store
                        local.get $var0
                        local.get $var1
                        i32.load
                        i32.store
                        return
                      end $label2
                      local.get $var2
                      local.get $var2
                      i32.load
                      local.tee $var1
                      i32.const 4
                      i32.add
                      i32.store
                      local.get $var0
                      local.get $var1
                      i64.load32_s
                      i64.store
                      return
                    end $label3
                    local.get $var2
                    local.get $var2
                    i32.load
                    local.tee $var1
                    i32.const 4
                    i32.add
                    i32.store
                    local.get $var0
                    local.get $var1
                    i64.load32_u
                    i64.store
                    return
                  end $label4
                  local.get $var2
                  local.get $var2
                  i32.load
                  i32.const 7
                  i32.add
                  i32.const -8
                  i32.and
                  local.tee $var1
                  i32.const 8
                  i32.add
                  i32.store
                  local.get $var0
                  local.get $var1
                  i64.load
                  i64.store
                  return
                end $label5
                local.get $var2
                local.get $var2
                i32.load
                local.tee $var1
                i32.const 4
                i32.add
                i32.store
                local.get $var0
                local.get $var1
                i64.load16_s
                i64.store
                return
              end $label6
              local.get $var2
              local.get $var2
              i32.load
              local.tee $var1
              i32.const 4
              i32.add
              i32.store
              local.get $var0
              local.get $var1
              i64.load16_u
              i64.store
              return
            end $label7
            local.get $var2
            local.get $var2
            i32.load
            local.tee $var1
            i32.const 4
            i32.add
            i32.store
            local.get $var0
            local.get $var1
            i64.load8_s
            i64.store
            return
          end $label8
          local.get $var2
          local.get $var2
          i32.load
          local.tee $var1
          i32.const 4
          i32.add
          i32.store
          local.get $var0
          local.get $var1
          i64.load8_u
          i64.store
          return
        end $label9
        local.get $var2
        local.get $var2
        i32.load
        i32.const 7
        i32.add
        i32.const -8
        i32.and
        local.tee $var1
        i32.const 8
        i32.add
        i32.store
        local.get $var0
        local.get $var1
        f64.load
        f64.store
        return
      end $label10
      local.get $var0
      local.get $var2
      local.get $var3
      call_indirect (param i32 i32)
    end $label0
  )
  (func $func36 (param $var0 i64) (param $var1 i32) (param $var2 i32) (result i32)
    (local $var3 i32)
    block $label0
      local.get $var0
      i64.eqz
      br_if $label0
      loop $label1
        local.get $var1
        i32.const -1
        i32.add
        local.tee $var1
        local.get $var0
        i32.wrap_i64
        i32.const 15
        i32.and
        i32.const 1568
        i32.add
        i32.load8_u
        local.get $var2
        i32.or
        i32.store8
        local.get $var0
        i64.const 15
        i64.gt_u
        local.set $var3
        local.get $var0
        i64.const 4
        i64.shr_u
        local.set $var0
        local.get $var3
        br_if $label1
      end $label1
    end $label0
    local.get $var1
  )
  (func $func37 (param $var0 i64) (param $var1 i32) (result i32)
    (local $var2 i32)
    block $label0
      local.get $var0
      i64.eqz
      br_if $label0
      loop $label1
        local.get $var1
        i32.const -1
        i32.add
        local.tee $var1
        local.get $var0
        i32.wrap_i64
        i32.const 7
        i32.and
        i32.const 48
        i32.or
        i32.store8
        local.get $var0
        i64.const 7
        i64.gt_u
        local.set $var2
        local.get $var0
        i64.const 3
        i64.shr_u
        local.set $var0
        local.get $var2
        br_if $label1
      end $label1
    end $label0
    local.get $var1
  )
  (func $func38 (param $var0 i64) (param $var1 i32) (result i32)
    (local $var2 i64) (local $var3 i32) (local $var4 i32) (local $var5 i32)
    block $label1
      block $label0
        local.get $var0
        i64.const 4294967296
        i64.ge_u
        br_if $label0
        local.get $var0
        local.set $var2
        br $label1
      end $label0
      loop $label2
        local.get $var1
        i32.const -1
        i32.add
        local.tee $var1
        local.get $var0
        local.get $var0
        i64.const 10
        i64.div_u
        local.tee $var2
        i64.const 10
        i64.mul
        i64.sub
        i32.wrap_i64
        i32.const 48
        i32.or
        i32.store8
        local.get $var0
        i64.const 42949672959
        i64.gt_u
        local.set $var3
        local.get $var2
        local.set $var0
        local.get $var3
        br_if $label2
      end $label2
    end $label1
    block $label3
      local.get $var2
      i32.wrap_i64
      local.tee $var3
      i32.eqz
      br_if $label3
      loop $label4
        local.get $var1
        i32.const -1
        i32.add
        local.tee $var1
        local.get $var3
        local.get $var3
        i32.const 10
        i32.div_u
        local.tee $var4
        i32.const 10
        i32.mul
        i32.sub
        i32.const 48
        i32.or
        i32.store8
        local.get $var3
        i32.const 9
        i32.gt_u
        local.set $var5
        local.get $var4
        local.set $var3
        local.get $var5
        br_if $label4
      end $label4
    end $label3
    local.get $var1
  )
  (func $func39 (param $var0 i32) (param $var1 i32) (param $var2 i32) (param $var3 i32) (param $var4 i32)
    (local $var5 i32)
    global.get $global0
    i32.const 256
    i32.sub
    local.tee $var5
    global.set $global0
    block $label0
      local.get $var4
      i32.const 73728
      i32.and
      br_if $label0
      local.get $var2
      local.get $var3
      i32.le_s
      br_if $label0
      local.get $var5
      local.get $var1
      i32.const 255
      i32.and
      local.get $var2
      local.get $var3
      i32.sub
      local.tee $var2
      i32.const 256
      local.get $var2
      i32.const 256
      i32.lt_u
      local.tee $var3
      select
      call $func11
      drop
      block $label1
        local.get $var3
        br_if $label1
        loop $label2
          local.get $var0
          local.get $var5
          i32.const 256
          call $func33
          local.get $var2
          i32.const -256
          i32.add
          local.tee $var2
          i32.const 255
          i32.gt_u
          br_if $label2
        end $label2
      end $label1
      local.get $var0
      local.get $var5
      local.get $var2
      call $func33
    end $label0
    local.get $var5
    i32.const 256
    i32.add
    global.set $global0
  )
  (func $func40 (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
    local.get $var0
    local.get $var1
    local.get $var2
    i32.const 4
    i32.const 5
    call $func31
  )
  (func $func41 (param $var0 i32) (param $var1 f64) (param $var2 i32) (param $var3 i32) (param $var4 i32) (param $var5 i32) (result i32)
    (local $var6 i32) (local $var7 i32) (local $var8 i32) (local $var9 i32) (local $var10 i32) (local $var11 i32) (local $var12 i32) (local $var13 i32) (local $var14 i32) (local $var15 i32) (local $var16 i32) (local $var17 i32) (local $var18 i32) (local $var19 i32) (local $var20 i32) (local $var21 i32) (local $var22 i32) (local $var23 i32) (local $var24 i64) (local $var25 i64) (local $var26 f64)
    global.get $global0
    i32.const 560
    i32.sub
    local.tee $var6
    global.set $global0
    i32.const 0
    local.set $var7
    local.get $var6
    i32.const 0
    i32.store offset=44
    block $label1
      block $label0
        local.get $var1
        call $func43
        local.tee $var24
        i64.const -1
        i64.gt_s
        br_if $label0
        i32.const 1
        local.set $var8
        i32.const 1034
        local.set $var9
        local.get $var1
        f64.neg
        local.tee $var1
        call $func43
        local.set $var24
        br $label1
      end $label0
      block $label2
        local.get $var4
        i32.const 2048
        i32.and
        i32.eqz
        br_if $label2
        i32.const 1
        local.set $var8
        i32.const 1037
        local.set $var9
        br $label1
      end $label2
      i32.const 1040
      i32.const 1035
      local.get $var4
      i32.const 1
      i32.and
      local.tee $var8
      select
      local.set $var9
      local.get $var8
      i32.eqz
      local.set $var7
    end $label1
    block $label4
      block $label3
        local.get $var24
        i64.const 9218868437227405312
        i64.and
        i64.const 9218868437227405312
        i64.ne
        br_if $label3
        local.get $var0
        i32.const 32
        local.get $var2
        local.get $var8
        i32.const 3
        i32.add
        local.tee $var10
        local.get $var4
        i32.const -65537
        i32.and
        call $func39
        local.get $var0
        local.get $var9
        local.get $var8
        call $func33
        local.get $var0
        i32.const 1053
        i32.const 1061
        local.get $var5
        i32.const 32
        i32.and
        local.tee $var11
        select
        i32.const 1057
        i32.const 1065
        local.get $var11
        select
        local.get $var1
        local.get $var1
        f64.ne
        select
        i32.const 3
        call $func33
        local.get $var0
        i32.const 32
        local.get $var2
        local.get $var10
        local.get $var4
        i32.const 8192
        i32.xor
        call $func39
        br $label4
      end $label3
      local.get $var6
      i32.const 16
      i32.add
      local.set $var12
      block $label7
        block $label8
          block $label6
            block $label5
              local.get $var1
              local.get $var6
              i32.const 44
              i32.add
              call $func27
              local.tee $var1
              local.get $var1
              f64.add
              local.tee $var1
              f64.const 0.0
              f64.eq
              br_if $label5
              local.get $var6
              local.get $var6
              i32.load offset=44
              local.tee $var11
              i32.const -1
              i32.add
              i32.store offset=44
              local.get $var5
              i32.const 32
              i32.or
              local.tee $var13
              i32.const 97
              i32.ne
              br_if $label6
              br $label7
            end $label5
            local.get $var5
            i32.const 32
            i32.or
            local.tee $var13
            i32.const 97
            i32.eq
            br_if $label7
            i32.const 6
            local.get $var3
            local.get $var3
            i32.const 0
            i32.lt_s
            select
            local.set $var14
            local.get $var6
            i32.load offset=44
            local.set $var15
            br $label8
          end $label6
          local.get $var6
          local.get $var11
          i32.const -29
          i32.add
          local.tee $var15
          i32.store offset=44
          i32.const 6
          local.get $var3
          local.get $var3
          i32.const 0
          i32.lt_s
          select
          local.set $var14
          local.get $var1
          f64.const 268435456
          f64.mul
          local.set $var1
        end $label8
        local.get $var6
        i32.const 48
        i32.add
        local.get $var6
        i32.const 336
        i32.add
        local.get $var15
        i32.const 0
        i32.lt_s
        select
        local.tee $var16
        local.set $var17
        loop $label11
          block $label10
            block $label9
              local.get $var1
              f64.const 4294967296
              f64.lt
              local.get $var1
              f64.const 0.0
              f64.ge
              i32.and
              i32.eqz
              br_if $label9
              local.get $var1
              i32.trunc_f64_u
              local.set $var11
              br $label10
            end $label9
            i32.const 0
            local.set $var11
          end $label10
          local.get $var17
          local.get $var11
          i32.store
          local.get $var17
          i32.const 4
          i32.add
          local.set $var17
          local.get $var1
          local.get $var11
          f64.convert_i32_u
          f64.sub
          f64.const 1000000000
          f64.mul
          local.tee $var1
          f64.const 0.0
          f64.ne
          br_if $label11
        end $label11
        block $label13
          block $label12
            local.get $var15
            i32.const 1
            i32.ge_s
            br_if $label12
            local.get $var15
            local.set $var3
            local.get $var17
            local.set $var11
            local.get $var16
            local.set $var18
            br $label13
          end $label12
          local.get $var16
          local.set $var18
          local.get $var15
          local.set $var3
          loop $label18
            local.get $var3
            i32.const 29
            local.get $var3
            i32.const 29
            i32.lt_s
            select
            local.set $var3
            block $label14
              local.get $var17
              i32.const -4
              i32.add
              local.tee $var11
              local.get $var18
              i32.lt_u
              br_if $label14
              local.get $var3
              i64.extend_i32_u
              local.set $var25
              i64.const 0
              local.set $var24
              loop $label15
                local.get $var11
                local.get $var11
                i64.load32_u
                local.get $var25
                i64.shl
                local.get $var24
                i64.const 4294967295
                i64.and
                i64.add
                local.tee $var24
                local.get $var24
                i64.const 1000000000
                i64.div_u
                local.tee $var24
                i64.const 1000000000
                i64.mul
                i64.sub
                i64.store32
                local.get $var11
                i32.const -4
                i32.add
                local.tee $var11
                local.get $var18
                i32.ge_u
                br_if $label15
              end $label15
              local.get $var24
              i32.wrap_i64
              local.tee $var11
              i32.eqz
              br_if $label14
              local.get $var18
              i32.const -4
              i32.add
              local.tee $var18
              local.get $var11
              i32.store
            end $label14
            block $label16
              loop $label17
                local.get $var17
                local.tee $var11
                local.get $var18
                i32.le_u
                br_if $label16
                local.get $var11
                i32.const -4
                i32.add
                local.tee $var17
                i32.load
                i32.eqz
                br_if $label17
              end $label17
            end $label16
            local.get $var6
            local.get $var6
            i32.load offset=44
            local.get $var3
            i32.sub
            local.tee $var3
            i32.store offset=44
            local.get $var11
            local.set $var17
            local.get $var3
            i32.const 0
            i32.gt_s
            br_if $label18
          end $label18
        end $label13
        local.get $var14
        i32.const 25
        i32.add
        i32.const 9
        i32.div_s
        local.set $var17
        block $label19
          local.get $var3
          i32.const -1
          i32.gt_s
          br_if $label19
          local.get $var17
          i32.const 1
          i32.add
          local.set $var19
          local.get $var13
          i32.const 102
          i32.eq
          local.set $var20
          loop $label23
            i32.const 0
            local.get $var3
            i32.sub
            local.tee $var17
            i32.const 9
            local.get $var17
            i32.const 9
            i32.lt_s
            select
            local.set $var10
            block $label22
              block $label20
                local.get $var18
                local.get $var11
                i32.ge_u
                br_if $label20
                i32.const 1000000000
                local.get $var10
                i32.shr_u
                local.set $var21
                i32.const -1
                local.get $var10
                i32.shl
                i32.const -1
                i32.xor
                local.set $var22
                i32.const 0
                local.set $var3
                local.get $var18
                local.set $var17
                loop $label21
                  local.get $var17
                  local.get $var17
                  i32.load
                  local.tee $var23
                  local.get $var10
                  i32.shr_u
                  local.get $var3
                  i32.add
                  i32.store
                  local.get $var23
                  local.get $var22
                  i32.and
                  local.get $var21
                  i32.mul
                  local.set $var3
                  local.get $var17
                  i32.const 4
                  i32.add
                  local.tee $var17
                  local.get $var11
                  i32.lt_u
                  br_if $label21
                end $label21
                local.get $var18
                i32.load
                local.set $var17
                local.get $var3
                i32.eqz
                br_if $label22
                local.get $var11
                local.get $var3
                i32.store
                local.get $var11
                i32.const 4
                i32.add
                local.set $var11
                br $label22
              end $label20
              local.get $var18
              i32.load
              local.set $var17
            end $label22
            local.get $var6
            local.get $var6
            i32.load offset=44
            local.get $var10
            i32.add
            local.tee $var3
            i32.store offset=44
            local.get $var16
            local.get $var18
            local.get $var17
            i32.eqz
            i32.const 2
            i32.shl
            i32.add
            local.tee $var18
            local.get $var20
            select
            local.tee $var17
            local.get $var19
            i32.const 2
            i32.shl
            i32.add
            local.get $var11
            local.get $var11
            local.get $var17
            i32.sub
            i32.const 2
            i32.shr_s
            local.get $var19
            i32.gt_s
            select
            local.set $var11
            local.get $var3
            i32.const 0
            i32.lt_s
            br_if $label23
          end $label23
        end $label19
        i32.const 0
        local.set $var17
        block $label24
          local.get $var18
          local.get $var11
          i32.ge_u
          br_if $label24
          local.get $var16
          local.get $var18
          i32.sub
          i32.const 2
          i32.shr_s
          i32.const 9
          i32.mul
          local.set $var17
          i32.const 10
          local.set $var3
          local.get $var18
          i32.load
          local.tee $var23
          i32.const 10
          i32.lt_u
          br_if $label24
          loop $label25
            local.get $var17
            i32.const 1
            i32.add
            local.set $var17
            local.get $var23
            local.get $var3
            i32.const 10
            i32.mul
            local.tee $var3
            i32.ge_u
            br_if $label25
          end $label25
        end $label24
        block $label26
          local.get $var14
          i32.const 0
          local.get $var17
          local.get $var13
          i32.const 102
          i32.eq
          select
          i32.sub
          local.get $var13
          i32.const 103
          i32.eq
          local.get $var14
          i32.const 0
          i32.ne
          i32.and
          i32.sub
          local.tee $var3
          local.get $var11
          local.get $var16
          i32.sub
          i32.const 2
          i32.shr_s
          i32.const 9
          i32.mul
          i32.const -9
          i32.add
          i32.ge_s
          br_if $label26
          local.get $var3
          i32.const 9216
          i32.add
          local.tee $var23
          i32.const 9
          i32.div_s
          local.tee $var21
          i32.const 2
          i32.shl
          local.get $var6
          i32.const 48
          i32.add
          i32.const 4
          i32.const 292
          local.get $var15
          i32.const 0
          i32.lt_s
          select
          i32.add
          i32.add
          i32.const -4096
          i32.add
          local.set $var10
          i32.const 10
          local.set $var3
          block $label27
            local.get $var23
            local.get $var21
            i32.const 9
            i32.mul
            i32.sub
            local.tee $var23
            i32.const 7
            i32.gt_s
            br_if $label27
            loop $label28
              local.get $var3
              i32.const 10
              i32.mul
              local.set $var3
              local.get $var23
              i32.const 1
              i32.add
              local.tee $var23
              i32.const 8
              i32.ne
              br_if $label28
            end $label28
          end $label27
          local.get $var10
          i32.const 4
          i32.add
          local.set $var22
          block $label30
            block $label29
              local.get $var10
              i32.load
              local.tee $var23
              local.get $var23
              local.get $var3
              i32.div_u
              local.tee $var19
              local.get $var3
              i32.mul
              i32.sub
              local.tee $var21
              br_if $label29
              local.get $var22
              local.get $var11
              i32.eq
              br_if $label30
            end $label29
            f64.const 0.5
            f64.const 1
            f64.const 1.5
            local.get $var22
            local.get $var11
            i32.eq
            select
            f64.const 1.5
            local.get $var21
            local.get $var3
            i32.const 1
            i32.shr_u
            local.tee $var22
            i32.eq
            select
            local.get $var21
            local.get $var22
            i32.lt_u
            select
            local.set $var26
            f64.const 9007199254740994
            f64.const 9007199254740992
            local.get $var19
            i32.const 1
            i32.and
            select
            local.set $var1
            block $label31
              local.get $var7
              br_if $label31
              local.get $var9
              i32.load8_u
              i32.const 45
              i32.ne
              br_if $label31
              local.get $var26
              f64.neg
              local.set $var26
              local.get $var1
              f64.neg
              local.set $var1
            end $label31
            local.get $var10
            local.get $var23
            local.get $var21
            i32.sub
            local.tee $var23
            i32.store
            local.get $var1
            local.get $var26
            f64.add
            local.get $var1
            f64.eq
            br_if $label30
            local.get $var10
            local.get $var23
            local.get $var3
            i32.add
            local.tee $var17
            i32.store
            block $label32
              local.get $var17
              i32.const 1000000000
              i32.lt_u
              br_if $label32
              loop $label34
                local.get $var10
                i32.const 0
                i32.store
                block $label33
                  local.get $var10
                  i32.const -4
                  i32.add
                  local.tee $var10
                  local.get $var18
                  i32.ge_u
                  br_if $label33
                  local.get $var18
                  i32.const -4
                  i32.add
                  local.tee $var18
                  i32.const 0
                  i32.store
                end $label33
                local.get $var10
                local.get $var10
                i32.load
                i32.const 1
                i32.add
                local.tee $var17
                i32.store
                local.get $var17
                i32.const 999999999
                i32.gt_u
                br_if $label34
              end $label34
            end $label32
            local.get $var16
            local.get $var18
            i32.sub
            i32.const 2
            i32.shr_s
            i32.const 9
            i32.mul
            local.set $var17
            i32.const 10
            local.set $var3
            local.get $var18
            i32.load
            local.tee $var23
            i32.const 10
            i32.lt_u
            br_if $label30
            loop $label35
              local.get $var17
              i32.const 1
              i32.add
              local.set $var17
              local.get $var23
              local.get $var3
              i32.const 10
              i32.mul
              local.tee $var3
              i32.ge_u
              br_if $label35
            end $label35
          end $label30
          local.get $var10
          i32.const 4
          i32.add
          local.tee $var3
          local.get $var11
          local.get $var11
          local.get $var3
          i32.gt_u
          select
          local.set $var11
        end $label26
        block $label36
          loop $label37
            local.get $var11
            local.tee $var23
            local.get $var18
            i32.le_u
            local.tee $var3
            br_if $label36
            local.get $var23
            i32.const -4
            i32.add
            local.tee $var11
            i32.load
            i32.eqz
            br_if $label37
          end $label37
        end $label36
        block $label39
          block $label38
            local.get $var13
            i32.const 103
            i32.eq
            br_if $label38
            local.get $var4
            i32.const 8
            i32.and
            local.set $var22
            br $label39
          end $label38
          local.get $var17
          i32.const -1
          i32.xor
          i32.const -1
          local.get $var14
          i32.const 1
          local.get $var14
          select
          local.tee $var11
          local.get $var17
          i32.gt_s
          local.get $var17
          i32.const -5
          i32.gt_s
          i32.and
          local.tee $var10
          select
          local.get $var11
          i32.add
          local.set $var14
          i32.const -1
          i32.const -2
          local.get $var10
          select
          local.get $var5
          i32.add
          local.set $var5
          local.get $var4
          i32.const 8
          i32.and
          local.tee $var22
          br_if $label39
          i32.const -9
          local.set $var11
          block $label40
            local.get $var3
            br_if $label40
            local.get $var23
            i32.const -4
            i32.add
            i32.load
            local.tee $var10
            i32.eqz
            br_if $label40
            i32.const 10
            local.set $var3
            i32.const 0
            local.set $var11
            local.get $var10
            i32.const 10
            i32.rem_u
            br_if $label40
            loop $label41
              local.get $var11
              local.tee $var21
              i32.const 1
              i32.add
              local.set $var11
              local.get $var10
              local.get $var3
              i32.const 10
              i32.mul
              local.tee $var3
              i32.rem_u
              i32.eqz
              br_if $label41
            end $label41
            local.get $var21
            i32.const -1
            i32.xor
            local.set $var11
          end $label40
          local.get $var23
          local.get $var16
          i32.sub
          i32.const 2
          i32.shr_s
          i32.const 9
          i32.mul
          local.set $var3
          block $label42
            local.get $var5
            i32.const -33
            i32.and
            i32.const 70
            i32.ne
            br_if $label42
            i32.const 0
            local.set $var22
            local.get $var14
            local.get $var3
            local.get $var11
            i32.add
            i32.const -9
            i32.add
            local.tee $var11
            i32.const 0
            local.get $var11
            i32.const 0
            i32.gt_s
            select
            local.tee $var11
            local.get $var14
            local.get $var11
            i32.lt_s
            select
            local.set $var14
            br $label39
          end $label42
          i32.const 0
          local.set $var22
          local.get $var14
          local.get $var17
          local.get $var3
          i32.add
          local.get $var11
          i32.add
          i32.const -9
          i32.add
          local.tee $var11
          i32.const 0
          local.get $var11
          i32.const 0
          i32.gt_s
          select
          local.tee $var11
          local.get $var14
          local.get $var11
          i32.lt_s
          select
          local.set $var14
        end $label39
        local.get $var14
        local.get $var22
        i32.or
        i32.const 0
        i32.ne
        local.set $var19
        block $label44
          block $label43
            local.get $var5
            i32.const -33
            i32.and
            local.tee $var3
            i32.const 70
            i32.ne
            br_if $label43
            local.get $var17
            i32.const 0
            local.get $var17
            i32.const 0
            i32.gt_s
            select
            local.set $var11
            br $label44
          end $label43
          block $label45
            local.get $var12
            local.get $var17
            local.get $var17
            i32.const 31
            i32.shr_s
            local.tee $var11
            i32.add
            local.get $var11
            i32.xor
            i64.extend_i32_u
            local.get $var12
            call $func38
            local.tee $var11
            i32.sub
            i32.const 1
            i32.gt_s
            br_if $label45
            loop $label46
              local.get $var11
              i32.const -1
              i32.add
              local.tee $var11
              i32.const 48
              i32.store8
              local.get $var12
              local.get $var11
              i32.sub
              i32.const 2
              i32.lt_s
              br_if $label46
            end $label46
          end $label45
          local.get $var11
          i32.const -2
          i32.add
          local.tee $var20
          local.get $var5
          i32.store8
          local.get $var11
          i32.const -1
          i32.add
          i32.const 45
          i32.const 43
          local.get $var17
          i32.const 0
          i32.lt_s
          select
          i32.store8
          local.get $var12
          local.get $var20
          i32.sub
          local.set $var11
        end $label44
        local.get $var0
        i32.const 32
        local.get $var2
        local.get $var8
        local.get $var14
        i32.add
        local.get $var19
        i32.add
        local.get $var11
        i32.add
        i32.const 1
        i32.add
        local.tee $var10
        local.get $var4
        call $func39
        local.get $var0
        local.get $var9
        local.get $var8
        call $func33
        local.get $var0
        i32.const 48
        local.get $var2
        local.get $var10
        local.get $var4
        i32.const 65536
        i32.xor
        call $func39
        block $label64
          block $label52
            block $label53
              block $label47
                local.get $var3
                i32.const 70
                i32.ne
                br_if $label47
                local.get $var6
                i32.const 16
                i32.add
                i32.const 8
                i32.or
                local.set $var21
                local.get $var6
                i32.const 16
                i32.add
                i32.const 9
                i32.or
                local.set $var3
                local.get $var16
                local.get $var18
                local.get $var18
                local.get $var16
                i32.gt_u
                select
                local.tee $var18
                local.set $var17
                loop $label51
                  local.get $var17
                  i64.load32_u
                  local.get $var3
                  call $func38
                  local.set $var11
                  block $label49
                    block $label48
                      local.get $var17
                      local.get $var18
                      i32.eq
                      br_if $label48
                      local.get $var11
                      local.get $var6
                      i32.const 16
                      i32.add
                      i32.le_u
                      br_if $label49
                      loop $label50
                        local.get $var11
                        i32.const -1
                        i32.add
                        local.tee $var11
                        i32.const 48
                        i32.store8
                        local.get $var11
                        local.get $var6
                        i32.const 16
                        i32.add
                        i32.gt_u
                        br_if $label50
                        br $label49
                      end $label50
                      unreachable
                    end $label48
                    local.get $var11
                    local.get $var3
                    i32.ne
                    br_if $label49
                    local.get $var6
                    i32.const 48
                    i32.store8 offset=24
                    local.get $var21
                    local.set $var11
                  end $label49
                  local.get $var0
                  local.get $var11
                  local.get $var3
                  local.get $var11
                  i32.sub
                  call $func33
                  local.get $var17
                  i32.const 4
                  i32.add
                  local.tee $var17
                  local.get $var16
                  i32.le_u
                  br_if $label51
                end $label51
                i32.const 0
                local.set $var11
                local.get $var19
                i32.eqz
                br_if $label52
                local.get $var0
                i32.const 1069
                i32.const 1
                call $func33
                local.get $var17
                local.get $var23
                i32.ge_u
                br_if $label53
                local.get $var14
                i32.const 1
                i32.lt_s
                br_if $label53
                loop $label56
                  block $label54
                    local.get $var17
                    i64.load32_u
                    local.get $var3
                    call $func38
                    local.tee $var11
                    local.get $var6
                    i32.const 16
                    i32.add
                    i32.le_u
                    br_if $label54
                    loop $label55
                      local.get $var11
                      i32.const -1
                      i32.add
                      local.tee $var11
                      i32.const 48
                      i32.store8
                      local.get $var11
                      local.get $var6
                      i32.const 16
                      i32.add
                      i32.gt_u
                      br_if $label55
                    end $label55
                  end $label54
                  local.get $var0
                  local.get $var11
                  local.get $var14
                  i32.const 9
                  local.get $var14
                  i32.const 9
                  i32.lt_s
                  select
                  call $func33
                  local.get $var14
                  i32.const -9
                  i32.add
                  local.set $var11
                  local.get $var17
                  i32.const 4
                  i32.add
                  local.tee $var17
                  local.get $var23
                  i32.ge_u
                  br_if $label52
                  local.get $var14
                  i32.const 9
                  i32.gt_s
                  local.set $var18
                  local.get $var11
                  local.set $var14
                  local.get $var18
                  br_if $label56
                  br $label52
                end $label56
                unreachable
              end $label47
              block $label57
                local.get $var14
                i32.const 0
                i32.lt_s
                br_if $label57
                local.get $var23
                local.get $var18
                i32.const 4
                i32.add
                local.get $var23
                local.get $var18
                i32.gt_u
                select
                local.set $var21
                local.get $var6
                i32.const 16
                i32.add
                i32.const 9
                i32.or
                local.set $var3
                local.get $var6
                i32.const 16
                i32.add
                i32.const 8
                i32.or
                local.set $var16
                local.get $var18
                local.set $var17
                loop $label63
                  block $label58
                    local.get $var17
                    i64.load32_u
                    local.get $var3
                    call $func38
                    local.tee $var11
                    local.get $var3
                    i32.ne
                    br_if $label58
                    local.get $var6
                    i32.const 48
                    i32.store8 offset=24
                    local.get $var16
                    local.set $var11
                  end $label58
                  block $label60
                    block $label59
                      local.get $var17
                      local.get $var18
                      i32.eq
                      br_if $label59
                      local.get $var11
                      local.get $var6
                      i32.const 16
                      i32.add
                      i32.le_u
                      br_if $label60
                      loop $label61
                        local.get $var11
                        i32.const -1
                        i32.add
                        local.tee $var11
                        i32.const 48
                        i32.store8
                        local.get $var11
                        local.get $var6
                        i32.const 16
                        i32.add
                        i32.gt_u
                        br_if $label61
                        br $label60
                      end $label61
                      unreachable
                    end $label59
                    local.get $var0
                    local.get $var11
                    i32.const 1
                    call $func33
                    local.get $var11
                    i32.const 1
                    i32.add
                    local.set $var11
                    block $label62
                      local.get $var14
                      i32.const 0
                      i32.gt_s
                      br_if $label62
                      local.get $var22
                      i32.eqz
                      br_if $label60
                    end $label62
                    local.get $var0
                    i32.const 1069
                    i32.const 1
                    call $func33
                  end $label60
                  local.get $var0
                  local.get $var11
                  local.get $var3
                  local.get $var11
                  i32.sub
                  local.tee $var23
                  local.get $var14
                  local.get $var14
                  local.get $var23
                  i32.gt_s
                  select
                  call $func33
                  local.get $var14
                  local.get $var23
                  i32.sub
                  local.set $var14
                  local.get $var17
                  i32.const 4
                  i32.add
                  local.tee $var17
                  local.get $var21
                  i32.ge_u
                  br_if $label57
                  local.get $var14
                  i32.const -1
                  i32.gt_s
                  br_if $label63
                end $label63
              end $label57
              local.get $var0
              i32.const 48
              local.get $var14
              i32.const 18
              i32.add
              i32.const 18
              i32.const 0
              call $func39
              local.get $var0
              local.get $var20
              local.get $var12
              local.get $var20
              i32.sub
              call $func33
              br $label64
            end $label53
            local.get $var14
            local.set $var11
          end $label52
          local.get $var0
          i32.const 48
          local.get $var11
          i32.const 9
          i32.add
          i32.const 9
          i32.const 0
          call $func39
        end $label64
        local.get $var0
        i32.const 32
        local.get $var2
        local.get $var10
        local.get $var4
        i32.const 8192
        i32.xor
        call $func39
        br $label4
      end $label7
      local.get $var9
      local.get $var5
      i32.const 26
      i32.shl
      i32.const 31
      i32.shr_s
      i32.const 9
      i32.and
      i32.add
      local.set $var14
      block $label65
        local.get $var3
        i32.const 11
        i32.gt_u
        br_if $label65
        i32.const 12
        local.get $var3
        i32.sub
        local.set $var11
        f64.const 8
        local.set $var26
        loop $label66
          local.get $var26
          f64.const 16
          f64.mul
          local.set $var26
          local.get $var11
          i32.const -1
          i32.add
          local.tee $var11
          br_if $label66
        end $label66
        block $label67
          local.get $var14
          i32.load8_u
          i32.const 45
          i32.ne
          br_if $label67
          local.get $var26
          local.get $var1
          f64.neg
          local.get $var26
          f64.sub
          f64.add
          f64.neg
          local.set $var1
          br $label65
        end $label67
        local.get $var1
        local.get $var26
        f64.add
        local.get $var26
        f64.sub
        local.set $var1
      end $label65
      block $label68
        local.get $var6
        i32.load offset=44
        local.tee $var11
        local.get $var11
        i32.const 31
        i32.shr_s
        local.tee $var11
        i32.add
        local.get $var11
        i32.xor
        i64.extend_i32_u
        local.get $var12
        call $func38
        local.tee $var11
        local.get $var12
        i32.ne
        br_if $label68
        local.get $var6
        i32.const 48
        i32.store8 offset=15
        local.get $var6
        i32.const 15
        i32.add
        local.set $var11
      end $label68
      local.get $var8
      i32.const 2
      i32.or
      local.set $var22
      local.get $var5
      i32.const 32
      i32.and
      local.set $var18
      local.get $var6
      i32.load offset=44
      local.set $var17
      local.get $var11
      i32.const -2
      i32.add
      local.tee $var21
      local.get $var5
      i32.const 15
      i32.add
      i32.store8
      local.get $var11
      i32.const -1
      i32.add
      i32.const 45
      i32.const 43
      local.get $var17
      i32.const 0
      i32.lt_s
      select
      i32.store8
      local.get $var4
      i32.const 8
      i32.and
      local.set $var23
      local.get $var6
      i32.const 16
      i32.add
      local.set $var17
      loop $label73
        local.get $var17
        local.set $var11
        block $label70
          block $label69
            local.get $var1
            f64.abs
            f64.const 2147483648
            f64.lt
            i32.eqz
            br_if $label69
            local.get $var1
            i32.trunc_f64_s
            local.set $var17
            br $label70
          end $label69
          i32.const -2147483648
          local.set $var17
        end $label70
        local.get $var11
        local.get $var17
        i32.const 1568
        i32.add
        i32.load8_u
        local.get $var18
        i32.or
        i32.store8
        local.get $var1
        local.get $var17
        f64.convert_i32_s
        f64.sub
        f64.const 16
        f64.mul
        local.set $var1
        block $label71
          local.get $var11
          i32.const 1
          i32.add
          local.tee $var17
          local.get $var6
          i32.const 16
          i32.add
          i32.sub
          i32.const 1
          i32.ne
          br_if $label71
          block $label72
            local.get $var1
            f64.const 0.0
            f64.ne
            br_if $label72
            local.get $var3
            i32.const 0
            i32.gt_s
            br_if $label72
            local.get $var23
            i32.eqz
            br_if $label71
          end $label72
          local.get $var11
          i32.const 46
          i32.store8 offset=1
          local.get $var11
          i32.const 2
          i32.add
          local.set $var17
        end $label71
        local.get $var1
        f64.const 0.0
        f64.ne
        br_if $label73
      end $label73
      block $label75
        block $label74
          local.get $var3
          i32.eqz
          br_if $label74
          local.get $var17
          local.get $var6
          i32.const 16
          i32.add
          i32.sub
          i32.const -2
          i32.add
          local.get $var3
          i32.ge_s
          br_if $label74
          local.get $var3
          local.get $var12
          i32.add
          local.get $var21
          i32.sub
          i32.const 2
          i32.add
          local.set $var11
          br $label75
        end $label74
        local.get $var12
        local.get $var6
        i32.const 16
        i32.add
        local.get $var21
        i32.add
        i32.sub
        local.get $var17
        i32.add
        local.set $var11
      end $label75
      local.get $var0
      i32.const 32
      local.get $var2
      local.get $var11
      local.get $var22
      i32.add
      local.tee $var10
      local.get $var4
      call $func39
      local.get $var0
      local.get $var14
      local.get $var22
      call $func33
      local.get $var0
      i32.const 48
      local.get $var2
      local.get $var10
      local.get $var4
      i32.const 65536
      i32.xor
      call $func39
      local.get $var0
      local.get $var6
      i32.const 16
      i32.add
      local.get $var17
      local.get $var6
      i32.const 16
      i32.add
      i32.sub
      local.tee $var17
      call $func33
      local.get $var0
      i32.const 48
      local.get $var11
      local.get $var17
      local.get $var12
      local.get $var21
      i32.sub
      local.tee $var18
      i32.add
      i32.sub
      i32.const 0
      i32.const 0
      call $func39
      local.get $var0
      local.get $var21
      local.get $var18
      call $func33
      local.get $var0
      i32.const 32
      local.get $var2
      local.get $var10
      local.get $var4
      i32.const 8192
      i32.xor
      call $func39
    end $label4
    local.get $var6
    i32.const 560
    i32.add
    global.set $global0
    local.get $var2
    local.get $var10
    local.get $var10
    local.get $var2
    i32.lt_s
    select
  )
  (func $func42 (param $var0 i32) (param $var1 i32)
    (local $var2 i32)
    local.get $var1
    local.get $var1
    i32.load
    i32.const 7
    i32.add
    i32.const -8
    i32.and
    local.tee $var2
    i32.const 16
    i32.add
    i32.store
    local.get $var0
    local.get $var2
    i64.load
    local.get $var2
    i32.const 8
    i32.add
    i64.load
    call $func30
    f64.store
  )
  (func $func43 (param $var0 f64) (result i64)
    local.get $var0
    i64.reinterpret_f64
  )
  (func $func44 (param $var0 i32) (param $var1 i32) (result i32)
    (local $var2 i32)
    global.get $global0
    i32.const 16
    i32.sub
    local.tee $var2
    global.set $global0
    local.get $var2
    local.get $var1
    i32.store offset=12
    i32.const 0
    i32.load offset=1096
    local.get $var0
    local.get $var1
    call $func40
    local.set $var1
    local.get $var2
    i32.const 16
    i32.add
    global.set $global0
    local.get $var1
  )
  (func $func45 (param $var0 i32) (result i32)
    i32.const 1
  )
  (func $func46 (param $var0 i32)
  )
  (func $stackSave (;47;) (export "stackSave") (result i32)
    global.get $global0
  )
  (func $stackRestore (;48;) (export "stackRestore") (param $var0 i32)
    local.get $var0
    global.set $global0
  )
  (func $stackAlloc (;49;) (export "stackAlloc") (param $var0 i32) (result i32)
    (local $var1 i32) (local $var2 i32)
    global.get $global0
    local.get $var0
    i32.sub
    i32.const -16
    i32.and
    local.tee $var1
    global.set $global0
    local.get $var1
  )
  (func $emscripten_stack_init (;50;) (export "emscripten_stack_init")
    i32.const 5245984
    global.set $global2
    i32.const 3092
    i32.const 15
    i32.add
    i32.const -16
    i32.and
    global.set $global1
  )
  (func $emscripten_stack_get_free (;51;) (export "emscripten_stack_get_free") (result i32)
    global.get $global0
    global.get $global1
    i32.sub
  )
  (func $emscripten_stack_get_end (;52;) (export "emscripten_stack_get_end") (result i32)
    global.get $global1
  )
  (func $fflush (;53;) (export "fflush") (param $var0 i32) (result i32)
    (local $var1 i32) (local $var2 i32)
    block $label2
      block $label0
        local.get $var0
        i32.eqz
        br_if $label0
        block $label1
          local.get $var0
          i32.load offset=76
          i32.const -1
          i32.gt_s
          br_if $label1
          local.get $var0
          call $func54
          return
        end $label1
        local.get $var0
        call $func45
        local.set $var1
        local.get $var0
        call $func54
        local.set $var2
        local.get $var1
        i32.eqz
        br_if $label2
        local.get $var0
        call $func46
        local.get $var2
        return
      end $label0
      i32.const 0
      local.set $var2
      block $label3
        i32.const 0
        i32.load offset=1728
        i32.eqz
        br_if $label3
        i32.const 0
        i32.load offset=1728
        call $fflush
        local.set $var2
      end $label3
      block $label4
        call $func16
        i32.load
        local.tee $var0
        i32.eqz
        br_if $label4
        loop $label8
          i32.const 0
          local.set $var1
          block $label5
            local.get $var0
            i32.load offset=76
            i32.const 0
            i32.lt_s
            br_if $label5
            local.get $var0
            call $func45
            local.set $var1
          end $label5
          block $label6
            local.get $var0
            i32.load offset=20
            local.get $var0
            i32.load offset=28
            i32.le_u
            br_if $label6
            local.get $var0
            call $func54
            local.get $var2
            i32.or
            local.set $var2
          end $label6
          block $label7
            local.get $var1
            i32.eqz
            br_if $label7
            local.get $var0
            call $func46
          end $label7
          local.get $var0
          i32.load offset=56
          local.tee $var0
          br_if $label8
        end $label8
      end $label4
      call $func17
    end $label2
    local.get $var2
  )
  (func $func54 (param $var0 i32) (result i32)
    (local $var1 i32) (local $var2 i32)
    block $label0
      local.get $var0
      i32.load offset=20
      local.get $var0
      i32.load offset=28
      i32.le_u
      br_if $label0
      local.get $var0
      i32.const 0
      i32.const 0
      local.get $var0
      i32.load offset=36
      call_indirect (param i32 i32 i32) (result i32)
      drop
      local.get $var0
      i32.load offset=20
      br_if $label0
      i32.const -1
      return
    end $label0
    block $label1
      local.get $var0
      i32.load offset=4
      local.tee $var1
      local.get $var0
      i32.load offset=8
      local.tee $var2
      i32.ge_u
      br_if $label1
      local.get $var0
      local.get $var1
      local.get $var2
      i32.sub
      i64.extend_i32_s
      i32.const 1
      local.get $var0
      i32.load offset=40
      call_indirect (param i32 i64 i32) (result i64)
      drop
    end $label1
    local.get $var0
    i32.const 0
    i32.store offset=28
    local.get $var0
    i64.const 0
    i64.store offset=16
    local.get $var0
    i64.const 0
    i64.store offset=4 align=4
    i32.const 0
  )
  (func $func55 (param $var0 i32) (param $var1 i32) (param $var2 i64) (param $var3 i32) (result i64)
    local.get $var1
    local.get $var2
    local.get $var3
    local.get $var0
    call_indirect (param i32 i64 i32) (result i64)
  )
  (func $dynCall_jiji (;56;) (export "dynCall_jiji") (param $var0 i32) (param $var1 i32) (param $var2 i32) (param $var3 i32) (param $var4 i32) (result i32)
    (local $var5 i64)
    local.get $var0
    local.get $var1
    local.get $var2
    i64.extend_i32_u
    local.get $var3
    i64.extend_i32_u
    i64.const 32
    i64.shl
    i64.or
    local.get $var4
    call $func55
    local.set $var5
    local.get $var5
    i64.const 32
    i64.shr_u
    i32.wrap_i64
    call $env.setTempRet0
    local.get $var5
    i32.wrap_i64
  )
  (data (i32.const 1024) "-+   0X0x\00-0X+0X 0X-0x+0x 0x\00nan\00inf\00NAN\00INF\00.\00(null)\00hello, world!\0a\00\00\00\000\06\00\00\00\00\00\00\11\00\0a\00\11\11\11\00\00\00\00\05\00\00\00\00\00\00\09\00\00\00\00\0b\00\00\00\00\00\00\00\00\11\00\0f\0a\11\11\11\03\0a\07\00\01\00\09\0b\0b\00\00\09\06\0b\00\00\0b\00\06\11\00\00\00\11\11\11\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\00\00\00\00\00\00\00\00\11\00\0a\0a\11\11\11\00\0a\00\00\02\00\09\0b\00\00\00\09\00\0b\00\00\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00\0d\00\00\00\04\0d\00\00\00\00\09\0e\00\00\00\00\00\0e\00\00\0e\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\10\00\00\00\00\00\00\00\00\00\00\00\0f\00\00\00\00\0f\00\00\00\00\09\10\00\00\00\00\00\10\00\00\10\00\00\12\00\00\00\12\12\12\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\12\00\00\00\12\12\12\00\00\00\00\00\00\09\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0b\00\00\00\00\00\00\00\00\00\00\00\0a\00\00\00\00\0a\00\00\00\00\09\0b\00\00\00\00\00\0b\00\00\0b\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\00\00\00\00\00\00\00\0c\00\00\00\00\0c\00\00\00\00\09\0c\00\00\00\00\00\0c\00\00\0c\00\000123456789ABCDEF")
  (data (i32.const 1584) "\05\00\00\00\00\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\00\00\00\03\00\00\00\e8\06\00\00\00\04\00\00\00\00\00\00\00\00\00\00\01\00\00\00\00\00\00\00\00\00\00\00\00\00\00\0a\ff\ff\ff\ff\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\000\06\00\00")
)

 

[링크 : https://developer.mozilla.org/ko/docs/WebAssembly/Understanding_the_text_format]

'Programming > wasm' 카테고리의 다른 글

wasm 배열 예제  (0) 2023.01.31
wasm interfacing example  (0) 2021.11.25
wasm text 와 binary 상호변환  (0) 2021.10.26
emcc wasm 빌드  (0) 2021.10.25
wasm from c, cpp  (0) 2021.10.24
Posted by 구차니
Programming/wasm2021. 10. 26. 11:07

나름 컴파일 된거니, 디컴파일이라고 해야하나 애매하긴 하네

 

$ wat2wasm simple.wat -o simple.wasm
$ wasm2wat simple.wasm -o text.wat

[링크 : https://developer.mozilla.org/ko/docs/WebAssembly/Text_format_to_wasm]

 

emcc 와는 다르게 패키지로 존재하나 보다

$ wat2wasm

명령어 'wat2wasm' 을(를) 찾을 수 없습니다. 그러나 다음을 통해 설치할 수 있습니다:

sudo apt install wabt

$ wasm2wat

명령어 'wasm2wat' 을(를) 찾을 수 없습니다. 그러나 다음을 통해 설치할 수 있습니다:

sudo apt install wabt

 

 

$ wat2wasm
usage: wat2wasm [options] filename

  read a file in the wasm text format, check it for errors, and
  convert it to the wasm binary format.

examples:
  # parse and typecheck test.wat
  $ wat2wasm test.wat

  # parse test.wat and write to binary file test.wasm
  $ wat2wasm test.wat -o test.wasm

  # parse spec-test.wast, and write verbose output to stdout (including
  # the meaning of every byte)
  $ wat2wasm spec-test.wast -v

options:
      --help                                  Print this help message
      --version                               Print version information
  -v, --verbose                               Use multiple times for more info
      --debug-parser                          Turn on debugging the parser of wat files
  -d, --dump-module                           Print a hexdump of the module to stdout
      --enable-exceptions                     Enable Experimental exception handling
      --disable-mutable-globals               Disable Import/export mutable globals
      --enable-saturating-float-to-int        Enable Saturating float-to-int operators
      --enable-sign-extension                 Enable Sign-extension operators
      --enable-simd                           Enable SIMD support
      --enable-threads                        Enable Threading support
      --enable-multi-value                    Enable Multi-value
      --enable-tail-call                      Enable Tail-call support
      --enable-bulk-memory                    Enable Bulk-memory operations
      --enable-reference-types                Enable Reference types (anyref)
      --enable-annotations                    Enable Custom annotation syntax
      --enable-all                            Enable all features
  -o, --output=FILE                           output wasm binary file
  -r, --relocatable                           Create a relocatable wasm binary (suitable for linking with e.g. lld)
      --no-canonicalize-leb128s               Write all LEB128 sizes as 5-bytes instead of their minimal size
      --debug-names                           Write debug names to the generated binary file
      --no-check                              Don't check for invalid modules
expected filename argument.

$ wasm2wat
usage: wasm2wat [options] filename

  Read a file in the WebAssembly binary format, and convert it to
  the WebAssembly text format.

examples:
  # parse binary file test.wasm and write text file test.wast
  $ wasm2wat test.wasm -o test.wat

  # parse test.wasm, write test.wat, but ignore the debug names, if any
  $ wasm2wat test.wasm --no-debug-names -o test.wat

options:
      --help                                  Print this help message
      --version                               Print version information
  -v, --verbose                               Use multiple times for more info
  -o, --output=FILENAME                       Output file for the generated wast file, by default use stdout
  -f, --fold-exprs                            Write folded expressions where possible
      --enable-exceptions                     Enable Experimental exception handling
      --disable-mutable-globals               Disable Import/export mutable globals
      --enable-saturating-float-to-int        Enable Saturating float-to-int operators
      --enable-sign-extension                 Enable Sign-extension operators
      --enable-simd                           Enable SIMD support
      --enable-threads                        Enable Threading support
      --enable-multi-value                    Enable Multi-value
      --enable-tail-call                      Enable Tail-call support
      --enable-bulk-memory                    Enable Bulk-memory operations
      --enable-reference-types                Enable Reference types (anyref)
      --enable-annotations                    Enable Custom annotation syntax
      --enable-all                            Enable all features
      --inline-exports                        Write all exports inline
      --inline-imports                        Write all imports inline
      --no-debug-names                        Ignore debug names in the binary file
      --ignore-custom-section-errors          Ignore errors in custom sections
      --generate-names                        Give auto-generated names to non-named functions, types, etc.
      --no-check                              Don't check for invalid modules
expected filename argument.

'Programming > wasm' 카테고리의 다른 글

wasm interfacing example  (0) 2021.11.25
wasm text format  (0) 2021.10.26
emcc wasm 빌드  (0) 2021.10.25
wasm from c, cpp  (0) 2021.10.24
wasm  (0) 2021.10.22
Posted by 구차니