Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
f5ce0d44
Commit
f5ce0d44
authored
Dec 13, 2012
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
g711: separate codec from araw
parent
5fb6de10
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
1211 additions
and
0 deletions
+1211
-0
modules/LIST
modules/LIST
+1
-0
modules/codec/Modules.am
modules/codec/Modules.am
+2
-0
modules/codec/g711.c
modules/codec/g711.c
+1207
-0
po/POTFILES.in
po/POTFILES.in
+1
-0
No files found.
modules/LIST
View file @
f5ce0d44
...
...
@@ -127,6 +127,7 @@ $Id$
* fluidsynth: Software MIDI synthetizer using libfluidsynth
* folder: folder meta data and art finder
* freetype: Utility to put text on video using freetype2
* g711: G.711 audio codec
* gain: Gain audio filter
* gaussianblur: gaussian blur video filter
* gestures: mouse gestures control plugin
...
...
modules/codec/Modules.am
View file @
f5ce0d44
...
...
@@ -5,6 +5,7 @@ SOURCES_dts = dts.c dts_header.h dts_header.c
SOURCES_flac = flac.c
SOURCES_lpcm = lpcm.c
SOURCES_araw = araw.c
SOURCES_g711 = g711.c
SOURCES_vorbis = vorbis.c
SOURCES_theora = theora.c
SOURCES_tremor = vorbis.c
...
...
@@ -70,6 +71,7 @@ libvlc_LTLIBRARIES += \
libddummy_plugin.la \
libdts_plugin.la \
libdvbsub_plugin.la \
libg711_plugin.la \
liblpcm_plugin.la \
libmpeg_audio_plugin.la \
librawvideo_plugin.la \
...
...
modules/codec/g711.c
0 → 100644
View file @
f5ce0d44
/*****************************************************************************
* g711.c: G.711 µ-law and A-law codec
*****************************************************************************
* Copyright (C) 2001, 2003 VLC authors and VideoLAN
* $Id$
*
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include <assert.h>
#include <vlc_common.h>
#include <vlc_plugin.h>
#include <vlc_codec.h>
#include <vlc_aout.h>
static
int
DecoderOpen
(
vlc_object_t
*
);
static
void
DecoderClose
(
vlc_object_t
*
);
static
block_t
*
DecodeBlock
(
decoder_t
*
,
block_t
**
);
#ifdef ENABLE_SOUT
static
int
EncoderOpen
(
vlc_object_t
*
);
static
block_t
*
EncoderEncode
(
encoder_t
*
,
block_t
*
);
#endif
vlc_module_begin
()
set_description
(
N_
(
"G.711 decoder"
)
)
set_capability
(
"decoder"
,
100
)
set_category
(
CAT_INPUT
)
set_subcategory
(
SUBCAT_INPUT_ACODEC
)
set_callbacks
(
DecoderOpen
,
DecoderClose
)
#ifdef ENABLE_SOUT
add_submodule
()
set_description
(
N_
(
"G.711 encoder"
)
)
set_capability
(
"encoder"
,
150
)
set_callbacks
(
EncoderOpen
,
NULL
)
#endif
vlc_module_end
()
struct
decoder_sys_t
{
const
int16_t
*
table
;
date_t
end_date
;
};
static
const
uint16_t
pi_channels_maps
[]
=
{
0
,
AOUT_CHAN_CENTER
,
AOUT_CHANS_2_0
,
AOUT_CHANS_3_0
,
AOUT_CHANS_4_0
,
AOUT_CHANS_5_0
,
AOUT_CHANS_5_1
,
AOUT_CHANS_7_0
,
AOUT_CHANS_7_1
,
AOUT_CHANS_8_1
,
};
static
const
int16_t
ulawtos16
[
256
]
=
{
-
32124
,
-
31100
,
-
30076
,
-
29052
,
-
28028
,
-
27004
,
-
25980
,
-
24956
,
-
23932
,
-
22908
,
-
21884
,
-
20860
,
-
19836
,
-
18812
,
-
17788
,
-
16764
,
-
15996
,
-
15484
,
-
14972
,
-
14460
,
-
13948
,
-
13436
,
-
12924
,
-
12412
,
-
11900
,
-
11388
,
-
10876
,
-
10364
,
-
9852
,
-
9340
,
-
8828
,
-
8316
,
-
7932
,
-
7676
,
-
7420
,
-
7164
,
-
6908
,
-
6652
,
-
6396
,
-
6140
,
-
5884
,
-
5628
,
-
5372
,
-
5116
,
-
4860
,
-
4604
,
-
4348
,
-
4092
,
-
3900
,
-
3772
,
-
3644
,
-
3516
,
-
3388
,
-
3260
,
-
3132
,
-
3004
,
-
2876
,
-
2748
,
-
2620
,
-
2492
,
-
2364
,
-
2236
,
-
2108
,
-
1980
,
-
1884
,
-
1820
,
-
1756
,
-
1692
,
-
1628
,
-
1564
,
-
1500
,
-
1436
,
-
1372
,
-
1308
,
-
1244
,
-
1180
,
-
1116
,
-
1052
,
-
988
,
-
924
,
-
876
,
-
844
,
-
812
,
-
780
,
-
748
,
-
716
,
-
684
,
-
652
,
-
620
,
-
588
,
-
556
,
-
524
,
-
492
,
-
460
,
-
428
,
-
396
,
-
372
,
-
356
,
-
340
,
-
324
,
-
308
,
-
292
,
-
276
,
-
260
,
-
244
,
-
228
,
-
212
,
-
196
,
-
180
,
-
164
,
-
148
,
-
132
,
-
120
,
-
112
,
-
104
,
-
96
,
-
88
,
-
80
,
-
72
,
-
64
,
-
56
,
-
48
,
-
40
,
-
32
,
-
24
,
-
16
,
-
8
,
0
,
32124
,
31100
,
30076
,
29052
,
28028
,
27004
,
25980
,
24956
,
23932
,
22908
,
21884
,
20860
,
19836
,
18812
,
17788
,
16764
,
15996
,
15484
,
14972
,
14460
,
13948
,
13436
,
12924
,
12412
,
11900
,
11388
,
10876
,
10364
,
9852
,
9340
,
8828
,
8316
,
7932
,
7676
,
7420
,
7164
,
6908
,
6652
,
6396
,
6140
,
5884
,
5628
,
5372
,
5116
,
4860
,
4604
,
4348
,
4092
,
3900
,
3772
,
3644
,
3516
,
3388
,
3260
,
3132
,
3004
,
2876
,
2748
,
2620
,
2492
,
2364
,
2236
,
2108
,
1980
,
1884
,
1820
,
1756
,
1692
,
1628
,
1564
,
1500
,
1436
,
1372
,
1308
,
1244
,
1180
,
1116
,
1052
,
988
,
924
,
876
,
844
,
812
,
780
,
748
,
716
,
684
,
652
,
620
,
588
,
556
,
524
,
492
,
460
,
428
,
396
,
372
,
356
,
340
,
324
,
308
,
292
,
276
,
260
,
244
,
228
,
212
,
196
,
180
,
164
,
148
,
132
,
120
,
112
,
104
,
96
,
88
,
80
,
72
,
64
,
56
,
48
,
40
,
32
,
24
,
16
,
8
,
0
};
static
const
int16_t
alawtos16
[
256
]
=
{
-
5504
,
-
5248
,
-
6016
,
-
5760
,
-
4480
,
-
4224
,
-
4992
,
-
4736
,
-
7552
,
-
7296
,
-
8064
,
-
7808
,
-
6528
,
-
6272
,
-
7040
,
-
6784
,
-
2752
,
-
2624
,
-
3008
,
-
2880
,
-
2240
,
-
2112
,
-
2496
,
-
2368
,
-
3776
,
-
3648
,
-
4032
,
-
3904
,
-
3264
,
-
3136
,
-
3520
,
-
3392
,
-
22016
,
-
20992
,
-
24064
,
-
23040
,
-
17920
,
-
16896
,
-
19968
,
-
18944
,
-
30208
,
-
29184
,
-
32256
,
-
31232
,
-
26112
,
-
25088
,
-
28160
,
-
27136
,
-
11008
,
-
10496
,
-
12032
,
-
11520
,
-
8960
,
-
8448
,
-
9984
,
-
9472
,
-
15104
,
-
14592
,
-
16128
,
-
15616
,
-
13056
,
-
12544
,
-
14080
,
-
13568
,
-
344
,
-
328
,
-
376
,
-
360
,
-
280
,
-
264
,
-
312
,
-
296
,
-
472
,
-
456
,
-
504
,
-
488
,
-
408
,
-
392
,
-
440
,
-
424
,
-
88
,
-
72
,
-
120
,
-
104
,
-
24
,
-
8
,
-
56
,
-
40
,
-
216
,
-
200
,
-
248
,
-
232
,
-
152
,
-
136
,
-
184
,
-
168
,
-
1376
,
-
1312
,
-
1504
,
-
1440
,
-
1120
,
-
1056
,
-
1248
,
-
1184
,
-
1888
,
-
1824
,
-
2016
,
-
1952
,
-
1632
,
-
1568
,
-
1760
,
-
1696
,
-
688
,
-
656
,
-
752
,
-
720
,
-
560
,
-
528
,
-
624
,
-
592
,
-
944
,
-
912
,
-
1008
,
-
976
,
-
816
,
-
784
,
-
880
,
-
848
,
5504
,
5248
,
6016
,
5760
,
4480
,
4224
,
4992
,
4736
,
7552
,
7296
,
8064
,
7808
,
6528
,
6272
,
7040
,
6784
,
2752
,
2624
,
3008
,
2880
,
2240
,
2112
,
2496
,
2368
,
3776
,
3648
,
4032
,
3904
,
3264
,
3136
,
3520
,
3392
,
22016
,
20992
,
24064
,
23040
,
17920
,
16896
,
19968
,
18944
,
30208
,
29184
,
32256
,
31232
,
26112
,
25088
,
28160
,
27136
,
11008
,
10496
,
12032
,
11520
,
8960
,
8448
,
9984
,
9472
,
15104
,
14592
,
16128
,
15616
,
13056
,
12544
,
14080
,
13568
,
344
,
328
,
376
,
360
,
280
,
264
,
312
,
296
,
472
,
456
,
504
,
488
,
408
,
392
,
440
,
424
,
88
,
72
,
120
,
104
,
24
,
8
,
56
,
40
,
216
,
200
,
248
,
232
,
152
,
136
,
184
,
168
,
1376
,
1312
,
1504
,
1440
,
1120
,
1056
,
1248
,
1184
,
1888
,
1824
,
2016
,
1952
,
1632
,
1568
,
1760
,
1696
,
688
,
656
,
752
,
720
,
560
,
528
,
624
,
592
,
944
,
912
,
1008
,
976
,
816
,
784
,
880
,
848
};
static
int
DecoderOpen
(
vlc_object_t
*
p_this
)
{
decoder_t
*
p_dec
=
(
decoder_t
*
)
p_this
;
const
int16_t
*
table
;
switch
(
p_dec
->
fmt_in
.
i_codec
)
{
case
VLC_CODEC_ALAW
:
table
=
alawtos16
;
break
;
case
VLC_CODEC_MULAW
:
table
=
ulawtos16
;
break
;
default:
return
VLC_EGENERIC
;
}
if
(
p_dec
->
fmt_in
.
audio
.
i_channels
<=
0
||
p_dec
->
fmt_in
.
audio
.
i_channels
>
AOUT_CHAN_MAX
)
{
msg_Err
(
p_dec
,
"bad channels count (1-9): %i"
,
p_dec
->
fmt_in
.
audio
.
i_channels
);
return
VLC_EGENERIC
;
}
if
(
p_dec
->
fmt_in
.
audio
.
i_rate
<=
0
)
{
msg_Err
(
p_dec
,
"bad samplerate: %d Hz"
,
p_dec
->
fmt_in
.
audio
.
i_rate
);
return
VLC_EGENERIC
;
}
msg_Dbg
(
p_dec
,
"samplerate:%dHz channels:%d"
,
p_dec
->
fmt_in
.
audio
.
i_rate
,
p_dec
->
fmt_in
.
audio
.
i_channels
);
/* Allocate the memory needed to store the decoder's structure */
decoder_sys_t
*
p_sys
=
malloc
(
sizeof
(
*
p_sys
));
if
(
unlikely
(
p_sys
==
NULL
)
)
return
VLC_ENOMEM
;
/* Set output properties */
p_dec
->
pf_decode_audio
=
DecodeBlock
;
p_dec
->
p_sys
=
p_sys
;
p_dec
->
fmt_out
.
i_cat
=
AUDIO_ES
;
p_dec
->
fmt_out
.
i_codec
=
VLC_CODEC_S16N
;
p_dec
->
fmt_out
.
audio
.
i_format
=
VLC_CODEC_S16N
;
p_dec
->
fmt_out
.
audio
.
i_rate
=
p_dec
->
fmt_in
.
audio
.
i_rate
;
if
(
p_dec
->
fmt_in
.
audio
.
i_physical_channels
)
p_dec
->
fmt_out
.
audio
.
i_physical_channels
=
p_dec
->
fmt_in
.
audio
.
i_physical_channels
;
else
p_dec
->
fmt_out
.
audio
.
i_physical_channels
=
pi_channels_maps
[
p_dec
->
fmt_in
.
audio
.
i_channels
];
if
(
p_dec
->
fmt_in
.
audio
.
i_original_channels
)
p_dec
->
fmt_out
.
audio
.
i_original_channels
=
p_dec
->
fmt_in
.
audio
.
i_original_channels
;
else
p_dec
->
fmt_out
.
audio
.
i_original_channels
=
p_dec
->
fmt_out
.
audio
.
i_physical_channels
;
aout_FormatPrepare
(
&
p_dec
->
fmt_out
.
audio
);
p_sys
->
table
=
table
;
date_Init
(
&
p_sys
->
end_date
,
p_dec
->
fmt_out
.
audio
.
i_rate
,
1
);
date_Set
(
&
p_sys
->
end_date
,
0
);
return
VLC_SUCCESS
;
}
static
block_t
*
DecodeBlock
(
decoder_t
*
p_dec
,
block_t
**
pp_block
)
{
decoder_sys_t
*
p_sys
=
p_dec
->
p_sys
;
if
(
pp_block
==
NULL
)
return
NULL
;
block_t
*
p_block
=
*
pp_block
;
if
(
p_block
==
NULL
)
return
NULL
;
if
(
p_block
->
i_pts
>
VLC_TS_INVALID
&&
p_block
->
i_pts
!=
date_Get
(
&
p_sys
->
end_date
)
)
{
date_Set
(
&
p_sys
->
end_date
,
p_block
->
i_pts
);
}
else
if
(
!
date_Get
(
&
p_sys
->
end_date
)
)
{
/* We've just started the stream, wait for the first PTS. */
block_Release
(
p_block
);
return
NULL
;
}
/* Don't re-use the same pts twice */
p_block
->
i_pts
=
VLC_TS_INVALID
;
unsigned
samples
=
p_block
->
i_buffer
/
p_dec
->
fmt_in
.
audio
.
i_channels
;
if
(
samples
==
0
)
{
block_Release
(
p_block
);
return
NULL
;
}
/* Create chunks of max 1024 samples */
if
(
samples
>
1024
)
samples
=
1024
;
block_t
*
p_out
=
decoder_NewAudioBuffer
(
p_dec
,
samples
);
if
(
p_out
==
NULL
)
{
block_Release
(
p_block
);
return
NULL
;
}
assert
(
p_out
->
i_nb_samples
==
samples
);
assert
(
p_out
->
i_buffer
==
samples
*
2
*
p_dec
->
fmt_in
.
audio
.
i_channels
);
p_out
->
i_pts
=
date_Get
(
&
p_sys
->
end_date
);
p_out
->
i_length
=
date_Increment
(
&
p_sys
->
end_date
,
samples
)
-
p_out
->
i_pts
;
const
uint8_t
*
src
=
p_block
->
p_buffer
;
int16_t
*
dst
=
(
int16_t
*
)
p_out
->
p_buffer
;
samples
*=
p_dec
->
fmt_in
.
audio
.
i_channels
;
for
(
unsigned
i
=
0
;
i
<
samples
;
i
++
)
*
(
dst
++
)
=
p_sys
->
table
[
*
(
src
++
)];
p_block
->
p_buffer
+=
samples
;
p_block
->
i_buffer
-=
samples
;
return
p_out
;
}
static
void
DecoderClose
(
vlc_object_t
*
p_this
)
{
decoder_t
*
p_dec
=
(
decoder_t
*
)
p_this
;
free
(
p_dec
->
p_sys
);
}
#ifdef ENABLE_SOUT
static
const
int8_t
alaw_encode
[
2049
]
=
{
0xD5
,
0xD4
,
0xD7
,
0xD6
,
0xD1
,
0xD0
,
0xD3
,
0xD2
,
0xDD
,
0xDC
,
0xDF
,
0xDE
,
0xD9
,
0xD8
,
0xDB
,
0xDA
,
0xC5
,
0xC4
,
0xC7
,
0xC6
,
0xC1
,
0xC0
,
0xC3
,
0xC2
,
0xCD
,
0xCC
,
0xCF
,
0xCE
,
0xC9
,
0xC8
,
0xCB
,
0xCA
,
0xF5
,
0xF5
,
0xF4
,
0xF4
,
0xF7
,
0xF7
,
0xF6
,
0xF6
,
0xF1
,
0xF1
,
0xF0
,
0xF0
,
0xF3
,
0xF3
,
0xF2
,
0xF2
,
0xFD
,
0xFD
,
0xFC
,
0xFC
,
0xFF
,
0xFF
,
0xFE
,
0xFE
,
0xF9
,
0xF9
,
0xF8
,
0xF8
,
0xFB
,
0xFB
,
0xFA
,
0xFA
,
0xE5
,
0xE5
,
0xE5
,
0xE5
,
0xE4
,
0xE4
,
0xE4
,
0xE4
,
0xE7
,
0xE7
,
0xE7
,
0xE7
,
0xE6
,
0xE6
,
0xE6
,
0xE6
,
0xE1
,
0xE1
,
0xE1
,
0xE1
,
0xE0
,
0xE0
,
0xE0
,
0xE0
,
0xE3
,
0xE3
,
0xE3
,
0xE3
,
0xE2
,
0xE2
,
0xE2
,
0xE2
,
0xED
,
0xED
,
0xED
,
0xED
,
0xEC
,
0xEC
,
0xEC
,
0xEC
,
0xEF
,
0xEF
,
0xEF
,
0xEF
,
0xEE
,
0xEE
,
0xEE
,
0xEE
,
0xE9
,
0xE9
,
0xE9
,
0xE9
,
0xE8
,
0xE8
,
0xE8
,
0xE8
,
0xEB
,
0xEB
,
0xEB
,
0xEB
,
0xEA
,
0xEA
,
0xEA
,
0xEA
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0x2A
};
/* alaw_encode */
static
const
int8_t
ulaw_encode
[
8193
]
=
{
0xFF
,
0xFE
,
0xFE
,
0xFD
,
0xFD
,
0xFC
,
0xFC
,
0xFB
,
0xFB
,
0xFA
,
0xFA
,
0xF9
,
0xF9
,
0xF8
,
0xF8
,
0xF7
,
0xF7
,
0xF6
,
0xF6
,
0xF5
,
0xF5
,
0xF4
,
0xF4
,
0xF3
,
0xF3
,
0xF2
,
0xF2
,
0xF1
,
0xF1
,
0xF0
,
0xF0
,
0xEF
,
0xEF
,
0xEF
,
0xEF
,
0xEE
,
0xEE
,
0xEE
,
0xEE
,
0xED
,
0xED
,
0xED
,
0xED
,
0xEC
,
0xEC
,
0xEC
,
0xEC
,
0xEB
,
0xEB
,
0xEB
,
0xEB
,
0xEA
,
0xEA
,
0xEA
,
0xEA
,
0xE9
,
0xE9
,
0xE9
,
0xE9
,
0xE8
,
0xE8
,
0xE8
,
0xE8
,
0xE7
,
0xE7
,
0xE7
,
0xE7
,
0xE6
,
0xE6
,
0xE6
,
0xE6
,
0xE5
,
0xE5
,
0xE5
,
0xE5
,
0xE4
,
0xE4
,
0xE4
,
0xE4
,
0xE3
,
0xE3
,
0xE3
,
0xE3
,
0xE2
,
0xE2
,
0xE2
,
0xE2
,
0xE1
,
0xE1
,
0xE1
,
0xE1
,
0xE0
,
0xE0
,
0xE0
,
0xE0
,
0xDF
,
0xDF
,
0xDF
,
0xDF
,
0xDF
,
0xDF
,
0xDF
,
0xDF
,
0xDE
,
0xDE
,
0xDE
,
0xDE
,
0xDE
,
0xDE
,
0xDE
,
0xDE
,
0xDD
,
0xDD
,
0xDD
,
0xDD
,
0xDD
,
0xDD
,
0xDD
,
0xDD
,
0xDC
,
0xDC
,
0xDC
,
0xDC
,
0xDC
,
0xDC
,
0xDC
,
0xDC
,
0xDB
,
0xDB
,
0xDB
,
0xDB
,
0xDB
,
0xDB
,
0xDB
,
0xDB
,
0xDA
,
0xDA
,
0xDA
,
0xDA
,
0xDA
,
0xDA
,
0xDA
,
0xDA
,
0xD9
,
0xD9
,
0xD9
,
0xD9
,
0xD9
,
0xD9
,
0xD9
,
0xD9
,
0xD8
,
0xD8
,
0xD8
,
0xD8
,
0xD8
,
0xD8
,
0xD8
,
0xD8
,
0xD7
,
0xD7
,
0xD7
,
0xD7
,
0xD7
,
0xD7
,
0xD7
,
0xD7
,
0xD6
,
0xD6
,
0xD6
,
0xD6
,
0xD6
,
0xD6
,
0xD6
,
0xD6
,
0xD5
,
0xD5
,
0xD5
,
0xD5
,
0xD5
,
0xD5
,
0xD5
,
0xD5
,
0xD4
,
0xD4
,
0xD4
,
0xD4
,
0xD4
,
0xD4
,
0xD4
,
0xD4
,
0xD3
,
0xD3
,
0xD3
,
0xD3
,
0xD3
,
0xD3
,
0xD3
,
0xD3
,
0xD2
,
0xD2
,
0xD2
,
0xD2
,
0xD2
,
0xD2
,
0xD2
,
0xD2
,
0xD1
,
0xD1
,
0xD1
,
0xD1
,
0xD1
,
0xD1
,
0xD1
,
0xD1
,
0xD0
,
0xD0
,
0xD0
,
0xD0
,
0xD0
,
0xD0
,
0xD0
,
0xD0
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCF
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCE
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCD
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCC
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCB
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xCA
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC9
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC8
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC7
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC6
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC5
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC4
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC3
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC2
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC1
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xC0
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBF
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBE
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBD
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBC
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBB
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xBA
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB9
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB8
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB7
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB6
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB5
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB4
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB3
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB2
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB1
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xB0
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAF
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAE
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAD
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAC
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAB
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xAA
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA9
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA8
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA7
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA6
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA5
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA4
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA3
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA2
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA1
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0xA0
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9F
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9E
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9D
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9C
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9B
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x9A
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x99
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x98
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x97
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x96
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x95
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x94
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x93
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x92
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x91
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x90
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8F
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8E
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8D
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8C
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8B
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x8A
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x89
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x88
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x87
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x86
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x85
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x84
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x83
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x82
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x81
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x80
,
0x00
};
static
int
EncoderOpen
(
vlc_object_t
*
p_this
)
{
encoder_t
*
p_enc
=
(
encoder_t
*
)
p_this
;
if
(
p_enc
->
fmt_out
.
i_codec
!=
VLC_CODEC_ALAW
&&
p_enc
->
fmt_out
.
i_codec
!=
VLC_CODEC_MULAW
)
return
VLC_EGENERIC
;
p_enc
->
fmt_in
.
i_codec
=
VLC_CODEC_S16N
;
p_enc
->
fmt_in
.
audio
.
i_bitspersample
=
16
;
p_enc
->
fmt_out
.
audio
.
i_bitspersample
=
8
;
p_enc
->
fmt_out
.
i_bitrate
=
8
*
p_enc
->
fmt_in
.
audio
.
i_channels
*
p_enc
->
fmt_in
.
audio
.
i_rate
;
p_enc
->
pf_encode_audio
=
EncoderEncode
;
msg_Dbg
(
p_enc
,
"samplerate:%dHz channels:%d"
,
p_enc
->
fmt_out
.
audio
.
i_rate
,
p_enc
->
fmt_out
.
audio
.
i_channels
);
return
VLC_SUCCESS
;
}
static
block_t
*
EncoderEncode
(
encoder_t
*
p_enc
,
block_t
*
p_aout_buf
)
{
if
(
!
p_aout_buf
||
!
p_aout_buf
->
i_buffer
)
return
NULL
;
block_t
*
p_block
=
block_Alloc
(
p_aout_buf
->
i_buffer
/
2
);
if
(
unlikely
(
p_block
==
NULL
)
)
return
NULL
;
const
int16_t
*
src
=
(
int16_t
*
)
p_aout_buf
->
p_buffer
;
// source
int8_t
*
dst
=
(
int8_t
*
)
p_block
->
p_buffer
;
// sink
if
(
p_enc
->
fmt_out
.
i_codec
==
VLC_CODEC_ALAW
)
{
for
(
unsigned
i
=
0
;
i
<
p_aout_buf
->
i_buffer
/
2
;
i
++
)
{
int16_t
s
=
*
(
src
++
);
if
(
s
>=
0
)
*
(
dst
++
)
=
alaw_encode
[
s
/
16
];
else
*
(
dst
++
)
=
0x7F
&
alaw_encode
[
s
/
-
16
];
}
}
else
/* µ-law */
{
for
(
unsigned
i
=
0
;
i
<
p_aout_buf
->
i_buffer
/
2
;
i
++
)
{
int16_t
s
=
*
(
src
++
);
if
(
s
>=
0
)
*
(
dst
++
)
=
ulaw_encode
[
s
/
4
];
else
*
(
dst
++
)
=
0x7F
&
ulaw_encode
[
s
/
-
4
];
}
}
p_block
->
i_dts
=
p_block
->
i_pts
=
p_aout_buf
->
i_pts
;
p_block
->
i_length
=
(
int64_t
)
p_aout_buf
->
i_nb_samples
*
CLOCK_FREQ
/
p_enc
->
fmt_in
.
audio
.
i_rate
;
return
p_block
;
}
#endif
/* ENABLE_SOUT */
po/POTFILES.in
View file @
f5ce0d44
...
...
@@ -372,6 +372,7 @@ modules/codec/faad.c
modules/codec/fdkaac.c
modules/codec/flac.c
modules/codec/fluidsynth.c
modules/codec/g711.c
modules/codec/kate.c
modules/codec/libass.c
modules/codec/libmpeg2.c
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment