Files
failnix/targets/wasm-tacle/sequential/gsm_enc/generated/default/gsm_enc.wat

9907 lines
202 KiB
Plaintext

(module $gsm_enc.wasm
(type (;0;) (func (param i32 i32)))
(type (;1;) (func))
(type (;2;) (func (param i32 i32 i32)))
(type (;3;) (func (param i32 i32 i32 i32 i32 i32 i32 i32)))
(type (;4;) (func (param i32 i32 i32 i32)))
(type (;5;) (func (param i32 i32 i32 i32 i32 i32)))
(type (;6;) (func (param i32)))
(type (;7;) (func (param i32 i32 i32 i32 i32)))
(type (;8;) (func (param i32 i32) (result i32)))
(type (;9;) (func (result i32)))
(import "__pragma" "loopbound" (func $__pragma_loopbound (type 0)))
(func $__wasm_apply_data_relocs (type 1))
(func $gsm_enc_encode (type 2) (param i32 i32 i32)
(local i32 i32)
global.get $__stack_pointer
i32.const 160
i32.sub
local.tee 3
global.set $__stack_pointer
local.get 0
local.get 1
local.get 3
i32.const 144
i32.add
local.get 3
i32.const 136
i32.add
local.get 3
i32.const 120
i32.add
local.get 3
i32.const 128
i32.add
local.get 3
i32.const 112
i32.add
local.get 3
call $gsm_enc_Gsm_Coder
local.get 2
local.get 3
i32.load16_u offset=146
i32.const 63
i32.and
local.get 3
i32.load16_u offset=144
local.tee 1
i32.const 6
i32.shl
i32.or
i32.store8 offset=1
local.get 2
local.get 1
i32.const 2
i32.shr_u
i32.const 15
i32.and
i32.const 208
i32.or
i32.store8
local.get 2
local.get 3
i32.load16_u offset=150
local.tee 1
i32.const 2
i32.shr_u
i32.const 7
i32.and
local.get 3
i32.load16_u offset=148
i32.const 3
i32.shl
i32.or
i32.store8 offset=2
local.get 2
local.get 3
i32.load16_u offset=120
local.tee 0
i32.const 1
i32.shr_u
i32.const 1
i32.and
local.get 3
i32.load16_u offset=136
i32.const 1
i32.shl
i32.or
i32.store8 offset=5
local.get 2
local.get 3
i32.load16_u offset=152
i32.const 2
i32.shl
i32.const 60
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=154
local.tee 1
i32.const 2
i32.shr_u
i32.const 3
i32.and
i32.or
i32.store8 offset=3
local.get 2
local.get 3
i32.load16_u offset=156
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=158
i32.const 7
i32.and
i32.or
i32.store8 offset=4
local.get 2
local.get 3
i32.load16_u offset=128
i32.const 5
i32.shl
i32.const 96
i32.and
local.get 0
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=112
local.tee 1
i32.const 1
i32.shr_u
i32.const 31
i32.and
i32.or
i32.store8 offset=6
local.get 2
local.get 3
i32.load16_u offset=6
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 3
i32.load16_u offset=4
local.tee 0
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=8
i32.const 7
i32.and
i32.or
i32.store8 offset=8
local.get 2
local.get 3
i32.load16_u offset=12
i32.const 2
i32.shl
i32.const 28
i32.and
local.get 3
i32.load16_u offset=10
i32.const 5
i32.shl
i32.or
local.get 3
i32.load16_u offset=14
local.tee 4
i32.const 1
i32.shr_u
i32.const 3
i32.and
i32.or
i32.store8 offset=9
local.get 2
local.get 3
i32.load16_u
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=2
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 0
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=7
local.get 2
local.get 3
i32.load16_u offset=16
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 4
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=18
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 3
i32.load16_u offset=20
local.tee 1
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=10
local.get 2
local.get 3
i32.load16_u offset=22
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=24
i32.const 7
i32.and
i32.or
i32.store8 offset=11
local.get 2
local.get 3
i32.load16_u offset=122
local.tee 1
i32.const 1
i32.shr_u
i32.const 1
i32.and
local.get 3
i32.load16_u offset=138
i32.const 1
i32.shl
i32.or
i32.store8 offset=12
local.get 2
local.get 3
i32.load16_u offset=130
i32.const 5
i32.shl
i32.const 96
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=114
local.tee 1
i32.const 1
i32.shr_u
i32.const 31
i32.and
i32.or
i32.store8 offset=13
local.get 2
local.get 3
i32.load16_u offset=32
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 3
i32.load16_u offset=30
local.tee 0
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=34
i32.const 7
i32.and
i32.or
i32.store8 offset=15
local.get 2
local.get 3
i32.load16_u offset=38
i32.const 2
i32.shl
i32.const 28
i32.and
local.get 3
i32.load16_u offset=36
i32.const 5
i32.shl
i32.or
local.get 3
i32.load16_u offset=40
local.tee 4
i32.const 1
i32.shr_u
i32.const 3
i32.and
i32.or
i32.store8 offset=16
local.get 2
local.get 3
i32.load16_u offset=26
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=28
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 0
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=14
local.get 2
local.get 3
i32.load16_u offset=42
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 4
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=44
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 3
i32.load16_u offset=46
local.tee 1
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=17
local.get 2
local.get 3
i32.load16_u offset=48
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=50
i32.const 7
i32.and
i32.or
i32.store8 offset=18
local.get 2
local.get 3
i32.load16_u offset=124
local.tee 1
i32.const 1
i32.shr_u
i32.const 1
i32.and
local.get 3
i32.load16_u offset=140
i32.const 1
i32.shl
i32.or
i32.store8 offset=19
local.get 2
local.get 3
i32.load16_u offset=132
i32.const 5
i32.shl
i32.const 96
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=116
local.tee 1
i32.const 1
i32.shr_u
i32.const 31
i32.and
i32.or
i32.store8 offset=20
local.get 2
local.get 3
i32.load16_u offset=52
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=54
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 3
i32.load16_u offset=56
local.tee 1
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=21
local.get 2
local.get 3
i32.load16_u offset=58
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=60
i32.const 7
i32.and
i32.or
i32.store8 offset=22
local.get 2
local.get 3
i32.load16_u offset=64
i32.const 2
i32.shl
i32.const 28
i32.and
local.get 3
i32.load16_u offset=62
i32.const 5
i32.shl
i32.or
local.get 3
i32.load16_u offset=66
local.tee 1
i32.const 1
i32.shr_u
i32.const 3
i32.and
i32.or
i32.store8 offset=23
local.get 2
local.get 3
i32.load16_u offset=68
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=70
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 3
i32.load16_u offset=72
local.tee 1
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=24
local.get 2
local.get 3
i32.load16_u offset=74
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=76
i32.const 7
i32.and
i32.or
i32.store8 offset=25
local.get 2
local.get 3
i32.load16_u offset=126
local.tee 1
i32.const 1
i32.shr_u
i32.const 1
i32.and
local.get 3
i32.load16_u offset=142
i32.const 1
i32.shl
i32.or
i32.store8 offset=26
local.get 2
local.get 3
i32.load16_u offset=134
i32.const 5
i32.shl
i32.const 96
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=118
local.tee 1
i32.const 1
i32.shr_u
i32.const 31
i32.and
i32.or
i32.store8 offset=27
local.get 2
local.get 3
i32.load16_u offset=78
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=80
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 3
i32.load16_u offset=82
local.tee 1
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=28
local.get 2
local.get 3
i32.load16_u offset=84
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=86
i32.const 7
i32.and
i32.or
i32.store8 offset=29
local.get 2
local.get 3
i32.load16_u offset=90
i32.const 2
i32.shl
i32.const 28
i32.and
local.get 3
i32.load16_u offset=88
i32.const 5
i32.shl
i32.or
local.get 3
i32.load16_u offset=92
local.tee 1
i32.const 1
i32.shr_u
i32.const 3
i32.and
i32.or
i32.store8 offset=30
local.get 2
local.get 3
i32.load16_u offset=94
i32.const 4
i32.shl
i32.const 112
i32.and
local.get 1
i32.const 7
i32.shl
i32.or
local.get 3
i32.load16_u offset=96
i32.const 1
i32.shl
i32.const 14
i32.and
i32.or
local.get 3
i32.load16_u offset=98
local.tee 1
i32.const 2
i32.shr_u
i32.const 1
i32.and
i32.or
i32.store8 offset=31
local.get 2
local.get 3
i32.load16_u offset=100
i32.const 3
i32.shl
i32.const 56
i32.and
local.get 1
i32.const 6
i32.shl
i32.or
local.get 3
i32.load16_u offset=102
i32.const 7
i32.and
i32.or
i32.store8 offset=32
local.get 3
i32.const 160
i32.add
global.set $__stack_pointer)
(func $gsm_enc_Gsm_Coder (type 3) (param i32 i32 i32 i32 i32 i32 i32 i32)
(local i32 i32)
global.get $__stack_pointer
i32.const 320
i32.sub
local.tee 8
global.set $__stack_pointer
local.get 0
local.get 1
local.get 8
call $gsm_enc_Gsm_Preprocess
local.get 8
local.get 2
call $gsm_enc_Gsm_LPC_Analysis
local.get 0
local.get 2
local.get 8
call $gsm_enc_Gsm_Short_Term_Analysis_Filter
i32.const 4
i32.const 4
call $__pragma_loopbound
local.get 8
local.get 0
i32.const 240
i32.add
local.tee 2
local.get 4
local.get 3
call $gsm_enc_Calculation_of_the_LTP_parameters
local.get 4
i32.load16_s
local.get 3
i32.load16_s
local.get 2
local.get 8
local.get 2
i32.const 8410
call $gsm_enc_Long_term_analysis_filtering
i32.const 8410
local.get 6
local.get 5
local.get 7
call $gsm_enc_Gsm_RPE_Encoding
i32.const 40
i32.const 40
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @1
local.get 0
local.get 2
i32.add
local.tee 1
i32.const 240
i32.add
local.tee 9
local.get 2
i32.const 8410
i32.add
i32.load16_s
local.get 9
i32.load16_s
i32.add
local.tee 9
i32.const 32767
local.get 9
i32.const 32767
i32.lt_s
select
local.tee 9
i32.const -32768
local.get 9
i32.const -32768
i32.gt_s
select
i32.store16
local.get 1
i32.const 242
i32.add
local.tee 1
local.get 2
i32.const 8412
i32.add
i32.load16_s
local.get 1
i32.load16_s
i32.add
local.tee 1
i32.const 32767
local.get 1
i32.const 32767
i32.lt_s
select
local.tee 1
i32.const -32768
local.get 1
i32.const -32768
i32.gt_s
select
i32.store16
local.get 2
i32.const 4
i32.add
local.tee 2
i32.const 80
i32.ne
br_if 0 (;@1;)
end
local.get 8
i32.const 80
i32.add
local.tee 1
local.get 0
i32.const 320
i32.add
local.tee 2
local.get 4
i32.const 2
i32.add
local.get 3
i32.const 2
i32.add
call $gsm_enc_Calculation_of_the_LTP_parameters
local.get 4
i32.load16_s offset=2
local.get 3
i32.load16_s offset=2
local.get 2
local.get 1
local.get 2
i32.const 8410
call $gsm_enc_Long_term_analysis_filtering
i32.const 8410
local.get 6
i32.const 2
i32.add
local.get 5
i32.const 2
i32.add
local.get 7
i32.const 26
i32.add
call $gsm_enc_Gsm_RPE_Encoding
i32.const 40
i32.const 40
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @1
local.get 0
local.get 2
i32.add
local.tee 1
i32.const 320
i32.add
local.tee 9
local.get 2
i32.const 8410
i32.add
i32.load16_s
local.get 9
i32.load16_s
i32.add
local.tee 9
i32.const 32767
local.get 9
i32.const 32767
i32.lt_s
select
local.tee 9
i32.const -32768
local.get 9
i32.const -32768
i32.gt_s
select
i32.store16
local.get 1
i32.const 322
i32.add
local.tee 1
local.get 2
i32.const 8412
i32.add
i32.load16_s
local.get 1
i32.load16_s
i32.add
local.tee 1
i32.const 32767
local.get 1
i32.const 32767
i32.lt_s
select
local.tee 1
i32.const -32768
local.get 1
i32.const -32768
i32.gt_s
select
i32.store16
local.get 2
i32.const 4
i32.add
local.tee 2
i32.const 80
i32.ne
br_if 0 (;@1;)
end
local.get 8
i32.const 160
i32.add
local.tee 1
local.get 0
i32.const 400
i32.add
local.tee 2
local.get 4
i32.const 4
i32.add
local.get 3
i32.const 4
i32.add
call $gsm_enc_Calculation_of_the_LTP_parameters
local.get 4
i32.load16_s offset=4
local.get 3
i32.load16_s offset=4
local.get 2
local.get 1
local.get 2
i32.const 8410
call $gsm_enc_Long_term_analysis_filtering
i32.const 8410
local.get 6
i32.const 4
i32.add
local.get 5
i32.const 4
i32.add
local.get 7
i32.const 52
i32.add
call $gsm_enc_Gsm_RPE_Encoding
i32.const 40
i32.const 40
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @1
local.get 0
local.get 2
i32.add
local.tee 1
i32.const 400
i32.add
local.tee 9
local.get 2
i32.const 8410
i32.add
i32.load16_s
local.get 9
i32.load16_s
i32.add
local.tee 9
i32.const 32767
local.get 9
i32.const 32767
i32.lt_s
select
local.tee 9
i32.const -32768
local.get 9
i32.const -32768
i32.gt_s
select
i32.store16
local.get 1
i32.const 402
i32.add
local.tee 1
local.get 2
i32.const 8412
i32.add
i32.load16_s
local.get 1
i32.load16_s
i32.add
local.tee 1
i32.const 32767
local.get 1
i32.const 32767
i32.lt_s
select
local.tee 1
i32.const -32768
local.get 1
i32.const -32768
i32.gt_s
select
i32.store16
local.get 2
i32.const 4
i32.add
local.tee 2
i32.const 80
i32.ne
br_if 0 (;@1;)
end
local.get 8
i32.const 240
i32.add
local.tee 1
local.get 0
i32.const 480
i32.add
local.tee 2
local.get 4
i32.const 6
i32.add
local.get 3
i32.const 6
i32.add
call $gsm_enc_Calculation_of_the_LTP_parameters
local.get 4
i32.load16_s offset=6
local.get 3
i32.load16_s offset=6
local.get 2
local.get 1
local.get 2
i32.const 8410
call $gsm_enc_Long_term_analysis_filtering
i32.const 8410
local.get 6
i32.const 6
i32.add
local.get 5
i32.const 6
i32.add
local.get 7
i32.const 78
i32.add
call $gsm_enc_Gsm_RPE_Encoding
i32.const 40
i32.const 40
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @1
local.get 0
local.get 2
i32.add
local.tee 1
i32.const 480
i32.add
local.tee 9
local.get 2
i32.const 8410
i32.add
i32.load16_s
local.get 9
i32.load16_s
i32.add
local.tee 9
i32.const 32767
local.get 9
i32.const 32767
i32.lt_s
select
local.tee 9
i32.const -32768
local.get 9
i32.const -32768
i32.gt_s
select
i32.store16
local.get 1
i32.const 482
i32.add
local.tee 1
local.get 2
i32.const 8412
i32.add
i32.load16_s
local.get 1
i32.load16_s
i32.add
local.tee 1
i32.const 32767
local.get 1
i32.const 32767
i32.lt_s
select
local.tee 1
i32.const -32768
local.get 1
i32.const -32768
i32.gt_s
select
i32.store16
local.get 2
i32.const 4
i32.add
local.tee 2
i32.const 80
i32.ne
br_if 0 (;@1;)
end
local.get 8
i32.const 320
i32.add
global.set $__stack_pointer)
(func $gsm_enc_Gsm_Preprocess (type 2) (param i32 i32 i32)
(local i32 i32 i32 i32 i32 i32)
local.get 0
i32.load offset=568
local.set 3
local.get 0
i32.load offset=564
local.set 4
local.get 0
i32.load16_u offset=560
local.set 5
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 6
loop ;; label = @1
local.get 3
local.set 7
local.get 5
local.set 3
local.get 1
local.get 6
i32.add
i32.load16_s
i32.const 1
i32.shr_s
i32.const -4
i32.and
local.tee 5
local.get 3
i32.sub
i32.extend16_s
i32.const 15
i32.shl
local.get 4
i32.const 1
i32.shl
i32.const 16
i32.shr_s
local.tee 3
i32.const 31
i32.shl
local.get 4
i32.const 16
i32.shl
i32.add
i32.const 16
i32.shr_s
i32.const 32735
i32.mul
i32.const 16384
i32.add
i32.const 15
i32.shr_s
i32.add
local.tee 8
local.get 3
i32.const 32735
i32.mul
i32.add
local.set 4
block ;; label = @2
block ;; label = @3
local.get 3
i32.const -1
i32.gt_s
br_if 0 (;@3;)
local.get 8
i32.const -1
i32.gt_s
br_if 1 (;@2;)
i32.const -2147483648
local.get 4
local.get 4
i32.const -2
i32.gt_s
select
local.set 4
br 1 (;@2;)
end
local.get 4
local.get 4
i32.const 2147483647
local.get 4
i32.const 2147483647
i32.lt_u
select
local.get 8
i32.const 1
i32.lt_s
select
local.set 4
end
local.get 2
local.get 6
i32.add
local.get 4
i32.const 16384
i32.add
local.tee 3
i32.const 2147467262
local.get 3
local.get 4
i32.const 2147467262
i32.gt_u
select
local.get 4
i32.const 0
i32.lt_s
select
i32.const 15
i32.shr_u
local.tee 3
i32.extend16_s
local.tee 8
local.get 7
i32.extend16_s
i32.const -56360
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
i32.store16
local.get 6
i32.const 2
i32.add
local.tee 6
i32.const 320
i32.ne
br_if 0 (;@1;)
end
local.get 0
local.get 4
i32.store offset=564
local.get 0
local.get 5
i32.store16 offset=560
local.get 0
local.get 8
i32.store offset=568)
(func $gsm_enc_Gsm_LPC_Analysis (type 0) (param i32 i32)
(local i32)
global.get $__stack_pointer
i32.const 48
i32.sub
local.tee 2
global.set $__stack_pointer
local.get 0
local.get 2
call $gsm_enc_Autocorrelation
local.get 2
local.get 1
call $gsm_enc_Reflection_coefficients
local.get 1
call $gsm_enc_Transformation_to_Log_Area_Ratios
local.get 1
i32.const 63
i32.const 0
local.get 1
i32.load16_s
i32.const 40960
i32.mul
i32.const 16777216
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 32
i32.add
local.get 0
i32.const -32
i32.lt_s
select
local.get 0
i32.const 31
i32.gt_s
select
i32.store16
local.get 1
i32.const 63
i32.const 0
local.get 1
i32.load16_s offset=2
i32.const 40960
i32.mul
i32.const 16777216
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 32
i32.add
local.get 0
i32.const -32
i32.lt_s
select
local.get 0
i32.const 31
i32.gt_s
select
i32.store16 offset=2
local.get 1
i32.const 31
i32.const 0
local.get 1
i32.load16_s offset=4
i32.const 40960
i32.mul
i32.const 150994944
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 16
i32.add
local.get 0
i32.const -16
i32.lt_s
select
local.get 0
i32.const 15
i32.gt_s
select
i32.store16 offset=4
local.get 1
i32.const 31
i32.const 0
local.get 1
i32.load16_s offset=6
i32.const 40960
i32.mul
i32.const -150994944
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 16
i32.add
local.get 0
i32.const -16
i32.lt_s
select
local.get 0
i32.const 15
i32.gt_s
select
i32.store16 offset=6
local.get 1
i32.const 15
i32.const 0
local.get 1
i32.load16_s offset=8
i32.const 27928
i32.mul
i32.const 22937600
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 8
i32.add
local.get 0
i32.const -8
i32.lt_s
select
local.get 0
i32.const 7
i32.gt_s
select
i32.store16 offset=8
local.get 1
i32.const 15
i32.const 0
local.get 1
i32.load16_s offset=10
i32.const 30720
i32.mul
i32.const -100663296
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 8
i32.add
local.get 0
i32.const -8
i32.lt_s
select
local.get 0
i32.const 7
i32.gt_s
select
i32.store16 offset=10
local.get 1
i32.const 7
i32.const 0
local.get 1
i32.load16_s offset=12
i32.const 17068
i32.mul
i32.const -5570560
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 4
i32.add
local.get 0
i32.const -4
i32.lt_s
select
local.get 0
i32.const 3
i32.gt_s
select
i32.store16 offset=12
local.get 1
i32.const 7
i32.const 0
local.get 1
i32.load16_s offset=14
i32.const 18072
i32.mul
i32.const -58195968
i32.add
i32.const 25
i32.shr_s
local.tee 0
i32.const 4
i32.add
local.get 0
i32.const -4
i32.lt_s
select
local.get 0
i32.const 3
i32.gt_s
select
i32.store16 offset=14
local.get 2
i32.const 48
i32.add
global.set $__stack_pointer)
(func $gsm_enc_Gsm_Short_Term_Analysis_Filter (type 2) (param i32 i32 i32)
(local i32 i32 i32 i32)
global.get $__stack_pointer
i32.const 16
i32.sub
local.tee 3
global.set $__stack_pointer
local.get 0
local.get 0
i32.load16_s offset=620
local.tee 4
i32.const 1
i32.xor
local.tee 5
i32.store16 offset=620
local.get 1
local.get 0
i32.const 588
i32.add
local.tee 6
local.get 4
i32.const 4
i32.shl
i32.add
local.tee 4
call $gsm_enc_Decoding_of_the_coded_Log_Area_Ratios
i32.const 8
i32.const 8
call $__pragma_loopbound
local.get 3
local.get 6
local.get 5
i32.const 4
i32.shl
i32.add
local.tee 1
i32.load16_s
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s
i32.const 2
i32.shr_u
i32.add
i32.store16
local.get 3
local.get 1
i32.load16_s offset=2
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=2
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=2
local.get 3
local.get 1
i32.load16_s offset=4
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=4
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=4
local.get 3
local.get 1
i32.load16_s offset=6
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=6
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=6
local.get 3
local.get 1
i32.load16_s offset=8
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=8
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=8
local.get 3
local.get 1
i32.load16_s offset=10
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=10
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=10
local.get 3
local.get 1
i32.load16_s offset=12
local.tee 5
i32.const 1
i32.shr_u
local.get 5
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=12
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=12
local.get 3
local.get 1
i32.const 14
i32.add
local.tee 5
i32.load16_s
local.tee 6
i32.const 1
i32.shr_u
local.get 6
i32.const 2
i32.shr_u
i32.add
local.get 4
i32.load16_s offset=14
i32.const 2
i32.shr_u
i32.add
i32.store16 offset=14
local.get 3
call $gsm_enc_LARp_to_rp
local.get 0
local.get 3
i32.const 13
local.get 2
call $gsm_enc_Short_term_analysis_filtering
i32.const 8
i32.const 8
call $__pragma_loopbound
local.get 3
local.get 4
i32.load16_s
i32.const 1
i32.shr_u
local.get 1
i32.load16_s
i32.const 1
i32.shr_u
i32.add
i32.store16
local.get 3
local.get 4
i32.load16_s offset=2
i32.const 1
i32.shr_u
local.get 1
i32.load16_s offset=2
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=2
local.get 3
local.get 4
i32.load16_s offset=4
i32.const 1
i32.shr_u
local.get 1
i32.load16_s offset=4
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=4
local.get 3
local.get 4
i32.load16_s offset=6
i32.const 1
i32.shr_u
local.get 1
i32.load16_s offset=6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=6
local.get 3
local.get 4
i32.load16_s offset=8
i32.const 1
i32.shr_u
local.get 1
i32.load16_s offset=8
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=8
local.get 3
local.get 4
i32.load16_s offset=10
i32.const 1
i32.shr_u
local.get 1
i32.load16_s offset=10
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=10
local.get 3
local.get 4
i32.load16_s offset=12
i32.const 1
i32.shr_u
local.get 1
i32.load16_s offset=12
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=12
local.get 3
local.get 4
i32.load16_s offset=14
i32.const 1
i32.shr_u
local.get 5
i32.load16_s
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=14
local.get 3
call $gsm_enc_LARp_to_rp
local.get 0
local.get 3
i32.const 14
local.get 2
i32.const 26
i32.add
call $gsm_enc_Short_term_analysis_filtering
i32.const 8
i32.const 8
call $__pragma_loopbound
local.get 3
local.get 4
i32.load16_s
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16
local.get 3
local.get 4
i32.load16_s offset=2
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s offset=2
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=2
local.get 3
local.get 4
i32.load16_s offset=4
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s offset=4
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=4
local.get 3
local.get 4
i32.load16_s offset=6
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s offset=6
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=6
local.get 3
local.get 4
i32.load16_s offset=8
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s offset=8
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=8
local.get 3
local.get 4
i32.load16_s offset=10
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s offset=10
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=10
local.get 3
local.get 4
i32.load16_s offset=12
local.tee 6
i32.const 2
i32.shr_u
local.get 1
i32.load16_s offset=12
i32.const 2
i32.shr_u
i32.add
local.get 6
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=12
local.get 3
local.get 4
i32.load16_s offset=14
local.tee 1
i32.const 2
i32.shr_u
local.get 5
i32.load16_s
i32.const 2
i32.shr_u
i32.add
local.get 1
i32.const 1
i32.shr_u
i32.add
i32.store16 offset=14
local.get 3
call $gsm_enc_LARp_to_rp
local.get 0
local.get 3
i32.const 13
local.get 2
i32.const 54
i32.add
call $gsm_enc_Short_term_analysis_filtering
i32.const 8
i32.const 8
call $__pragma_loopbound
local.get 3
local.get 4
i64.load align=2
i64.store
local.get 3
local.get 4
i64.load offset=8 align=2
i64.store offset=8
local.get 3
call $gsm_enc_LARp_to_rp
local.get 0
local.get 3
i32.const 120
local.get 2
i32.const 80
i32.add
call $gsm_enc_Short_term_analysis_filtering
local.get 3
i32.const 16
i32.add
global.set $__stack_pointer)
(func $gsm_enc_Calculation_of_the_LTP_parameters (type 4) (param i32 i32 i32 i32)
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
i32.const 40
i32.const 40
call $__pragma_loopbound
i32.const 0
local.set 4
i32.const 0
local.set 5
loop ;; label = @1
i32.const 32767
i32.const 0
local.get 0
local.get 4
i32.add
local.tee 6
i32.const 2
i32.add
i32.load16_u
local.tee 7
i32.sub
local.get 7
i32.const 32768
i32.eq
select
local.get 7
local.get 7
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 8
i32.const 32767
i32.const 0
local.get 6
i32.load16_u
local.tee 7
i32.sub
local.get 7
i32.const 32768
i32.eq
select
local.get 7
local.get 7
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 7
local.get 5
i32.extend16_s
local.tee 5
local.get 7
local.get 5
i32.gt_s
select
local.tee 7
local.get 8
local.get 7
i32.gt_s
select
local.set 5
local.get 4
i32.const 4
i32.add
local.tee 4
i32.const 80
i32.ne
br_if 0 (;@1;)
end
i32.const 6
local.set 8
block ;; label = @1
local.get 5
i32.eqz
br_if 0 (;@1;)
i32.const 0
i32.const 6
i32.const 7
i32.const -1
local.get 5
i32.const 256
i32.lt_u
local.tee 7
select
local.get 5
local.get 5
i32.const 8
i32.shr_u
local.get 7
select
i32.const 8144
i32.add
i32.load8_u
i32.add
local.tee 7
i32.sub
i32.const 65535
i32.and
local.get 7
i32.const 6
i32.gt_s
select
local.set 8
end
i32.const 40
i32.const 40
call $__pragma_loopbound
local.get 0
i32.load16_s
local.set 4
local.get 0
i32.load16_s offset=2
local.set 5
local.get 0
i32.load16_s offset=4
local.set 6
local.get 0
i32.load16_s offset=6
local.set 9
local.get 0
i32.load16_s offset=8
local.set 10
local.get 0
i32.load16_s offset=10
local.set 11
local.get 0
i32.load16_s offset=12
local.set 12
local.get 0
i32.load16_s offset=14
local.set 13
local.get 0
i32.load16_s offset=16
local.set 14
local.get 0
i32.load16_s offset=18
local.set 15
local.get 0
i32.load16_s offset=20
local.set 16
local.get 0
i32.load16_s offset=22
local.set 17
local.get 0
i32.load16_s offset=24
local.set 18
local.get 0
i32.load16_s offset=26
local.set 19
local.get 0
i32.load16_s offset=28
local.set 20
local.get 0
i32.load16_s offset=30
local.set 21
local.get 0
i32.load16_s offset=32
local.set 22
local.get 0
i32.load16_s offset=34
local.set 23
local.get 0
i32.load16_s offset=36
local.set 24
local.get 0
i32.load16_s offset=38
local.set 25
local.get 0
i32.load16_s offset=40
local.set 26
local.get 0
i32.load16_s offset=42
local.set 27
local.get 0
i32.load16_s offset=44
local.set 28
local.get 0
i32.load16_s offset=46
local.set 29
local.get 0
i32.load16_s offset=48
local.set 30
local.get 0
i32.load16_s offset=50
local.set 31
local.get 0
i32.load16_s offset=52
local.set 32
local.get 0
i32.load16_s offset=54
local.set 33
local.get 0
i32.load16_s offset=56
local.set 34
local.get 0
i32.load16_s offset=58
local.set 35
local.get 0
i32.load16_s offset=60
local.set 36
local.get 0
i32.load16_s offset=62
local.set 37
local.get 0
i32.load16_s offset=64
local.set 38
local.get 0
i32.load16_s offset=66
local.set 39
local.get 0
i32.load16_s offset=68
local.set 40
local.get 0
i32.load16_s offset=70
local.set 41
local.get 0
i32.load16_s offset=72
local.set 42
local.get 0
i32.load16_s offset=74
local.set 43
local.get 0
i32.load16_s offset=76
local.set 44
local.get 0
i32.load16_s offset=78
local.set 0
i32.const 81
i32.const 81
call $__pragma_loopbound
local.get 1
i32.const -80
i32.add
local.set 7
local.get 0
local.get 8
i32.shr_s
local.set 45
local.get 44
local.get 8
i32.shr_s
local.set 44
local.get 43
local.get 8
i32.shr_s
local.set 43
local.get 42
local.get 8
i32.shr_s
local.set 42
local.get 41
local.get 8
i32.shr_s
local.set 41
local.get 40
local.get 8
i32.shr_s
local.set 40
local.get 39
local.get 8
i32.shr_s
local.set 39
local.get 38
local.get 8
i32.shr_s
local.set 38
local.get 37
local.get 8
i32.shr_s
local.set 37
local.get 36
local.get 8
i32.shr_s
local.set 36
local.get 35
local.get 8
i32.shr_s
local.set 35
local.get 34
local.get 8
i32.shr_s
local.set 34
local.get 33
local.get 8
i32.shr_s
local.set 33
local.get 32
local.get 8
i32.shr_s
local.set 32
local.get 31
local.get 8
i32.shr_s
local.set 31
local.get 30
local.get 8
i32.shr_s
local.set 30
local.get 29
local.get 8
i32.shr_s
local.set 29
local.get 28
local.get 8
i32.shr_s
local.set 28
local.get 27
local.get 8
i32.shr_s
local.set 27
local.get 26
local.get 8
i32.shr_s
local.set 26
local.get 25
local.get 8
i32.shr_s
local.set 25
local.get 24
local.get 8
i32.shr_s
local.set 24
local.get 23
local.get 8
i32.shr_s
local.set 23
local.get 22
local.get 8
i32.shr_s
local.set 22
local.get 21
local.get 8
i32.shr_s
local.set 21
local.get 20
local.get 8
i32.shr_s
local.set 20
local.get 19
local.get 8
i32.shr_s
local.set 19
local.get 18
local.get 8
i32.shr_s
local.set 18
local.get 17
local.get 8
i32.shr_s
local.set 17
local.get 16
local.get 8
i32.shr_s
local.set 16
local.get 15
local.get 8
i32.shr_s
local.set 15
local.get 14
local.get 8
i32.shr_s
local.set 14
local.get 13
local.get 8
i32.shr_s
local.set 13
local.get 12
local.get 8
i32.shr_s
local.set 12
local.get 11
local.get 8
i32.shr_s
local.set 11
local.get 10
local.get 8
i32.shr_s
local.set 10
local.get 9
local.get 8
i32.shr_s
local.set 9
local.get 6
local.get 8
i32.shr_s
local.set 46
local.get 5
local.get 8
i32.shr_s
local.set 47
local.get 4
local.get 8
i32.shr_s
local.set 48
i32.const 0
local.set 4
i32.const 40
local.set 0
i32.const 40
local.set 5
loop ;; label = @1
local.get 47
local.get 7
i32.const 2
i32.add
i32.load16_s
i32.mul
local.get 48
local.get 7
i32.load16_s
i32.mul
i32.add
local.get 46
local.get 7
i32.const 4
i32.add
i32.load16_s
i32.mul
i32.add
local.get 9
local.get 7
i32.const 6
i32.add
i32.load16_s
i32.mul
i32.add
local.get 10
local.get 7
i32.const 8
i32.add
i32.load16_s
i32.mul
i32.add
local.get 11
local.get 7
i32.const 10
i32.add
i32.load16_s
i32.mul
i32.add
local.get 12
local.get 7
i32.const 12
i32.add
i32.load16_s
i32.mul
i32.add
local.get 13
local.get 7
i32.const 14
i32.add
i32.load16_s
i32.mul
i32.add
local.get 14
local.get 7
i32.const 16
i32.add
i32.load16_s
i32.mul
i32.add
local.get 15
local.get 7
i32.const 18
i32.add
i32.load16_s
i32.mul
i32.add
local.get 16
local.get 7
i32.const 20
i32.add
i32.load16_s
i32.mul
i32.add
local.get 17
local.get 7
i32.const 22
i32.add
i32.load16_s
i32.mul
i32.add
local.get 18
local.get 7
i32.const 24
i32.add
i32.load16_s
i32.mul
i32.add
local.get 19
local.get 7
i32.const 26
i32.add
i32.load16_s
i32.mul
i32.add
local.get 20
local.get 7
i32.const 28
i32.add
i32.load16_s
i32.mul
i32.add
local.get 21
local.get 7
i32.const 30
i32.add
i32.load16_s
i32.mul
i32.add
local.get 22
local.get 7
i32.const 32
i32.add
i32.load16_s
i32.mul
i32.add
local.get 23
local.get 7
i32.const 34
i32.add
i32.load16_s
i32.mul
i32.add
local.get 24
local.get 7
i32.const 36
i32.add
i32.load16_s
i32.mul
i32.add
local.get 25
local.get 7
i32.const 38
i32.add
i32.load16_s
i32.mul
i32.add
local.get 26
local.get 7
i32.const 40
i32.add
i32.load16_s
i32.mul
i32.add
local.get 27
local.get 7
i32.const 42
i32.add
i32.load16_s
i32.mul
i32.add
local.get 28
local.get 7
i32.const 44
i32.add
i32.load16_s
i32.mul
i32.add
local.get 29
local.get 7
i32.const 46
i32.add
i32.load16_s
i32.mul
i32.add
local.get 30
local.get 7
i32.const 48
i32.add
i32.load16_s
i32.mul
i32.add
local.get 31
local.get 7
i32.const 50
i32.add
i32.load16_s
i32.mul
i32.add
local.get 32
local.get 7
i32.const 52
i32.add
i32.load16_s
i32.mul
i32.add
local.get 33
local.get 7
i32.const 54
i32.add
i32.load16_s
i32.mul
i32.add
local.get 34
local.get 7
i32.const 56
i32.add
i32.load16_s
i32.mul
i32.add
local.get 35
local.get 7
i32.const 58
i32.add
i32.load16_s
i32.mul
i32.add
local.get 36
local.get 7
i32.const 60
i32.add
i32.load16_s
i32.mul
i32.add
local.get 37
local.get 7
i32.const 62
i32.add
i32.load16_s
i32.mul
i32.add
local.get 38
local.get 7
i32.const 64
i32.add
i32.load16_s
i32.mul
i32.add
local.get 39
local.get 7
i32.const 66
i32.add
i32.load16_s
i32.mul
i32.add
local.get 40
local.get 7
i32.const 68
i32.add
i32.load16_s
i32.mul
i32.add
local.get 41
local.get 7
i32.const 70
i32.add
i32.load16_s
i32.mul
i32.add
local.get 42
local.get 7
i32.const 72
i32.add
i32.load16_s
i32.mul
i32.add
local.get 43
local.get 7
i32.const 74
i32.add
i32.load16_s
i32.mul
i32.add
local.get 44
local.get 7
i32.const 76
i32.add
i32.load16_s
i32.mul
i32.add
local.get 45
local.get 7
i32.const 78
i32.add
i32.load16_s
i32.mul
i32.add
local.tee 6
local.get 4
local.get 6
local.get 4
i32.gt_s
local.tee 6
select
local.set 4
local.get 0
local.get 5
local.get 6
select
local.set 5
local.get 7
i32.const -2
i32.add
local.set 7
local.get 0
i32.const 1
i32.add
local.tee 0
i32.const 121
i32.ne
br_if 0 (;@1;)
end
local.get 3
local.get 5
i32.store16
i32.const 40
i32.const 40
call $__pragma_loopbound
i32.const 6
local.get 8
i32.sub
local.set 45
local.get 1
local.get 5
i32.extend16_s
i32.const 1
i32.shl
i32.sub
local.set 8
i32.const 0
local.set 7
i32.const 0
local.set 0
loop ;; label = @1
local.get 8
local.get 7
i32.add
local.tee 5
i32.const 2
i32.add
i32.load16_s
i32.const 3
i32.shr_s
local.tee 6
local.get 6
i32.mul
local.get 5
i32.load16_s
i32.const 3
i32.shr_s
local.tee 5
local.get 5
i32.mul
local.get 0
i32.add
i32.add
local.set 0
local.get 7
i32.const 4
i32.add
local.tee 7
i32.const 80
i32.ne
br_if 0 (;@1;)
end
block ;; label = @1
local.get 4
i32.const 1
i32.shl
local.get 45
i32.shr_s
local.tee 7
i32.const 1
i32.ge_s
br_if 0 (;@1;)
local.get 2
i32.const 0
i32.store16
return
end
block ;; label = @1
local.get 7
local.get 0
i32.const 1
i32.shl
local.tee 4
i32.lt_s
br_if 0 (;@1;)
local.get 2
i32.const 3
i32.store16
return
end
block ;; label = @1
block ;; label = @2
local.get 0
i32.const 32768
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 0
i32.const 8388608
i32.lt_u
br_if 0 (;@3;)
local.get 0
i32.const 23
i32.shr_u
local.set 0
i32.const -1
local.set 5
br 2 (;@1;)
end
local.get 0
i32.const 15
i32.shr_u
local.set 0
i32.const 7
local.set 5
br 1 (;@1;)
end
local.get 4
local.get 0
i32.const 7
i32.shr_u
local.get 0
i32.const 128
i32.lt_u
local.tee 5
select
local.set 0
i32.const 23
i32.const 15
local.get 5
select
local.set 5
end
local.get 0
i32.const 8144
i32.add
i32.load8_u
local.set 0
i32.const 3
i32.const 3
call $__pragma_loopbound
i32.const 0
local.set 6
block ;; label = @1
local.get 7
local.get 5
local.get 0
i32.add
local.tee 0
i32.shl
i32.const 16
i32.shr_s
local.tee 7
local.get 4
local.get 0
i32.shl
i32.const 16
i32.shr_s
local.tee 4
i32.const 0
i32.load16_s offset=1024
i32.mul
i32.const 15
i32.shr_s
i32.le_s
br_if 0 (;@1;)
block ;; label = @2
local.get 7
local.get 4
i32.const 0
i32.load16_s offset=1026
i32.mul
i32.const 15
i32.shr_s
i32.gt_s
br_if 0 (;@2;)
local.get 2
i32.const 1
i32.store16
return
end
i32.const 3
i32.const 2
local.get 7
local.get 4
i32.const 0
i32.load16_s offset=1028
i32.mul
i32.const 15
i32.shr_s
i32.gt_s
select
local.set 6
end
local.get 2
local.get 6
i32.store16)
(func $gsm_enc_Long_term_analysis_filtering (type 5) (param i32 i32 i32 i32 i32 i32)
block ;; label = @1
block ;; label = @2
block ;; label = @3
block ;; label = @4
block ;; label = @5
local.get 0
br_table 0 (;@5;) 1 (;@4;) 2 (;@3;) 3 (;@2;) 4 (;@1;)
end
i32.const 40
i32.const 40
call $__pragma_loopbound
local.get 2
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
i32.const 0
local.set 0
loop ;; label = @5
local.get 4
local.get 0
i32.add
local.get 1
local.get 0
i32.add
i32.load16_s
i32.const 3277
i32.mul
i32.const 16384
i32.add
local.tee 2
i32.const 15
i32.shr_u
i32.store16
local.get 5
local.get 0
i32.add
local.get 3
local.get 0
i32.add
i32.load16_s
local.get 2
i32.const 15
i32.shr_s
i32.sub
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.store16
local.get 0
i32.const 2
i32.add
local.tee 0
i32.const 80
i32.ne
br_if 0 (;@5;)
br 4 (;@1;)
end
end
i32.const 40
i32.const 40
call $__pragma_loopbound
local.get 2
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
i32.const 0
local.set 0
loop ;; label = @4
local.get 4
local.get 0
i32.add
local.get 1
local.get 0
i32.add
i32.load16_s
i32.const 11469
i32.mul
i32.const 16384
i32.add
i32.const 15
i32.shr_u
local.tee 2
i32.store16
local.get 5
local.get 0
i32.add
local.get 3
local.get 0
i32.add
i32.load16_s
local.get 2
i32.extend16_s
i32.sub
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.store16
local.get 0
i32.const 2
i32.add
local.tee 0
i32.const 80
i32.ne
br_if 0 (;@4;)
br 3 (;@1;)
end
end
i32.const 40
i32.const 40
call $__pragma_loopbound
local.get 2
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
i32.const 0
local.set 0
loop ;; label = @3
local.get 4
local.get 0
i32.add
local.get 1
local.get 0
i32.add
i32.load16_s
i32.const 21299
i32.mul
i32.const 16384
i32.add
i32.const 15
i32.shr_u
local.tee 2
i32.store16
local.get 5
local.get 0
i32.add
local.get 3
local.get 0
i32.add
i32.load16_s
local.get 2
i32.extend16_s
i32.sub
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.store16
local.get 0
i32.const 2
i32.add
local.tee 0
i32.const 80
i32.ne
br_if 0 (;@3;)
br 2 (;@1;)
end
end
i32.const 40
i32.const 40
call $__pragma_loopbound
local.get 2
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
i32.const 0
local.set 0
loop ;; label = @2
local.get 4
local.get 0
i32.add
local.get 1
local.get 0
i32.add
i32.load16_s
i32.const 32767
i32.mul
i32.const 16384
i32.add
i32.const 15
i32.shr_u
local.tee 2
i32.store16
local.get 5
local.get 0
i32.add
local.get 3
local.get 0
i32.add
i32.load16_s
local.get 2
i32.extend16_s
i32.sub
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.store16
local.get 0
i32.const 2
i32.add
local.tee 0
i32.const 80
i32.ne
br_if 0 (;@2;)
end
end)
(func $gsm_enc_Gsm_RPE_Encoding (type 4) (param i32 i32 i32 i32)
(local i32 i32 i32 i32 i32)
global.get $__stack_pointer
i32.const 160
i32.sub
local.tee 4
global.set $__stack_pointer
i32.const 40
i32.const 40
call $__pragma_loopbound
local.get 0
i32.const -10
i32.add
i32.load16_u
local.set 5
i32.const -80
local.set 6
loop ;; label = @1
local.get 4
i32.const 80
i32.add
local.get 6
i32.add
i32.const 80
i32.add
local.get 0
local.get 6
i32.add
local.tee 7
i32.const 82
i32.add
i32.load16_s
local.get 7
i32.const 78
i32.add
i32.load16_s
i32.add
i32.const 5741
i32.mul
local.get 7
i32.const 80
i32.add
i32.load16_s
i32.const 13
i32.shl
i32.add
local.get 7
i32.const 84
i32.add
i32.load16_s
local.get 7
i32.const 76
i32.add
i32.load16_s
i32.add
i32.const 2054
i32.mul
i32.add
local.get 7
i32.const 88
i32.add
i32.load16_s
local.get 7
i32.const 72
i32.add
i32.load16_s
local.tee 8
i32.add
i32.const -374
i32.mul
i32.add
local.get 7
i32.const 90
i32.add
i32.load16_s
local.get 5
i32.extend16_s
i32.add
i32.const -134
i32.mul
i32.add
i32.const 4096
i32.add
i32.const 13
i32.shr_s
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
i32.store16
local.get 8
local.set 5
local.get 6
i32.const 2
i32.add
local.tee 6
br_if 0 (;@1;)
end
local.get 4
i32.const 80
i32.add
local.get 4
i32.const 48
i32.add
local.get 2
call $gsm_enc_RPE_grid_selection
local.get 4
i32.const 48
i32.add
local.get 3
local.get 4
i32.const 14
i32.add
local.get 4
i32.const 12
i32.add
local.get 1
call $gsm_enc_APCM_quantization
local.get 3
local.get 4
i32.load16_s offset=14
local.get 4
i32.load16_s offset=12
local.get 4
i32.const 16
i32.add
call $gsm_enc_APCM_inverse_quantization
block ;; label = @1
block ;; label = @2
block ;; label = @3
block ;; label = @4
block ;; label = @5
block ;; label = @6
local.get 2
i32.load16_u
local.tee 8
br_table 4 (;@2;) 3 (;@3;) 2 (;@4;) 1 (;@5;) 0 (;@6;)
end
i32.const 13
local.set 6
local.get 4
i32.const 16
i32.add
local.set 7
br 4 (;@1;)
end
local.get 0
i32.const 0
i32.store16
local.get 0
i32.const 2
i32.add
local.set 0
end
local.get 0
i32.const 0
i32.store16
local.get 0
i32.const 2
i32.add
local.set 0
end
local.get 0
i32.const 0
i32.store16
local.get 0
i32.const 2
i32.add
local.set 0
end
local.get 0
local.get 4
i32.load16_u offset=16
i32.store16
local.get 0
i32.const 2
i32.add
local.set 0
local.get 4
i32.const 16
i32.add
i32.const 2
i32.or
local.set 7
i32.const 12
local.set 6
end
i32.const 12
i32.const 12
call $__pragma_loopbound
block ;; label = @1
local.get 6
i32.const 1
i32.and
local.tee 5
i32.eqz
br_if 0 (;@1;)
local.get 6
i32.const -1
i32.add
local.set 6
loop ;; label = @2
local.get 0
i32.const 0
i32.store align=2
local.get 0
local.get 7
i32.load16_u
i32.store16 offset=4
local.get 0
i32.const 6
i32.add
local.set 0
local.get 7
i32.const 2
i32.add
local.set 7
local.get 5
i32.const -1
i32.add
local.tee 5
br_if 0 (;@2;)
end
end
loop ;; label = @1
local.get 0
i32.const 0
i32.store align=2
local.get 7
i32.load16_u
local.set 5
local.get 0
i32.const 0
i32.store offset=6 align=2
local.get 0
local.get 5
i32.store16 offset=4
local.get 7
i32.const 2
i32.add
i32.load16_u
local.set 5
local.get 0
i32.const 0
i32.store offset=12 align=2
local.get 0
local.get 5
i32.store16 offset=10
local.get 7
i32.const 4
i32.add
i32.load16_u
local.set 5
local.get 0
i32.const 0
i32.store offset=18 align=2
local.get 0
local.get 5
i32.store16 offset=16
local.get 0
local.get 7
i32.const 6
i32.add
i32.load16_u
i32.store16 offset=22
local.get 7
i32.const 8
i32.add
local.set 7
local.get 0
i32.const 24
i32.add
local.set 0
local.get 6
i32.const -4
i32.add
local.tee 6
br_if 0 (;@1;)
end
i32.const 0
i32.const 3
call $__pragma_loopbound
block ;; label = @1
local.get 8
i32.const 1
i32.add
i32.extend16_s
local.tee 7
i32.const 3
i32.gt_s
br_if 0 (;@1;)
block ;; label = @2
i32.const 3
local.get 8
i32.sub
i32.const 7
i32.and
local.tee 5
i32.eqz
br_if 0 (;@2;)
i32.const 0
local.set 6
loop ;; label = @3
local.get 0
i32.const 0
i32.store16
local.get 7
i32.const 1
i32.add
local.set 7
local.get 0
i32.const 2
i32.add
local.set 0
local.get 6
i32.const 1
i32.add
local.tee 6
i32.const 65535
i32.and
local.get 5
i32.ne
br_if 0 (;@3;)
end
end
local.get 8
i32.const 4
i32.add
i32.const 65535
i32.and
i32.const 7
i32.lt_u
br_if 0 (;@1;)
loop ;; label = @2
local.get 0
i64.const 0
i64.store offset=8 align=2
local.get 0
i64.const 0
i64.store align=2
local.get 0
i32.const 16
i32.add
local.set 0
local.get 7
i32.extend16_s
local.set 6
local.get 7
i32.const 8
i32.add
local.set 7
local.get 6
i32.const -4
i32.lt_s
br_if 0 (;@2;)
end
end
local.get 4
i32.const 160
i32.add
global.set $__stack_pointer)
(func $gsm_enc_Autocorrelation (type 0) (param i32 i32)
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 2
i32.const 0
local.set 3
loop ;; label = @1
i32.const 32767
i32.const 0
local.get 0
local.get 2
i32.add
local.tee 4
i32.const 2
i32.add
i32.load16_u
local.tee 5
i32.sub
local.get 5
i32.const 32768
i32.eq
select
local.get 5
local.get 5
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.const 65535
i32.and
local.tee 6
i32.const 32767
i32.const 0
local.get 4
i32.load16_u
local.tee 5
i32.sub
local.get 5
i32.const 32768
i32.eq
select
local.get 5
local.get 5
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.const 65535
i32.and
local.tee 5
local.get 3
i32.const 65535
i32.and
local.tee 3
local.get 5
local.get 3
i32.gt_u
select
local.tee 5
local.get 6
local.get 5
i32.gt_u
select
local.set 3
local.get 2
i32.const 4
i32.add
local.tee 2
i32.const 320
i32.ne
br_if 0 (;@1;)
end
block ;; label = @1
block ;; label = @2
local.get 3
br_if 0 (;@2;)
i32.const 0
local.set 7
i32.const 0
local.set 4
br 1 (;@1;)
end
i32.const 4
i32.const 7
i32.const -1
local.get 3
i32.const 256
i32.lt_u
local.tee 5
select
local.get 3
local.get 3
i32.const 8
i32.shr_u
local.get 5
select
i32.const 8144
i32.add
i32.load8_u
i32.add
local.tee 5
i32.sub
local.set 6
block ;; label = @2
block ;; label = @3
local.get 5
i32.const 3
i32.le_s
br_if 0 (;@3;)
i32.const 0
local.set 7
br 1 (;@2;)
end
i32.const 5
local.set 4
i32.const 1
local.set 7
block ;; label = @3
block ;; label = @4
block ;; label = @5
block ;; label = @6
local.get 5
br_table 3 (;@3;) 2 (;@4;) 1 (;@5;) 0 (;@6;) 5 (;@1;)
end
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @6
local.get 0
local.get 2
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 14
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 2
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 14
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 4
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 14
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 6
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 14
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 2
i32.const 8
i32.add
local.tee 2
i32.const 320
i32.ne
br_if 0 (;@6;)
br 4 (;@2;)
end
end
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @5
local.get 0
local.get 2
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 13
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 2
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 13
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 4
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 13
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 6
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 13
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 2
i32.const 8
i32.add
local.tee 2
i32.const 320
i32.ne
br_if 0 (;@5;)
br 3 (;@2;)
end
end
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @4
local.get 0
local.get 2
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 12
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 2
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 12
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 4
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 12
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 6
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 12
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 2
i32.const 8
i32.add
local.tee 2
i32.const 320
i32.ne
br_if 0 (;@4;)
br 2 (;@2;)
end
end
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @3
local.get 0
local.get 2
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 11
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 2
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 11
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 4
i32.add
local.tee 3
local.get 3
i32.load16_s
i32.const 11
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 5
i32.const 6
i32.add
local.tee 5
local.get 5
i32.load16_s
i32.const 11
i32.shl
i32.const 16384
i32.add
i32.const 15
i32.shr_u
i32.store16
local.get 2
i32.const 8
i32.add
local.tee 2
i32.const 320
i32.ne
br_if 0 (;@3;)
end
end
local.get 6
local.set 4
end
local.get 0
i32.load16_s
local.set 8
i32.const 9
i32.const 9
call $__pragma_loopbound
local.get 1
i32.const 0
i32.store offset=32
local.get 1
local.get 0
i32.load16_s offset=14
local.tee 5
local.get 0
i32.load16_s
local.tee 9
i32.mul
i32.store offset=28
local.get 1
local.get 5
local.get 0
i32.load16_s offset=2
local.tee 10
i32.mul
local.get 9
local.get 0
i32.load16_s offset=12
local.tee 2
i32.mul
i32.add
i32.store offset=24
local.get 1
local.get 5
local.get 0
i32.load16_s offset=4
local.tee 3
i32.mul
local.get 2
local.get 10
i32.mul
local.get 9
local.get 0
i32.load16_s offset=10
local.tee 6
i32.mul
i32.add
i32.add
i32.store offset=20
local.get 1
local.get 5
local.get 0
i32.load16_s offset=6
local.tee 11
i32.mul
local.get 2
local.get 3
i32.mul
local.get 6
local.get 10
i32.mul
local.get 9
local.get 0
i32.load16_s offset=8
local.tee 12
i32.mul
i32.add
i32.add
i32.add
i32.store offset=16
local.get 1
local.get 5
local.get 12
i32.mul
local.get 2
local.get 11
i32.mul
local.get 6
local.get 3
i32.mul
local.get 12
local.get 10
i32.mul
local.get 11
local.get 9
i32.mul
i32.add
i32.add
i32.add
i32.add
i32.store offset=12
local.get 1
local.get 5
local.get 6
i32.mul
local.get 2
local.get 12
i32.mul
local.get 6
local.get 11
i32.mul
local.get 12
local.get 3
i32.mul
local.get 11
local.get 10
i32.mul
local.get 3
local.get 9
i32.mul
i32.add
i32.add
i32.add
i32.add
i32.add
i32.store offset=8
local.get 1
local.get 5
local.get 2
i32.mul
local.get 2
local.get 6
i32.mul
local.get 6
local.get 12
i32.mul
local.get 12
local.get 11
i32.mul
local.get 11
local.get 3
i32.mul
local.get 10
local.get 3
local.get 9
i32.add
i32.mul
i32.add
i32.add
i32.add
i32.add
i32.add
i32.store offset=4
local.get 1
local.get 5
local.get 5
i32.mul
local.get 2
local.get 2
i32.mul
local.get 6
local.get 6
i32.mul
local.get 12
local.get 12
i32.mul
local.get 11
local.get 11
i32.mul
local.get 3
local.get 3
i32.mul
local.get 10
local.get 10
i32.mul
local.get 9
local.get 8
i32.mul
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.store
i32.const 152
i32.const 152
call $__pragma_loopbound
local.get 0
i32.load16_u offset=14
local.set 13
local.get 1
i32.load offset=32
local.set 6
local.get 1
i32.load offset=28
local.set 11
local.get 1
i32.load offset=24
local.set 12
local.get 1
i32.load offset=20
local.set 9
local.get 1
i32.load offset=16
local.set 10
local.get 1
i32.load offset=12
local.set 8
local.get 1
i32.load offset=8
local.set 14
local.get 1
i32.load offset=4
local.set 15
local.get 1
i32.load
local.set 16
i32.const -304
local.set 3
loop ;; label = @1
local.get 0
local.get 3
i32.add
local.tee 2
i32.const 304
i32.add
i32.load16_s
local.get 2
i32.const 320
i32.add
i32.load16_s
local.tee 5
i32.mul
local.get 6
i32.add
local.set 6
local.get 2
i32.const 306
i32.add
i32.load16_s
local.get 5
i32.mul
local.get 11
i32.add
local.set 11
local.get 2
i32.const 308
i32.add
i32.load16_s
local.get 5
i32.mul
local.get 12
i32.add
local.set 12
local.get 2
i32.const 310
i32.add
i32.load16_s
local.get 5
i32.mul
local.get 9
i32.add
local.set 9
local.get 2
i32.const 312
i32.add
i32.load16_s
local.get 5
i32.mul
local.get 10
i32.add
local.set 10
local.get 2
i32.const 314
i32.add
i32.load16_s
local.get 5
i32.mul
local.get 8
i32.add
local.set 8
local.get 2
i32.const 316
i32.add
i32.load16_s
local.get 5
i32.mul
local.get 14
i32.add
local.set 14
local.get 13
i32.extend16_s
local.get 5
i32.mul
local.get 15
i32.add
local.set 15
local.get 5
local.get 5
i32.mul
local.get 16
i32.add
local.set 16
local.get 5
local.set 13
local.get 3
i32.const 2
i32.add
local.tee 3
br_if 0 (;@1;)
end
local.get 1
local.get 6
i32.store offset=32
local.get 1
local.get 11
i32.store offset=28
local.get 1
local.get 12
i32.store offset=24
local.get 1
local.get 9
i32.store offset=20
local.get 1
local.get 10
i32.store offset=16
local.get 1
local.get 8
i32.store offset=12
local.get 1
local.get 14
i32.store offset=8
local.get 1
local.get 15
i32.store offset=4
local.get 1
local.get 16
i32.store
i32.const 9
i32.const 9
call $__pragma_loopbound
local.get 1
local.get 1
i32.load offset=32
i32.const 1
i32.shl
i32.store offset=32
local.get 1
local.get 1
i32.load offset=28
i32.const 1
i32.shl
i32.store offset=28
local.get 1
local.get 1
i32.load offset=24
i32.const 1
i32.shl
i32.store offset=24
local.get 1
local.get 1
i32.load offset=20
i32.const 1
i32.shl
i32.store offset=20
local.get 1
local.get 1
i32.load offset=16
i32.const 1
i32.shl
i32.store offset=16
local.get 1
local.get 1
i32.load offset=12
i32.const 1
i32.shl
i32.store offset=12
local.get 1
local.get 1
i32.load offset=8
i32.const 1
i32.shl
i32.store offset=8
local.get 1
local.get 1
i32.load offset=4
i32.const 1
i32.shl
i32.store offset=4
local.get 1
local.get 1
i32.load
i32.const 1
i32.shl
i32.store
block ;; label = @1
local.get 7
i32.eqz
br_if 0 (;@1;)
i32.const 160
i32.const 160
call $__pragma_loopbound
i32.const 0
local.set 2
loop ;; label = @2
local.get 0
local.get 2
i32.add
local.tee 5
local.get 5
i32.load16_u
local.get 4
i32.shl
i32.store16
local.get 5
i32.const 2
i32.add
local.tee 3
local.get 3
i32.load16_u
local.get 4
i32.shl
i32.store16
local.get 5
i32.const 4
i32.add
local.tee 3
local.get 3
i32.load16_u
local.get 4
i32.shl
i32.store16
local.get 5
i32.const 6
i32.add
local.tee 3
local.get 3
i32.load16_u
local.get 4
i32.shl
i32.store16
local.get 5
i32.const 8
i32.add
local.tee 5
local.get 5
i32.load16_u
local.get 4
i32.shl
i32.store16
local.get 2
i32.const 10
i32.add
local.tee 2
i32.const 320
i32.ne
br_if 0 (;@2;)
end
end)
(func $gsm_enc_Reflection_coefficients (type 0) (param i32 i32)
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
block ;; label = @1
local.get 0
i32.load
local.tee 2
br_if 0 (;@1;)
i32.const 8
i32.const 8
call $__pragma_loopbound
local.get 1
i64.const 0
i64.store offset=8 align=2
local.get 1
i64.const 0
i64.store align=2
return
end
block ;; label = @1
block ;; label = @2
local.get 2
i32.const -1
i32.gt_s
br_if 0 (;@2;)
i32.const 0
local.set 3
local.get 2
i32.const -1073741823
i32.lt_u
br_if 1 (;@1;)
local.get 2
i32.const -1
i32.xor
local.set 2
end
block ;; label = @2
block ;; label = @3
local.get 2
i32.const 65536
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 2
i32.const 16777216
i32.lt_u
br_if 0 (;@4;)
local.get 2
i32.const 24
i32.shr_u
local.set 3
i32.const 65535
local.set 2
br 2 (;@2;)
end
local.get 2
i32.const 16
i32.shr_u
local.set 3
i32.const 7
local.set 2
br 1 (;@2;)
end
local.get 2
local.get 2
i32.const 8
i32.shr_u
local.get 2
i32.const 256
i32.lt_u
local.tee 4
select
local.set 3
i32.const 23
i32.const 15
local.get 4
select
local.set 2
end
local.get 2
local.get 3
i32.const 8144
i32.add
i32.load8_u
i32.add
i32.const 65535
i32.and
local.set 3
end
i32.const 9
i32.const 9
call $__pragma_loopbound
local.get 0
i32.load offset=28
local.set 5
local.get 0
i32.load offset=24
local.set 6
local.get 0
i32.load offset=20
local.set 7
local.get 0
i32.load offset=16
local.set 8
local.get 0
i32.load offset=12
local.set 9
local.get 0
i32.load offset=8
local.set 10
local.get 0
i32.load offset=32
local.set 11
local.get 0
i32.load
local.set 2
local.get 0
i32.load offset=4
local.set 0
i32.const 7
i32.const 7
call $__pragma_loopbound
i32.const 9
i32.const 9
call $__pragma_loopbound
i32.const 8
i32.const 8
call $__pragma_loopbound
block ;; label = @1
block ;; label = @2
block ;; label = @3
i32.const 32767
i32.const 0
local.get 0
local.get 3
i32.shl
local.tee 4
i32.const 16
i32.shr_u
local.tee 0
i32.sub
local.get 0
i32.const 32768
i32.eq
select
local.get 0
local.get 4
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 12
local.get 2
local.get 3
i32.shl
local.tee 2
i32.const 16
i32.shr_s
i32.le_s
br_if 0 (;@3;)
i32.const 1
local.set 3
br 1 (;@2;)
end
local.get 2
i32.const 16
i32.shr_u
local.set 4
local.get 11
local.get 3
i32.shl
local.tee 2
i32.const 16
i32.shr_s
local.set 13
local.get 2
i32.const 16
i32.shr_u
i32.extend16_s
local.set 14
i32.const 6
local.set 2
local.get 6
local.get 3
i32.shl
i32.const 16
i32.shr_u
local.tee 15
local.set 16
local.get 7
local.get 3
i32.shl
i32.const 16
i32.shr_u
local.tee 17
local.set 18
local.get 8
local.get 3
i32.shl
i32.const 16
i32.shr_u
local.tee 19
local.set 20
local.get 9
local.get 3
i32.shl
i32.const 16
i32.shr_u
local.tee 11
local.set 21
local.get 10
local.get 3
i32.shl
i32.const 16
i32.shr_u
local.tee 8
local.set 9
local.get 0
local.set 7
local.get 5
local.get 3
i32.shl
i32.const 16
i32.shr_u
local.tee 22
local.set 23
i32.const 7
local.set 5
i32.const 1
local.set 3
loop ;; label = @3
local.get 1
i32.const 0
local.get 12
i32.extend16_s
local.get 4
i32.extend16_s
local.tee 12
call $gsm_enc_div
local.tee 4
i32.sub
local.get 4
local.get 0
i32.extend16_s
local.tee 6
i32.const 0
i32.gt_s
select
local.tee 4
i32.store16
local.get 3
i32.const 8
i32.eq
br_if 2 (;@1;)
i32.const 1
i32.const 7
call $__pragma_loopbound
local.get 6
local.get 4
i32.extend16_s
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 12
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
local.set 4
block ;; label = @4
local.get 3
i32.const 7
i32.gt_u
br_if 0 (;@4;)
local.get 1
i32.load16_s
i32.const 1
i32.shl
local.tee 12
local.get 8
i32.extend16_s
local.tee 0
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 7
i32.extend16_s
local.tee 6
i32.add
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
local.set 7
local.get 12
local.get 6
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 0
i32.add
local.tee 0
i32.const 32767
local.get 0
i32.const 32767
i32.lt_s
select
local.tee 0
i32.const -32768
local.get 0
i32.const -32768
i32.gt_s
select
local.set 0
local.get 5
i32.const 1
i32.eq
br_if 0 (;@4;)
local.get 12
local.get 11
i32.extend16_s
local.tee 6
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 9
i32.extend16_s
local.tee 8
i32.add
local.tee 9
i32.const 32767
local.get 9
i32.const 32767
i32.lt_s
select
local.tee 9
i32.const -32768
local.get 9
i32.const -32768
i32.gt_s
select
local.set 9
local.get 12
local.get 8
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 6
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 8
local.get 5
i32.const 2
i32.eq
br_if 0 (;@4;)
local.get 12
local.get 19
i32.extend16_s
local.tee 6
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 21
i32.extend16_s
local.tee 11
i32.add
local.tee 21
i32.const 32767
local.get 21
i32.const 32767
i32.lt_s
select
local.tee 21
i32.const -32768
local.get 21
i32.const -32768
i32.gt_s
select
local.set 21
local.get 12
local.get 11
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 6
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 11
local.get 5
i32.const 3
i32.eq
br_if 0 (;@4;)
local.get 12
local.get 17
i32.extend16_s
local.tee 6
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 20
i32.extend16_s
local.tee 19
i32.add
local.tee 10
i32.const 32767
local.get 10
i32.const 32767
i32.lt_s
select
local.tee 10
i32.const -32768
local.get 10
i32.const -32768
i32.gt_s
select
local.set 20
local.get 12
local.get 19
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 6
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 19
local.get 5
i32.const 4
i32.eq
br_if 0 (;@4;)
local.get 12
local.get 15
i32.extend16_s
local.tee 6
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 18
i32.extend16_s
local.tee 10
i32.add
local.tee 17
i32.const 32767
local.get 17
i32.const 32767
i32.lt_s
select
local.tee 17
i32.const -32768
local.get 17
i32.const -32768
i32.gt_s
select
local.set 18
local.get 12
local.get 10
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 6
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 17
local.get 5
i32.const 5
i32.eq
br_if 0 (;@4;)
local.get 12
local.get 23
i32.extend16_s
local.tee 6
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 16
i32.extend16_s
local.tee 10
i32.add
local.tee 15
i32.const 32767
local.get 15
i32.const 32767
i32.lt_s
select
local.tee 15
i32.const -32768
local.get 15
i32.const -32768
i32.gt_s
select
local.set 16
local.get 12
local.get 10
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 6
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 15
local.get 5
i32.const 6
i32.eq
br_if 0 (;@4;)
local.get 12
local.get 13
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 22
i32.extend16_s
local.tee 5
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 22
local.get 12
local.get 5
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 14
i32.add
local.tee 12
i32.const 32767
local.get 12
i32.const 32767
i32.lt_s
select
local.tee 12
i32.const -32768
local.get 12
i32.const -32768
i32.gt_s
select
local.set 23
end
local.get 2
i32.const 1
local.get 2
i32.const 1
i32.gt_s
select
local.set 5
local.get 2
i32.const -1
i32.add
local.set 2
local.get 1
i32.const 2
i32.add
local.set 1
local.get 3
i32.const 1
i32.add
local.set 3
local.get 4
i32.extend16_s
i32.const 32767
i32.const 0
local.get 0
i32.sub
local.get 0
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 0
local.get 0
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 12
i32.ge_s
br_if 0 (;@3;)
end
end
i32.const 1
i32.const 8
call $__pragma_loopbound
local.get 3
i32.const 8
i32.gt_u
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16
local.get 3
i32.const 8
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=2
local.get 3
i32.const 7
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=4
local.get 3
i32.const 6
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=6
local.get 3
i32.const 5
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=8
local.get 3
i32.const 4
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=10
local.get 3
i32.const 3
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=12
local.get 3
i32.const 2
i32.eq
br_if 0 (;@1;)
local.get 1
i32.const 0
i32.store16 offset=14
end)
(func $gsm_enc_Transformation_to_Log_Area_Ratios (type 6) (param i32)
(local i32 i32 i32)
i32.const 8
i32.const 8
call $__pragma_loopbound
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_u
local.tee 1
i32.sub
local.get 1
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.extend16_s
local.tee 2
i32.const 0
i32.lt_s
select
local.tee 1
i32.extend16_s
local.tee 3
i32.const 22117
i32.gt_s
br_if 0 (;@2;)
local.get 3
i32.const 1
i32.shr_s
local.set 1
br 1 (;@1;)
end
block ;; label = @2
local.get 1
i32.const 65535
i32.and
i32.const 31129
i32.gt_u
br_if 0 (;@2;)
local.get 1
i32.const -11059
i32.add
local.set 1
br 1 (;@1;)
end
local.get 1
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 1
end
local.get 0
i32.const 0
local.get 1
i32.sub
local.get 1
local.get 2
i32.const 0
i32.lt_s
select
i32.store16
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=2
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=2
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=4
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=4
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=6
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=6
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=8
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=8
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=10
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=10
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=12
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=12
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 0
i32.load16_s offset=14
local.tee 1
i32.sub
local.get 1
i32.const 65535
i32.and
i32.const 32768
i32.eq
select
local.get 1
local.get 1
i32.const 0
i32.lt_s
select
local.tee 2
i32.extend16_s
local.tee 3
i32.const 22118
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 65535
i32.and
i32.const 31130
i32.lt_u
br_if 0 (;@3;)
local.get 2
i32.const 2
i32.shl
i32.const 26624
i32.add
local.set 2
br 2 (;@1;)
end
local.get 2
i32.const -11059
i32.add
local.set 2
br 1 (;@1;)
end
local.get 3
i32.const 1
i32.shr_s
local.set 2
end
local.get 0
i32.const 0
local.get 2
i32.sub
local.get 2
local.get 1
i32.const 0
i32.lt_s
select
i32.store16 offset=14)
(func $gsm_enc_Decoding_of_the_coded_Log_Area_Ratios (type 0) (param i32 i32)
(local i32 i32)
local.get 1
i32.const 63
i32.const 0
local.get 0
i32.load16_s
local.tee 2
i32.const 32
i32.gt_s
select
local.get 2
i32.const 32
i32.xor
local.get 2
i32.const -32800
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
i32.extend16_s
i32.const 26214
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_u
i32.const 65534
i32.and
i32.store16
local.get 1
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=2
local.tee 2
i32.const 32
i32.gt_s
select
local.get 2
i32.const 32
i32.xor
local.get 2
i32.const -32800
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
i32.extend16_s
i32.const 26214
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_u
i32.const 65534
i32.and
i32.store16 offset=2
local.get 1
i32.const -32768
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=4
local.tee 2
i32.const 16
i32.gt_s
select
local.get 2
i32.const 48
i32.add
local.get 2
i32.const -32784
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
local.tee 2
i32.const -4096
i32.add
local.get 2
i32.extend16_s
i32.const -28671
i32.lt_s
select
i32.extend16_s
i32.const 26214
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_u
i32.const 65534
i32.and
i32.store16 offset=4
local.get 1
i32.const 32767
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=6
local.tee 2
i32.const 16
i32.gt_s
select
local.get 2
i32.const 48
i32.add
local.get 2
i32.const -32784
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
local.tee 2
i32.const 5120
i32.add
local.get 2
i32.extend16_s
i32.const 27646
i32.gt_s
select
i32.extend16_s
i32.const 26214
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_u
i32.const 65534
i32.and
i32.store16 offset=6
local.get 1
i32.const 32767
i32.const 32768
i32.const -32768
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=8
local.tee 2
i32.const 8
i32.gt_s
select
local.get 2
i32.const 56
i32.add
local.get 2
i32.const -32776
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
local.tee 2
i32.const -188
i32.add
local.get 2
i32.extend16_s
i32.const -32579
i32.lt_s
select
i32.extend16_s
i32.const 38446
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_s
local.tee 2
i32.const -2
i32.and
local.tee 3
i32.const 0
i32.gt_s
select
local.get 3
local.get 2
i32.const -32768
i32.add
i32.const -65536
i32.lt_u
select
i32.store16 offset=8
local.get 1
i32.const 32767
i32.const 32768
i32.const 32767
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=10
local.tee 2
i32.const 8
i32.gt_s
select
local.get 2
i32.const 56
i32.add
local.get 2
i32.const -32776
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
local.tee 2
i32.const 3584
i32.add
local.get 2
i32.extend16_s
i32.const 29182
i32.gt_s
select
i32.extend16_s
i32.const 34952
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_s
local.tee 2
i32.const -2
i32.and
local.tee 3
i32.const 0
i32.gt_s
select
local.get 3
local.get 2
i32.const -32768
i32.add
i32.const -65536
i32.lt_u
select
i32.store16 offset=10
local.get 1
i32.const 32767
i32.const 32768
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=12
local.tee 2
i32.const 4
i32.gt_s
select
local.get 2
i32.const 60
i32.add
local.get 2
i32.const -32772
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
i32.const 682
i32.or
i32.extend16_s
i32.const 62908
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_s
local.tee 2
i32.const -2
i32.and
local.tee 3
i32.const 0
i32.gt_s
select
local.get 3
local.get 2
i32.const -32768
i32.add
i32.const -65536
i32.lt_u
select
i32.store16 offset=12
local.get 1
i32.const 32767
i32.const 32768
i32.const 32767
i32.const 63
i32.const 0
local.get 0
i32.load16_s offset=14
local.tee 0
i32.const 4
i32.gt_s
select
local.get 0
i32.const 60
i32.add
local.get 0
i32.const -32772
i32.add
i32.const -65536
i32.lt_u
select
i32.const 10
i32.shl
local.tee 0
i32.const 2288
i32.add
local.get 0
i32.extend16_s
i32.const 30478
i32.gt_s
select
i32.extend16_s
i32.const 59416
i32.mul
i32.const 32768
i32.add
i32.const 15
i32.shr_s
local.tee 0
i32.const -2
i32.and
local.tee 2
i32.const 0
i32.gt_s
select
local.get 2
local.get 0
i32.const -32768
i32.add
i32.const -65536
i32.lt_u
select
i32.store16 offset=14)
(func $gsm_enc_LARp_to_rp (type 6) (param i32)
(local i32 i32)
i32.const 8
i32.const 8
call $__pragma_loopbound
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s
local.tee 1
i32.const -1
i32.gt_s
br_if 0 (;@2;)
block ;; label = @3
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11058
i32.gt_u
br_if 0 (;@3;)
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
br 2 (;@1;)
end
block ;; label = @3
local.get 2
i32.const 20069
i32.gt_u
br_if 0 (;@3;)
i32.const -11059
local.get 1
i32.sub
local.set 1
br 2 (;@1;)
end
block ;; label = @3
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@3;)
i32.const 32769
local.set 1
br 2 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 1 (;@1;)
end
block ;; label = @2
local.get 1
i32.const 11058
i32.gt_u
br_if 0 (;@2;)
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
local.get 1
i32.const 20069
i32.gt_u
br_if 0 (;@2;)
local.get 1
i32.const 11059
i32.add
local.set 1
br 1 (;@1;)
end
block ;; label = @2
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@2;)
i32.const 32767
local.set 1
br 1 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
end
local.get 0
local.get 1
i32.store16
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s offset=2
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@4;)
block ;; label = @5
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@5;)
i32.const 32767
local.set 1
br 4 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
br 3 (;@1;)
end
local.get 1
i32.const 11059
i32.add
local.set 1
br 2 (;@1;)
end
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@4;)
i32.const 32769
local.set 1
br 3 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 2 (;@1;)
end
i32.const -11059
local.get 1
i32.sub
local.set 1
br 1 (;@1;)
end
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
end
local.get 0
local.get 1
i32.store16 offset=2
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s offset=4
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@4;)
block ;; label = @5
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@5;)
i32.const 32767
local.set 1
br 4 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
br 3 (;@1;)
end
local.get 1
i32.const 11059
i32.add
local.set 1
br 2 (;@1;)
end
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@4;)
i32.const 32769
local.set 1
br 3 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 2 (;@1;)
end
i32.const -11059
local.get 1
i32.sub
local.set 1
br 1 (;@1;)
end
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
end
local.get 0
local.get 1
i32.store16 offset=4
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s offset=6
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@4;)
block ;; label = @5
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@5;)
i32.const 32767
local.set 1
br 4 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
br 3 (;@1;)
end
local.get 1
i32.const 11059
i32.add
local.set 1
br 2 (;@1;)
end
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@4;)
i32.const 32769
local.set 1
br 3 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 2 (;@1;)
end
i32.const -11059
local.get 1
i32.sub
local.set 1
br 1 (;@1;)
end
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
end
local.get 0
local.get 1
i32.store16 offset=6
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s offset=8
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@4;)
block ;; label = @5
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@5;)
i32.const 32767
local.set 1
br 4 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
br 3 (;@1;)
end
local.get 1
i32.const 11059
i32.add
local.set 1
br 2 (;@1;)
end
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@4;)
i32.const 32769
local.set 1
br 3 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 2 (;@1;)
end
i32.const -11059
local.get 1
i32.sub
local.set 1
br 1 (;@1;)
end
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
end
local.get 0
local.get 1
i32.store16 offset=8
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s offset=10
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@4;)
block ;; label = @5
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@5;)
i32.const 32767
local.set 1
br 4 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
br 3 (;@1;)
end
local.get 1
i32.const 11059
i32.add
local.set 1
br 2 (;@1;)
end
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@4;)
i32.const 32769
local.set 1
br 3 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 2 (;@1;)
end
i32.const -11059
local.get 1
i32.sub
local.set 1
br 1 (;@1;)
end
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
end
local.get 0
local.get 1
i32.store16 offset=10
block ;; label = @1
block ;; label = @2
local.get 0
i32.load16_s offset=12
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@4;)
block ;; label = @5
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@5;)
i32.const 32767
local.set 1
br 4 (;@1;)
end
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
local.set 1
br 3 (;@1;)
end
local.get 1
i32.const 11059
i32.add
local.set 1
br 2 (;@1;)
end
local.get 1
i32.const 1
i32.shl
local.set 1
br 1 (;@1;)
end
block ;; label = @2
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@4;)
i32.const 32769
local.set 1
br 3 (;@1;)
end
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
local.set 1
br 2 (;@1;)
end
i32.const -11059
local.get 1
i32.sub
local.set 1
br 1 (;@1;)
end
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
local.set 1
end
local.get 0
local.get 1
i32.store16 offset=12
block ;; label = @1
local.get 0
i32.load16_s offset=14
local.tee 1
i32.const 0
i32.lt_s
br_if 0 (;@1;)
block ;; label = @2
local.get 1
i32.const 11059
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 20070
i32.lt_u
br_if 0 (;@3;)
block ;; label = @4
local.get 1
i32.const 26623
i32.le_u
br_if 0 (;@4;)
local.get 0
i32.const 32767
i32.store16 offset=14
return
end
local.get 0
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.const 26112
i32.add
i32.store16 offset=14
return
end
local.get 0
local.get 1
i32.const 11059
i32.add
i32.store16 offset=14
return
end
local.get 0
local.get 1
i32.const 1
i32.shl
i32.store16 offset=14
return
end
block ;; label = @1
i32.const 32767
i32.const 0
local.get 1
i32.sub
local.get 1
i32.const -32768
i32.eq
select
local.tee 1
i32.const 65535
i32.and
local.tee 2
i32.const 11059
i32.lt_u
br_if 0 (;@1;)
block ;; label = @2
local.get 2
i32.const 20070
i32.lt_u
br_if 0 (;@2;)
block ;; label = @3
local.get 1
i32.const 65535
i32.and
i32.const 26623
i32.le_u
br_if 0 (;@3;)
local.get 0
i32.const 32769
i32.store16 offset=14
return
end
local.get 0
i32.const -26112
local.get 1
i32.const 65532
i32.and
i32.const 2
i32.shr_u
i32.sub
i32.store16 offset=14
return
end
local.get 0
i32.const -11059
local.get 1
i32.sub
i32.store16 offset=14
return
end
local.get 0
i32.const 0
local.get 1
i32.const 1
i32.shl
i32.sub
i32.store16 offset=14)
(func $gsm_enc_Short_term_analysis_filtering (type 4) (param i32 i32 i32 i32)
(local i32 i32 i32 i32 i32 i32 i32)
i32.const 13
i32.const 120
call $__pragma_loopbound
block ;; label = @1
local.get 2
i32.const 1
i32.lt_s
br_if 0 (;@1;)
local.get 3
i32.load16_u
local.set 4
loop ;; label = @2
i32.const 8
i32.const 8
call $__pragma_loopbound
local.get 0
i32.load16_s offset=572
local.set 5
local.get 1
i32.load16_s
local.set 6
local.get 0
local.get 4
i32.store16 offset=572
local.get 0
i32.load16_s offset=574
local.set 7
local.get 1
i32.load16_s offset=2
local.set 8
local.get 0
local.get 5
local.get 6
local.get 4
i32.extend16_s
local.tee 9
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
i32.store16 offset=574
local.get 0
i32.load16_s offset=576
local.set 4
local.get 1
i32.load16_s offset=4
local.set 10
local.get 0
local.get 7
local.get 8
local.get 5
local.get 6
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 9
i32.add
local.tee 5
i32.const 32767
local.get 5
i32.const 32767
i32.lt_s
select
local.tee 5
i32.const -32768
local.get 5
i32.const -32768
i32.gt_s
select
local.tee 9
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 5
i32.const 32767
local.get 5
i32.const 32767
i32.lt_s
select
local.tee 5
i32.const -32768
local.get 5
i32.const -32768
i32.gt_s
select
i32.store16 offset=576
local.get 0
i32.load16_s offset=578
local.set 5
local.get 1
i32.load16_s offset=6
local.set 6
local.get 0
local.get 4
local.get 10
local.get 7
local.get 8
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 9
i32.add
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
local.tee 9
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
i32.store16 offset=578
local.get 0
i32.load16_s offset=580
local.set 7
local.get 1
i32.load16_s offset=8
local.set 8
local.get 0
local.get 5
local.get 6
local.get 4
local.get 10
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 9
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
local.tee 9
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
i32.store16 offset=580
local.get 0
i32.load16_s offset=582
local.set 4
local.get 1
i32.load16_s offset=10
local.set 10
local.get 0
local.get 7
local.get 8
local.get 5
local.get 6
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 9
i32.add
local.tee 5
i32.const 32767
local.get 5
i32.const 32767
i32.lt_s
select
local.tee 5
i32.const -32768
local.get 5
i32.const -32768
i32.gt_s
select
local.tee 9
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 5
i32.const 32767
local.get 5
i32.const 32767
i32.lt_s
select
local.tee 5
i32.const -32768
local.get 5
i32.const -32768
i32.gt_s
select
i32.store16 offset=582
local.get 0
i32.load16_s offset=584
local.set 5
local.get 1
i32.load16_s offset=12
local.set 6
local.get 0
local.get 4
local.get 10
local.get 7
local.get 8
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 9
i32.add
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
local.tee 7
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 8
i32.const 32767
local.get 8
i32.const 32767
i32.lt_s
select
local.tee 8
i32.const -32768
local.get 8
i32.const -32768
i32.gt_s
select
i32.store16 offset=584
local.get 1
i32.load16_s offset=14
local.set 8
local.get 0
i32.load16_s offset=586
local.set 9
local.get 0
local.get 5
local.get 6
local.get 4
local.get 10
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 7
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
local.tee 4
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
i32.add
local.tee 7
i32.const 32767
local.get 7
i32.const 32767
i32.lt_s
select
local.tee 7
i32.const -32768
local.get 7
i32.const -32768
i32.gt_s
select
i32.store16 offset=586
local.get 3
local.get 9
local.get 8
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
local.get 6
i32.mul
i32.const 1
i32.shl
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
i32.add
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
local.tee 4
i32.store16
local.get 2
i32.const -1
i32.add
local.tee 2
br_if 0 (;@2;)
end
end)
(func $gsm_enc_RPE_grid_selection (type 2) (param i32 i32 i32)
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
local.get 0
i32.load16_s offset=78
local.set 3
local.get 0
i32.load16_s offset=76
local.set 4
local.get 0
i32.load16_s offset=70
local.set 5
local.get 0
i32.load16_s offset=64
local.set 6
local.get 0
i32.load16_s offset=58
local.set 7
local.get 0
i32.load16_s offset=52
local.set 8
local.get 0
i32.load16_s offset=46
local.set 9
local.get 0
i32.load16_s offset=40
local.set 10
local.get 0
i32.load16_s offset=34
local.set 11
local.get 0
i32.load16_s offset=28
local.set 12
local.get 0
i32.load16_s offset=22
local.set 13
local.get 0
i32.load16_s offset=16
local.set 14
local.get 0
i32.load16_s offset=10
local.set 15
local.get 0
i32.load16_s offset=4
local.set 16
local.get 0
i32.load16_s offset=74
local.set 17
local.get 0
i32.load16_s offset=68
local.set 18
local.get 0
i32.load16_s offset=62
local.set 19
local.get 0
i32.load16_s offset=56
local.set 20
local.get 0
i32.load16_s offset=50
local.set 21
local.get 0
i32.load16_s offset=44
local.set 22
local.get 0
i32.load16_s offset=38
local.set 23
local.get 0
i32.load16_s offset=32
local.set 24
local.get 0
i32.load16_s offset=26
local.set 25
local.get 0
i32.load16_s offset=20
local.set 26
local.get 0
i32.load16_s offset=14
local.set 27
local.get 0
i32.load16_s offset=8
local.set 28
local.get 0
i32.load16_s offset=2
local.set 29
local.get 0
i32.load16_s
local.set 30
local.get 0
i32.load16_s offset=72
local.set 31
local.get 0
i32.load16_s offset=66
local.set 32
local.get 0
i32.load16_s offset=60
local.set 33
local.get 0
i32.load16_s offset=54
local.set 34
local.get 0
i32.load16_s offset=48
local.set 35
local.get 0
i32.load16_s offset=42
local.set 36
local.get 0
i32.load16_s offset=36
local.set 37
local.get 0
i32.load16_s offset=30
local.set 38
local.get 0
i32.load16_s offset=24
local.set 39
local.get 0
i32.load16_s offset=18
local.set 40
local.get 0
i32.load16_s offset=12
local.set 41
local.get 0
i32.load16_s offset=6
local.set 42
i32.const 13
i32.const 13
call $__pragma_loopbound
local.get 1
local.get 0
i32.const 3
i32.const 2
local.get 28
i32.const 2
i32.shr_s
local.tee 28
local.get 28
i32.mul
local.get 29
i32.const 2
i32.shr_s
local.tee 28
local.get 28
i32.mul
i32.add
local.get 27
i32.const 2
i32.shr_s
local.tee 27
local.get 27
i32.mul
i32.add
local.get 26
i32.const 2
i32.shr_s
local.tee 26
local.get 26
i32.mul
i32.add
local.get 25
i32.const 2
i32.shr_s
local.tee 25
local.get 25
i32.mul
i32.add
local.get 24
i32.const 2
i32.shr_s
local.tee 24
local.get 24
i32.mul
i32.add
local.get 23
i32.const 2
i32.shr_s
local.tee 23
local.get 23
i32.mul
i32.add
local.get 22
i32.const 2
i32.shr_s
local.tee 22
local.get 22
i32.mul
i32.add
local.get 21
i32.const 2
i32.shr_s
local.tee 21
local.get 21
i32.mul
i32.add
local.get 20
i32.const 2
i32.shr_s
local.tee 20
local.get 20
i32.mul
i32.add
local.get 19
i32.const 2
i32.shr_s
local.tee 19
local.get 19
i32.mul
i32.add
local.get 18
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 17
i32.const 2
i32.shr_s
local.tee 17
local.get 17
i32.mul
i32.add
i32.const 1
i32.shl
local.tee 17
local.get 41
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
local.get 42
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 40
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 39
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 38
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 37
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 36
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 35
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 34
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 33
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 32
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.get 31
i32.const 2
i32.shr_s
local.tee 18
local.get 18
i32.mul
i32.add
local.tee 18
local.get 30
i32.const 2
i32.shr_s
local.tee 19
local.get 19
i32.mul
i32.add
i32.const 1
i32.shl
local.tee 19
i32.gt_s
local.tee 20
local.get 15
i32.const 2
i32.shr_s
local.tee 15
local.get 15
i32.mul
local.get 16
i32.const 2
i32.shr_s
local.tee 15
local.get 15
i32.mul
i32.add
local.get 14
i32.const 2
i32.shr_s
local.tee 14
local.get 14
i32.mul
i32.add
local.get 13
i32.const 2
i32.shr_s
local.tee 13
local.get 13
i32.mul
i32.add
local.get 12
i32.const 2
i32.shr_s
local.tee 12
local.get 12
i32.mul
i32.add
local.get 11
i32.const 2
i32.shr_s
local.tee 11
local.get 11
i32.mul
i32.add
local.get 10
i32.const 2
i32.shr_s
local.tee 10
local.get 10
i32.mul
i32.add
local.get 9
i32.const 2
i32.shr_s
local.tee 9
local.get 9
i32.mul
i32.add
local.get 8
i32.const 2
i32.shr_s
local.tee 8
local.get 8
i32.mul
i32.add
local.get 7
i32.const 2
i32.shr_s
local.tee 7
local.get 7
i32.mul
i32.add
local.get 6
i32.const 2
i32.shr_s
local.tee 6
local.get 6
i32.mul
i32.add
local.get 5
i32.const 2
i32.shr_s
local.tee 5
local.get 5
i32.mul
i32.add
local.get 4
i32.const 2
i32.shr_s
local.tee 4
local.get 4
i32.mul
i32.add
i32.const 1
i32.shl
local.tee 4
local.get 17
local.get 19
local.get 20
select
local.tee 5
i32.gt_s
local.tee 6
select
local.get 3
i32.const 2
i32.shr_s
local.tee 3
local.get 3
i32.mul
local.get 18
i32.add
i32.const 1
i32.shl
local.get 4
local.get 5
local.get 6
select
i32.gt_s
select
local.tee 3
i32.const 1
i32.shl
i32.add
local.tee 0
i32.load16_u
i32.store16
local.get 1
local.get 0
i32.load16_u offset=6
i32.store16 offset=2
local.get 1
local.get 0
i32.load16_u offset=12
i32.store16 offset=4
local.get 1
local.get 0
i32.load16_u offset=18
i32.store16 offset=6
local.get 1
local.get 0
i32.load16_u offset=24
i32.store16 offset=8
local.get 1
local.get 0
i32.load16_u offset=30
i32.store16 offset=10
local.get 1
local.get 0
i32.load16_u offset=36
i32.store16 offset=12
local.get 1
local.get 0
i32.load16_u offset=42
i32.store16 offset=14
local.get 1
local.get 0
i32.load16_u offset=48
i32.store16 offset=16
local.get 1
local.get 0
i32.load16_u offset=54
i32.store16 offset=18
local.get 1
local.get 0
i32.load16_u offset=60
i32.store16 offset=20
local.get 1
local.get 0
i32.load16_u offset=66
i32.store16 offset=22
local.get 1
local.get 0
i32.load16_u offset=72
i32.store16 offset=24
local.get 2
local.get 3
i32.store16)
(func $gsm_enc_APCM_quantization (type 7) (param i32 i32 i32 i32 i32)
(local i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32 i32)
i32.const 13
i32.const 13
call $__pragma_loopbound
local.get 0
i32.load16_u offset=24
local.set 5
local.get 0
i32.load16_u offset=22
local.set 6
local.get 0
i32.load16_u offset=20
local.set 7
local.get 0
i32.load16_u offset=18
local.set 8
local.get 0
i32.load16_u offset=16
local.set 9
local.get 0
i32.load16_u offset=14
local.set 10
local.get 0
i32.load16_u offset=12
local.set 11
local.get 0
i32.load16_u offset=10
local.set 12
local.get 0
i32.load16_u offset=8
local.set 13
local.get 0
i32.load16_u offset=6
local.set 14
local.get 0
i32.load16_u offset=4
local.set 15
local.get 0
i32.load16_u
local.set 16
local.get 0
i32.load16_u offset=2
local.set 17
i32.const 6
i32.const 6
call $__pragma_loopbound
block ;; label = @1
block ;; label = @2
i32.const 32767
i32.const 0
local.get 16
i32.sub
local.get 16
i32.const 32768
i32.eq
select
local.get 16
local.get 16
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 16
i32.const 32767
i32.const 0
local.get 17
i32.sub
local.get 17
i32.const 32768
i32.eq
select
local.get 17
local.get 17
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 17
local.get 16
local.get 17
i32.gt_s
select
local.tee 16
i32.const 32767
i32.const 0
local.get 15
i32.sub
local.get 15
i32.const 32768
i32.eq
select
local.get 15
local.get 15
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 15
local.get 16
local.get 15
i32.gt_s
select
local.tee 15
i32.const 32767
i32.const 0
local.get 14
i32.sub
local.get 14
i32.const 32768
i32.eq
select
local.get 14
local.get 14
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 14
local.get 15
local.get 14
i32.gt_s
select
local.tee 14
i32.const 32767
i32.const 0
local.get 13
i32.sub
local.get 13
i32.const 32768
i32.eq
select
local.get 13
local.get 13
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 13
local.get 14
local.get 13
i32.gt_s
select
local.tee 13
i32.const 32767
i32.const 0
local.get 12
i32.sub
local.get 12
i32.const 32768
i32.eq
select
local.get 12
local.get 12
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 12
local.get 13
local.get 12
i32.gt_s
select
local.tee 12
i32.const 32767
i32.const 0
local.get 11
i32.sub
local.get 11
i32.const 32768
i32.eq
select
local.get 11
local.get 11
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 11
local.get 12
local.get 11
i32.gt_s
select
local.tee 11
i32.const 32767
i32.const 0
local.get 10
i32.sub
local.get 10
i32.const 32768
i32.eq
select
local.get 10
local.get 10
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 10
local.get 11
local.get 10
i32.gt_s
select
local.tee 10
i32.const 32767
i32.const 0
local.get 9
i32.sub
local.get 9
i32.const 32768
i32.eq
select
local.get 9
local.get 9
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 9
local.get 10
local.get 9
i32.gt_s
select
local.tee 9
i32.const 32767
i32.const 0
local.get 8
i32.sub
local.get 8
i32.const 32768
i32.eq
select
local.get 8
local.get 8
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 8
local.get 9
local.get 8
i32.gt_s
select
local.tee 8
i32.const 32767
i32.const 0
local.get 7
i32.sub
local.get 7
i32.const 32768
i32.eq
select
local.get 7
local.get 7
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 7
local.get 8
local.get 7
i32.gt_s
select
local.tee 7
i32.const 32767
i32.const 0
local.get 6
i32.sub
local.get 6
i32.const 32768
i32.eq
select
local.get 6
local.get 6
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 6
local.get 7
local.get 6
i32.gt_s
select
local.tee 6
i32.const 32767
i32.const 0
local.get 5
i32.sub
local.get 5
i32.const 32768
i32.eq
select
local.get 5
local.get 5
i32.extend16_s
i32.const 0
i32.lt_s
select
i32.extend16_s
local.tee 5
local.get 6
local.get 5
i32.gt_s
select
local.tee 5
i32.const 0
local.get 5
i32.const 0
i32.gt_s
select
local.get 5
i32.const 511
i32.gt_s
local.get 5
i32.const 1023
i32.gt_s
i32.add
local.get 5
i32.const 2047
i32.gt_s
i32.add
local.get 5
i32.const 4095
i32.gt_s
i32.add
local.get 5
i32.const 8191
i32.gt_s
i32.add
local.get 5
i32.const 16383
i32.gt_s
i32.add
local.tee 5
i32.const 5
i32.add
i32.const 65535
i32.and
i32.shr_u
local.get 5
i32.const 3
i32.shl
i32.const 65528
i32.and
i32.add
local.tee 8
local.get 8
i32.const 65528
i32.and
i32.const 3
i32.shr_u
i32.const -1
i32.add
i32.const 0
local.get 8
i32.const 15
i32.gt_u
select
local.tee 5
i32.const 3
i32.shl
i32.sub
local.tee 6
i32.const 65535
i32.and
br_if 0 (;@2;)
i32.const 7
local.set 9
i32.const 65532
local.set 5
br 1 (;@1;)
end
i32.const 0
i32.const 3
call $__pragma_loopbound
block ;; label = @2
local.get 6
i32.extend16_s
local.tee 6
i32.const 7
i32.gt_s
br_if 0 (;@2;)
loop ;; label = @3
local.get 5
i32.const -1
i32.add
local.set 5
local.get 6
i32.const 1
i32.shl
i32.const 1
i32.or
i32.extend16_s
local.tee 6
i32.const 8
i32.lt_s
br_if 0 (;@3;)
end
end
local.get 6
i32.const -8
i32.add
local.set 9
end
local.get 9
i32.const 65535
i32.and
i32.const 1
i32.shl
i32.const 1040
i32.add
i32.load16_s
local.set 6
i32.const 13
i32.const 13
call $__pragma_loopbound
local.get 1
local.get 6
i32.const 1
i32.shl
local.tee 6
local.get 0
i32.load16_u
i32.const 6
local.get 5
i32.sub
i32.const 65535
i32.and
local.tee 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16
local.get 1
local.get 6
local.get 0
i32.load16_u offset=2
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=2
local.get 1
local.get 6
local.get 0
i32.load16_u offset=4
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=4
local.get 1
local.get 6
local.get 0
i32.load16_u offset=6
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=6
local.get 1
local.get 6
local.get 0
i32.load16_u offset=8
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=8
local.get 1
local.get 6
local.get 0
i32.load16_u offset=10
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=10
local.get 1
local.get 6
local.get 0
i32.load16_u offset=12
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=12
local.get 1
local.get 6
local.get 0
i32.load16_u offset=14
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=14
local.get 1
local.get 6
local.get 0
i32.load16_u offset=16
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=16
local.get 1
local.get 6
local.get 0
i32.load16_u offset=18
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=18
local.get 1
local.get 6
local.get 0
i32.load16_u offset=20
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=20
local.get 1
local.get 6
local.get 0
i32.load16_u offset=22
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=22
local.get 1
local.get 6
local.get 0
i32.load16_u offset=24
local.get 7
i32.shl
i32.extend16_s
i32.mul
i32.const 28
i32.shr_s
i32.const 4
i32.add
i32.store16 offset=24
local.get 2
local.get 9
i32.store16
local.get 3
local.get 5
i32.store16
local.get 4
local.get 8
i32.store16)
(func $gsm_enc_APCM_inverse_quantization (type 4) (param i32 i32 i32 i32)
(local i32 i32 i32)
local.get 1
i32.const 1
i32.shl
i32.const 1056
i32.add
i32.load16_s
local.set 1
i32.const 13
i32.const 13
call $__pragma_loopbound
i32.const 0
i32.const 0
i32.const 1
i32.const 6
local.get 2
i32.sub
local.tee 4
i32.const 32767
local.get 4
i32.const 32767
i32.lt_s
select
local.tee 4
i32.const -32768
local.get 4
i32.const -32768
i32.gt_s
select
local.tee 4
i32.const -1
i32.add
i32.const 65535
i32.and
i32.shl
local.get 4
i32.const -17
i32.add
i32.const 65535
i32.and
i32.const 65505
i32.lt_u
select
local.get 2
i32.const 5
i32.gt_s
select
local.set 5
local.get 1
i32.const 1
i32.shl
local.set 1
block ;; label = @1
local.get 4
i32.const 16
i32.lt_s
br_if 0 (;@1;)
local.get 3
local.get 1
local.get 0
i32.load16_u
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.extend16_s
local.tee 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16
local.get 3
local.get 1
local.get 0
i32.load16_u offset=2
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=2
local.get 3
local.get 1
local.get 0
i32.load16_u offset=4
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=4
local.get 3
local.get 1
local.get 0
i32.load16_u offset=6
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=6
local.get 3
local.get 1
local.get 0
i32.load16_u offset=8
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=8
local.get 3
local.get 1
local.get 0
i32.load16_u offset=10
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=10
local.get 3
local.get 1
local.get 0
i32.load16_u offset=12
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=12
local.get 3
local.get 1
local.get 0
i32.load16_u offset=14
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=14
local.get 3
local.get 1
local.get 0
i32.load16_u offset=16
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=16
local.get 3
local.get 1
local.get 0
i32.load16_u offset=18
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=18
local.get 3
local.get 1
local.get 0
i32.load16_u offset=20
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=20
local.get 3
local.get 1
local.get 0
i32.load16_u offset=22
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=22
local.get 3
local.get 1
local.get 0
i32.load16_u offset=24
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 4
i32.add
local.tee 0
i32.const 32767
local.get 0
i32.const 32767
i32.lt_s
select
local.tee 0
i32.const -32768
local.get 0
i32.const -32768
i32.gt_s
select
i32.const 15
i32.shr_u
i32.store16 offset=24
return
end
block ;; label = @1
local.get 4
i32.extend16_s
i32.const -16
i32.gt_s
br_if 0 (;@1;)
local.get 3
i32.const 0
i32.store16 offset=24
local.get 3
i64.const 0
i64.store offset=16 align=2
local.get 3
i64.const 0
i64.store offset=8 align=2
local.get 3
i64.const 0
i64.store align=2
return
end
local.get 1
local.get 0
i32.load16_u
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.extend16_s
local.tee 5
i32.add
local.tee 6
i32.const 32767
local.get 6
i32.const 32767
i32.lt_s
select
local.tee 6
i32.const -32768
local.get 6
i32.const -32768
i32.gt_s
select
local.set 6
block ;; label = @1
local.get 2
i32.const 6
i32.gt_s
br_if 0 (;@1;)
local.get 3
local.get 6
i32.extend16_s
local.get 4
i32.shr_s
i32.store16
local.get 3
local.get 1
local.get 0
i32.load16_u offset=2
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=2
local.get 3
local.get 1
local.get 0
i32.load16_u offset=4
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=4
local.get 3
local.get 1
local.get 0
i32.load16_u offset=6
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=6
local.get 3
local.get 1
local.get 0
i32.load16_u offset=8
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=8
local.get 3
local.get 1
local.get 0
i32.load16_u offset=10
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=10
local.get 3
local.get 1
local.get 0
i32.load16_u offset=12
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=12
local.get 3
local.get 1
local.get 0
i32.load16_u offset=14
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=14
local.get 3
local.get 1
local.get 0
i32.load16_u offset=16
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=16
local.get 3
local.get 1
local.get 0
i32.load16_u offset=18
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=18
local.get 3
local.get 1
local.get 0
i32.load16_u offset=20
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=20
local.get 3
local.get 1
local.get 0
i32.load16_u offset=22
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=22
local.get 3
local.get 1
local.get 0
i32.load16_u offset=24
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 0
i32.const 32767
local.get 0
i32.const 32767
i32.lt_s
select
local.tee 0
i32.const -32768
local.get 0
i32.const -32768
i32.gt_s
select
local.get 4
i32.shr_s
i32.store16 offset=24
return
end
local.get 3
local.get 6
i32.const 0
local.get 4
i32.sub
local.tee 4
i32.shl
i32.store16
local.get 3
local.get 1
local.get 0
i32.load16_u offset=2
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=2
local.get 3
local.get 1
local.get 0
i32.load16_u offset=4
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=4
local.get 3
local.get 1
local.get 0
i32.load16_u offset=6
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=6
local.get 3
local.get 1
local.get 0
i32.load16_u offset=8
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=8
local.get 3
local.get 1
local.get 0
i32.load16_u offset=10
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=10
local.get 3
local.get 1
local.get 0
i32.load16_u offset=12
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=12
local.get 3
local.get 1
local.get 0
i32.load16_u offset=14
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=14
local.get 3
local.get 1
local.get 0
i32.load16_u offset=16
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=16
local.get 3
local.get 1
local.get 0
i32.load16_u offset=18
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=18
local.get 3
local.get 1
local.get 0
i32.load16_u offset=20
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=20
local.get 3
local.get 1
local.get 0
i32.load16_u offset=22
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 2
i32.const 32767
local.get 2
i32.const 32767
i32.lt_s
select
local.tee 2
i32.const -32768
local.get 2
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=22
local.get 3
local.get 1
local.get 0
i32.load16_u offset=24
i32.const 13
i32.shl
i32.const -28672
i32.add
i32.extend16_s
i32.mul
i32.const 32768
i32.add
i32.const 16
i32.shr_s
local.get 5
i32.add
local.tee 0
i32.const 32767
local.get 0
i32.const 32767
i32.lt_s
select
local.tee 0
i32.const -32768
local.get 0
i32.const -32768
i32.gt_s
select
local.get 4
i32.shl
i32.store16 offset=24)
(func $gsm_enc_div (type 8) (param i32 i32) (result i32)
(local i32)
block ;; label = @1
local.get 0
br_if 0 (;@1;)
i32.const 0
i32.extend16_s
return
end
i32.const 15
i32.const 15
call $__pragma_loopbound
local.get 0
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 3
i32.shl
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.const 2
i32.shl
i32.or
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 1
i32.shl
i32.or
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.or
i32.const 2
i32.shl
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 1
i32.shl
i32.or
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.or
i32.const 2
i32.shl
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 1
i32.shl
i32.or
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.or
i32.const 2
i32.shl
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 1
i32.shl
i32.or
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.or
i32.const 2
i32.shl
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 1
i32.shl
i32.or
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.or
i32.const 2
i32.shl
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
i32.const 1
i32.shl
i32.or
local.get 0
i32.const 0
local.get 1
local.get 0
local.get 1
i32.lt_s
select
i32.sub
i32.const 1
i32.shl
local.tee 0
local.get 1
i32.ge_s
local.tee 2
i32.or
i32.const 1
i32.shl
local.get 0
local.get 1
i32.const 0
local.get 2
select
i32.sub
i32.const 1
i32.shl
local.get 1
i32.ge_s
i32.or
i32.extend16_s)
(func $gsm_enc_main (type 1)
(local i32)
i32.const 0
i32.const 0
i32.store offset=9152
i32.const 0
i32.load offset=9148
local.set 0
i32.const 20
i32.const 20
call $__pragma_loopbound
local.get 0
i32.const 1072
i32.const 7472
call $gsm_enc_encode
local.get 0
i32.const 1392
i32.const 7505
call $gsm_enc_encode
local.get 0
i32.const 1712
i32.const 7538
call $gsm_enc_encode
local.get 0
i32.const 2032
i32.const 7571
call $gsm_enc_encode
local.get 0
i32.const 2352
i32.const 7604
call $gsm_enc_encode
local.get 0
i32.const 2672
i32.const 7637
call $gsm_enc_encode
local.get 0
i32.const 2992
i32.const 7670
call $gsm_enc_encode
local.get 0
i32.const 3312
i32.const 7703
call $gsm_enc_encode
local.get 0
i32.const 3632
i32.const 7736
call $gsm_enc_encode
local.get 0
i32.const 3952
i32.const 7769
call $gsm_enc_encode
local.get 0
i32.const 4272
i32.const 7802
call $gsm_enc_encode
local.get 0
i32.const 4592
i32.const 7835
call $gsm_enc_encode
local.get 0
i32.const 4912
i32.const 7868
call $gsm_enc_encode
local.get 0
i32.const 5232
i32.const 7901
call $gsm_enc_encode
local.get 0
i32.const 5552
i32.const 7934
call $gsm_enc_encode
local.get 0
i32.const 5872
i32.const 7967
call $gsm_enc_encode
local.get 0
i32.const 6192
i32.const 8000
call $gsm_enc_encode
local.get 0
i32.const 6512
i32.const 8033
call $gsm_enc_encode
local.get 0
i32.const 6832
i32.const 8066
call $gsm_enc_encode
local.get 0
i32.const 7152
i32.const 8099
call $gsm_enc_encode)
(func $__original_main (type 9) (result i32)
(local i32)
i32.const 648
i32.const 648
call $__pragma_loopbound
i32.const -648
local.set 0
loop ;; label = @1
local.get 0
i32.const 9156
i32.add
i32.const 0
i32.store8
local.get 0
i32.const 9148
i32.add
i64.const 0
i64.store align=1
local.get 0
i32.const 9
i32.add
local.tee 0
br_if 0 (;@1;)
end
i32.const 0
i32.const 8500
i32.store offset=9148
i32.const 0
i32.const 40
i32.store16 offset=9122
call $gsm_enc_main
i32.const 0
i32.load offset=9152)
(table (;0;) 1 1 funcref)
(memory (;0;) 1)
(global $__stack_pointer (mut i32) (i32.const 13264))
(global (;1;) i32 (i32.const 9156))
(global (;2;) i32 (i32.const 13264))
(export "memory" (memory 0))
(export "__wasm_apply_data_relocs" (func $__wasm_apply_data_relocs))
(export "entrypoint" (func $gsm_enc_main))
(export "main" (func $__original_main))
(export "__data_end" (global 1))
(export "__heap_base" (global 2))
(data $.data (i32.const 1024) "\9a\19\00@ff\ff\7f\00\00\00\00\00\00\00\00\c8qgf\18]VU\c5N%IDD\00@\ffG\ffO\ffW\ff_\ffg\ffo\ffw\ff\7f\00\00\00\00\10\00\10\00\10\00 \00 \00\18\00(\00 \00 \00(\00(\00 \000\000\00(\00\10\00\08\00\00\00P\00`\00X\00\d0\00\e0\00\d0\00\18\01(\01\18\01(\01\10\01\00\01\a0\00X\00H\00X\00`\00X\00P\00H\00@\000\00 \00\10\00\08\00\f8\ff\e8\ff\e0\ff\d8\ff\c8\ff\c0\ff\c0\ff\98\ffx\ffx\ff\c8\ff\00\00\10\00@\00`\00h\00x\00x\00p\00\a8\00\c8\00\c8\00\e0\00\f0\00\e8\00\f8\00\f8\00\f0\00\e0\00\c8\00\b8\00\e8\00\00\01\f8\00\e8\00\d8\00\c0\00\a8\00 \00\c0\ff\a0\ff\a0\ff\a8\ff\b0\ff\d0\ff\f8\ff\00\00 \000\000\000\00(\00 \00\f0\ff\d0\ff\c8\ff\c8\ff\d0\ff\d8\ff\e8\ff\f8\ff\f8\ff\08\00\18\00\18\00x\00\b8\00\c0\00\00\010\01(\01\08\01\d8\00\c0\00x\008\00 \00 \00\00\00\e0\ff\e0\ff\d8\ff\c8\ff\c8\ff\a0\ff\88\ff\98\ff\80\ffp\ff\80\ffx\ffx\ff\90\ff\80\ffx\ffx\ffP\ff0\ffP\ff8\ff0\ff@\ffX\ffp\ff\80\ffP\ff8\ff@\ff\18\ff\00\ff\08\ff@\ffh\ff\80\ff\88\ff\88\ff\88\ff\88\ff\b8\ff\e0\ff\f0\ff\d0\ff\b8\ff\b8\ff\90\ffp\ffp\ffP\ff@\ff@\ffX\ffp\ff\80\ff\c8\ff\00\00\18\000\00H\00H\00(\00\08\00\f8\ff\d8\ff\c8\ff\b8\ff\98\ffx\ffp\ff\f0\ffX\00\88\00\b8\00\d0\00\d8\00\e8\008\01`\01X\01p\01x\01`\01h\01`\01@\01\18\01\f0\00\c8\00\98\00x\00`\00\18\00\c0\ff\90\ffH\ff\00\ff\e8\fe\c8\fe\b8\fe\b8\fe\a0\fe\88\fe\80\fe\b8\fe\f8\fe8\ff\a0\ff\e8\ff\08\000\00X\00h\00h\00p\00h\00P\00@\00@\00 \00\00\00\e8\ff\f0\ff\f8\ff\f8\ff8\00h\00x\008\00\08\00\f0\ff\e0\ff\d8\ff\d8\ff\e0\ff\d0\ff\c8\ff\00\000\00H\00h\00\80\00\88\00\88\00\88\00\88\00\88\00\88\00x\00\98\00\b0\00\b8\00\98\00p\00X\00`\00x\00\a8\00\b8\00\a8\00\a0\00\80\00h\00`\00X\00H\000\008\008\000\00P\00X\00`\000\00\08\00\f8\ff\90\ffH\ff(\ff\10\ff\f8\fe\f0\fe\d8\fe\b0\fe\b0\fe\a8\fe\b8\fe\d8\fe\f8\fe\10\ff \ff@\ffX\ff\80\ff\a0\ff\b8\ff\c8\ff\d8\ff\e0\ff\f0\ffH\00\98\00\b0\00h\00\18\00\f8\ff\e8\ff\f0\ff\f8\ff \008\008\00P\00h\00p\00h\00`\00`\008\00 \00\18\00@\00`\00h\00@\00\10\00\00\00\b0\ffx\ffp\ff\90\ff\a8\ff\c8\ff\98\ffP\ffP\ffP\ffX\ffh\ffH\ff \ff\18\ff8\ff`\ffp\ff\80\ff\98\ff\a0\ff\b8\ff\d0\ff\e0\ff\18\00H\00X\00\b0\00\f8\00\08\01\18\01 \01\18\010\01H\01@\010\01 \01\08\01\98\008\00\18\00\d0\ff\90\ff\80\ffX\ff8\ff0\ffH\ffh\ffx\ff\88\ff\b8\ff\d8\ff\e8\ff\d8\ff\f0\ff\10\00 \00 \00\18\00(\000\000\008\00`\00\80\00\80\00\b0\00\d8\00\d0\00\b8\00\a8\00\a8\00\a0\00\90\00x\00p\00h\00H\00\18\00\08\00\08\00\00\00\00\00\e8\ff\b0\ff\90\ff\88\ffp\ff`\ff`\ff\90\ff\c0\ff\d0\ff\d8\ff\e0\ff\e8\ff\18\00P\00X\000\00\08\00\00\00\18\008\008\00H\00P\00P\00 \00\00\00\f8\ff\b0\ffp\ffh\ff\b0\ff\e8\ff\f8\ff\f8\ff\f8\ff\f0\ff0\00p\00\90\00\98\00\98\00\90\00\a0\00\b0\00\b8\00\c0\00\c0\00\a8\00\98\00\88\00x\00P\000\00 \00\d8\ff\98\ff\88\ffP\ff \ff\18\ff\f8\fe\e0\fe\e8\fep\fe\08\fe\00\feH\fe\98\fe\b8\fe\e8\fe\10\ff(\ff\18\ff\10\ff\18\ffH\ffp\ff\88\ff\e0\ff(\00@\00X\00h\00p\00x\00p\00h\00h\00x\00\80\00\80\00\88\00\88\00\80\00X\000\00 \00\18\00\18\00\18\00P\00\90\00\a0\00\80\00`\00P\000\00\18\00\10\00(\008\008\00\18\00\f8\ff\f0\ff\00\00 \00 \000\000\000\00@\00P\00P\00P\00H\00H\00H\00H\00H\00x\00\a0\00\a8\00\c0\00\c8\00\c0\00\d0\00\e0\00\d8\00\e8\00\f0\00\e0\00\00\01\18\01\10\01\00\01\f0\00\d8\00\90\00H\00(\00 \00 \00 \008\00P\00P\00P\00H\00@\00P\00`\00`\00@\00\c0\ffX\ff@\ff\90\ff\e8\ff\00\00 \000\000\00h\00\98\00\a8\00\10\01h\01p\01H\01\18\01\f0\00\e8\00\e0\00\d0\00\98\00`\00@\00\00\00\d8\ff\d8\ff\c0\ff\b0\ff\b0\ffx\ff0\ff\10\ff\f0\fe\e8\fe\f0\fe\c8\fe\d0\fe\f8\fe\00\ff\10\ff \ffP\ffx\ff\90\ff\80\ffp\ffp\ff\80\ff\98\ff\a0\ff\b8\ff\d0\ff\d8\ff\f0\ff\00\00\08\00(\00H\00X\00x\00p\00X\00h\00\98\00\b8\00\d8\00\f0\00\f0\00\e8\00\f8\00\00\01\d8\00\d0\00\c8\00\e8\00\00\01\f0\00\e0\00\c8\00\b8\00\a0\00x\00X\008\00 \00\10\00\10\00\18\00\10\00\10\00\10\00\18\00(\00\08\00\e0\ff\c8\ff\80\ffH\ff8\ff@\ffH\ffH\ffp\ff\90\ff\a8\ff\b8\ff\c0\ff\c8\ff\c0\ff\c0\ff\c0\ff\b0\ff\a0\ff\a0\ff\a0\ff\a8\ff\b0\ffh\ff(\ff\08\ff\f8\fe\f8\fe\e8\fe\e0\fe\d8\fe\a8\fe\98\fe\a8\fe\a8\fe\a0\fe\a0\fe\d0\fe\00\ff0\ff(\ff8\ffX\ffH\ff@\ffH\ff\b0\ff\10\008\00(\00\10\00\08\00P\00\a0\00\b8\00\a0\00\80\00p\00\90\00\b0\00\b0\00\b8\00\b8\00\b0\00\c0\00\d0\00\c8\00\a0\00h\008\00\f0\ff\b0\ff\88\ffx\ffh\ff`\ff\90\ff\c0\ff\e0\ff\00\00 \000\00\a0\00\10\018\01@\01H\01H\01\10\01\e8\00\c0\00\a0\00\88\00h\00\08\00\b0\ff\88\ffX\ff0\ff \ff\f8\fe\d8\fe\d8\fe\00\ff \ff8\ffP\ffh\ff\88\ff\a0\ff\b8\ff \00\80\00\a0\00\d8\00\00\01\00\018\01h\01H\01(\01 \01\f8\00\e8\00\e0\00\c0\00\a8\00\b0\00\98\00p\00H\000\00\d0\ff`\ffH\ff\10\ff\a8\fe\a8\fe\c0\fe\c0\fe\e8\fe\b0\feX\fe\88\fe\d0\fe\b8\feH\feX\fe\e8\fe(\ff\18\ff`\ff\a0\00\a0\01\88\01x\01\08\02\08\02\00\01\18\00\e0\ff\e0\feh\fd\00\fd`\fdp\fd\a8\fd\00\ff\a0\00p\01\10\02\d8\02\10\03\18\02\a0\00\a0\ff\f0\fd\d8\fb\08\fb\c0\f90\f8\d8\f8\c0\fc8\00\a0\01\80\03\18\0aP\0f\b0\0d0\0c\18\0e\a8\0cp\05\98\ff8\fe\a0\fb\00\f7\d0\f5\c8\f7\a8\f9H\fb\b0\fbx\fc\00\ff\98\fe \fbH\fa\c0\fa\c8\f8\e0\f6\c0\f9\08\fe\80\ff(\04p\0b\18\0e8\0d8\0d(\0c\d0\01x\f5\08\f1P\fb\98\04(\04\e8\0c\90!\f0)\e0\22h\1fP \10\18\10\07\98\fa8\f4h\eeP\e9\c8\eb8\f5\b8\fe@\02`\04\d0\09x\09\f8\ff\10\f8\90\f1\d0\e8\90\e2`\df\f0\dfh\e6 \ec8\f1\c0\fa\f0\04\d0\08\c8\08\18\0b\f8\090\028\fah\fax\fc\b8\f9P\f8\a8\fe\b8\05\90\06\e8\02h\02\98\04\b0\fc\18\f0\f8\ed\90\00H\0fp\0cx\12\b8'\a0.\f8! \19\18\190\158\06X\f8 \f7\f8\f9\00\f6P\f8\90\05\e0\0e\00\10\d8\10`\14\f8\10\00\05\c0\fb\a8\f7P\f2\00\ec0\eb\c8\f1 \f9\90\fc\90\01`\0a\80\0e\b0\0d\d8\0a\90\06h\01 \ff\d0\fb\f8\f6`\f6\80\f6\b0\f5\c0\f7 \f1\90\ea0\f0\18\ec\90\e1X\e5 \ff\90\10P\0cH\12\88'\d0*(\16\f0\08\a8\0b8\05H\ef\10\e4\10\ebh\ef(\ea@\ec\18\fc\a8\08\18\08x\07X\08\f8\02\e8\f8\f0\f1@\ef\d0\ecX\e9p\ea`\f2\f0\fa\a0\ff\a0\04\f8\0c\f8\10\a0\0eH\0d\e8\0b\e0\05\b0\03X\03\18\ff@\fb\b0\f9\c0\f9\c0\f7\90\ee\a0\ea\00\ee\88\e8\00\e2\00\efH\09\00\14p\12\88\1d\d8,\88$\a8\0d\b8\04H\05\b0\f7\f0\e3h\e2\f8\ef\a0\f5 \f3h\fc\f0\0b\a0\0fP\0a\f8\01`\feH\fc@\f3(\ebX\ed\c0\f3\b8\f58\f7\f8\00p\0c\90\0e\e8\0d\90\11\b0\12X\10\98\0b8\06h\08\98\09\b0\02P\fe \01\a0\02\90\fc\10\f8\d0\f9\18\f8\90\f2@\f2\d0\f6H\0a\d8\1a@\18\18\1c\18+\f0)\08\16\b8\08x\07(\01\18\f1h\e8\a0\ed\10\f3H\f2X\f5X\00p\09\88\06\08\01\08\fd\88\f9X\f5\a0\f0\b0\f0@\f5\e8\f6\a0\fcX\07\d0\0c`\0f8\13X\14x\12\d0\0f\a8\0cP\0d\10\0d\98\07\98\03(\04\f0\04x\02\98\ffx\01\88\00\08\fb`\f6\a8\f1\18\ef\e8\f9\00\0c\c8\11`\12`\1b\b0!\e0\18\08\0b\c8\04x\000\f7`\ef\18\eb\10\ec\90\f2\00\f8`\fb`\ff\80\00\a8\ff\08\fb\a8\f1\10\ed\f0\ef\d0\ee\10\eb\e8\ef\f0\f8\e0\fd\98\02(\05\98\05(\090\0ap\06\e8\08\c0\0b\98\06\10\02\90\03`\05\88\02\10\f9h\f4`\f5\e0\f3\10\ee\b0\e8\08\e5\d0\ee\e0\038\06\a8\ff\b8\0bx \a8\1f\f0\0eH\06\c8\05\18\ff\88\f5 \ee\88\ed\a0\f5\a8\fb\c0\fb\98\fa \fa\d8\f7\d0\f2H\ef\98\e9x\e30\e5h\e8\90\e8\d0\ed\98\f7\c0\fb \fdx\01\90\04\a0\04X\07X\08\90\04\f8\04X\08\f0\06\f8\05P\04\98\00`\fe\a0\fd\e0\f9X\f3\c0\ed\08\f3\e0\ff\18\00\80\fbH\09\b8\1d\08\1d\88\0fH\0bP\0c\c0\09x\ff\a0\f1(\ef\b8\f6\f0\f9\f0\f6\88\f6\e0\f9\c0\f9\c8\f4\d8\eb\e8\e7\e0\eb\c8\e8\00\e1\18\e5\b8\f0(\f7p\f7x\f8X\ff\b0\060\04`\00\90\03\18\0a\98\0b\c8\06\10\07\f0\0c\d0\08\f8\01\80\028\02x\fdh\f8\98\f1p\f60\09x\0a8\fb\f0\04\b8\1e\98\1eh\0f\c8\0eH\15\80\14`\0c\b0\00\f8\fe0\088\08`\01\80\03\e8\07p\02\a0\fb\c0\f9P\f4\08\ee\08\ed\10\ee \ef\c0\f1\00\f8p\fe\b0\00\d8\02\c8\07\f0\09\a8\09`\0a(\0b\80\0cX\0d\d0\0bH\0a\00\09h\07\d0\03\e0\00\f8\ff\d8\fb\e8\f5\18\fe\e8\0f`\10\c8\05x\108&\80%@\17\e8\14\d0\19\d8\17\10\0ep\02 \01\00\09p\08\90\02\a0\03\00\06\00\01(\fe(\ff8\f8\b8\f08\f20\f5@\f4@\f48\fa\98\01\a8\03\d0\03\80\07\b8\0aX\0b\10\0b\d8\0a\08\0ax\08\c8\07H\06\a0\01H\ffX\feh\fa\d0\f7X\f7p\f4\b0\f5\a8\02X\0aH\04\c8\07\08\17p\19\c8\0e@\0a\d0\0c(\0d8\08\10\00\e0\fa\b0\fc\b8\fe\e8\fc\a8\fb\10\fd\c8\fb\10\f9`\f90\f8\d8\f4\00\f5`\f8\f0\f9X\fbH\feP\00\18\04\10\09@\090\08\c8\0a\88\0cP\0a\c0\07\00\07\90\05h\02\f0\ff\a8\fb \f7\98\f6\e0\f2h\eb\a0\ed\00\fcX\030\ff\98\03 \12`\18h\13\c0\10\f0\12\a0\12\08\0e\80\07\10\00\d8\fa\90\f9\e0\f7x\f2\10\ee\98\eb\a0\e7\f8\e60\ea\80\e9 \e4@\e4\a8\eb\98\efh\ef\88\f2\a8\f7\90\fc\f8\01(\050\06\e8\08\98\0cP\0d\98\0b \09x\06\f0\03`\02\00\fe\10\f8\b8\f4\c0\f0h\ebX\ef\e8\fa\e0\fd\80\f6\10\f9\e0\06 \0c\d8\05\08\04\c8\05P\04\d0\02(\01x\fbh\f60\f4P\f1\90\edp\e8H\e4\e0\e2H\e0\d0\dd\08\df\e0\e0\98\e0X\e2 \e5\a8\e6(\ea\88\ef\a8\f2H\f5\a8\fb\c8\01\f8\03H\07\88\0c\98\0e\b8\0d\98\0dP\0dh\0bp\09\c0\068\02\18\fe\08\fb \f8\80\f7p\f9\b0\f9\80\f8(\fa(\00\98\06H\09\d0\08\e0\09\d0\0d\10\10@\0dX\09(\07\08\03\a0\fd\f8\f9\18\f4\98\ec\b8\e8\18\e6\00\e2\d0\deH\df\00\e1\80\e1`\e1\c8\e3\98\e8\d8\edP\f2X\f5\00\fb\f8\02\b0\07\80\0b\08\11\18\15`\16p\17p\18\f8\16\00\13x\0f\c0\0fp\10\e8\0c\f8\0a\d8\0b(\0d\a8\10p\13\a0\10@\10\18\15@\17P\15\98\13\e0\10\c8\0a@\06H\03\18\fdX\f6\d8\f1 \ec`\e7P\e5\b8\e4\18\e48\e4\08\e58\e7\18\eb\c8\f0\18\f6\88\f9\c8\fe\18\05\d8\09\18\11\f0\17\b0\1b(\1e !\d8#8&\18$\80 0\1d\e8\1c\98\1d\a8\1c\d8\1a`\19\f8\17@\1a\f8\1c8\1d0\1ch\1a`\18\80\14 \10h\0b\e8\03\a8\fb\08\f5@\ee \e88\e3\88\de0\da\d0\d7(\d7\d8\d7\98\d9\10\dc\b0\dfp\e4H\e9\98\ef\f0\f58\fc(\02\98\07\98\0d \13`\17p\1a\e0\1b\c0\1c\98\1d\88\1aX\16\a0\12\80\11\a8\10\d0\0e\c8\0c\d8\0a \09p\0b0\0e\e8\0e\80\0d\e0\0b\c0\0a\b8\09\90\08\90\06\f8\010\fd\f0\f9\b0\f5\88\f18\ee\e8\e9\e8\e5\e0\e3\a0\e4\08\e68\e7X\e8\80\e9 \ec0\f0P\f4x\f8h\fch\ff\c8\03\b8\08\00\0d8\10\d8\12\90\14H\16\b8\16h\14`\11\a8\0f8\10X\10\88\0fP\0e\c8\0c\c0\0c\c0\0f \12\a0\12\f8\10 \0f(\0dx\0c\b8\0b\d0\08\c8\018\fb`\f60\f3x\f0(\ec\c8\e6\c0\e2P\e0\c8\df8\e0`\e1\00\e3h\e5\b8\e6\a0\e9P\ed8\f2\d8\f6\08\fb\10\ff\e8\02\a0\06\c0\0a\c8\0d\10\10h\11\18\10\90\0e\f8\0b\08\0bP\0a\f0\09`\09\88\08\08\08\c8\09\a8\0b\e8\0ep\10\d0\10X\0f`\0d\a0\0b`\0a\f0\08\08\06\b0\ff8\f9`\f30\f0 \eep\eb\a8\e7\10\e4@\e1\c8\df\f8\df\f0\e1H\e4\d0\e6\80\e7\e8\e9\f0\ecH\f20\f7\c0\fb\80\ff\10\03p\06\98\0a\88\0d\d8\0f\c0\10\b0\0eH\0c\b8\08\98\09\c0\0ah\0cx\0b\c8\098\08\f8\08\80\0a\a0\0c\10\0eH\0eX\0d(\0aP\07\f0\04(\02\e8\fe\80\fah\f4\d0\ee\e0\ea\b8\e8\18\e7\b0\e5\a8\e4\10\e4\80\e4H\e58\e7\b0\e9\80\ed\b8\f0\80\f4\b0\f7p\fb\d0\fe(\03 \07\98\0a\00\0e\f8\10\e0\12\a8\12\b0\11X\0f8\0f\88\0e\08\0f\c0\0f\f0\0f\b8\108\11\98\11\d0\138\16\e8\17X\17(\16`\14\e8\10\a0\0cH\08\80\02\90\fc\00\f7\f8\f0\18\eb8\e6\b8\e1x\deX\dc\b8\db(\dc\b0\dd0\e00\e3\f0\e6 \ec\10\f2\c0\f7\e0\fcP\01p\05\f0\08p\0cP\0f\b8\12`\15\e0\160\16\e8\14\98\12\b8\11p\11\b8\11\c0\11\e8\0fX\0e\b8\0cP\0ch\0d\98\0e0\0e(\0c\10\0a\d8\06\e0\02\a0\fe\18\fa\e8\f4\18\f0h\eb\e8\e6\10\e3\c8\df8\dd\f8\db8\dc\d0\ddp\e0\90\e3`\e7\88\eb \efx\f30\f8\e0\fc\f8\00\80\04h\07h\09\e0\0a\b8\0b\10\0c\b0\0bx\0a\e0\08\e8\06@\05p\08\e0\0b\d0\0e@\0e\10\0d\c8\0c(\0e\a0\0f\b0\0f\18\0f\d0\0d\c8\0b\e8\08(\06\00\03\18\ff@\fb\80\f7\88\f3(\f0\80\ed\18\ebh\e9\c0\e88\e7X\e6\98\e6\88\e88\eb\a0\edx\f1\b8\f5(\fa\a8\fe\00\03\c8\06`\09p\0b\e0\0cp\0dP\0d`\0c\90\08\18\04(\00\d0\01\f8\03\a8\05\00\07\08\08\a0\09\18\0b\c8\0c\90\0dh\0e\c0\0e0\0e(\0c\d8\090\07\08\03\d8\fe\c0\fa\98\f5\d8\f0\e0\ec\a8\eaH\e9\d0\e8P\e8\88\e8\10\e9\d0\eah\ed\18\f0P\f3\b8\f6\e0\fa\00\ff\d8\02\e8\050\08\f8\09\08\0b\80\0b`\0b\88\09H\06\d0\02P\01\e8\01p\02\e0\038\05X\06\18\09\00\0c\88\0e\b8\10\a0\12\e0\13\88\14H\14h\13 \11\d0\0d@\0a\08\06H\01\80\fc`\f8\d8\f4\c0\f1\08\f08\efx\ee\98\ee\90\efp\f1\90\f3\c0\f5\88\f8H\fb\f0\fdx\00\d0\03\c8\06\f8\08\a0\0a\c8\0bH\0c0\0bx\09\a8\060\05\f0\038\04\c0\03P\03`\03\e8\04\98\06\d0\07\d0\08\98\09p\0aH\0bp\0b\d0\0a\c0\09\90\080\07\88\05X\03@\01X\ff@\fdh\fb\e8\f9(\f8\d0\f6\08\f6\d8\f5\10\f6h\f6x\f7\e8\f8H\fa\c8\fcP\ff\c8\01(\04@\06\d0\07\d0\09@\0b\f8\0b0\0c\08\0c\08\0b\88\09\c0\07p\06\08\06\90\05\88\05\b0\05\e0\05\b8\06H\07X\07\00\07\a8\06 \06\d8\05\90\05(\05\a8\03@\02\08\018\ffP\fd\a0\fb8\fa \f9`\f8\e8\f6@\f6(\f6\80\f6 \f7\00\f8\e0\f8\a0\f9x\fa\88\fb \fd\a0\fe\08\00\10\01\00\02`\03\e0\04\08\068\078\08\d8\08(\088\07\00\06\a8\04\e0\020\01\a0\ffH\ff\10\ff\f0\fe0\ff\d0\ff\90\00\90\00p\00`\00\e8\ffP\ff\b8\fe\98\fe\88\fe\80\feX\feP\feX\fe\b0\fd\08\fd\80\fc\f8\fa\88\f9`\f8\98\f7 \f7\e8\f6(\f7\c0\f7\a8\f8\f8\f8`\f9\18\fa\c0\faX\fb\18\fc\e0\fc\a0\fd \fe\88\fe\f8\fe\f0\fe\c8\fe\a8\fe\e0\fd\10\fdp\fc\a8\fb\10\fb\b8\fa\a0\fa\d0\fa\18\fb\90\fa\18\fa\10\fa\80\fa\10\fb\88\fb\90\fc\b8\fd\b8\fe\80\ffX\008\01\18\01\c8\00\c0\00\98\ff0\fe8\fdh\fcx\fb\b8\fa\e8\fax\fb\d0\fb\e8\fb\18\fc\98\fc(\fdH\fdh\fdh\fd\90\fd\b8\fd\90\fdh\fdx\fd\a0\fcp\fb\d0\fa\f0\f9p\f8H\f7H\f7p\f7H\f7 \f7\a8\f7x\f80\f9\98\f98\fa\10\fc\a0\fdp\fe0\00H\02\a0\03h\058\07p\08`\09\10\0a@\0a(\0a\b8\09\e8\08\e8\07\e0\06\88\050\04\00\03`\02\d0\01\18\01\b0\ff\98\fe\18\fe\a0\fd\08\fd\b8\fc\f8\fc`\fd\90\fd\90\fd\d8\fdP\fe\a0\fd\e0\fc\c0\fc\e8\fc\b0\fc`\fcp\fc\b8\fc\e0\fc@\fd\d8\fdh\fex\ffh\00\08\01x\02\a0\03 \04\90\05\08\07\b8\07\d8\07\08\088\08\d8\07\e8\06\00\06\b0\05\18\05\10\04\a0\02\98\01\d0\00\c8\00\b0\00h\00\c0\00P\01\80\01 \02\d8\02@\03`\03\80\03\80\038\03\c8\02\b8\02\80\02\00\02\00\01\98\00\80\00 \00\f0\ff\00\00 \00\98\00 \01p\010\02\f0\02P\03\80\04\b8\05P\06\a8\068\07\98\07\b0\07\c0\07\98\07h\06\98\050\05\c8\04\10\04P\03x\02\d8\01H\01\80\00\00\00\c0\ff\d8\ff\a8\ff`\ff\80\ff\18\00p\00\e0\ff\88\ff\c0\ff8\ff\98\feP\fe\10\fe\d8\fd\90\fd0\fd\b8\fdh\fep\fe`\fep\fe\d0\fe\90\ff\e0\ff\f0\ff\a8\00h\01\d0\01\f8\01\10\02x\02h\02\08\02 \02\f8\01\98\01X\01\00\01\c0\00\a0\00\18\00\98\ff(\ff\c0\fe\80\fe`\fe\88\fd\f0\fc\c8\fcp\fc\10\fc\c8\fb\b0\fb\e8\fb\e8\fb\80\fb\88\fb@\fb\18\fb \fb\b8\faP\faP\fa\b8\fa\f8\fa\18\fb\b0\fb\88\fc\10\fd@\fd\98\fd8\fe\e0\fe\f8\fe\f0\fe\18\ff\18\ff\18\ffh\ff\98\ff\98\ff\d0\ff\f8\ffH\008\00\08\00\08\00\e0\ff\b0\ff\b8\ff\d0\fe\18\fe\18\fe\f0\fd8\fe\90\fe\90\fe\a8\fdH\fdp\fdh\fd\00\fd\b8\fc\b8\fc\f8\fc\00\fd0\fc\d0\fb\10\fc \fc\e0\fb\a8\fb0\fc\00\fdP\fd\90\fd\10\fe\a8\fe@\ff\a0\ff\d0\ff\c8\ff\c8\ff\d8\ff\a0\ff\98\ff\b8\ffP\00\b8\00\b0\00\b0\01\e0\02\18\030\03\e0\02\c8\02x\02P\01P\00\c0\ff\88\ff\18\ff\90\fe@\fe0\fe\e8\fd\d0\fdp\fdH\fd\10\fd\98\fc8\fc8\fcx\fc\98\fc\f0\fc\a8\fdH\fe\c8\fe0\ff\98\ff\00\00P\00X\00\a8\00\e8\00\d0\008\01\e0\01\18\02\08\020\02X\02H\02\b0\02\18\030\03X\03\80\03x\03\08\04\80\04`\04\c8\03\18\03\b0\02\e8\01\b8\00\d8\ff0\ff\c8\fe`\fe`\fex\fex\fe\c0\fdp\fdP\fd\08\fd\88\fc(\fc\98\fc\18\fd`\fd`\fd\d8\fd\90\fe\e8\fe\10\ffX\ff\90\ff\b8\ff\e0\ff\f0\ff\f0\ff\d0\00\90\01\c8\01\80\01\88\01\b0\018\02\98\02\b8\02h\02X\02X\020\02(\020\02X\02H\02\f8\01P\01\c8\00X\00X\008\00\00\00P\ff\00\ff\f8\fe\80\fe\b8\fdp\fd\00\fd\90\fc@\fc(\fcX\fc\98\fc\10\fdx\fd\e0\fd\80\fe\08\ff`\ff\d0\ff0\00h\00\10\01\98\01\c0\01\08\02`\02\80\02 \03\90\03\98\03\10\04\88\04\a0\04H\04\08\04\e0\03\c8\03\98\03P\03\08\03\c8\02x\02\d8\01H\01\e8\00@\00\a0\ffP\ff\c0\fd\88\fc0\fc\88\fb\a8\faP\fa0\fa@\fap\fa\b8\fa\e0\fa(\fbX\fb\80\fb\b0\fb\00\fc\80\fc\f0\fc\b8\fdX\fe\d8\fe\08\00\00\01\80\01\d0\01\10\02H\028\02\00\02\d0\01\d0\02\a0\03\d8\03\c0\03\d8\03\f8\03p\03\c0\02X\02\b8\01 \01\90\00\88\00\a8\00\a8\00\88\00h\00`\00\e0\ff\00\ffP\fe\c8\fd\f0\fc0\fc\b0\fb\d8\fb \fcX\fc0\fc@\fcx\fc\c0\fc\e8\fc\10\fdH\fd\88\fd\e8\fd\10\ff \00\10\01\b8\01H\02\c0\02X\03\b8\03\c8\03 \03\88\02\80\02\00\03@\03 \03\80\03\f8\03\18\04x\03\e0\02\88\02\80\028\02\d0\01h\018\01\10\01@\01H\01P\01\a8\00\10\00\b0\ff\b8\fe\e0\fdH\fd\e8\fc\a8\fcx\fcH\fcP\fcp\fc\a8\fc\e8\fc(\fd\d0\fdp\fe\d8\fe@\00\88\01X\02\c0\03\f0\04\b8\058\06p\06\90\06\08\07\08\07\b8\06`\06P\060\06\c8\05x\05H\05\08\05p\04\d0\03P\03x\02\a0\01\f8\00\b0\00x\000\00\e8\ff\c8\ff\b8\ff\d0\fe\08\fe\98\fdp\fc`\fb\a8\fa\10\fa\b8\f9\80\f9\a0\f9\00\fah\fa\90\fb\b8\fc\98\fdh\fe\18\ff\c0\ffx\00\f8\00\18\02 \03\c0\03x\04\10\05p\05\d8\05\e0\05\b8\05\08\05h\04\e0\03\f0\02\18\02h\01\f0\00`\00\d0\ffX\ff\c0\feH\fe\b0\fdX\fd8\fd\d8\fc\80\fcP\fc\08\fcH\fb\98\fa\f8\f9\f8\f8\10\f8\f8\f7\18\f8H\f8\e8\f8\e0\f9\08\fb8\fc\10\fd\e8\fd\10\ff\d0\ffH\00\e0\00`\01\b8\01\c8\01\e0\01\00\02(\02@\02@\02@\02`\02\80\02\80\02\f0\02p\03\c8\03\c8\03\a8\03\a0\03\f8\02 \02P\01\98\00\e0\ff \ff\a0\feP\fe\18\fe8\fd`\fc\e0\fb\c8\fa\a0\f9\b8\f80\f8\88\f8\b8\f8\08\f9\80\fa\f8\fbH\fd\c8\fe@\00\b0\01\98\028\03\c0\03p\04 \05\88\05\10\06\88\06\c8\06p\06\e8\05x\05\80\05x\05(\05\98\04\08\04\90\03\f8\03X\04\88\04h\04P\04X\04\a8\03\d0\02\10\02X\01\88\00\a8\ff\00\ff\88\fe0\fe\88\fd\b8\fc(\fc0\fb\f0\f9\e8\f8\90\f8\90\f8\c0\f8x\f9x\fa\e8\fb \fd(\fe`\ff\d8\00 \02\f8\02x\03\e0\038\04\88\04\98\04\a8\04\80\04@\04\c0\03\d8\02\e8\01@\01\d8\00h\00\e0\ffh\000\01(\02`\02x\02\d0\02\d8\02\90\02\e0\01\d0\00\e0\ff\f8\fe\08\fe(\fd\88\fc\e0\fb`\fb\d8\fa\08\fax\f9\e8\f8\b0\f8\b0\f8\d0\f8\d0\f9\f8\fa\18\fc\b0\fd8\ff\a0\00\f8\01\f8\02\c0\03`\04\b8\04\c8\04\c8\04\c0\04\98\04\90\04x\04H\04 \04\f8\03(\038\02\b0\01p\01(\01\90\00\e8\00\b8\01\b8\02\80\02\18\02\18\02\f0\01H\01\00\00\c0\fe\08\fep\fd\a0\fc\f0\fb\c0\fb\a0\fb\80\fb\18\fb(\fb\98\fb\c0\fb\d0\fb\08\fcx\fc\c8\fd\c8\fex\ff\d0\008\02`\03\98\03`\03h\03\80\03\18\03P\02\08\02 \02\18\02\f0\01\c8\01\10\02p\02p\02@\02\90\02\10\03`\03@\03\10\03\18\03 \03\d8\02@\02X\01\a0\00\08\000\ffP\fe\a8\fd(\fd\c8\fc`\fc\a8\fb@\fb\10\fb\18\fb(\fbH\fbh\fb\a8\fb\f8\fb\b8\fcx\fd\00\fe\88\fe0\ff\98\ff\c8\ff\e8\ffP\00\b0\00\e0\00@\00h\ff\d8\fe\e8\fe\e0\fe\90\fe\a8\fe\88\ff\80\00\88\01\08\02\90\02\90\038\04P\04(\04\f8\03\e0\03\88\03\e0\02@\02\90\01\d0\00\00\00\00\00\18\00\ff\00h\00\fe\00\f8\00\fd\00\d5\1ft!\a0P@\c9${\fakR\e0\b6\d6\8e\b9+\ae\e0\8b#R;\13\86\e0\14JAD2\d3\a1\83\a1\1d\a6\80\ba\d2\96&\fb\84\80m\9c%\1d\9b\aa\c0\bbL\95\b9S\ae\a0\b6\e4F7\1b\d4\a5{\1d\22\97\00\ba\a5m\d2\a1~\c0\b9%\d2\b4\94\9e\e0>\de\ed\d6\d2\e2\c0\d7]\8dY\ac\d3\e4\83\95Y\c0\a1H\d2f\c7,\9e\a0*\d3\eeE\1c\80\e0k4\8cK)\cb\00\ba\f6\0d&\9a\d3\a4\82\9dcz\c0g$\ba\d6|\c2\c07 O\10\e0\c7\80jwc\bekZ\c0\b54\d14\9c\d4\e8V\b2X_\00\b7\af\92\12\90\d5\a49#NF\87Q\ac\d8\dbm\cb\17P\89{D(\03k\d5\a966\d9k\a8\93:\96\ee\ffg\8b6\da\09\b4\99g+\88\e4\b5\a5\daeG\da\1e\96\fa\ec\d5\a9Ec\1a\cb\c9H\9d\83_o\cb\08\1b\97\c9\18\0ac\cb\a6\e1\84\f5baj\84\dc\b67\9e\d6\ab<S\93\c1*\aa\81\8dke`\a8\fb.\22Yta\a6]s\94\f8\e4\c1F&^\8a\86\ed\d4\a6-Wk\be\e8X\da=\98\99\be\a8\c2\dbj.Qb\e5\80Xv\b8\e4l\84\ca\98\06\0b\fc\d2f|b:[\c5\df}uI\1eR\c7U\f7\84\a6\da]C&\85\98\d8\8f\b6\c5(\eb>u\04\d2'\ba*+\b7\03\13E5\1bx_\c3\ba\db\ae'\c2^\a4P\8c\8a\bbO`\c3\eeAFJ\df\d2'\b2\ad\eb_CLj\09*\cc\b7G*\b9\91\b6\d4[%X\d8\fdF\95Z\c3'[?\fb\12\d2&\c3\a9\a1\b6\a2\cb\1b\d0s\e4\ba\a1\e9\05\bey#\a4\c2:K\11\e5h\c4\c1\ba\c1\cc\8b\02\d2cl\ee\19^\e1\b6L\1a\b4^\f0\c2' U\bdmd\e1\c7E\a9em}BV\d8\b2\b6\ec\d3a[ba`\a1[\d6\15)\09l\a1>\ade4\c3\c0\c1\22mLW\10\dbA\d2\e1wd\f7\d3!s\a9)X\c1\a1ZR\b72d\c1gBt,\dcaae\8b\cb\04\e5`\c1\c9^\8e6\83\d2\a2\83\a9\d9\cd!\b9%\cd\e6\1d`\a1\b4\aa\8f\bau\c3\01\0b;Q\db\ecb\e18\cd@;\d3\d2&\94)\d2a!kJ\8d$\b5\bb!\12\a5\99\a5\1a\ca\a1\ef]\aa\ae\d3d\e1\a3k\ae59\d2fs\b6\90\c6\c12\d1\ba\c9%e\81\a8\d2\b1\e7\18\be\c0\fc\e4\85\b5\06\b4\815F\b6\c8\9b\00\00\00\00\00\00\00\00\00\00\00\00\08\07\06\06\05\05\05\05\04\04\04\04\04\04\04\04\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\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\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\00\00"))